ncurses 5.6 - patch 20070915
[ncurses.git] / NEWS
diff --git a/NEWS b/NEWS
index ecd633cc40c6598dff83246b0dfaa9f8edb1a144..c4b4f665e622fa2bbd9449fb3ee57d44d8d5f70e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
 -------------------------------------------------------------------------------
 -------------------------------------------------------------------------------
--- Copyright (c) 1998-2005,2006 Free Software Foundation, Inc.               --
+-- Copyright (c) 1998-2006,2007 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             --
 --                                                                           --
 -- Permission is hereby granted, free of charge, to any person obtaining a   --
 -- copy of this software and associated documentation files (the             --
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.1092 2007/02/25 00:45:56 tom Exp $
+-- $Id: NEWS,v 1.1168 2007/09/15 21:33:37 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -45,6 +45,316 @@ See the AUTHORS file for the corresponding full names.
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+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).
+       + fix old configure script bug which prevented "--disable-warnings"
+         option from working (patch by Mike Frysinger).
+
+20070818
+       + add 9term terminal description (request by Juhapekka Tolvanen) -TD
+       + modify comp_hash.c's string output to avoid misinterpreting a null
+         "\0" followed by a digit.
+       + modify MKnames.awk and MKcodes.awk to support big-strings.
+         This only applies to the cases (broken linker, reentrant) where
+         the corresponding arrays are accessed via wrapper functions.
+       + split MKnames.awk into two scripts, eliminating the shell redirection
+         which complicated the make process and also the bogus timestamp file
+         which was introduced to fix "make -j".
+       + add test/test_opaque.c, test/test_arrays.c
+       + add wgetscrreg() and wgetparent() for applications that may need it
+         when NCURSES_OPAQUE is defined (prompted by Bryan Christ).
+
+20070812
+       + amend treatment of infocmp "-r" option to retain the 1023-byte limit
+         unless "-T" is given (cf: 981017).
+       + modify comp_captab.c generation to use big-strings.
+       + make _nc_capalias_table and _nc_infoalias_table private accessed via
+         _nc_get_alias_table() since the tables are used only within the tic
+         library.
+       + modify configure script to skip Intel compiler in CF_C_INLINE.
+       + make _nc_info_hash_table and _nc_cap_hash_table private accessed via
+         _nc_get_hash_table() since the tables are used only within the tic
+         library.
+
+20070728
+       + make _nc_capalias_table and _nc_infoalias_table private, accessed via
+         _nc_get_alias_table() since they are used only by parse_entry.c
+       + make _nc_key_names private since it is used only by lib_keyname.c
+       + add --disable-big-strings configure option to control whether
+         unctrl.c is generated using the big-string optimization - which may
+         use strings longer than supported by a given compiler.
+       + reduce relocation tables for tic, infocmp by changing type of
+         internal hash tables to short, and make those private symbols.
+       + eliminate large fixed arrays from progs/infocmp.c
+
+20070721
+       + change winnstr() to stop at the end of the line (cf: 970315).
+       + add test/test_get_wstr.c
+       + add test/test_getstr.c
+       + add test/test_inwstr.c
+       + add test/test_instr.c
+
+20070716
+       + restore a call to obtain screen-size in _nc_setupterm(), which
+         is used in tput and other non-screen applications via setupterm()
+         (Debian #433357, reported by Florent Bayle, Christian Ohm,
+         cf: 20070310).
+
+20070714
+       + add test/savescreen.c test-program
+       + add check to trace-file open, if the given name is a directory, add
+         ".log" to the name and try again.
+       + add konsole-256color entry -TD
+       + add extra gcc warning options from xterm.
+       + minor fixes for ncurses/hashmap test-program.
+       + modify configure script to quiet c++ build with libtool when the
+         --disable-echo option is used.
+       + modify configure script to disable ada95 if libtool is selected,
+         writing a warning message (addresses FreeBSD ports/114493).
+       + update config.guess, config.sub
+
+20070707
+       + add continuous-move "M" to demo_panels to help test refresh changes.
+       + improve fix for refresh of window on top of multi-column characters,
+         taking into account some split characters on left/right window
+         boundaries.
+
+20070630
+       + add "widec" row to _tracedump() output to help diagnose remaining
+         problems with multi-column characters.
+       + partial fix for refresh of window on top of multi-column characters
+         which are partly overwritten (report by Sadrul H Chowdhury).
+       + ignore A_CHARTEXT bits in vidattr() and vid_attr(), in case
+         multi-column extension bits are passed there.
+       + add setlocale() call to demo_panels.c, needed for wide-characters.
+       + add some output flags to _nc_trace_ttymode to help diagnose a bug
+         report by Larry Virden, i.e., ONLCR, OCRNL, ONOCR and ONLRET,
+
+20070623
+       + add test/demo_panels.c
+       + implement opaque version of setsyx() and getsyx().
+
+20070612
+       + corrected xterm+pcf2 terminfo modifiers for F1-F4, to match xterm
+         #226 -TD
+       + split-out key_name() from MKkeyname.awk since it now depends upon
+         wunctrl() which is not in libtinfo (report by Rong-En Fan).
+
+20070609
+       + add test/key_name.c
+       + add stdscr cases to test/inchs.c and test_inch_wide.c
+       + update test/configure
+       + correct formatting of DEL (0x7f) in _nc_vischar().
+       + null-terminate result of wunctrl().
+       + add null-pointer check in key_name() (report by Andreas Krennmair,
+         cf: 20020901).
+
+20070602
+       + adapt mouse-handling code from menu library in form-library
+         (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 
+         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).
+       + build-fixes for Solaris 2.6 and 2.7 (patch by Peter O'Gorman).
+
+20070526
+       + modify keyname() to use "^X" form only if meta() has been called, or
+         if keyname() is called without initializing curses, e.g., via
+         initscr() or newterm() (prompted by LinuxBase #1604).
+       + document some portability issues in man/curs_util.3x
+       + add a shadow copy of TTY buffer to _nc_prescreen to fix applications
+         broken by moving that data into SCREEN (cf: 20061230).
+
+20070512
+       + add 'O' (wide-character panel test) in ncurses.c to demonstrate a
+         problem reported by Sadrul H Chowdhury with repainting parts of
+         a fullwidth cell.
+       + modify slk_init() so that if there are preceding calls to
+         ripoffline(), those affect the available lines for soft-keys (adapted
+         from patch by Clive Nicolson).
+       + document some portability issues in man/curs_getyx.3x
+
+20070505
+       + fix a bug in Ada95/samples/ncurses which caused a variable to
+         become uninitialized in the "b" test.
+       + fix Ada95/gen/Makefile.in adahtml rule to account for recent
+         movement of files, fix a few incorrect manpage references in the
+         generated html.
+       + add Ada95 binding to _nc_freeall() as Curses_Free_All to help with
+         memory-checking.
+       + correct some functions in Ada95 binding which were using return value
+         from C where none was returned:  idcok(), immedok() and wtimeout().
+       + amend recent changes for Ada95 binding to make it build with
+         Cygwin's linker, e.g., with configure options
+               --enable-broken-linker --with-ticlib
+
+20070428
+       + add a configure check for gcc's options for inlining, use that to
+         quiet a warning message where gcc's default behavior changed from
+         3.x to 4.x.
+       + improve warning message when checking if GPM is linked to curses
+         library by not warning if its use of "wgetch" is via a weak symbol.
+       + add loader options when building with static libraries to ensure that
+         an installed shared library for ncurses does not conflict.  This is
+         reported as problem with Tru64, but could affect other platforms
+         (report Martin Mokrejs, analysis by Tim Mooney).
+       + fix build on cygwin after recent ticlib/termlib changes, i.e.,
+         + adjust TINFO_SUFFIX value to work with cygwin's dll naming
+         + revert a change from 20070303 which commented out dependency of
+           SHLIB_LIST in form/menu/panel/c++ libraries.
+       + fix initialization of ripoff stack pointer (cf: 20070421).
+
+20070421
+       + move most static variables into structures _nc_globals and
+         _nc_prescreen, to simplify storage.
+       + add/use configure script macro CF_SIG_ATOMIC_T, use the corresponding
+         type for data manipulated by signal handlers (prompted by comments
+         in mailing.openbsd.bugs newsgroup).
+       + modify CF_WITH_LIBTOOL to allow one to pass options such as -static
+         to the libtool create- and link-operations.
+
+20070414
+       + fix whitespace in curs_opaque.3x which caused a spurious ';' in
+         the installed aliases (report by Peter Santoro).
+       + fix configure script to not try to generate adacurses-config when
+         Ada95 tree is not built.
+
+20070407
+       + add man/curs_legacy.3x, man/curs_opaque.3x
+       + 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).
+       + fix includes in c++ binding to build with Intel compiler
+         (cf: 20061209).
+       + update install rule in Ada95 to use mkdirs.sh
+       > other fixes prompted by inspection for Coverity report:
+       + modify ifdef's for c++ binding to use try/catch/throw statements
+       + add a null-pointer check in tack/ansi.c request_cfss()
+       + fix a memory leak in ncurses/base/wresize.c
+       + corrected check for valid memu/meml capabilities in
+         progs/dump_entry.c when handling V_HPUX case.
+       > fixes based on Coverity report:
+       + remove dead code in test/bs.c
+       + remove dead code in test/demo_defkey.c
+       + remove an unused assignment in progs/infocmp.c
+       + fix a limit check in tack/ansi.c tools_charset()
+       + fix tack/ansi.c tools_status() to perform the VT320/VT420
+         tests in request_cfss().  The function had exited too soon.
+       + fix a memory leak in tic.c's make_namelist()
+       + fix a couple of places in tack/output.c which did not check for EOF.
+       + fix a loop-condition in test/bs.c
+       + add index checks in lib_color.c for color palettes
+       + add index checks in progs/dump_entry.c for version_filter() handling
+         of V_BSD case.
+       + fix a possible null-pointer dereference in copywin()
+       + fix a possible null-pointer dereference in waddchnstr()
+       + add a null-pointer check in _nc_expand_try()
+       + add a null-pointer check in tic.c's make_namelist()
+       + add a null-pointer check in _nc_expand_try()
+       + add null-pointer checks in test/cardfile.c
+       + fix a double-free in ncurses/tinfo/trim_sgr0.c
+       + fix a double-free in ncurses/base/wresize.c
+       + add try/catch block to c++/cursesmain.cc
+
+20070331
+       + modify Ada95 binding to build with --enable-reentrant by wrapping
+         global variables (bug: acs_map does not yet work).
+       + modify Ada95 binding to use the new access-functions, allowing it
+         to build/run when NCURSES_OPAQUE is set.
+       + add access-functions and macros to return properties of the WINDOW
+         structure, e.g., when NCURSES_OPAQUE is set.
+       + improved install-sh's quoting.
+       + use mkdirs.sh rather than mkinstalldirs, e.g., to use fixes from
+         other programs.
+
+20070324
+       + eliminate part of the direct use of WINDOW data from Ada95 interface.
+       + fix substitutions for termlib filename to make configure option
+         --enable-reentrant work with --with-termlib.
+       + change a constructor for NCursesWindow to allow compiling with
+         NCURSES_OPAQUE set, since we cannot pass a reference to
+         an opaque pointer.
+
+20070317
+       + ignore --with-chtype=unsigned since unsigned is always added to
+         the type in curses.h; do the same for --with-mmask-t.
+       + change warning regarding --enable-ext-colors and wide-character
+         in the configure script to an error.
+       + tweak error message in CF_WITH_LIBTOOL to distinguish other programs
+         such as Darwin's libtool program (report by Michail Vidiassov)
+       + modify edit_man.sh to allow for multiple substitutions per line.
+       + set locale in misc/ncurses-config.in since it uses a range
+       + change permissions libncurses++.a install (report by Michail
+         Vidiassov).
+       + corrected length of temporary buffer in wide-character version
+         of set_field_buffer() (related to report by Bryan Christ).
+
+20070311
+       + fix mk-1st.awk script install_shlib() function, broken in 20070224
+         changes for cygwin (report by  Michail Vidiassov).
+
+20070310
+       + increase size of array in _nc_visbuf2n() to make "tic -v" work
+         properly in its similar_sgr() function (report/analysis by Peter
+         Santoro).
+       + add --enable-reentrant configure option for ongoing changes to
+         implement a reentrant version of ncurses:
+         + libraries are suffixed with "t"
+         + wrap several global variables (curscr, newscr, stdscr, ttytype,
+           COLORS, COLOR_PAIRS, COLS, ESCDELAY, LINES and TABSIZE) as
+           functions returning values stored in SCREEN or cur_term.
+         + move some initialization (LINES, COLS) from lib_setup.c,
+           i.e., setupterm() to _nc_setupscreen(), i.e., newterm().
+
+20070303
+       + regenerated html documentation.
+       + add NCURSES_OPAQUE symbol to curses.h, will use to make structs
+         opaque in selected configurations.
+       + move the chunk in lib_acs.c which resets acs capabilities when
+         running on a terminal whose locale interferes with those into
+         _nc_setupscreen(), so the libtinfo/libtinfow files can be made
+         identical (requested by Miroslav Lichvar).
+       + do not use configure variable SHLIB_LIBS for building libraries
+         outside the ncurses directory, since that symbol is customized
+         only for that directory, and using it introduces an unneeded
+         dependency on libdl (requested by Miroslav Lichvar).
+       + modify mk-1st.awk so the generated makefile rules for linking or
+         installing shared libraries do not first remove the library, in
+         case it is in use, e.g., libncurses.so by /bin/sh (report by Jeff
+         Chua).
+       + revised section "Using NCURSES under XTERM" in ncurses-intro.html
+         (prompted by newsgroup comment by Nick Guenther).
+
 20070224
        + change internal return codes of _nc_wgetch() to check for cases
          where KEY_CODE_YES should be returned, e.g., if a KEY_RESIZE was
 20070224
        + change internal return codes of _nc_wgetch() to check for cases
          where KEY_CODE_YES should be returned, e.g., if a KEY_RESIZE was
@@ -71,7 +381,7 @@ it is not possible to add this information.
        + remove "-ldl" from some library lists to reduce dependencies in
          programs (report by Miroslav Lichvar).
        + correct description of --enable-signed-char in configure --help
        + remove "-ldl" from some library lists to reduce dependencies in
          programs (report by Miroslav Lichvar).
        + correct description of --enable-signed-char in configure --help
-         (report by Michail Vidiassov).   
+         (report by Michail Vidiassov).
        + add pattern for GNU/kFreeBSD configuration to CF_XOPEN_SOURCE,
          which matches an earlier change to CF_SHARED_OPTS, from xterm #224
          fixes.
        + add pattern for GNU/kFreeBSD configuration to CF_XOPEN_SOURCE,
          which matches an earlier change to CF_SHARED_OPTS, from xterm #224
          fixes.
@@ -90,7 +400,7 @@ it is not possible to add this information.
 
 20070203
        + modify fix_wchnstr() in form library to strip attributes (and color)
 
 20070203
        + modify fix_wchnstr() in form library to strip attributes (and color)
-         from the cchar_t array (field cells) read from a field's window. 
+         from the cchar_t array (field cells) read from a field's window.
          Otherwise, when copying the field cells back to the window, the
          associated color overrides the field's background color (report by
          Ricardo Cantu).
          Otherwise, when copying the field cells back to the window, the
          associated color overrides the field's background color (report by
          Ricardo Cantu).
@@ -102,7 +412,7 @@ it is not possible to add this information.
          no longer relies on it.
        + disallow combining configure script options --with-ticlib and
          --enable-termcap (report by Rong-En Fan).
          no longer relies on it.
        + disallow combining configure script options --with-ticlib and
          --enable-termcap (report by Rong-En Fan).
-       + remove tack from ncurses tree.  
+       + remove tack from ncurses tree.
 
 20070128
        + fix typo in configure script that broke --with-termlib option
 
 20070128
        + fix typo in configure script that broke --with-termlib option
@@ -118,7 +428,7 @@ it is not possible to add this information.
        + review/eliminate other original-file artifacts in cursesw.cc, making
          its license consistent with ncurses.
        + use ncurses vw_scanw() rather than reading into a fixed buffer in
        + review/eliminate other original-file artifacts in cursesw.cc, making
          its license consistent with ncurses.
        + use ncurses vw_scanw() rather than reading into a fixed buffer in
-         the c++ binding for scanw() methods.
+         the c++ binding for scanw() methods (prompted by report by Nuno Dias).
        + eliminate fixed-buffer vsprintf() calls in c++ binding.
 
 20070120
        + eliminate fixed-buffer vsprintf() calls in c++ binding.
 
 20070120