-------------------------------------------------------------------------------
--- Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. --
+-- Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. --
-- --
-- Permission is hereby granted, free of charge, to any person obtaining a --
-- copy of this software and associated documentation files (the --
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.1157 2007/08/25 20:12:52 tom Exp $
+-- $Id: NEWS,v 1.1316 2008/10/18 21:51:20 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20081018
+ + build-fixes for OS/2 EMX.
+ + modify form library to accept control characters such as newline
+ in set_field_buffer(), which is compatible with Solaris (report by
+ Nit Khair).
+ + modify configure script to assume --without-hashed-db when
+ --disable-database is used.
+ + add "-e" option in ncurses/Makefile.in when generating source-files
+ to force earlier exit if the build environment fails unexpectedly
+ (prompted by patch by Adrian Bunk).
+ + change configure script to use CF_UTF8_LIB, improved variant of
+ CF_LIBUTF8.
+
+20081012
+ + add teraterm4.59 terminfo entry, use that as primary teraterm entry, rename
+ original to teraterm2.3 -TD
+ + update "gnome" terminfo to 2.22.3 -TD
+ + update "konsole" terminfo to 1.6.6, needs today's fix for tic -TD
+ + add "aterm" terminfo -TD
+ + add "linux2.6.26" terminfo -TD
+ + add logic to tic for cancelling strings in user-defined capabilities,
+ overlooked til now.
+
+20081011
+ + update html documentation.
+ + add -m and -s options to test/keynames.c and test/key_names.c to test
+ the meta() function with keyname() or key_name(), respectively.
+ + correct return value of key_name() on error; it is null.
+ + document some unresolved issues for rpath and pthreads in TO-DO.
+ + fix a missing prototype for ioctl() on OpenBSD in tset.c
+ + add configure option --disable-tic-depends to make explicit whether
+ tic library depends on ncurses/ncursesw library, amends change from
+ 20080823 (prompted by Debian #501421).
+
+20081004
+ + some build-fixes for configure --disable-ext-funcs (incomplete, but
+ works for C/C++ parts).
+ + improve configure-check for awks unable to handle large strings, e.g.
+ AIX 5.1 whose awk silently gives up on large printf's.
+
+20080927
+ + fix build for --with-dmalloc by workaround for redefinition of
+ strndup between string.h and dmalloc.h
+ + fix build for --disable-sigwinch
+ + add environment variable NCURSES_GPM_TERMS to allow override to use
+ GPM on terminals other than "linux", etc.
+ + disable GPM mouse support when $TERM does not happen to contain
+ "linux", since Gpm_Open() no longer limits its assertion to terminals
+ that it might handle, e.g., within "screen" in xterm.
+ + reset mouse file-descriptor when unloading GPM library (report by
+ Miroslav Lichvar).
+ + fix build for --disable-leaks --enable-widec --with-termlib
+ > patch by Juergen Pfeifer:
+ + use improved initialization for soft-label keys in Ada95 sample code.
+ + discard internal symbol _nc_slk_format (unused since 20080112).
+ + move call of slk_paint_info() from _nc_slk_initialize() to
+ slk_intern_refresh(), improving initialization.
+
+20080925
+ + fix bug in mouse code for GPM from 20080920 changes (reported in
+ Debian #500103, also Miroslav Lichvar).
+
+20080920
+ + fix shared-library rules for cygwin with tic- and tinfo-libraries.
+ + fix a memory leak when failure to connect to GPM.
+ + correct check for notimeout() in wgetch() (report on linux.redhat
+ newsgroup by FurtiveBertie).
+ + add an example warning-suppression file for valgrind,
+ misc/ncurses.supp (based on example from Reuben Thomas)
+
+20080913
+ + change shared-library configuration for OpenBSD, make rpath work.
+ + build-fixes for using libutf8, e.g., on OpenBSD 3.7
+
+20080907
+ + corrected fix for --enable-weak-symbols (report by Frederic L W
+ Meunier).
+
+20080906
+ + corrected gcc options for building shared libraries on IRIX64.
+ + add configure check for awk programs unable to handle big-strings,
+ use that to improve the default for --enable-big-strings option.
+ + makefile-fixes for --enable-weak-symbols (report by Frederic L W
+ Meunier).
+ + update test/configure script.
+ + adapt ifdef's from library to make test/view.c build when mbrtowc()
+ is unavailable, e.g., with HPUX 10.20.
+ + add configure check for wcsrtombs, mbsrtowcs, which are used in
+ test/ncurses.c, and use wcstombs, mbstowcs instead if available,
+ fixing build of ncursew for HPUX 11.00
+
+20080830
+ + fixes to make Ada95 demo_panels() example work.
+ + modify Ada95 'rain' test program to accept keyboard commands like the
+ C-version.
+ + modify BeOS-specific ifdef's to build on Haiku (patch by Scott
+ Mccreary).
+ + add configure-check to see if the std namespace is legal for cerr
+ and endl, to fix a build issue with Tru64.
+ + consistently use NCURSES_BOOL in lib_gen.c
+ + filter #line's from lib_gen.c
+ + change delimiter in MKlib_gen.sh from '%' to '@', to avoid
+ substitution by IBM xlc to '#' as part of its extensions to digraphs.
+ + update config.guess, config.sub from
+ http://savannah.gnu.org/projects/config
+ (caveat - its maintainer removed support for older Linux systems).
+
+20080823
+ + modify configure check for pthread library to work with OSF/1 5.1,
+ which uses #define's to associate its header and library.
+ + use pthread_mutexattr_init() for initializing pthread_mutexattr_t,
+ makes threaded code work on HPUX 11.23
+ + fix a bug in demo_menus in freeing menus (cf: 20080804).
+ + modify configure script for the case where tic library is used (and
+ possibly renamed) to remove its dependency upon ncurses/ncursew
+ library (patch by Dr Werner Fink).
+ + correct manpage for menu_fore() which gave wrong default for
+ the attribute used to display a selected entry (report by Mike Gran).
+ + add Eterm-256color, Eterm-88color and rxvt-88color (prompted by
+ Debian #495815) -TD
+
+20080816
+ + add configure option --enable-weak-symbols to turn on new feature.
+ + add configure-check for availability of weak symbols.
+ + modify linkage with pthread library to use weak symbols so that
+ applications not linked to that library will not use the mutexes,
+ etc. This relies on gcc, and may be platform-specific (patch by Dr
+ Werner Fink).
+ + add note to INSTALL to document limitation of renaming of tic library
+ using the --with-ticlib configure option (report by Dr Werner Fink).
+ + document (in manpage) why tputs does not detect I/O errors (prompted
+ by comments by Samuel Thibault).
+ + fix remaining warnings from Klocwork report.
+
+20080804
+ + modify _nc_panelhook() data to account for a permanent memory leak.
+ + fix memory leaks in test/demo_menus
+ + fix most warnings from Klocwork tool (report by Larry Zhou).
+ + modify configure script CF_XOPEN_SOURCE macro to add case for
+ "dragonfly" from xterm #236 changes.
+ + modify configure script --with-hashed-db to let $LIBS override the
+ search for the db library (prompted by report by Samson Pierre).
+
+20080726
+ + build-fixes for gcc 4.3.1 (changes to gnat "warnings", and C inlining
+ thresholds).
+
+20080713
+ + build-fix (reports by Christian Ebert, Funda Wang).
+
+20080712
+ + compiler-warning fixes for Solaris.
+
+20080705
+ + use NCURSES_MOUSE_MASK() in definition of BUTTON_RELEASE(), etc., to
+ make those work properly with the "--enable-ext-mouse" configuration
+ (cf: 20050205).
+ + improve documentation of build-cc options in INSTALL.
+ + work-around a bug in gcc 4.2.4 on AIX, which does not pass the
+ -static/-dynamic flags properly to linker, causing test/bs to
+ not link.
+
+20080628
+ + correct some ifdef's needed for the broken-linker configuration.
+ + make debugging library's $BAUDRATE feature work for termcap
+ interface.
+ + make $NCURSES_NO_PADDING feature work for termcap interface (prompted
+ by comment on FreeBSD mailing list).
+ + add screen.mlterm terminfo entry -TD
+ + improve mlterm and mlterm+pcfkeys terminfo entries -TD
+
+20080621
+ + regenerated html documentation.
+ + expand manpage description of parameters for form_driver() and
+ menu_driver() (prompted by discussion with Adam Spragg).
+ + add null-pointer checks for cur_term in baudrate() and
+ def_shell_mode(), def_prog_mode()
+ + fix some memory leaks in delscreen() and wide acs.
+
+20080614
+ + modify test/ditto.c to illustrate multi-threaded use_screen().
+ + change CC_SHARED_OPTS from -KPIC to -xcode=pic32 for Solaris.
+ + add "-shared" option to MK_SHARED_LIB for gcc on Solaris (report
+ by Poor Yorick).
+
+20080607
+ + finish changes to wgetch(), making it switch as needed to the
+ window's actual screen when calling wrefresh() and wgetnstr(). That
+ allows wgetch() to get used concurrently in different threads with
+ some minor restrictions, e.g., the application should not delete a
+ window which is being used in a wgetch().
+ + simplify mutex's, combining the window- and screen-mutex's.
+
+20080531
+ + modify wgetch() to use the screen which corresponds to its window
+ parameter rather than relying on SP; some dependent functions still
+ use SP internally.
+ + factor out most use of SP in lib_mouse.c, using parameter.
+ + add internal _nc_keyname(), replacing keyname() to associate with a
+ particular SCREEN rather than the global SP.
+ + add internal _nc_unctrl(), replacing unctrl() to associate with a
+ particular SCREEN rather than the global SP.
+ + add internal _nc_tracemouse(), replacing _tracemouse() to eliminate
+ its associated global buffer _nc_globals.tracemse_buf now in SCREEN.
+ + add internal _nc_tracechar(), replacing _tracechar() to use SCREEN in
+ preference to the global _nc_globals.tracechr_buf buffer.
+
+20080524
+ + modify _nc_keypad() to make it switch temporarily as needed to the
+ screen which must be updated.
+ + wrap cur_term variable to help make _nc_keymap() thread-safe, and
+ always set the screen's copy of this variable in set_curterm().
+ + restore curs_set() state after endwin()/refresh() (report/patch
+ Miroslav Lichvar)
+
+20080517
+ + modify configure script to note that --enable-ext-colors and
+ --enable-ext-mouse are not experimental, but extensions from
+ the ncurses ABI 5.
+ + corrected manpage description of setcchar() (discussion with
+ Emanuele Giaquinta).
+ + fix for adding a non-spacing character at the beginning of a line
+ (report/patch by Miroslav Lichvar).
+
+20080503
+ + modify screen.* terminfo entries using new screen+fkeys to fix
+ overridden keys in screen.rxvt (Debian #478094) -TD
+ + modify internal interfaces to reduce wgetch()'s dependency on the
+ global SP.
+ + simplify some loops with macros each_screen(), each_window() and
+ each_ripoff().
+
+20080426
+ + continue modifying test/ditto.c toward making it demonstrate
+ multithreaded use_screen(), using fifos to pass data between screens.
+ + fix typo in form.3x (report by Mike Gran).
+
+20080419
+ + add screen.rxvt terminfo entry -TD
+ + modify tic -f option to format spaces as \s to prevent them from
+ being lost when that is read back in unformatted strings.
+ + improve test/ditto.c, using a "talk"-style layout.
+
+20080412
+ + change test/ditto.c to use openpty() and xterm.
+ + add locks for copywin(), dupwin(), overlap(), overlay() on their
+ window parameters.
+ + add locks for initscr() and newterm() on updates to the SCREEN
+ pointer.
+ + finish table in curs_thread.3x manpage.
+
+20080405
+ + begin table in curs_thread.3x manpage describing the scope of data
+ used by each function (or symbol) for threading analysis.
+ + add null-pointer checks to setsyx() and getsyx() (prompted by
+ discussion by Martin v. Lowis and Jeroen Ruigrok van der Werven on
+ python-dev2 mailing list).
+
+20080329
+ + add null-pointer checks in set_term() and delscreen().
+ + move _nc_windows into _nc_globals, since windows can be pads, which
+ are not associated with a particular screen.
+ + change use_screen() to pass the SCREEN* parameter rather than
+ stdscr to the callback function.
+ + force libtool to use tag for 'CC' in case it does not detect this,
+ e.g., on aix when using CC=powerpc-ibm-aix5.3.0.0-gcc
+ (report/patch by Michael Haubenwallner).
+ + override OBJEXT to "lo" when building with libtool, to work on
+ platforms such as AIX where libtool may use a different suffix for
+ the object files than ".o" (report/patch by Michael Haubenwallner).
+ + add configure --with-pthread option, for building with the POSIX
+ thread library.
+
+20080322
+ + fill in extended-color pair two more places in wbkgrndset() and
+ waddch_nosync() (prompted by Sedeno's patch).
+ + fill in extended-color pair in _nc_build_wch() to make colors work
+ for wide-characters using extended-colors (patch by Alejandro R
+ Sedeno).
+ + add x/X toggles to ncurses.c C color test to test/demo
+ wide-characters with extended-colors.
+ + add a/A toggles to ncurses.c c/C color tests.
+ + modify test/ditto.c to use use_screen().
+ + finish modifying test/rain.c to demonstrate threads.
+
+20080308
+ + start modifying test/rain.c for threading demo.
+ + modify test/ncurses.c to make 'f' test accept the f/F/b/F/</> toggles
+ that the 'F' accepts.
+ + modify test/worm.c to show trail in reverse-video when other threads
+ are working concurrently.
+ + fix a deadlock from improper nesting of mutexes for windowlist and
+ window.
+
+20080301
+ + fixes from 20080223 resolved issue with mutexes; change to use
+ recursive mutexes to fix memory leak in delwin() as called from
+ _nc_free_and_exit().
+
+20080223
+ + fix a size-difference in _nc_globals which caused hanging of mutex
+ lock/unlock when termlib was built separately.
+
+20080216
+ + avoid using nanosleep() in threaded configuration since that often
+ is implemented to suspend the entire process.
+
+20080209
+ + update test programs to build/work with various UNIX curses for
+ comparisons. This was to reinvestigate statement in X/Open curses
+ that insnstr and winsnstr perform wrapping. None of the Unix-branded
+ implementations do this, as noted in manpage (cf: 20040228).
+
+20080203
+ + modify _nc_setupscreen() to set the legacy-coding value the same
+ for both narrow/wide models. It had been set only for wide model,
+ but is needed to make unctrl() work with locale in the narrow model.
+ + improve waddch() and winsch() handling of EILSEQ from mbrtowc() by
+ using unctrl() to display illegal bytes rather than trying to append
+ further bytes to make up a valid sequence (reported by Andrey A
+ Chernov).
+ + modify unctrl() to check codes in 128-255 range versus isprint().
+ If they are not printable, and locale was set, use a "M-" or "~"
+ sequence.
+
+20080126
+ + improve threading in test/worm.c (wrap refresh calls, and KEY_RESIZE
+ handling). Now it hangs in napms(), no matter whether nanosleep()
+ or poll() or select() are used on Linux.
+
+20080119
+ + fixes to build with --disable-ext-funcs
+ + add manpage for use_window and use_screen.
+ + add set_tabsize() and set_escdelay() functions.
+
+20080112
+ + remove recursive-mutex definitions, finish threading demo for worm.c
+ + remove a redundant adjustment of lines in resizeterm.c's
+ adjust_window() which caused occasional misadjustment of stdscr when
+ softkeys were used.
+
+20080105
+ + several improvements to terminfo entries based on xterm #230 -TD
+ + modify MKlib_gen.sh to handle keyname/key_name prototypes, so the
+ "link_test" builds properly.
+ + fix for toe command-line options -u/-U to ensure filename is given.
+ + fix allocation-size for command-line parsing in infocmp from 20070728
+ (report by Miroslav Lichvar)
+ + improve resizeterm() by moving ripped-off lines, and repainting the
+ soft-keys (report by Katarina Machalkova)
+ + add clarification in wclear's manpage noting that the screen will be
+ cleared even if a subwindow is cleared (prompted by Christer Enfors
+ question).
+ + change test/ncurses.c soft-key tests to work with KEY_RESIZE.
+
+20071222
+ + continue implementing support for threading demo by adding mutex
+ for delwin().
+
+20071215
+ + add several functions to C++ binding which wrap C functions that
+ pass a WINDOW* parameter (request by Chris Lee).
+
+20071201
+ + add note about configure options needed for Berkeley database to the
+ INSTALL file.
+ + improve checks for version of Berkeley database libraries.
+ + amend fix for rpath to not modify LDFLAGS if the platform has no
+ applicable transformation (report by Christian Ebert, cf: 20071124).
+
+20071124
+ + modify configure option --with-hashed-db to accept a parameter which
+ is the install-prefix of a given Berkeley Database (prompted by
+ pierre4d2 comments).
+ + rewrite wrapper for wcrtomb(), making it work on Solaris. This is
+ used in the form library to determine the length of the buffer needed
+ by field_buffer (report by Alfred Fung).
+ + remove unneeded window-parameter from C++ binding for wresize (report
+ by Chris Lee).
+
+20071117
+ + modify the support for filesystems which do not support mixed-case to
+ generate 2-character (hexadecimal) codes for the lower-level of the
+ filesystem terminfo database (request by Michail Vidiassov).
+ + add configure option --enable-mixed-case, to allow overriding the
+ configure script's check if the filesystem supports mixed-case
+ filenames.
+ + add wresize() to C++ binding (request by Chris Lee).
+ + define NCURSES_EXT_FUNCS and NCURSES_EXT_COLORS in curses.h to make
+ it simpler to tell if the extended functions and/or colors are
+ declared.
+
+20071103
+ + update memory-leak checks for changes to names.c and codes.c
+ + correct acsc strings in h19, z100 (patch by Benjamin C W Sittler).
+
+20071020
+ + continue implementing support for threading demo by adding mutex
+ for use_window().
+ + add mrxvt terminfo entry, add/fix xterm building blocks for modified
+ cursor keys -TD
+ + compile with FreeBSD "contemporary" TTY interface (patch by
+ Rong-En Fan).
+
+20071013
+ + modify makefile rules to allow clear, tput and tset to be built
+ without libtic. The other programs (infocmp, tic and toe) rely on
+ that library.
+ + add/modify null-pointer checks in several functions for SP and/or
+ the WINDOW* parameter (report by Thorben Krueger).
+ + fixes for field_buffer() in formw library (see Redhat Bugzilla
+ #310071, patches by Miroslav Lichvar).
+ + improve performance of NCURSES_CHAR_EQ code (patch by Miroslav
+ Lichvar).
+ + update/improve mlterm and rxvt terminfo entries, e.g., for
+ the modified cursor- and keypad-keys -TD
+
+20071006
+ + add code to curses.priv.h ifdef'd with NCURSES_CHAR_EQ, which
+ changes the CharEq() macro to an inline function to allow comparing
+ cchar_t struct's without comparing gaps in a possibly unpacked
+ memory layout (report by Miroslav Lichvar).
+
+20070929
+ + add new functions to lib_trace.c to setup mutex's for the _tracef()
+ calls within the ncurses library.
+ + for the reentrant model, move _nc_tputs_trace and _nc_outchars into
+ the SCREEN.
+ + start modifying test/worm.c to provide threading demo (incomplete).
+ + separated ifdef's for some BSD-related symbols in tset.c, to make
+ it compile on LynxOS (report by Greg Gemmer).
+20070915
+ + modify Ada95/gen/Makefile to use shlib script, to simplify building
+ shared-library configuration on platforms lacking rpath support.
+ + build-fix for Ada95/src/Makefile to reflect changed dependency for
+ the terminal-interface-curses-aux.adb file which is now generated.
+ + restructuring test/worm.c, for use_window() example.
+
+20070908
+ + add use_window() and use_screen() functions, to develop into support
+ for threaded library (incomplete).
+ + fix typos in man/curs_opaque.3x which kept the install script from
+ creating symbolic links to two aliases created in 20070818 (report by
+ Rong-En Fan).
+
+20070901
+ + remove a spurious newline from output of html.m4, which caused links
+ for Ada95 html to be incorrect for the files generated using m4.
+ + start investigating mutex's for SCREEN manipulation (incomplete).
+ + minor cleanup of codes.c/names.c for --enable-const
+ + expand/revise "Routine and Argument Names" section of ncurses manpage
+ to address report by David Givens in newsgroup discussion.
+ + fix interaction between --without-progs/--with-termcap configure
+ options (report by Michail Vidiassov).
+ + fix typo in "--disable-relink" option (report by Michail Vidiassov).
+
20070825
+ fix a sign-extension bug in infocmp's repair_acsc() function
(cf: 971004).
(discussion with Clive Nicolson).
+ add a modification of test/dots.c, i.e., test/dots_mvcur.c to
illustrate how to use mvcur().
- + modify wide-character flavor of SetAttr() to preserve the
+ + modify wide-character flavor of SetAttr() to preserve the
WidecExt() value stored in the .attr field, e.g., in case it
is overwritten by chgat (report by Aleksi Torhamo).
+ correct buffer-size for _nc_viswbuf2n() (report by Aleksi Torhamo).
20070407
+ add man/curs_legacy.3x, man/curs_opaque.3x
- + fix acs_map binding for Ada95 when --enable-reentrant is used.
+ + fix acs_map binding for Ada95 when --enable-reentrant is used.
+ add adacurses-config to the Ada95 install, based on version from
FreeBSD port, in turn by Juergen Pfeifer in 2000 (prompted by
comment on comp.lang.ada newsgroup).