[New-bugs-announce] [issue31891] Make curses compiling on NetBSD 7.1 and tests passing

Serhiy Storchaka report at bugs.python.org
Sun Oct 29 05:21:28 EDT 2017

New submission from Serhiy Storchaka <storchaka+cpython at gmail.com>:

NetBSD perhaps is the last open OS that don't use ncurses. For now the _curses module is not compiled on NetBSD. Its curses implementation doesn't contain several ncurses functions. <term.h> included for non-ncurses implementations defines a couple of macros that conflict with local variable names. The hardcoded signature of setupterm differs from the signature in <term.h>. The fallback implementation of has_key() depends on KEY_* constants that are absent in NetBSD curses too. It seems to me that curses is broken on NetBSD for very long time.

The proposed PR fixes building of the _curses module and makes curses tests passing. This of course doesn't guaranties that curses works correctly on NetBSD, our curses tests are rudimentary.

There were other NetBSD specific guards in the code. They are no longer needed because the guarded functions already are supported in NetBSD for long time. There are issue9667 and issue21457 for removing unneeded conditional compilation.

assignee: serhiy.storchaka
components: Extension Modules
messages: 305180
nosy: serhiy.storchaka
priority: normal
severity: normal
status: open
title: Make curses compiling on NetBSD 7.1 and tests passing
type: compile error
versions: Python 2.7, Python 3.6, Python 3.7

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list