1 -------------------------------------------------------------------------------
2 -- Copyright 2018-2019,2020 Thomas E. Dickey --
3 -- Copyright 1998-2017,2018 Free Software Foundation, Inc. --
5 -- Permission is hereby granted, free of charge, to any person obtaining a --
6 -- copy of this software and associated documentation files (the --
7 -- "Software"), to deal in the Software without restriction, including --
8 -- without limitation the rights to use, copy, modify, merge, publish, --
9 -- distribute, distribute with modifications, sublicense, and/or sell copies --
10 -- of the Software, and to permit persons to whom the Software is furnished --
11 -- to do so, subject to the following conditions: --
13 -- The above copyright notice and this permission notice shall be included --
14 -- in all copies or substantial portions of the Software. --
16 -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --
17 -- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --
18 -- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN --
19 -- NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --
20 -- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --
21 -- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE --
22 -- USE OR OTHER DEALINGS IN THE SOFTWARE. --
24 -- Except as contained in this notice, the name(s) of the above copyright --
25 -- holders shall not be used in advertising or otherwise to promote the --
26 -- sale, use or other dealings in this Software without prior written --
28 -------------------------------------------------------------------------------
29 -- $Id: NEWS,v 1.3589 2020/11/07 23:52:28 tom Exp $
30 -------------------------------------------------------------------------------
32 This is a log of changes that ncurses has gone through since Zeyd started
33 working with Pavel Curtis' original work, pcurses, in 1992.
35 Changes through 1.9.9e are recorded by Zeyd M Ben-Halim.
36 Changes since 1.9.9e are recorded by Thomas E Dickey.
38 Contributors include those who have provided patches (even small ones), as well
39 as those who provide useful information (bug reports, analyses). Changes with
40 no cited author are the work of Thomas E Dickey (TD).
42 A few contributors may be cited in this file by their initials.
43 Each accounts for half of one percent or more of the changes since 1.9.9e.
44 See the AUTHORS file for the corresponding full names.
46 Changes through 1.9.9e did not credit all contributions;
47 it is not possible to add this information.
50 + update kitty+common -TD
51 + add putty+screen and putty-screen (suggested by Alexandre Montaron).
52 + explain in ncurses.3x that functions in the tinfo library do not rely
53 upon wide-characters (prompted by discussion with Reuben Thomas).
56 + modify MKterm.h.in so that it is not necessary to include <curses.h>
57 before <term.h> (prompted by discussion with Reuben Thomas).
58 + review/improve synopsis for curs_sp_funcs.3x (prompted by discussion
60 + improve format of output in tic's check_infotocap() function, to
61 ensure that the messages contain only printable text.
62 + modify configure-check for clang to verify that -Qunused-arguments
63 is supported. IBM's xlclang does not support it (report by Steven
67 + provide workaround configure-check for bool when cross-compiling.
68 + fix a potential indexing error in _nc_parse_entry(), seen with
69 Herlim's test data using address-sanitizer.
70 + change a null-pointer check in set_curterm to a valid-string check,
71 needed in to tic's use-resolution when pad_char is cancelled
72 (report/testcase by Robert Sebastian Herlim)
73 + improve tic's -c option to validate the number and type of parameters
74 and compare against expected number/type before deciding which set of
75 parameter-lists to use in tparm calls (report/testcase by Robert
77 + fix a link for tabs.1 manpage in announce.html.in (report by Nick
78 Black), as well as some fixes via linklint.
81 + improve manpage typography.
82 + improve discussion in curs_addch.3x of the use of unctrl to display
83 nonprintable characters.
84 + add a note in terminfo.5 explaining that no-parameter strings such
85 as sgr0 or cnorm should not be used with tparm.
88 + correct sgr in aaa+rv (report by Florian Weimer) -TD
89 + fix some sgr inconsistencies in d230c, ibm6153, ibm6154,
91 + improve tic's check for errors detected in tparm (prompted by
92 discussion with Florian Weimer).
93 + set output-mode to binary in experimental Windows-10 driver (Juergen
97 + remove output-related checks for nl/nonl (report by Leon Winter).
98 + change tmux's kbs to ^? (report by Premysl Eric Janouch)
99 + simplify mlterm initialization with DECSTR -TD
100 + fix a typo in man/curs_terminfo.3 (Reuben Thomas).
101 + add tmux-direct (tmux #2370, Debian #895754)
102 + add user-defined capabilities from mintty to Caps-ncurses, for
103 checking consistency with tic.
106 + correct configure-check for gnurx library.
107 + regenerate llib-* files.
108 + modify tracemunch and the panel library to show readable traces for
109 panel- and user-pointers.
112 + update mlterm3 for 3.9.0 (report by Premysl Eric Janouch) -TD
115 + corrected condition for appending curses.events to the generated
116 curses.h (report by Sven Joachim, Debian #970545).
119 + add configure-check for systre/tre with mingw configuration, to get
120 the library-dependencies as seen in msys2 configuration for mingw64.
121 + build-fixes for the win32-driver configuration.
122 + use more defensive binary mode setting for Win32 (Juergen Pfeifer).
125 + fix regression in setupterm validating non-empty $TERM (report by
129 + merge/adapt in-progress work by Juergen Pfeifer for new version of
131 + correct description of vt330/vt340 (Ross Combs).
134 + build-fix for awk-scripts modified for win32-driver (report by Werner
138 + remove a redundant NCURSES_EXPORT as a build-fix for "Maarten
140 + merge/adapt in-progress work by Juergen Pfeifer for new version of
142 + modify configure script, moving gcc -Werror options to EXTRA_CFLAGS
143 to avoid breaking configure-checks (adapted from ongoing work on
145 > errata for terminfo.src (report by Florian Weimer):
146 + correct icl6404 csr
151 + improve version-number extraction in MKlib_gen.sh
152 + make the test-package for manpages installable by adjusting the
154 + correct an off-by-one loop-limit in convert_strings function
156 + add CF_SHARED_OPTS cases for HPE NonStop systems (Randall S Becker).
157 + modify CF_SHARED_OPTS case for NetBSD to use the same "-shared"
158 option for the non-rpath case as for the rpath case, to allow gcc to
159 provide suitable runtime initialization (report by Rajeev V Pillai).
162 + reduce build-warnings by excluding ncurses-internals from deprecation
164 + mark wgetch-events feature as deprecated.
165 + add definition for $(LIBS) to ncurses/Makefile.in, to simplify builds
166 using the string-hacks option.
167 + prevent KEY_EVENT from appearing in curses.h unless the configure
168 option --enable-wgetch-events is used (report by Werner Fink).
171 + amend tic/infocmp check to allow for the respective tool's absence
172 (report by Steve Wills, cf: 20200808).
173 + improved some of the build-scripts with shellcheck
174 + filter out -MT/-MD/-MTd/-MDd options in script for Visual Studio C++
175 (discussion with "Maarten Anonymous").
178 + improve discussion of the system's tic utility when used as part
179 of cross-compiling (discussion with Keith Marshall).
180 + modify configuration checks for build-time tic/infocmp to use
181 AC_CHECK_TOOL. That can still be overridden by --with-tic-path and
182 --with-infocmp-path when fallbacks are used, but even if not using
183 fallbacks, the improved check may help with cross-compiling
184 (discussion with Keith Marshall).
185 + other build-fixes for Ada95 with MinGW.
186 + modify Ada95 source-generation utility to write to a file given as
187 parameter rather than to the standard output, allowing builds with
191 + remove remaining parts of checks for ISC Unix (cf: 20121006).
192 + add user32.lib to LDFLAGS for Visual Studio C++ configuration
193 (discussion with "Maarten Anonymous").
194 + modify MKkey_defs.sh to hide ncurses' definition of KEY_EVENTS to
195 reduce Visual Studio C++ redefinition warnings.
196 + improve/update checks for external functions in test/configure
199 + set LINK_TESTS in CF_SHARED_OPTS for msvc (patch by
201 + improved workaround for redefinition-warnings for KEY_EVENT.
202 + improve man/term.5 section on legacy storage format (report by
206 + reduce redefinition-warnings for KEY_EVENT when building with Visual
208 + define NCURSES_STATIC when compiling programs to link with static
209 libraries, to work with MinGW vs Visual Studio C++.
210 > additional changes for building with Visual Studio C++ and msys2
211 (reports/patches by "Maarten Anonymous")
212 + modify c++/Makefile.in to set the current directory while compiling
213 the main program, so the linker can find related objects.
214 + several changes to allow the c++/demo program to compile/link.
215 + change an ifdef in test-directory, to use VC++ wide-character funcs.
218 + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
220 + additional changes for building with Visual Studio C++ and msys2
221 (reports/patches by "Maarten Anonymous")
222 + build-improvements for Windows 10 and MinGW (patch by Juergen
224 + fix a typo in curs_printw.3x (patch by William Pursell).
225 + fix two errors in infotocap which allowed indexing outside the
226 buffer (report/testcases by Zhang Gan).
227 + update length of strings in infocmp's usage function to restore a
228 trailing null on the longest string (report/testcase by Zhang Gen).
231 + modify version-check with Ada generics to use the same pattern as in
232 the check for supported gnat versions (report by Pascal Pignard).
233 > additional changes for building with Visual Studio C++ and msys2
234 (patches by "Maarten Anonymous"):
235 + adjust headers/declarations to provide for "dllimport" vs "dllexport"
236 declarations when constructing DLLs, to worko with Visual Studio C++.
239 + build-fixes for gnat 10.1.1, whose gnatmake drops integration with
241 + correct buffer-length in test/color_name.h
244 + update list of functions in ncurses.3x
245 + move dlclose() call from lib_mouse.c to delscreen() to avoid a case
246 in the former which could be called from SIGTSTP handler (Debian
250 + add xterm+256color2, xterm+88color2, to deprecate nonstandard usage
251 in xterm+256color, xterm+88color -TD
252 + add shifted Linux console keys in linux+sfkeys entry for
253 screen.linux (report by Alexandre Montaron).
254 + use vt100+enq in screen (report by Alexandre Montaron).
255 + add screen.linux-s alias (suggested by Alexandre Montaron).
258 + correct configure version-check/warnng for g++ to allow for 10.x
259 + re-enable "bel" in konsole-base (report by Nia Huang)
260 + add linux-s entry (patch by Alexandre Montaron).
261 + drop long-obsolete convert_configure.pl
262 + add test/test_parm.c, for checking tparm changes.
263 + improve parameter-checking for tparm, adding function _nc_tiparm() to
264 handle the most-used case, which accepts only numeric parameters
265 (report/testcase by "puppet-meteor").
266 + use a more conservative estimate of the buffer-size in lib_tparm.c's
267 save_text() and save_number(), in case the sprintf() function
268 passes-through unexpected characters from a format specifier
269 (report/testcase by "puppet-meteor").
270 + add a check for end-of-string in cvtchar to handle a malformed
271 string in infotocap (report/testcase by "puppet-meteor").
274 + update version-check for gnat to allow for gnat 10.x to 99.x
275 + fix an uninitialized variable in lib_mouse.c changes (cf: 20200502)
276 + add a check in EmitRange to guard against repeat_char emitting digits
277 which could be interpreted as BSD-style padding when --enable-bsdpad
278 is configured (report/patch by Hiltjo Posthuma).
279 + add --disable-pkg-ldflags to suppress EXTRA_LDFLAGS from the
280 generated pkg-config and ncurses*-config files, to simplify
281 configuring in the case where rpath is used but the packager wants
282 to hide the feature (report by Michael Stapelberg).
283 > fixes for building with Visual Studio C++ and msys2 (patches by
284 "Maarten Anonymous"):
285 + modify CF_SHARED_OPTS to generate a script which translates linker
286 options into Visual Studio's dialect.
287 + omit parentheses around function-names in generated lib_gen.c to
288 work around a Visual Studio C++ limitation.
291 + add notes on termcap.h header in curs_termcap.3x
292 + update notes on vscode / xterm.js -TD
295 + add "-r" option to the dots test-programs, to help with scripting
296 a performance comparison.
297 + build-fix test/move_field.c for NetBSD curses, whose form headers
298 use different names than SVr4 or ncurses.
301 + add details on the change to Linux SGR 21 in 2018 -TD
302 + add xterm-direct16 and xterm-direct256 -TD
303 + modify lib_mouse.c to check for out-of-range button numbers, convert
304 those to position reports.
307 + use vt100+fnkeys in putty -TD
308 + fix a typo in tput.1; "columns" should be "cols".
311 + improve tracemunch logic for "RUN" compaction.
312 + fix a special case in wresize() where copying the old text did not
313 check if the last cell on a row was the beginning of a fullwidth
314 character (adapted from patch by Benno Schulenberg).
315 + use vt52+keypad in xterm-vt52, from xterm #354 -TD
316 + improve see-also section of user_caps.5
319 + fix find_pair(), overlooked when refactoring for _nc_reserve_pairs()
320 (report/testcase by Brad Town, cf: 20170812).
321 + add a trailing null for magic-string in putwin, flagged by gcc 10
322 + update check for gcc version versus gnat to work with gcc 10.x
325 + modify -fvisibility check to work with g++
326 > fixes for building with Visual Studio C++ and msys2 (patches by
327 "Maarten Anonymous"):
328 + add configure option and check for gcc -fvisibility=hidden feature
329 + define NCURSES_NOMACROS in lib_gen.c to work around Visual Studio
330 C++ preprocessor limitations.
331 + modify some of the configure-macros, as well as mk-1st.awk to work
332 with Visual Studio C++ default filenaming.
335 + correct length of buffer copied in dup_field().
336 + remove "$(srcdir)/" from path of library.gpr, needed for out-of-tree
337 builds of Ada95 (patch by Adam Van Ymeren).
340 + improve configure-checks to reduce warnings about unused variables.
341 + improve description of error-returns in waddch and waddnstr manual
342 pages (prompted by patch by Benno Schulenberg).
343 + add test/move_field.c to demonstrate move_field(), and a stub for
344 a corresponding demo of dup_field().
347 + add history note to curs_scanw.3x for <stdarg.h> and <varargs.h>
348 + add history note to curs_printw.3x for <stdarg.h> and <varargs.h>
349 + add portability note to ncurses.3x regarding <stdarg.h>
352 + update copyright notices in test-packages.
353 + modify tracemunch to guard against errors in its known_p1 table.
354 + add several --with-xxx-libname options, to help with pkgsrc (prompted
355 by discussion with Thomas Klausner).
358 + modify wbkgd() and wbkgrnd() to avoid storing a null in the
359 background character, because it may be used in cases where the
360 corresponding 0x80 is not treated as a null (report by Marc Rechte,
364 + modify CF_NCURSES_CONFIG to work around xcode's c99 "-W" option,
365 which conflicts with conventional use for passing linker options.
366 > fixes for building with Visual Studio C++ and msys2 (patches by
367 "Maarten Anonymous"):
368 + check for pcre2posix.h instead of pcre2-posix.h
369 + add case in CF_SHARED_OPTS for msys2 + msvc
370 + add fallback definition for STDIN_FILENO in progs.priv.h
371 + modify win_driver.c to use _alloca() rather than gcc's variable
372 length array feature.
373 + add NCURSES_IMPEXP to ncurses wrapped-variable declarations
374 + remove NCURSES_IMPEXP from class variables in c++/cursslk.h
375 + remove fallback prototype for exit() from c++/etip.h.in
376 + use configured check for <sys/time.h> in a couple of places
377 + conditionally include winsock.h in ncurses/win32con/gettimeofday.c,
378 because Visual Studio needs this for the timestruct declaration.
379 + adjust syntax in a couple of files using the NCURSES_API symbol.
382 + expanded note in ncurses.3x regarding automatically-included headers
383 + improve vt50h and vt52 based on DECScope manual -TD
384 + add/use vt52+keypad and vt52-basic -TD
385 + check/workaround for line-too-long in Ada95 generate utility when
386 building out-of-tree.
387 + improve/update HEADER_DEPS in */Makefile.in
388 + add "check" rule to include/Makefile, to demonstrate that the headers
389 include all of the required headers for the types used.
392 + improve manual page for panel library, extending the portability
393 section as well as documenting error-returns.
394 + show tic's version when installing terminal database in run_tic.sh
395 + correct check for gcc vs other compilers used in ncurses 6.0, from
396 FreeBSD patch by Kyle Evans (cf: 20150725).
397 + add notes for 6.2 to INSTALL.
399 20200212 6.2 release for upload to ftp.gnu.org
400 + update release notes
401 + minor build-fixes, mostly to test-package scripts
404 + modify check for sizeof(wchar_t) to ensure it gives useful result
405 when cross-compiling.
406 + drop assumption in configure script that Cygwin's linker is broken.
407 + define NCURSES_BROKEN_LINKER if the broken-linker feature is used,
408 to simplify configure-checks for ncurses-examples.
411 + reassert copyright on ncurses, per discussion in ncurses FAQ:
412 https://invisible-island.net/ncurses/ncurses.faq.html#relicensed
415 + modify comparison in make_hash.c to correct a special case in
416 collision handling for Caps-hpux11
417 + add testing utility report_hashing to check hash-tables used for
418 terminfo and termcap names.
419 + fix a missing prototype for _nc_free_and_exit().
420 + update a few comments about tack 1.07
421 + use an awk script to split too-long pathnames used in Ada95 sample
422 programs for explain.txt
425 + expanded description of XM in user_caps.5
426 + improve xm example for xterm+x11mouse, xterm+sm+1006 -TD
427 + add history section to curs_slk.3x and curs_terminfo.3x manpages.
428 + update alacritty entries for 0.4.0 (prompted by patch by
430 + correct spelling errors found with codespell.
431 + fix for test/configure, from xterm #352.
434 + improve configure macros which check for the X11/Intrinsic.h header,
435 to accommodate recent MacOS changes.
436 + suppress gcc's -Winline warning; it has not been useful for some time
437 + update config.guess, config.sub
440 + modify a couple of macros in aclocal.m4 to allow autoconf 2.69 to
441 "work", to help illustrate discussion in
442 https://invisible-island.net/autoconf/my-autoconf.html
443 + fix some warnings from autoheader-252
446 + in gen-pkgconfig.in, move the RPATH_LIST and PRIVATE_LIBS assignments
447 past the various prefix/libdir assignments, to allow for using those
448 symbols, e.g., as done via CF_SHARED_OPTS.
449 + improve ncurses*-config and pc-files by filtering out linker-specs.
450 + modify test-package to more closely match Fedora's configuration
451 for PIE/PIC feature and debug-packages.
454 + correct pathname used in Ada95 sample programs for explain.txt, to
455 work with test-packages.
456 + improve tracemunch:
457 + keep track of TERMINAL* values
458 + if tracing was first turned on after initialization, attempt to
459 show distinct screen, window and terminal names anyway.
460 + ensure that GCC_NORETURN is defined in term.h, because the prototype
461 for exit_terminfo() uses it (report by Werner Fink).
464 + add exit_curses() and exit_terminfo() to replace internal symbols for
468 + fix a few warnings for test-package builds
469 + add curses_trace(), to replace trace().
472 + add portability section to curs_getcchar manpage (prompted by
473 discussion with Nick Black).
474 + improve portability discussion of ACS characters in curs_addch
476 + improve typography for double-quotes in manpages.
479 + fix typo for MinGW rpm test-package.
480 + workaround in rpm specs for NFS problems in Fedora 31.
483 + modify ncurses/Makefile.in to fix a case where Debian/testing changes
484 to the ld --as-needed configuration broke ncurses-examples test
486 + drop library-dependency on psapi for MinGW port, since win_driver.c
487 defines PSAPI_VERSION to 2, making it use GetProcessImageFileName
488 from kernel32.dll (prompted by patch by Simon Sobish, cf: 20140503).
491 + add warning-check in tic for terminals with parm_dch vs parm_ich.
492 + drop ich1 from rxvt-basic, Eterm and mlterm to improve compatibility
493 with old non-curses programs -TD
494 + reviewed st 0.8.2, updated some details -TD
495 + use ansi+rep several places -TD
496 + corrected tic's check for ich1 (report by Sebastian J. Bronner,
500 + check parameter of set_escdelay, return ERR if negative.
501 + check parameter of set_tabsize, return ERR if not greater than zero
502 (report/patch by Anthony Sottile).
503 + revise CF_ADD_LIBS macro to prepend rather than append libraries.
504 + add "xterm-mono" to help packagers (report by Sven Joachim) -TD
507 + add a note in man/curs_add_wch.3x about Unicode terminology for the
508 line-drawing characters (report by Nick Black).
509 + improve comment in lib_tgoto.c regarding the use of \200 where a
510 \0 would be intended by the caller (report by "64 bit", cf: 20000923).
511 + modify linux-16color to accommodate Linux console driver change in
512 early 2018 (report by Dino Petrucci).
515 + modify make_hash to not require --disable-leaks, to simplify building
516 with address-sanitizer.
517 + modify tic to exit if it cannot remove a conflicting name, because
518 treating that as a partial success can cause an infinite loop in
519 use-resolution (report/testcase by Hongxu Chen, cf: 20111001).
522 + improve buffer-checks in captoinfo.c, for some cases when the
523 input string is shorter than expected.
524 > fix two errata in tic (report/testcases by Hongxu Chen):
525 + check for missing character after backslash in write_it
526 + check for missing characters after "%>" when converting from termcap
530 + amend recent changes to ncurses*-config and pc-files to filter out
531 Debian linker-flags (report by Sven Joachim, cf: 20150516).
532 + clarify relationship between tic, infocmp and captoinfo in manpage.
533 + check for invalid hashcode in _nc_find_type_entry and
535 > fix several errata in tic (reports/testcases by "zjuchenyuan"):
536 + check for invalid hashcode in _nc_find_entry.
537 + check for missing character after backslash in fmt_entry
538 + check for acsc with odd length in dump_entry in check for one-one
539 mapping (cf: 20060415);
540 + check length when converting from old AIX box_chars_1 capability,
541 overlooked in changes to eliminate strcpy (cf: 20001007).
544 + modify the ncurse*-config and pc-files to more closely match for the
548 + amend the ncurses*-config and pc-files to take into account the rpath
549 hack which differed between those files.
550 + improve -L option filtering in ncurses*-config
551 + improve recovery from error when reading command-character in
552 test/ncurses.c, showing the relevant error message and not exiting on
556 + add a note in resizeterm manpage about top-level windows which touch
557 the screen's borders.
558 + modify configure-checks for gnat to identify each of the tools path
562 + build-fixes for Ada95 configure-script and corresponding test package
565 + add --with-ada-libname option and modify Ada95 configuration to
566 allow renaming the "AdaCurses" library (prompted by proposed changes
568 + modify configure script to distinguish gcc from icc and clang when
569 the --enable-warnings option is not used, to avoid unnecessary
570 warnings about unrecognized inline options (report by Sven Joachim).
573 + build-fixes for configuration using --program-suffix with Ada95,
574 noticed with MacOS but applicable to other platforms without
578 + fix some cppcheck warnings, mostly style, in ncurses test-programs.
581 + amend 20181208 changes for wbkgd() and wbkgrnd(), fixing a few
582 details where it still differed from SVr4.
583 + fix some cppcheck warnings, mostly style, in ncurses test-programs.
586 + fix a few more coverity warnings.
589 + improve loop limits in _nc_scroll_window() to handle a case where
590 the scrolled data is a pad which is taller than the window (patch
592 + amend the change to screen, because tmux relies upon that entry
593 and does not support that feature (Debian #933572) -TD
594 + updated ms-terminal entry & notes -TD
595 + updated kitty entry & notes -TD
596 + updated alacritty+common entry & notes -TD
597 + use xterm+sl-twm for consistency -TD
600 + fix a few more coverity warnings.
601 + more documentation updates based on tctest.
604 + fix a few coverity warnings.
605 + documentation updates based on tctest.
608 + fix a few warnings for gcc 4.x
609 + add some portability/historical details to the tic, toe and infocmp
611 + correct fix for broken link from terminfo(5) to tabs(1) manpage
612 (report by Sven Joachim).
615 + change reset's behavior for margins to simply clear soft-margins if
616 possible, rather than clearing and then setting them according to the
617 terminal's width (suggested by Thomas Wolff).
618 + correct order of one wbkgd versus start_color call in test/padview.c
622 + improve comments for recent changes, add alias xterm.js -TD
625 + add --with-tic-path and --with-infocmp-path to work around problems
626 building fallback source using pre-6.0 tic/infocmp.
627 + add a check in tic for paired indn/rin
628 + correct a buffer-limit in write_entry.c for systems that use caseless
630 + add ms-terminal -TD
631 + add vscode, vscode-direct -TD
634 + improve the tabs.1 manual page to distinguish the PWB/Unix and 7th
635 Edition versions of the tabs utility.
636 + add configure check for getenv() to work around implementation shown
637 in Emscripten #6766, use that to optionally suppress START_TRACE
638 macro, whose call to getenv() may not work properly (report by Ilya
640 + modify initialization functions to avoid relying upon persistent
641 data for the result from getenv().
642 + update config.guess, config.sub
645 + expand the portability section of the man/tabs.1 manual page.
646 + regenerate HTML manpages.
649 + add mintty, mintty-direct (adapted from patch by Thomas Wolff).
650 Some of the suggested user-defined capabilities are commented-out,
651 to allow builds with ncurses 5.9 and 6.0
652 + add Smol/Rmol for tmux, vte-2018 (patch by Nicholas Marriott).
653 + add rs1 to konsole, mlterm -TD
654 + modify _nc_merge_entry() to make a copy of the data which it merges,
655 to avoid modifying the source-data when aligning extended names.
658 + modify an internal call to vid_puts to pass extended color pairs
659 e.g., from tty_update.c and lib_mvcur.c (report by Niegodziwy Beru).
660 + improve manual page description of init_tabs capability and TABSIZE
664 + modify reset_cmd.c to allow for tabstops at intervals other than 8
665 (report by Vincent Huisman).
668 + update xterm-new to xterm patch #345 -TD
669 + add/use xterm+keypad in xterm-new (report by Alain D D Williams) -TD
670 + update terminator entry -TD
671 + remove hard-tabs from ti703 (report by Robert Clausecker)
672 + mention meml/memu/box1 in user_caps manual page.
673 + mention user_caps.5 in tic and infocmp manual pages.
676 + fix a spurious blank line seen with "infocmp -1fx xterm+x11mouse"
677 + add checks in repair_subwindows() to keep the current position and
678 scroll-margins inside the resized subwindow.
679 + add a limit check in newline_forces_scroll() for the case where the
680 row is inside scroll-margins, but not at the end (report by Toshio
681 Kuratomi, cf: 20170729).
682 + corrected a warning message in tic for extended capabilities versus
683 number of parameters.
686 + improve workaround for Solaris wcwidth versus line-drawing characters
687 (report by Pavel Stehule).
688 + add special case in tic to validate RGB string-capability extension.
689 + corrected string/parameter-field for RGB in Caps-ncurses.
692 + corrected problem in terminfo load/realignment which prevented
693 infocmp from comparing extended capabilities with the same name
697 + improve ifdef's for TABSIZE variable, to help with AIX/HPUX ports.
700 + check for TABSIZE variable in test/configure script.
701 + used test/test_arrays.c to improve Caps.aix1 and Caps.hpux11
702 + corrected filtering of comments in MKparametrized.sh
703 + reduce duplication across Caps* files by moving some parts which do
704 not depend on order into Caps-ncurses.
707 + modify MKcaptab.sh, MKkey_defs.sh, and MKhashsize.sh to handle
709 + build-fixes if extended-functions are disabled.
712 + add "screen5", to mention italics (report by Stefan Assmann)
713 + modify description of xterm+x11hilite to eliminate unused p5 -TD
714 + add configure script checks to help with a port to Ultrix 3.1
715 (report by Dennis Grevenstein).
716 + check if "b" binary feature of fopen works
717 + check for missing feature of locale.h
718 + add fallback for strstr() in test-programs
719 + add fallback for STDOUT_FILENO in test-programs
720 + update config.guess, config.sub
723 + move macro for is_linetouched() inside NCURSES_NOMACROS ifndef.
724 + corrected prototypes in several manpages using script to extract
725 those in compilable form.
726 + use _nc_copy_termtype2() rather than direct assignment in setupterm,
727 in case it is called repeatedly using fallback terminfo descriptions
728 (report/patch by Werner Fink).
731 + regenerate llib-* files.
732 + modify tic to also use new function for user-defined capability info.
733 + modify _nc_parse_entry() to check if a user-defined capability has
734 an unexpected type; ignore it in that case.
735 + fix a special case of link-anchors in generated Ada html files.
736 + use newer rel=author tag in generated html rather than rev=made,
737 which did not become accepted.
740 + in-progress changes to add parameter-checking for common user-defined
742 + update MKcodes.awk and MKnames.awk to ignore the new "userdef"
743 data in Caps-ncurses (cf: 20190302).
746 + corrected some of the undocumented terminfo names in Caps.hpux11
747 + add "Caps-ncurses" file to help with checking inconsistencies in some
748 user-defined capabilities.
749 + amend check for repeat_char to handle a case where setlocale() was
750 called after initscr() (report by "Ampera").
753 + fix typo in adds200 -TD
754 + add tic check for consistent alternate character set capabilities.
755 + improve check in mvcur() to decide whether to use hard-tabs, using
756 xt, tbc and hts as clues.
757 + replace check in reset command for obsolete "pt" capability using
758 tbc and hts capabilities as clues (report by Nicolas Marriott).
761 + improve manual page description of TABSIZE.
762 + add test/demo_tabs program.
765 + add check in tic to provide warnings for mismatched number of
766 parameters in the documented user-capability extensions.
769 + modify rpm test-package ".spec" file to work around naming conflict
770 with Redhat's package for ncurses6.
771 + modify no-leaks code in test/picsmap to avoid non-standard tdestroy.
772 + amend change to configure script which altered the top-level makefile
773 to avoid attempting to install the terminfo database when it was not
774 configured, to allow for installing the ".pc" files which are also
775 in the misc directory (report by Steve Wills).
778 + change some "%define" statements in test-packages for RPMs to
779 "%global" to work around changes in rpm 4.14 from recent Redhat.
780 + fixes for O_INPUT_FIELD extension (patch by Leon Winter).
781 + eliminate fixed buffer-size when reading $TERMCAP variable.
782 + correct logic in read_entry.c which prevented $TERMCAP variable from
783 being interpreted as a fallback to terminfo entry (prompted by
784 Savannah #54556, cf: 20110924).
787 + add a check in test/configure to work around non-ncurses termcap.h
789 + corrected flag for "seq" method of db 1.8.5 interface, needed by toe
791 + updated "string-hacks" feature.
792 + minor improvements to manpage typography.
793 + corrected conditionally-compiled limit on color pairs (report by
795 + add -x option to test/pair_content, test/color_content for testing
796 init_extended_pair, extended_pair_content, init_extended_color,
797 extended_color_content
798 + add -p option to test/pair_content, test/color_content to show the
799 return values from the tested functions.
800 + improve manual page curs_color.3x discussion of error returns and
802 + add O_INPUT_FIELD extension to form library (patch by Leon Winter).
803 + override/suppress --enable-db-install if --disable-database configure
805 + change a too-large terminal entry in tic from a fatal error to a
806 warning (prompted by discussion with Gabriele Balducci).
809 + fix typo in term(5), improve explanation of format (report by Otto
811 + add nsterm-direct -TD
812 + use SGR 1006 mouse for konsole-base -TD
813 + use SGR 1006 mouse for putty -TD
814 + add ti703/ti707, ti703-w/ti707-w (Robert Clausecker)
817 + add dummy "check" rule in top-level and test-Makefile to simply
818 building test-packages for Arch.
819 + modify configure script to avoid conflict with a non-POSIX feature
820 that enables all parts of the system headers by default. Some
821 packagers have come to rely upon this behavior (FreeBSD #234049).
822 + update config.guess, config.sub
825 + improve man/curs_mouse.3x with regard to xterm
826 + modify tracemunch to accept filename parameters in addition to use
828 + minor optimization to reduce calls to _nc_reserve_pairs (prompted by
829 discussion with Bryan Christ).
830 + add test/pair_content.c and test/color_content.c
831 + modify infocmp to omit filtering of "OTxx" names which are used for
832 obsolete capabilities, when the output is sorted by long-names.
833 Doing this helps when making a table of the short/long capability
837 + several fixes for gcc8 strict compiler warnings.
838 + fix a typo in comments (Aaron Gyes).
839 + add nsterm-build309 to replace nsterm-256color, assigning the latter
840 as an alias of nsterm, to make mouse work with nsterm-256color -TD
841 + base gnome-256color entry on "gnome", not "vte", for consistency -TD
842 + updates for configure macros from work on tin and xterm:
843 + CF_GNU_SOURCE, allow for Cygwin's newlib when checking for the
844 _DEFAULT_SOURCE symbol.
845 + CF_VA_COPY, add fallback check if neither va_copy/__va_copy is
846 supported, to try copying the pointers for va_list, or as an array.
847 Also add another fallback check, for __builtin_va_copy(), which
848 could be used with AIX xlc in c89 mode.
851 + modify wbkgd() and wbkgrnd() to improve compatibility with SVr4
852 curses, changing the way the window rendition is updated when the
853 background character is modified (report by Valery Ushakov).
856 + add midnightbsd to CF_XOPEN_SOURCE macro (patch by Urs Jansen).
857 + add "@" command to test/ncurses F-test, to allow rapid jump to
858 different character pages.
859 + update config.guess, config.sub from
860 http://git.savannah.gnu.org/cgit/config.git
863 + build-fix (reports by Chih-Hsuan Yen, Sven Joachim).
866 + check --with-fallbacks option to ensure there is a value, and add
867 the fallback information to top-level Makefile summary.
868 + add some traces in initialization to show whether a fallback entry is
870 + build-fix for test/movewindow with ncurses-examples on Solaris.
871 + add "-l" option to test/background, to dump screen contents in a form
872 that lets different curses implementations be compared.
873 + modify the initialization checks for mouse so that the xterm+sm+1006
874 block will work with terminal descriptions not mentioning xterm
875 (report by Tomas Janousek).
878 + ignore the hex/b64 $TERMINFO in toe's listing.
879 + correct a status-check in _nc_read_tic_entry() so that if reading
880 a hex/b64 $TERMINFO, and the $TERM does not match, fall-through to
881 the compiled-in search list.
884 + several workarounds to ensure proper C compiler used in parts of
886 + update config.guess, config.sub from
887 http://git.savannah.gnu.org/cgit/config.git
890 + add OpenGL clients alacritty and kitty -TD
891 + add Smulx for tmux, vte-2018 -Nicholas Marriott
894 + ignore $TERMINFO as a default value in configure script if it came
895 from the infocmp -Q option.
896 + allow value for --with-versioned-syms to be a relative pathname
897 + add a couple of broken-linker symbols to the list of versioned
898 symbols to help with link-time optimization versus weak symbols.
899 + apply shift/control/alt logic when decoding xterm's 1006 mode to
900 wheel-mouse events (Redhat #1610681).
903 + amend change from 20180818, which undid a fix for the $INSTALL value
904 to make it an absolute path.
907 + improve a configure check to work with newer optimizers (report by
908 Denis Pronin, Gentoo #606142).
909 + fix typo in tput.c (Sven Joachim, cf: 20180825).
912 + fix typo in tvi955 -TD
913 + corrected acsc for regent60 -TD
914 + add alias n7900 -TD
915 + corrected acsc for tvi950 -TD
916 + remove bogus kf0 from tvi950 -TD
917 + added function-key definitions to agree with Televideo 950 manual -TD
918 + add bel to tvi950 -TD
919 + add shifted function-keys to regent60 -TD
920 + renumber regent40 function-keys to match manual -TD
921 + add cd (clr_eos) to adds200 -TD
924 + build-fix: remove a _tracef call which was used for debugging (report
928 + ignore interrupted system-call in test/ncurses's command-line, e.g.,
929 if the terminal were resized.
930 + add shift/control/alt logic for decoding xterm's 1006 mode (Redhat
931 #1610681, cf: 20141011).
932 + modify rpm test-packages to not use --disable-relink with Redhat,
933 since Fedora 28's tools do not work with that feature.
936 + document --with-pcre2 configure option in INSTALL.
937 + improve workaround for special case in PutAttrChar() where a cell is
938 marked as alternate-character set, to handle a case where the
939 character in the cell does not correspond to any of the ASCII
940 fallbacks (report by Leon Winter, cf: 20180505).
941 + amend change to form library which attempted to avoid unnecessary
942 update of cursor position in non-public fields, to simply disable
943 output in this case (patch by Leon Winter, cf: 20180414).
944 + improve check for LINE_MAX runtime limit, to accommodate broken
945 implementations of sysconf().
948 + improve manual page for wgetnstr, giving background for the length
950 + define a limit for wgetnstr, wgetn_wstr when length is negative or
952 + update configure script to autoconf 2.52.20180819 (Debian #887390).
955 + add a section to tput manual page clarifying how it determines the
956 terminal size (prompted by discussion with Grant Jenks).
957 + add "--disable-relink" to rpm test-packages, for consistency with the
959 + split spec-file into ncurses6.spec and ncursest6.spec to work around
960 toolset breakage in Fedora 28.
961 + drop mention of "--disable-touching", which was not in the final
965 + build-fix for PDCurses with ncurses-examples.
966 + improved CF_CC_ENV_FLAGS.
967 + modify configure scripts to reduce relinking/ranlib during library
968 install (Debian #903790):
969 + use "install -p" when available, to avoid need for ranlib of
971 + modify scripts which use "--disable-relink" to add a 1-second
972 sleep to work around tools which use whole-second timestamps, e.g.,
973 in utime() rather than the actual file system resolution.
976 + improve logic for clear with E3 extension, in case the terminal
977 scrolls content onto its saved-lines before actually clearing
978 the display, by clearing the saved-lines after clearing the
979 display (report/patch by Nicholas Marriott).
982 + improve documentation regarding feature-test macros in curses.h
983 + improve documentation regarding the virtual and physical screens.
984 + formatting fixes for manpages, regenerate man-html documentation.
987 + build-fixes for gcc8.
988 + corrected acsc for wy50 -TD
989 + add wy50 and wy60 shifted function-keys as kF1 to kF16 -TD
990 + remove ansi+rep mis-added to interix in 2018-02-23 -TD
993 + add enum, regex examples to test/demo_forms
994 + add configure check for pcre-posix library to help with MinGW port.
997 + build-fixes for gcc8.
998 + correct order of WINDOW._ttytype versus WINDOW._windowlist in
1000 + fix a case where tiparm could return null if the format-string was
1001 empty (Debian #902630).
1004 + add acsc string to vi200 (Nibby Nebbulous)
1005 add right/down-arrow to vi200's acsc -TD
1006 + add "x" to tput's getopt string so that "tput -x clear" works
1007 (Nicholas Marriott).
1008 + minor fixes prompted by anonymous report on stack overflow:
1009 + correct order of checks in _nc_get_locale(), for systems lacking
1011 + add "#error" in a few places to flag unsupported configurations
1014 + use _WIN32/_WIN64 in preference to __MINGW32__/__MINGW64__ symbols
1015 to simplify building with MSVC, since the former are defined in both
1016 compiler configurations (report by Ali Abdulkadir).
1017 + further improvements to configure-checks from work on dialog, i.e.,
1018 updated CF_ADD_INCDIR, CF_FIND_LINKAGE, CF_GCC_WARNINGS,
1019 CF_GNU_SOURCE, CF_LARGEFILE, CF_POSIX_C_SOURCE, CF_SIZECHANGE, and
1020 CF_TRY_XOPEN_SOURCE.
1021 + update config.guess, config.sub from
1022 http://git.savannah.gnu.org/cgit/config.git
1025 + build-fix for ncurses-examples related to gcc8-fixes (cf: 20180526).
1026 + reduce use of _GNU_SOURCE for current glibc where _DEFAULT_SOURCE
1027 combines with _XOPEN_SOURCE (Debian #900987).
1028 + change target configure level for _XOPEN_SOURCE to 600 to address
1029 use of vsscanf and setenv.
1030 + improved configure-checks CF_SIZECHANGE and CF_STRUCT_TERMIOS from
1034 + modify generated ncurses*config and ncurses.pc, ncursesw.pc, etc.,
1035 to list helper libraries such as gpm for static linking (Debian
1037 + marked vwprintw and vwscanw as deprecated; recommend using vw_printw
1038 and vw_scanw, respectively.
1041 + add RPM test-package "ncursest-examples".
1042 + modified RPM test-package to work with Mageia6.
1045 + add note in curs_util.3x about unctrl.h
1046 + review/improve header files to ensure that those include necessary
1047 files except for the previously-documented cases (report by Isaac
1049 + improved test-package scripts, adapted from byacc 1.9 20180525.
1050 + fix some gcc8 warnings seen in Redhat package build, but
1051 work around bug in gcc8 compiler warnings in comp_parse.c
1054 + formatting fixes for manpages, regenerate man-html documentation.
1055 + trim spurious whitespace from tmux in 2018-02-24 changes;
1056 fix some inconsistencies in/between tmux- and iterm2-entries for SGR
1057 (report by C Anthony Risinger)
1058 + improve iterm2 using some xterm features which it has adapted -TD
1059 + add check in pair_content() to handle the case where caller asks
1060 for an uninitialized pair (Debian #898658).
1063 + remove trailing ';' from GCC_DEPRECATED definition.
1064 + repair a change from 20110730 which left an error-check/warning dead.
1065 + fix several minor Coverity warnings.
1068 + add deprecation warnings for internal functions called by older
1070 + fix a special case in PutAttrChar() where a cell is marked as
1071 alternate-character set, but the terminal does not actually support
1072 the given graphic character. This would happen in an older terminal
1073 such as vt52, which lacks most line-drawing capability.
1074 + use configure --with-config-suffix option to work around filename
1075 conflict with Debian packages versus test-packages.
1076 + update tracemunch to work with perl 5.26.2, which changed the rules
1077 for escaping regular expressions.
1080 + document new form-extension O_EDGE_INSERT_STAY (report by Leon
1082 + correct error-returns listed in manual pages for a few form functions
1083 (report by Leon Winter).
1084 + add a check in form-library for null-pointer dereference:
1085 unfocus_current_field (form);
1086 form_driver (form, REQ_VALIDATION);
1087 (patch by Leon Winter).
1090 + modify form library to optionally delay cursor movement on a field
1091 edge/boundary (patch by Leon Winter).
1092 + modify form library to avoid unnecessary update of cursor position in
1093 non-public fields (patch by Leon Winter).
1094 + remove unused _nc_import_termtype2() function.
1095 + also add/improve null-pointer checks in other places
1096 + add a null-pointer check in _nc_parse_entry to handle an error when
1097 a use-name is invalid syntax (report by Chung-Yi Lin).
1100 + clarify in manual pages that vwprintw and vwscanw are obsolete,
1101 not part of X/Open Curses since 2007.
1102 + use "const" in some prototypes rather than NCURSES_CONST where X/Open
1103 Curses was updated to do this, e.g., wscanw, newterm, the terminfo
1104 interface. Also use "const" for consistency in the termcap
1105 interface, which was withdrawn by X/Open Curses in Issue 5 (2007).
1106 As of Issue 7, X/Open Curses still lacks "const" for certain return
1107 values, e.g., keyname().
1110 + improve terminfo write/read by modifying the fourth item of the
1111 extended header to denote the number of valid strings in the extended
1112 string table (prompted by a comment in unibilium's sources).
1115 + amend Scaled256() macro in test/picsmap.c to cover the full range
1116 0..1000 (report by Roger Pau Monne).
1117 + add some checks in tracemunch for undefined variables.
1118 + trim some redundant capabilities from st-0.7 -TD
1119 + trim unnecessary setf/setb from interix -TD
1122 + fix a check in infotocap which may not have detected a problem when
1124 + add a check in tic for the case where setf/setb are given using
1125 different strings, but provide identical results to setaf/setab.
1126 + further improve fix for terminfo.5 (patch by Kir Kolyshkin).
1127 + reorder loop-limit checks in winsnstr() in case the string has no
1128 terminating null and only the number of characters is used (patch
1132 + modify TurnOn/TurnOff macros in lib_vidattr.c and lib_vid_attr.c to
1133 avoid expansion of "CUR" in trace.
1134 + improve a few lintian warnings in test-packages.
1135 + modify lib_setup to avoid calling pthread_self() without first
1136 verifying that the address is valid, i.e., for weak symbols
1137 (report/patch by Werner Fink).
1138 + modify generated terminfo.5 to not use "expand" and related width
1139 on the last column of tables, making layout on wide terminals look
1140 better (adapted from patch by Kir Kolyshkin).
1141 + add a category to report_offsets, e.g., "w" for wide-character, "t"
1142 for threads to make the report more readable. Reorganized the
1143 structures reported to make the categories more apparent.
1144 + simplify some ifdef's for extended-colors.
1145 + add NCURSES_GLOBALS and NCURSES_PRESCREEN to report_offsets, to show
1146 how similar the different tinfo configurations are.
1149 + modify _nc_resolve_uses2() to detect incompatible types when merging
1150 a "use=" clause of extended capabilities. The problem was seen in a
1151 defective terminfo integrated from simpleterm sources in 20171111,
1152 compounded by repair in 20180121.
1153 + correct Ss/Ms interchange in st-0.7 entry (tmux #1264) -TD
1154 + fix remaining flash capabilities with trailing mandatory delays -TD
1155 + correct cut/paste in NEWS (report by Sven Joachim).
1158 + remove incorrect free() from 20170617 changes (report by David Macek).
1159 + correct type for "U8" in user_caps.5; it is a number not boolean.
1160 + add a null-pointer check in safe_sprintf.c (report by Steven Noonan).
1161 + improve fix for Debian #882620 by reusing limit2 variable (report by
1162 Julien Cristau, Sven Joachim).
1165 + modify misc/Makefile.in to install/uninstall explicit list in case
1166 the build-directory happens to have no ".pc" files when an uninstall
1167 is performed (report by Jeffrey Walton).
1168 + deprecate safe-sprintf, since the vsnprintf function, which does what
1169 was needed, was standardized long ago.
1170 + add several development/experimental options to development packages.
1171 + minor reordering of options in configure script to make the threaded
1172 and reentrant options distinct from the other extensions which are
1176 + minor fixes to test/*.h to make them idempotent.
1177 + add/use test/parse_rgb.h to show how the "RGB" capability works.
1178 + add a clarification in user_caps.5 regarding "RGB" capability.
1179 + add extended_slk_color{,_sp} symbols to the appropriate
1180 package/*.{map,sym} files (report by Sven Joachim, cf: 20170401).
1183 + update "VERSION" file, used in shared-library naming.
1185 20180127 6.1 release for upload to ftp.gnu.org
1188 + updated release notes
1189 + amend a warning message from tic which should have flagged misuse
1190 of "XT" capability in "screen" terminal description.
1192 + trim "XT" from screen entry, add comments to explain why it was
1194 + modify iterm to use xterm+sl-twm building block -TD
1195 + mark konsole-420pc, konsole-vt100, konsole-xf3x obsolete reflecting
1196 konsole's removal in 2008 -TD
1197 + expanded the history section of konsole to explain its flawed
1198 imitation of xterm's keyboard -TD
1199 + use xterm+x11mouse in screen.* entries because screen does not yet
1200 support xterm's 1006 mode -TD
1201 + add nsterm-build400 for macOS 10.13 -TD
1202 + add ansi+idc1, use that in ansi+idc adding dch for consistency -TD
1203 + update vte to vte-2017 -TD
1204 + add ecma+strikeout to vte-2017 -TD
1205 + add iterm2-direct -TD
1206 + updated teraterm, added teraterm-256color -TD
1207 + add mlterm-direct -TD
1208 + add descriptions for ANSI building-blocks -TD
1210 20180121 pre-release
1212 + add xterm+noalt, xterm+titlestack, xterm+alt1049, xterm+alt+title
1213 blocks from xterm #331 -TD
1214 + add xterm+direct, xterm+indirect, xterm-direct entries from xterm
1216 + modify xterm+256color and xterm+256setaf to use correct number of
1217 color pairs, for ncurses 6.1 -TD
1218 + add rs1 capability to xterm-256color -TD
1219 + modify xterm-r5, xterm-r6 and xterm-xf86-v32 to use xterm+kbs to
1220 match xterm #272, reflecting packager's changes -TD
1221 + remove "boolean" Se, Ss from st-0.7 -TD
1222 + add konsole-direct and st-direct -TD
1223 + remove unsupported "Tc" capability from st-0.7; use st-direct if
1224 direct-colors are wanted -TD
1225 + add vte-direct -TD
1226 + add XT, hpa, indn, and vpa to screen, and invis, E3 to tmux (patch by
1228 + use xterm+sm+1006 in xterm-new, vte-2014 -TD
1229 + use xterm+x11mouse in iterm, iterm2, mlterm3 because xterm's 1006
1230 mode does not work with those programs. konsole is debatable -TD
1231 + add "termite" entry (report by Markus Pfeiffer) -TD
1232 > merge branch begun April 2, 2017 which provides these features:
1233 + support read/write new binary-format for terminfo which stores
1234 numeric capabilities as a signed 32-bit integer. The test programs
1235 such as picsmap, ncurses were created or updated during 2017 to use
1237 + the new format is written by the wide-character configuration of
1238 tic when it finds a numeric capability larger than 32767.
1239 + other applications such as infocmp built with the wide-character
1240 ncurses library work as expected.
1241 + applications built with the "narrow" (8-bit) configuration will
1242 read the new format, but will limit those extended values to 32767.
1243 + in either wide/narrow configuration, the structure defined in
1244 term.h still uses signed 16-bit values.
1245 + because it is incompatible with the legacy (mid-1980s) binary format,
1246 a new magic value is provided for the "file" program.
1247 + the term.5 manual page is updated to describe this new format.
1248 + the limit on file-size for compiled terminfo is increased in the
1249 wide-character configuration to 32768.
1252 + build-fix in picsmap.c for stdint.h existence.
1253 + add --disable-stripping option to configure scripts.
1254 + modify ncurses-examples to install test-scripts in the data directory.
1255 + work around tool-breakage in Debian 9 and later by invoking
1256 gprconfig to specify the C compiler to be used by gnatmake,
1257 and conditionally suppressing Library_Options line for static
1259 + bump the compat level for test-packages to 7, i.e., Debian 5.
1262 + fixes for writing extended color pairs in putwin.
1263 + modify test/savescreen.c to add test patterns that exercise 88-,
1265 + modify configure option --with-build-cc, adding clang, c89 and c99
1266 as possible default values.
1267 + modify ncurses-examples configure script to use pkg-config for the
1268 extra form/menu/panel libraries, to be more consistent with the
1269 handling of the curses/ncurses library.
1270 + modify test-packages for mingw to supply "pc" files.
1271 + modify gen-pkgconfig.in to list -lpthread as a private library when
1272 configured to access it via weak symbols.
1273 + simplify gen-pkgconfig.in, adding -ltinfo without the special linker
1274 checks because some versions of the linker simply hard-code the
1276 + update URLs for ncurses website to use https.
1277 + modify CF_CURSES_LIBS to fill in $cf_nculib_root in case the
1278 ncurses-examples are built with a system ncurses that lacks the
1279 standard "curses" symbolic link, as done by SuSE. The symbol is
1280 needed to make a followup check for the pthread library work, and
1281 would be set properly using the options "--with-screen", etc.
1282 + generate misc/*.pc with "all" rule, as done for "sources" rule
1283 (report by Jeffrey Walton).
1286 + build-fix for ncurses-examples with Fedora27, adding check for
1287 reset_color_pairs() -- not yet in Fedora's package.
1288 + consistently add $CFLAGS to $MK_SHARED_LIB symbol in configure
1289 script when the latter happens to use the C compiler rather than
1290 directly using the loader (report by Jeffrey Walton).
1291 + set ABI for upcoming 6.1 release in "*.map" files. While there are
1292 some remaining internals to apply, no ABI-related changes are
1294 + add configure --with-config-suffix option to work around filename
1295 conflict with Redhat packages versus test-packages.
1298 + modify ncurses-examples to quiet const-warnings when building with
1300 + modify toe to not exit if unable to read a terminal description,
1301 e.g., if there is a permission problem.
1302 + minor fix for progs/toe.c, using _nc_free_termtype2.
1303 + assign 0 to pointer in _nc_tgetent_leak() after freeing it. Also
1304 avoid reusing pointer from previous successful call to tgetent
1305 if the latest call is unsuccessful (patch by Michael Schroeder,
1307 + minor fix for test/tracemunch, initialize $awaiting variable.
1310 + repair template in test/package/ncurses-examples.spec (cf: 20171111).
1311 + improve tic's warning about the number of parameters tparm might use
1312 for u1-u9 by making a special case for u6.
1313 + improve curs_attr.3x discussion of color pairs.
1316 + modify misc/ncurses-config.in to make output with --includedir
1317 consistent with --cflags, i.e., when --disable-overwrite option was
1318 configured the output should show the subdirectory where headers
1320 + modify MKlib_gen.sh to suppress macros when calling an "implemented"
1321 function in link_test.c
1322 + updated ftp-url used in test-packages, etc.
1323 + modify order of -pie/-shared options in configure script in case
1324 LDFLAGS uses "-pie", working around a defect or limitation in the GNU
1325 linker (prompted by patch by Yogesh Prasad, forwarded by Jay Shah).
1326 + add entry in man_db.renames for user_caps.5
1329 + modify MKlib_gen.sh to avoid tracing result from getstr/getnstr
1331 + add "-a" aspect-ratio option to picsmap.
1332 + add configure check for default path of rgb.txt, used in picsmap.
1333 + modify _nc_write_entry() to truncate too-long filename (report by
1334 Hosein Askari, Debian #882620).
1335 + build-fix for ncurses-examples with NetBSD curses:
1336 + it lacks the use_env() function.
1337 + it lacks libpanel; a recent change used the wrong ifdef symbol.
1338 + add a macro for is_linetouched() and adjust the function's return
1339 value to make it possible for most applications to check for an
1340 error-return (report by Midolikawa H).
1341 + additional manpage cleanup.
1342 + update config.guess, config.sub from
1343 http://git.savannah.gnu.org/cgit/config.git
1346 + add a note to curs_addch.3x on portability.
1347 + add a note to curs_pad.3x on the origin and portability of pads.
1348 + improve manpage description of getattrs (report by Midolikawa H).
1349 + improve manpage macros (prompted by discussion in Debian #880551.
1350 + reviewed test-programs using KEY_RESIZE, made fixes to test/worm.c
1351 + add a "-d" option to picsmap for default-colors.
1352 + modify old terminology entry and a few other terminal emulators to
1354 + correct sgr string for tmux, which used screen's "standout" code
1355 rather than the standard code (patch by Roman Kagan)
1356 + correct sgr/sgr0 strings in a few other cases reported by tic, making
1357 those correspond to the non-sgr settings where they differ, but
1358 otherwise use ECMA-48 consistently:
1359 jaixterm, aixterm, att5420_2, att4424, att500, decansi, d410-7b,
1360 dm80, hpterm, emu-220, hp2, iTerm2.app, mterm-ansi, ncrvt100an,
1361 st-0.7, vi603, vwmterm -TD
1362 + build-fix for diagnostics warning in lib_mouse.c for pre-5.0 versions
1363 of gcc which did not recognize the diagnostic "push" pragma (patch by
1367 + add "op" to xterm+256setaf -TD
1368 + reviewed terminology 1.0.0 -TD
1369 + reviewed st 0.7 -TD
1370 + suppress debug-package for ncurses-examples rpm build.
1373 + check for interrupt in color-pair initialization of dots_curses.c,
1375 + add z/Z zoom feature to test/ncurses.c C/c screens.
1376 + add '<' and '>' commands to test/ncurses.c S/s screens, to better
1377 test off-by-ones in the overlap/copywin functions.
1380 + improve man/curs_inwstr.3x, correct end-logic for lib_inwstr.c
1381 (report by Midolikawa H).
1382 + fix typo in a few places for "improvements" (patch by Sven Joachim).
1383 + clear the other half of a double-width character on which a line
1384 drawing character is drawn.
1385 + make test/ncurses.c "s" test easier to understand which subtests are
1386 available; add a "S" wide-character overlap test-screen.
1387 + modify test/ncurses.c C/c tests to allow for extended color pairs.
1388 + add endwin() call in error-returns from test/ncurses.c omitted in
1389 recent redesign of its menu (cf: 20170923).
1390 + improve install of hashed-db by removing the ".db" file as done for
1391 directory-tree terminal databases.
1392 + repair a few overlooked items in include/ncurses_defs from recent
1393 port/refactoring of test-programs (cf: 20170909).
1394 + add test/padview.c, to compare pads with direct updates in view.c
1397 + modify test/view.c to expand tabs using the ncurses library rather
1398 than in the test-program.
1399 + remove very old SIGWINCH example in test/view.c, just use KEY_RESIZE.
1400 + add -T, -e, -f -m options to "dots" test-programs.
1401 + fix a few typos in usage-messages for test-programs.
1404 + minor cleanup to test/view.c:
1405 + eliminate "-n" option by simply reading the whole file.
1406 + implement page up/down commands.
1407 + add check in tput for init/reset operands to ensure those use a
1409 + improve manual pages which discuss chtype, cchar_t types and the
1410 attribute values which can be stored in those types.
1411 + correct array-index when parsing "-T" command-line option in tabs
1413 + modify demo_new_pair.c to pass extended pairs to setcchar().
1414 + add test/dots_xcurses.c to illustrate a different approach used for
1415 extended colors which can be contrasted with dots_curses.c.
1416 + add a check in tic to note when a description uses non-mandatory
1417 delays without xon_xoff. This is not an error, but some descriptions
1418 for a terminal emulator may use the combination incorrectly.
1421 + modify "-T" option of clear and tput to call use_tioctl() to obtain
1422 the operating system's notion of the screensize if possible.
1423 + review/repair some exit-codes for tput, making usage-message exit
1424 with 2 rather than 1, and a failure to open terminal 4+errno.
1425 + amend check in tput, tabs and clear to allow those to use the
1426 database-only features in cron if a -T option gives a suitable
1427 terminal name (report by Lauri Tirkkonen).
1428 + correct an ifdef in test/ncurses.c for systems with soft-keys but
1430 + regenerate man-html documentation.
1433 + fix a symbol conflict that made ncurses.c C/c menu not work with
1434 Solaris xpg4 curses.
1435 + add refresh() call to dots_mvcur.c, needed to use mvcur() with
1436 Solaris xpg4 curses after calling newterm().
1437 + minor fixes for configure script from work on ncurses-examples and
1439 + improve animation in test/xmas.c by adding a time-delay in blinkit().
1440 + modify several test programs to reflect that ncurses honors existing
1441 signal handlers in initscr(), while other implementations do not.
1442 + modify bs.c to make it easier to quit.
1443 + change ncurses-examples to use attr_t vs chtype to follow X/Open
1444 documentation more closely since Solaris xpg4-curses uses different
1445 values for WA_xxx vs A_xxx that rely on attr_t being an unsigned
1446 short. Tru64 aka OSF1, HPUX, AIX did as ncurses does, equating the
1450 + modify menu for test/ncurses.c to fit on 24-line screen.
1451 + build-fix for configure --with-caps=uwin
1452 + add options to test_arrays.c, for selecting termcap vs terminfo, etc.
1455 + minor fix to test/filter.c to avoid clearing the command in one case.
1456 + modify filter() to discard clr_eos if back_color_erase is set.
1459 + improve wide-character implementation of myADDNSTR() in frm_driver.c,
1460 which was inconsistent with the normal implementation.
1461 + save/restore cursor position in Undo_Justification(), matching
1462 behavior of Buffer_To_Window() (report by Leon Winter).
1463 + modify test/knight to provide the "slow" solution for small screens
1464 using "R", noting that Warnsdorf's method is easily done with "a".
1465 + modify several test-programs which call use_default_colors() to
1466 consistently do this only if "-d" option is given.
1467 + additional changes to test with non-standard variants of curses:
1468 + modify a loop limit in firework.c to work around absence of limit
1469 checks in some libraries.
1470 + fill the last row of a window with "?" in firstlast if waddch does
1471 not return ERR on the lower-right corner.
1472 + add checks in test/configure for some functions not in 4.3BSD curses.
1473 + fix a regression in test/configure (cf: 20170826).
1476 + amend change for endwin-state for better consistency with the older
1477 logic (report/patch by Jeb Rosen, cf: 20170722).
1478 + modify check in fmt_entry() to handle a cancelled reset string
1479 (Debian #873746). Make similar fixes in other parts of dump_entry.c
1483 + fix a bug in repeat_char logic (cf: 20170729, report by Chris Clayton).
1486 + fixes for "iterm2" (report by Leonardo Brondani Schenkel) -TD
1487 + corrected a warning from tic about keys which are the same, to skip
1488 over missing/cancelled values.
1489 + add check in tic for unnecessary use of "2" to denote a shifted
1491 + improve checks in trim_sgr0, comp_parse.c and parse_entry.c, for
1492 cancelled string capabilities.
1493 + add check in _nc_parse_entry() for invalid entry name, setting the
1494 name to "invalid" to avoid problems storing entries.
1495 + add/improve checks in tic's parser to address invalid input
1496 + add a check in comp_scan.c to handle the special case where a
1497 nontext file ending with a NUL rather than newline is given to tic
1498 as input (Redhat #1484274).
1499 + allow for cancelled capabilities in _nc_save_str (Redhat #1484276).
1500 + add validity checks for "use=" target in _nc_parse_entry (Redhat
1502 + check for invalid strings in postprocess_termcap (Redhat #1484285)
1503 + reset secondary pointers on EOF in next_char() (Redhat #1484287).
1504 + guard _nc_safe_strcpy() and _nc_safe_strcat() against calls using
1505 cancelled strings (Redhat #1484291).
1506 + correct typo in curs_memleaks.3x (Sven Joachim).
1507 + improve test/configure checks for some curses variants not based on
1509 + add options for test/configure to disable checks for form, menu and
1513 + update "iterm" entry -TD
1514 + add "iterm2" entry (report by Leonardo Brondani Schenkel) -TD
1515 + regenerate llib-* files.
1516 + regenerate HTML manpages.
1517 + improve picsmap test-program:
1518 + reduce memory used for tsearch
1519 + add report in log file showing cumulative color coverage.
1520 + add -x option to clear/tput to make the E3 extension optional
1522 + add options -T and -V to clear command for compatibility with tput.
1523 + add usage message to clear command (Debian #371855).
1524 + improve usage messages for tset and tput.
1525 + minor fixes to "RGB" extension and reset_color_pairs().
1528 + improve description of -R option in infocmp manual page (report by
1530 + add reset_color_pairs() function.
1531 + add user_caps.5 manual page to document the terminfo extensions used
1533 + improve build scripts, using SIGQUIT vs SIGTRAP; add other configure
1534 script fixes from work on xterm, lynx and tack.
1535 + modify install-rule for ncurses-examples to put the data files in
1536 /usr/share/ncurses-examples
1537 + improve tracemunch, by changing address-parameters of add_wch(),
1538 color_content() and pair_content() to dummy parameters.
1539 + minor optimization to _nc_change_pair, to return quickly when the
1540 current screen is marked for clearing.
1541 + in-progress changes to improve performance of test/picsmap.c for
1542 loading image files.
1543 + modify allocation for SCREEN's color-pair table to start small, grow
1544 on demand up to the existing limit.
1545 + add "RGB" extension capability for direct-color support, use this to
1546 improve color_content().
1547 + improve picsmap test-program:
1548 + if no palette file is needed, attempt to load one based on $TERM,
1549 checking first in the current directory, then by adding ".dat"
1550 suffix, and finally in the data-directory, e.g.,
1551 /usr/share/ncurses-examples
1552 + add "-l" option for logging
1553 + add "-d" option for debugging
1554 + add "-s" option for stepping automatically through list of images,
1556 + use tsearch to improve time for loading color table for images.
1557 + update config.guess, config.sub from
1558 http://git.savannah.gnu.org/cgit/config.git
1561 + update interix entry using tack and SFU on Windows 7 Ultimate -TD
1562 + use ^? for kdch1 in interix (reported by Jonathan de Boyne Pollard)
1563 + add "rep" to xterm-new, available since 1997/01/26 -TD
1564 + move SGR 24 and 27 from vte-2014 to vte-2012 (request by Alain
1566 + add a check in newline_forces_scroll() in case a program moves the
1567 cursor outside scrolling margins (report by Robert King).
1568 + improve _nc_tparm_analyze, using that to extend the checks made by
1569 tic for reporting inconsistencies between the expected number of
1570 parameters for a capability and the actual.
1571 + amend handling of repeat_char capability in EmitRange (adapted from
1572 report/patch by Dick Wesseling):
1573 + translate the character to the alternate character set when the
1574 alternate character set is enabled.
1575 + do not use repeat_char for characters past 255.
1576 + document "_nc_free_tinfo" in manual page, because it could be used in
1577 tack for memory-leak checking.
1578 + add "--without-tack" configure option to refine "--with-progs"
1579 configure option. Normally tack is no longer built in-tree, but
1580 a few packagers combine it during the build. If term_entry.h is
1581 installed, there is no advantage to in-tree builds.
1582 + adjust configure-script to define HAVE_CURSES_DATA_BOOLNAMES symbol
1583 needed for tack 1.08 when built in-tree. Rather than relying upon
1584 internal "_nc_" functions, tack now uses the boolean, number and
1585 string capability name-arrays provided by ncurses and SVr4 Unix
1586 curses. It still uses term_entry.h for the definitions of the
1587 extended capability arrays.
1588 + add an overlooked null-pointer check in mvcur changes from 20170722
1591 + improve test-packages for ncurses-examples and AdaCurses for lintian
1592 + modify logic for endwin-state to be able to detect the case where
1593 the screen was never initialized, using that to trigger a flush of
1594 ncurses' buffer for mvcur, e.g., in test/dots_mvcur.c for the
1595 term-driver configuration.
1596 + add dependency upon ncurses_cfg.h to a few other internal header
1597 files to allow each to be compiled separately.
1598 + add dependency upon ncurses_cfg.h to tic's header-files; any program
1599 using tic-library will have to supply this file. Legacy tack
1600 versions supply this file; ongoing tack development has dropped the
1601 dependency upon tic-library and new releases will not be affected.
1604 + modify command-line parameters for "convert" used in picsmap to work
1605 with ImageMagick 6.8 and newer.
1606 + fix build-problem with tack and ABI-5 (Debian #868328).
1607 + repair termcap-format from tic/infocmp broken in 20170701 fixes
1609 + reformat terminfo.src with 20170513 updates.
1610 + improve test-packages to address lintian warnings.
1613 + add a note to tic manual page about -W versus -f options.
1614 + correct a limit-check in fixes from 20170701 (report by Sven Joachim).
1617 + modify update_getenv() in db_iterator.c to ensure that environment
1618 variables which are not initially set will be checked later if an
1619 application happens to set them (patch by Guillaume Maudoux).
1620 + remove initialization-check for calling napms() in the term-driver
1621 configuration; none is needed.
1622 + add help-screen to test/test_getstr.c and test/test_get_wstr.c
1623 + improve compatibility between different configurations of new_prescr,
1624 fixing a case with threaded code and term-driver where c++/demo did
1625 not work (cf: 20160213).
1626 + the fixes for Redhat #1464685 obscured a problem subsequently
1627 reported in Redhat #1464687; the given test-case was no longer
1628 reproducible. Testing without the fixes for the earlier reports
1629 showed a problem with buffer overflow in dump_entry.c, which is
1630 addressed by reducing the use of a fixed-size buffer.
1631 + add/improve checks in tic's parser to address invalid input
1632 (Redhat #1464684, #1464685, #1464686, #1464691).
1633 + alloc_entry.c, add a check for a null-pointer.
1634 + parse_entry.c, add several checks for valid pointers as well as
1635 one check to ensure that a single character on a line is not
1636 treated as the 2-character termcap short-name.
1637 + fix a memory leak in delscreen() (report by Bai Junq).
1638 + improve tracemunch, showing thread identifiers as names.
1639 + fix a use-after-free in NCursesMenu::~NCursesMenu()
1640 + further amend incorrect calls for memory-leaks from 20170617 changes
1641 (report by Allen Hewes).
1644 + modify c++/etip.h.in to accommodate deprecation of throw() and
1645 throws() in c++17 (prompted by patch by Romain Geissler).
1646 + remove some incorrect calls for memory-leaks from 20170617 changes
1647 (report by Allen Hewes).
1648 + add test-programs for termattrs and term_attrs.
1649 + modify _nc_outc_wrapper to use the standard output if the screen was
1650 not initialized, rather than returning an error.
1651 + improve checks for low-level terminfo functions when the terminal
1652 has not been initialized (Redhat #1345963).
1653 + modify make_hash to allow building with address-sanitizer,
1654 assuming that --disable-leaks is configured.
1655 + amend changes for number_format() in 20170506 to avoid undefined
1656 behavior when shifting (patch by Emanuele Giaquinta).
1659 + fill in some places where TERMTYPE2 vs TERMTYPE was not used
1660 (report by Allen Hewes).
1661 + use ExitTerminfo() internally in error-exits for ncurses' setupterm
1662 to help with leak checking.
1663 + use ExitProgram() in error-exit from initscr() to help with leak
1665 + review test-programs, adding checks for cases where the terminal
1666 cannot be initialized.
1669 + add option "-xp" to picsmap.c, to use init_extended_pair().
1670 + make simple performance fixes for picsmap.c
1671 + improve aspect ratio of images read from "convert" in picsmap.c
1674 + add option to picsmap to use color-palette files, e.g., for mapping
1676 + move the data in SCREEN used for the alloc_pair() function to the
1677 end, to restore compatibility between ncurses/ncursesw libtinfo
1678 (report/patch by Miroslav Lichvar).
1679 + add build-time utility "report_offsets" to help show when the various
1680 configurations of tinfo library are compatible or not.
1683 + improved test/picsmap.c:
1684 + lookup named colors for xpm files in rgb.txt
1685 + accept blanks in color-keys for xpm files.
1686 + if neither xbm/xpm work, try "convert", which may be available.
1689 + modify test/picsmap.c to read xpm files.
1690 + modify package/debian/* to create documentation packages, so the
1691 related files can be checked with lintian.
1692 + fix some typos in manpages (report/patch by Sven Joachim).
1695 + add test/picsmap.c to fill in some testing issues not met by dots.
1696 The initial version reads X bitmap (".xbm") files.
1697 + repair logic which forces a repaint where a color-pair's content is
1698 changed (cf: 20170311).
1699 + improve tracemunch, showing screenXX pointers as names.
1702 + modify tic/infocmp display of numeric values to use hexadecimal when
1703 they are "close" to a power of two, making the result more readable.
1704 + improve discussion of portability in curs_mouse.3x
1705 + change line-length for generated html/manpages to 78 columns from 65.
1706 + improve discussion of line-drawing characters in curs_add_wch.3x
1707 (prompted by discussion with Lorinczy Zsigmond).
1708 + cleanup formatting of hackguide.html and ncurses-intro.html
1709 + add examples for WACS_D_PLUS and WACS_T_PLUS to test/ncurses.c
1712 + corrected a case where $with_gpm was set to "maybe" after CF_WITH_GPM,
1713 overlooked in 20160528 fixes (report by Alexandre Bury).
1714 + improve a couple of test-program's help-messages.
1715 + corrected loop in rain.c from 20170415 changes.
1716 + modify winnstr and winchnstr to return error if the output pointer is
1717 null, as well as adding a null pointer check of the window pointer
1718 for better compatibility with other implementations.
1719 + improve discussion of NetBSD curses in scr_dump.5
1720 + modify LIMIT_TYPED macro in new_pair.h to avoid changing sign of the
1721 value to be limited (reports by Darby Payne, Rob Boudreau).
1722 + update config.guess, config.sub from
1723 http://git.savannah.gnu.org/cgit/config.git
1726 + build-fix for termcap-configuration (report by Chi-Hsuan Yen).
1727 + improve terminfo manual page discussion of control- and graphics-
1729 + remove tic warning about "^?" in string capabilities, which was
1730 marked as an extension (cf: 20000610, 20110820); however all Unix
1731 implementations support this and X/Open Curses does not address it.
1732 On the other hand, termcap never did support this feature.
1733 + correct missing comma-separator between string capabilities in
1734 icl6402 and m2-nam -TD
1735 + restore rmir/smir in ansi+idc to better match original ansiterm+idc,
1736 add alias ansiterm (report by Robert King).
1737 + amend an old check for ambiguous use of "ma" in terminfo versus
1738 a termcap use, if the capability is cancelled to treat it as number.
1739 + correct a case in _nc_captoinfo() which read "%%" and emitted "%".
1740 + modify sscanf calls in _nc_infotocap() for patterns "%{number}%+%c"
1741 and "%'char'%+%c" to check that the final character is really 'c',
1742 avoiding a case in icl6404 which cannot be converted to termcap.
1743 + in _nc_infotocap(), add a check to ensure that terminfo "^?" is not
1744 written to termcap, because the BSDs did not implement that.
1745 + in _nc_tic_expand() and _nc_infotocap(), improve string-length check
1746 when deciding whether to use "^X" or "\xxx" format for control
1747 characters, to make the output of tic/infocmp more predictable.
1748 + limit termcap "%d" width to 2 digits on input, and use "%2" in
1749 preference to "%02" on output.
1750 + correct terminfo/termcap conversion of "%02" and "%03" into "%2" and
1751 "%3"; the result repeated the last character.
1752 + add man/scr_dump.5 to document screen-dump format.
1755 + modify several test programs to use new popup_msgs, adapted from
1756 help-screen used in test/edit_field.c
1757 + drop two symbols obsoleted in 2004: _nc_check_termtype, and
1759 + fix some old copyright dates (cf: 20031025).
1760 + build-fixes for test/savescreen.c to work with AIX and HPUX.
1761 + minor fix to configure script, adding a backslash/continuation.
1762 + extend TERMINAL structure for ABI 6 to store numbers internally as
1763 integers rather than short, by adding new data for this purpose.
1764 + more fixes for minor memory-leaks in test-programs.
1767 + change logic in wins_nwstr() to avoid addressing data past the output
1769 + correct a call to setcchar() in Data_Entry_w() from 20131207 changes.
1770 + fix minor memory-leaks in test-programs.
1771 + further improve ifdef in term_entry.h for internal definitions not
1775 + minor fixes for vt100+4bsd, e.g., delay in sgr for consistency -TD
1776 + add smso for env230, to match sgr -TD
1777 + remove p7/protect from sgr in fbterm -TD
1778 + drop setf/setb from fbterm; setaf/setab are enough -TD
1779 + make xterm-pcolor sgr consistent with other capabilities -TD
1780 + add rmxx/smxx ECMA-48 strikeout extension to tmux and xterm-basic
1781 (discussion with Nicholas Marriott)
1782 + add test-programs sp_tinfo and extended_color
1783 + modify no-leaks code for lib_cur_term.c to account for the tgetent()
1785 + modify setupterm() to save original tty-modes so that erasechar()
1786 works as expected. Also modify _nc_setupscreen() to avoid redundant
1787 calls to get original tty-modes.
1788 + modify set_curterm() to update ttytype[] data used by longname().
1789 + modify wattr_set() and wattr_get() to return ERR if win-parameter is
1790 null, as documented.
1791 + improve cast used for null-pointer checks in header macros, to
1792 reduce compiler warnings.
1793 + modify several functions, using the reserved "opts" parameter to pass
1794 color- and pair-values larger than 16-bits:
1795 + getcchar(), setcchar(), slk_attr_set(), vid_puts(), wattr_get(),
1796 wattr_set(), wchgat(), wcolor_set().
1797 + Other functions call these with the corresponding altered behavior,
1798 including chgat(), mvchgat(), mvwchgat(), slk_color_on(),
1799 slk_color_off(), vid_attr().
1800 + add new functions for manipulating color- and pair-values larger
1801 than 16-bits. These are extended_color_content(),
1802 extended_pair_content(), extended_slk_color(), init_extended_color(),
1803 init_extended_pair(), and the corresponding sp-funcs.
1806 + fix a memory leak in the window-list when creating multiple screens
1807 (reports by Andres Martinelli, Debian #783486).
1808 + reviewed calls from link_test.c, added a few more null-pointer
1810 + add a null-pointer check in ungetmouse, in case mousemask was not
1811 called (report by "Kau").
1812 + updated curs_sp_funcs.3x for new functions.
1815 + change TERMINAL structure in term.h to make it opaque. Some
1816 applications misuse its members, e.g., directly modifying it
1817 rather than using def_prog_mode().
1818 + modify utility headers such as tic.h to make it clearer which are
1819 externals that are used by tack.
1820 + improve curs_slk.3x in particular its discussion of portability.
1821 + fix cut/paste in legacy_encoding.3x
1822 + add prototype for find_pair() to new_pair.3x (report by Branden
1824 + fix a couple of broken links in generated man-html documentation.
1825 + regenerate man-html documentation.
1828 + modify vt100 rs2 string to reset vt52 mode and scrolling regions
1829 (report/analysis by Robert King) -TD
1830 + add vt100+4bsd building block, use that for older terminals rather
1831 than "vt100" which is now mostly used as a building block for
1832 terminal emulators -TD
1833 + correct a few spelling errors in terminfo.src comments -TD
1835 + fix a typo in ncurses.c test_attr legend (patch by Petr Vanek).
1836 + changed internal colorpair_t to a struct, eliminating an internal
1837 8-bit limit on colors
1838 + add ncurses/new_pair.h
1839 + add ncurses/base/new_pair.c with alloc_pair(), find_pair() and
1840 free_pair() functions
1841 + add test/demo_new_pair.c
1844 + improve terminfo manual description of terminfo syntax.
1845 + clarify the use of wint_t vs wchar_t in curs_get_wstr.3x
1846 + improve description of endwin() in manual.
1847 + modify setcchar() and getcchar() to treat negative color-pair as an
1849 + fix a typo in include/hashed_db.h (Andre Sa).
1852 + fixes for CF_CC_ENV_FLAGS (report by Ross Burton).
1855 + fix several formatting issues with manual pages.
1856 + correct read of terminfo entry in which all strings are absent or
1857 explicitly cancelled. Before this fix, the result was that all were
1858 treated as only absent.
1859 + modify infocmp to suppress mixture of absent/cancelled capabilities
1860 that would only show as "NULL, NULL", unless the -q option is used,
1861 e.g., to show "-, @" or "@, -".
1864 + build-fixes for PGI compilers (report by Adam J. Stewart)
1865 + accept whitespace in sed expression for generating expanded.c
1866 + modify configure check that g++ compiler warnings are not used.
1867 + add configure check for -fPIC option needed for shared libraries.
1868 + let configure --disable-ext-funcs override the default for the
1869 --enable-sp-funcs option.
1870 + mark some structs in form/menu/panel libraries as potentially opaque
1871 without modifying API/ABI.
1872 + add configure option --enable-opaque-curses for ncurses library and
1873 similar options for the other libraries.
1876 + trim newlines, tabs and escaped newlines from terminfo "paths" passed
1878 + ignore zero-length files in db-iterator; these are useful for
1879 instance to suppress "$HOME/.terminfo" when not wanted.
1880 + amended "b64:" encoder to work with the terminfo reader.
1881 + modify terminfo reader to accept "b64:" format using RFC-3548 in
1882 as well as RFC-4648 url/filename-safe format.
1883 + modify terminfo reader to accept "hex:" format as generated by
1884 "infocmp -0qQ1" (cf: 20150905).
1885 + adjust authors comment to reflect drop below 1% for SV.
1888 + minor comment-fixes to help automate links to bug-urls -TD
1889 + add dvtm, dvtm-256color -TD
1890 + add settings corresponding to xterm-keys option to tmux entry to
1891 reflect upcoming change to make that option "on" by default
1892 (patch by Nicholas Marriott).
1893 + uncancel Ms in tmux entry (Harry Gindi, Nicholas Marriott).
1894 + add dumb-emacs-ansi -TD
1897 + improve discussion of early history of tput program.
1898 + incorporate A_COLOR mask into COLOR_PAIR(), in case user application
1899 provides an out-of-range pair number (report by Elijah Stone).
1900 + clarify description in tput manual page regarding support for
1901 termcap names (prompted by FreeBSD #214709).
1902 + remove a restriction in tput's support for termcap names which
1903 omitted capabilities normally not shown in termcap translations
1905 + modify configure script for clang as used on FreeBSD, to work around
1906 clang's differences in exit codes vs gcc.
1909 + improve discussion of early history of tset/reset programs.
1910 + clarify in manual pages that the optional verbose option level is
1911 available only when ncurses is configured for tracing.
1912 + amend change from 20161231 to avoid writing traces to the standard
1913 error after initializing the trace feature using the environment
1917 + amend changes for tput to reset tty modes to "sane" if the program
1918 is run as "reset", like tset. Likewise, ensure that tset sends
1919 either reset- or init-strings.
1920 + improve manual page descriptions of tput init/reset and tset/reset,
1921 to make it easier to see how they are similar and different.
1922 + move a static result from key_name() to _nc_globals
1923 + modify _nc_get_screensize to allow for use_env() and use_tioctl()
1924 state to be per-screen when sp-funcs are configured, better matching
1925 the behavior when using the term-driver configuration.
1926 + improve cross-references in manual pages for often used functions
1927 + move SCREEN field for use_tioctl() data before the ncursesw fields,
1928 and limit that to the sp-funcs configuration to improve termlib
1929 compatibility (cf: 20120714).
1930 + correct order of initialization for traces in use_env() and
1931 use_tioctl() versus first trace calls.
1934 + fix errata for ncurses-howto (report by Damien Ruscoe).
1935 + fix a few places in configure/build scripts where DESTDIR and rpath
1936 were combined (report by Thomas Klausner).
1937 + merge current st description (report by Harry Gindi) -TD
1938 + modify flash capability for linux and wyse entries to put the delay
1939 between the reverse/normal escapes rather than after -TD
1940 + modify program tabs to pass the actual tty file descriptor to
1941 setupterm rather than the standard output, making padding work
1943 + explain in clear's manual page that it writes to stdout.
1944 + add special case for verbose debugging traces of command-line
1945 utilities which write to stderr (cf: 20161126).
1946 + remove a trace with literal escapes from skip_DECSCNM(), added in
1948 + update config.guess, config.sub from
1949 http://git.savannah.gnu.org/cgit/config.git
1952 + correct parameters for copywin call in _nc_Synchronize_Attributes()
1953 (patch by Leon Winter).
1954 + improve color-handling section in terminfo manual page (prompted by
1955 patch by Mihail Konev).
1956 + modify programs clear, tput and tset to pass the actual tty file
1957 descriptor to setupterm rather than the standard output, making
1961 + add tput-colorcube demo script.
1962 + add -r and -s options to tput-initc demo, to match usage in xterm.
1963 + flush the standard output in _nc_flush for the case where SP is zero,
1964 e.g., when called via putp. This fixes a scenario where "tput flash"
1965 did not work after changes in 20130112.
1968 + add configure script option --disable-wattr-macros for use in cases
1969 where one wants to use the same headers for ncurses5/ncurses6
1970 development, by suppressing the wattr* macros which differ due to
1971 the introduction of extended colors (prompted by comments in
1972 Debian #230990, Redhat #1270534).
1973 + add test/tput-initc to demonstrate tput used to initialize palette
1975 + modify test/xterm*.dat to use the newer color4/color12 values.
1978 + improve discussion of field validation in form_driver.3x manual page.
1979 + update curs_trace.3x manual page.
1982 + modify linux-16color to not mask dim, standout or reverse with the
1984 + add 0.1sec mandatory delay to flash capabilities using the VT100
1985 reverse-video control -TD
1986 + omit selection of ISO-8859-1 for G0 in enacs capability from linux2.6
1987 entry, to avoid conflict with the user-defined mapping. The reset
1988 feature will use ISO-8859-1 in any case (Mikulas Patocka).
1989 + improve check in tic for delays by also warning about beep/flash
1990 when a delay is not embedded, or if those use the VT100 reverse
1991 video escape without using a delay.
1992 + minor fix for syntax-check of delays from 20161119 changes.
1993 + modify trace() to avoid overwriting existing file (report by Maor
1997 + add check in tic for some syntax errors of delays, as well as use of
1998 proportional delays for non-line capabilities.
1999 + document history of the clear program and the E3 extension, prompted
2000 by various discussions including
2001 http://unix.stackexchange.com/questions/87469/clearing-the-old-scrollback-buffer
2004 + improve -W option in tic/infocmp:
2005 + correct order of size-adjustments in wrapped lines
2006 + if -f option splits line, do not further split it with -W
2007 + begin a new line when adding "use=" after a wrapped line
2010 + fix typo in man/terminfo.tail (Alain Williams).
2011 + correct program-name in adacurses6-config.1 manual page.
2014 + add new function "unfocus_current_field" (Leon Winter)
2017 + modify tset -w (and tput reset) to update the program's copy of the
2018 screensize if it was already set in the system, to improve tabstop
2019 setting which relies upon knowing the actual screensize.
2020 + add functionality of tset -w to tput, like the "-c" feature this is
2021 not optional in tput.
2022 + add "clear" as a possible link/alias to tput.
2023 + improve tput's check for being called as "init" or "reset" to allow
2024 for transformed names.
2025 + split-out the "clear" function from progs/clear.c, share with
2026 tput to get the same behavior, e.g., the E3 extension.
2029 + amend internal use of tputs to consistently use the number of lines
2030 affected, e.g., for insert/delete character operations. While
2031 merging terminfo source early in 1995, several descriptions used the
2032 "*" proportional delay for these operations, prompting a change in
2034 + regenerate llib-* files.
2035 + regenerate HTML manpages.
2036 + fix several formatting issues with manual pages.
2039 + adjust size in infocmp/tic to work with strlcpy.
2040 + fix configure script to record when strlcat is found on OpenBSD.
2041 + build-fix for "recent" OpenBSD vs baudrate.
2044 + add -W option to tic/infocmp to force long strings to wrap. This is
2045 in addition to the -w option which attempts to fit capabilities into
2046 a given line-length.
2047 + add linux-m1 minitel entries (patch by Alexandre Montaron).
2048 + correct rs2 string for vt100-nam -TD
2051 + modify _nc_tic_expand to escape comma if it immediately follows a
2052 percent sign, to work with minitel change.
2053 + updated minitel and viewdata descriptions (Alexandre Montaron).
2056 + build-fix for gnat6, which unhelpfully attempts to compile C files.
2057 + fix typo in 20160910 changes (Debian #837892, patch by Sven Joachim).
2060 + trim dead code ifdef'd with HIDE_EINTR since 970830 (discussion with
2062 + trim some obsolete/incorrect wording about EINTR from wgetch manual
2063 page (patch by Leon Winter).
2064 + really correct 20100515 change (patch by Rich Coe).
2065 + add "--enable-string-hacks" option to test/configure
2066 + completed string-hacks for "sprintf", etc., including test-programs.
2067 + make "--enable-string-hacks" work with Debian by checking for the
2068 "bsd" library and its associated "<bsd/string.h>" header.
2071 + correct 20100515 change for weak signals versus sigprocmask (report
2073 + modify misc/Makefile.in to work around OpenBSD "make" which unlike
2074 all other versions of "make" does not recognize continuation lines
2076 + amend the last change to CF_C_ENV_FLAGS to move only the
2077 preprocessor, optimization and warning flags to CPPFLAGS and CFLAGS,
2078 leaving the residue in CC. That happens to work for gcc's various
2079 "model" options, but may require tuning for other compilers (report
2083 + add "v" menu entry to test/ncurses.c to show baudrate and other
2085 + add "newer" baudrate symbols from Linux and FreeBSD to progs/tset.c,
2087 + modify CF_XOPEN_SOURCE macro:
2088 + add "uclinux" to case for "linux" (patch by Yann E. Morin)
2089 + modify _GNU_SOURCE for cygwin headers, tested with cygwin 2.3, 2.5
2090 (patch by Corinna Vinschen, from changes to tin).
2091 + improve CF_CC_ENV_FLAGS macro to allow for compiler wrappers such
2092 as "ccache" (report by Enrico Scholz).
2093 + update config.guess, config.sub from
2094 http://git.savannah.gnu.org/cgit/config.git
2097 + update tput manual page to reflect changes to manipulate terminal
2098 modes by sharing functions with tset.
2099 + add the terminal-mode parts of "reset" (aka tset) to the "tput reset"
2100 command, making the two almost the same except for window-size.
2101 + adapt logic used in dialog "--keep-tite" option for test/filter.c as
2102 "-a" option. When set, test/filter attempts to suppress the
2104 + correct a typo in interix entry -TD
2107 + add a dependency upon generated-sources in Ada95/src/Makefile.in to
2108 handle a case of "configure && make install".
2109 + trim trailing blanks from include/Caps*, to work around a problem
2110 in sed (Debian #818067).
2113 + improve CF_GNU_SOURCE configure macro to optionally define
2114 _DEFAULT_SOURCE work around a nuisance in recent glibc releases.
2115 + move the terminfo-specific parts of tput's "reset" function into
2116 the shared reset_cmd.c, making the two forms of reset use the same
2118 + split-out the terminal initialization functions from tset as
2119 progs/reset_cmd.c, as part of changes to merge the reset-feature
2123 + change tset's initialization to allow it to get settings from the
2124 standard input as well as /dev/tty, to be more effective when
2125 output or error are redirected.
2126 + improve discussion of history and portability for tset/reset/tput
2130 + improve error message from tset/reset when both stderr/stdout are
2131 redirected to a file or pipe.
2132 + improve organization of curs_attr.3x, curs_color.3x
2135 + work around Debian's antique/unmaintained version of mawk when
2137 + improve test/list_keys.c, showing ncurses's convention of modifiers
2138 for special keys, based on xterm.
2141 + improve test/list_keys.c, using $TERM if no parameters are given.
2144 + build-fixes for ncurses "test_progs" rule.
2145 + amend change to CF_CC_ENV_FLAGS in 20160521 to make multilib build
2146 work (report by Sven Joachim).
2149 + build-fixes for ncurses-examples with NetBSD curses.
2150 + improve test/list_keys.c, fixing column-widths and sorting the list
2151 to make it more readable.
2154 + revise fix for Debian #805618 (report by Vlado Potisk, cf: 20151128).
2155 + modify test/ncurses.c a/A screens to make exiting on an escape
2156 character depend on the start of keypad and timeout modes, to allow
2157 better testing of function-keys.
2158 + modify rs1 for xterm-16color, xterm-88color and xterm-256color to
2159 reset palette using "oc" string as in linux -TD
2160 + use ANSI reply for u8 in xterm-new, to reflect vt220-style responses
2161 that could be returned -TD
2162 + added a few capabilities fixed in recent vte -TD
2165 + correct logic for -f option in test/demo_terminfo.c
2166 + add test/list_keys.c
2169 + further workaround for PIE/PIC breakage which causes gpm to not link.
2170 + fix most cppcheck warnings, mostly style, in ncurses library.
2173 + improved manual page description of tset/reset versus window-size.
2174 + fixes to work with a slightly broken compiler configuration which
2175 cannot compile "Hello World!" without adding compiler options
2176 (report by Ola x Nilsson):
2177 + pass appropriate compiler options to the CF_PROG_CC_C_O macro.
2178 + when separating compiler and options in CF_CC_ENV_FLAGS, ensure
2179 that all options are split-off into CFLAGS or CPPFLAGS
2180 + restore some -I options removed in 20140726 because they appeared
2181 to be redundant. In fact, they are needed for a compiler that
2182 cannot combine -c and -o options.
2185 + regenerate HTML manpages.
2186 + improve manual pages for wgetch and wget_wch to point out that they
2187 might return values without names in curses.h (Debian #822426).
2188 + make linux3.0 entry the default linux entry (Debian #823658) -TD
2189 + modify linux2.6 entry to improve line-drawing so that the linux3.0
2190 entry can be used in non-UTF-8 mode -TD
2191 + document return value of use_extended_names (report by Mike Gran).
2194 + amend change to _nc_do_color to restore the early return for the
2195 special case used in _nc_screen_wrap (report by Dick Streefland,
2197 + modify test/ncurses.c:
2198 + check return-value of putwin
2199 + correct ifdef which made the 'g' test's legend not reflect changes
2200 to keypad- and scroll-modes.
2201 + correct return-value of extended putwin (report by Mike Gran).
2204 + modify test/ncurses.c 'd' edit-color menu to optionally read xterm
2205 color palette directly from terminal, as well as handling KEY_RESIZE
2206 and screen-repainting with control/L and control/R.
2207 + add 'oc' capability to xterm+256color, allowing palette reset for
2211 + add workaround in configure script for inept transition to PIE vs
2212 PIC builds documented in
2213 https://fedoraproject.org/wiki/Changes/Harden_All_Packages
2214 + add "reset" to list of programs whose names might change in manpages
2215 due to program-transformation configure options.
2216 + drop long-obsolete "-n" option from tset.
2219 + modify test/blue.c to use Unicode values for card-glyphs when
2220 available, as well as improving the check for CP437 and CP850.
2223 + regenerate HTML manpages.
2224 + improve manual pages for utilities with respect to POSIX versus
2228 + regenerate HTML manpages.
2229 + improve test/demo_menus.c, allowing mouse-click on the menu-headers
2230 to switch the active menu. This requires a new extension option
2231 O_MOUSE_MENU to tell the menu driver to put mouse events which do not
2232 apply to the active menu back into the queue so that the application
2233 can handle the event.
2236 + improve description of tgoto parameters (report by Steffen Nurpmeso).
2237 + amend workaround for Solaris line-drawing to restore a special case
2238 that maps Unicode line-drawing characters into the acsc string for
2239 non-Unicode locales (Debian #816888).
2242 + modified test/filter.c to illustrate an alternative to getnstr, that
2243 polls for input while updating a clock on the right margin as well
2244 as responding to window size-changes.
2247 + omit a redefinition of "inline" when traces are enabled, since this
2248 does not work with gcc 5.3.x MinGW cross-compiling (cf: 20150912).
2251 + modify test/configure script to check for pthread dependency of
2252 ncursest or ncursestw library when building ncurses examples, e.g.,
2253 in case weak symbols are used.
2254 + modify configure macro for shared-library rules to use -Wl,-rpath
2255 rather than -rpath to work around a bug in scons (FreeBSD #178732,
2257 + double-width multibyte characters were not counted properly in
2258 winsnstr and wins_nwstr (report/example by Eric Pruitt).
2259 + update config.guess, config.sub from
2260 http://git.savannah.gnu.org/cgit/config.git
2263 + amend fix for _nc_ripoffline from 20091031 to make test/ditto.c work
2264 in threaded configuration.
2265 + move _nc_tracebits, _tracedump and _tracemouse to curses.priv.h,
2266 since they are not part of the suggested ABI6.
2269 + define WIN32_LEAN_AND_MEAN for MinGW port, making builds faster.
2270 + modify test/ditto.c to allow $XTERM_PROG environment variable to
2271 override "xterm" as the name of the program to run in the threaded
2275 + improve formatting of man/curs_refresh.3x and man/tset.1 manpages
2276 + regenerate HTML manpages using newer man2html to eliminate some
2277 unwanted blank lines.
2280 + ifdef'd header-file definition of mouse_trafo() with NCURSES_NOMACROS
2281 (report by Corey Minyard).
2282 + fix some strict compiler-warnings in traces.
2285 + tidy up comments about hardcoded 256color palette (report by
2286 Leonardo Brondani Schenkel) -TD
2287 + add putty-noapp entry, and amend putty entry to use application mode
2288 for better consistency with xterm (report by Leonardo Brondani
2290 + modify _nc_viscbuf2() and _tracecchar_t2() to trace wide-characters
2291 as a whole rather than their multibyte equivalents.
2292 + minor fix in wadd_wchnstr() to ensure that each cell has nonzero
2294 + move PUTC_INIT calls next to wcrtomb calls, to avoid carry-over of
2295 error status when processing Unicode values which are not mapped.
2298 + modify ncurses c/C color test-screens to take advantage of wide
2299 screens, reducing the number of lines used for 88- and 256-colors.
2300 + minor refinement to check versus ncv to ignore two parameters of
2301 SGR 38 and 48 when those come from color-capabilities.
2304 + add check in tic for use of bold, etc., video attributes in the
2305 color capabilities, accounting whether the feature is listed in ncv.
2306 + add check in tic for conflict between ritm, rmso, rmul versus sgr0.
2309 + add a paragraph to curs_getch.3x discussing key naming (discussion
2310 with James Crippen).
2311 + amend workaround for Solaris vs line-drawing to take the configure
2313 + add a configure check for wcwidth() versus the ncurses line-drawing
2314 characters, to use in special-casing systems such as Solaris.
2317 + improve CF_XOPEN_CURSES macro used in test/configure, to define as
2318 needed NCURSES_WIDECHAR for platforms where _XOPEN_SOURCE_EXTENDED
2319 does not work. Also modified the test program to ensure that if
2320 building with ncurses, that the cchar_t type is checked, since that
2321 normally is since 20111030 ifdef'd depending on this test.
2322 + improve 20121222 workaround for broken acs, letting Solaris "work"
2323 in spite of its misconfigured wcwidth which marks all of the line
2324 drawing characters as double-width.
2327 + update form_cursor.3x, form_post.3x, menu_attributes.3x to list
2328 function names in NAME section (patch by Jason McIntyre).
2329 + minor fixes to manpage NAME/SYNOPSIS sections to consistently use
2330 rule that either all functions which are prototyped in SYNOPSIS are
2331 listed in the NAME section, or the manual-page name is the sole item
2332 listed in the NAME section. The latter is used to reduce clutter,
2333 e.g., for the top-level library manual pages as well as for certain
2334 feature-pages such as SP-funcs and threading (prompted by patches by
2338 + add option to preserve leading whitespace in form fields (patch by
2340 + add missing assignment in lib_getch.c to make notimeout() work
2342 + add 't' toggle for notimeout() function in test/ncurses.c a/A screens
2343 + add viewdata terminal description (Alexandre Montaron).
2344 + fix a case in tic/infocmp for formatting capabilities where a
2345 backslash at the end of a string was mishandled.
2346 + fix some typos in curs_inopts.3x (Benno Schulenberg).
2349 + fix some inconsistencies in the pccon* entries -TD
2350 + add bold to pccon+sgr+acs and pccon-base (Tati Chevron).
2351 + add keys f12-f124 to pccon+keys (Tati Chevron).
2352 + add test/test_sgr.c program to exercise all combinations of sgr.
2355 + modify tset's assignment to TERM in its output to reflect the name by
2356 which the terminal description is found, rather than the primary
2357 name. That was an unnecessary part from the initial conversion of
2358 tset from termcap to terminfo. The termcap program in 4.3BSD did
2359 this to avoid using the short 2-character name (report by Rich
2361 + minor fix to configure script to ensure that rules for resulting.map
2362 are only generated when needed (cf: 20151101).
2363 + modify configure script to handle the case where tic-library is
2364 renamed, but the --with-debug option is used by itself without
2365 normal or shared libraries (prompted by comment in Debian #803482).
2368 + amend change for pkg-config which allows build of pc-files when no
2369 valid pkg-config library directory was configured to suppress the
2370 actual install if it is not overridden to a valid directory at
2371 install time (cf: 20150822).
2372 + modify editing script which generates resulting.map to work with the
2373 clang configuration on recent FreeBSD, which gives an error on an
2374 empty "local" section.
2375 + fix a spurious "(Part)" message in test/ncurses.c b/B tests due
2376 to incorrect attribute-masking.
2379 + modify MKexpanded.sh to update the expansion of a temporary filename
2380 to "expanded.c", for use in trace statements.
2381 + modify layout of b/B tests in test/ncurses.c to allow for additional
2382 annotation on the right margin; some terminals with partial support
2383 did not display well.
2384 + fix typo in curs_attr.3x (patch by Sven Joachim).
2385 + fix typo in INSTALL (patch by Tomas Cech).
2386 + improve configure check for setting WILDCARD_SYMS variable; on ppc64
2387 the variable is in the Data section rather than Text (patch by Michel
2388 Normand, Novell #946048).
2389 + using configure option "--without-fallbacks" incorrectly caused
2390 FALLBACK_LIST to be set to "no" (patch by Tomas Cech).
2391 + updated minitel entries to fix kel problem with emacs, and add
2392 minitel1b-nb (Alexandre Montaron).
2393 + reviewed/updated nsterm entry Terminal.app in OSX -TD
2394 + replace some dead URLs in comments with equivalents from the
2395 Internet Archive -TD
2396 + update config.guess, config.sub from
2397 http://git.savannah.gnu.org/cgit/config.git
2400 + modify ncurses/Makefile.in to sort keys.list in POSIX locale
2401 (Debian #801864, patch by Esa Peuha).
2402 + remove an early-return from _nc_do_color, which can interfere with
2403 data needed by bkgd when ncurses is configured with extended colors
2404 (patch by Denis Tikhomirov).
2405 > fixes for OS/2 (patches by KO Myung-Hun)
2406 + use button instead of kbuf[0] in EMX-specific part of lib_mouse.c
2407 + support building with libtool on OS/2
2408 + use stdc++ on OS/2 kLIBC
2409 + clear cf_XOPEN_SOURCE on OS/2
2412 + add configure check for openpty to test/configure script, for ditto.
2413 + minor fixes to test/view.c in investigating Debian #790847.
2414 + update autoconf patch to 2.52.20150926, incorporates a fix for Cdk.
2415 + add workaround for breakage of POSIX makefiles by recent binutils
2417 + improve check for working poll() by using posix_openpt() as a
2418 fallback in case there is no valid terminal on the standard input
2419 (prompted by discussion on bug-ncurses mailing list, Debian #676461).
2422 + change makefile rule for removing resulting.map to distclean rather
2424 + add /lib/terminfo to terminfo-dirs in ".deb" test-package.
2425 + add note on portability of resizeterm and wresize to manual pages.
2428 + clarify in resizeterm.3x how KEY_RESIZE is pushed onto the input
2430 + clarify in curs_getch.3x that the keypad mode affects ability to
2431 read KEY_MOUSE codes, but does not affect KEY_RESIZE.
2432 + add overlooked build-fix needed with Cygwin for separate Ada95
2433 configure script, cf: 20150606 (report by Nicolas Boulenguez)
2436 + fixes for configure/build using clang on OSX (prompted by report by
2438 + do not redefine "inline" in ncurses_cfg.h; this was originally to
2439 solve a problem with gcc/g++, but is aggravated by clang's misuse
2440 of symbols to pretend it is gcc.
2441 + add braces to configure script to prevent unwanted add of
2442 "-lstdc++" to the CXXLIBS symbol.
2443 + improve/update test-program used for checking existence of stdc++
2445 + if $CXXLIBS is set, the linkage test uses that in addition to $LIBS
2448 + add note in curs_addch.3x about line-drawing when it depends upon
2450 + add tic -q option for consistency with infocmp, use it to suppress
2451 all comments from the "tic -I" output.
2452 + modify infocmp -q option to suppress the "Reconstructed from"
2454 + add infocmp/tic -Q option, which allows one to dump the compiled
2455 form of the terminal entry, in hexadecimal or base64.
2458 + sort options in usage message for infocmp, to make it simpler to
2460 + update usage message for tic, adding "-0" option.
2461 + documented differences in ESCDELAY versus AIX's implementation.
2462 + fix some compiler warnings from ports.
2463 + modify --with-pkg-config-libdir option to make it possible to install
2464 ".pc" files even if pkg-config is not found (adapted from patch by
2468 + disallow "no" as a possible value for "--with-shlib-version" option,
2469 overlooked in cleanup-changes for 20000708 (report by Tommy Alex).
2470 + update release notes in INSTALL.
2471 + regenerate llib-* files to help with review for release notes.
2474 + workaround for Debian #65617, which was fixed in mawk's upstream
2475 releases in 2009 (report by Sven Joachim). See
2476 https://invisible-island.net/mawk/CHANGES.html#t20090727
2478 20150808 6.0 release for upload to ftp.gnu.org
2481 + build-fix for Ada95 on older platforms without stdint.h
2482 + build-fix for Solaris, whose /bin/sh and /usr/bin/sed are non-POSIX.
2483 + update release announcement, summarizing more than 800 changes across
2484 more than 200 snapshots.
2485 + minor fixes to manpages, etc., to simplify linking from announcement
2489 + updated llib-* files.
2490 + build-fixes for ncurses library "test_progs" rule.
2491 + use alternate workaround for gcc 5.x feature (adapted from patch by
2493 + add status line to tmux via xterm+sl (patch by Nicholas Marriott).
2494 + fixes for st 0.5 from testing with tack -TD
2495 + review/improve several manual pages to break up wall-of-text:
2496 curs_add_wch.3x, curs_attr.3x, curs_bkgd.3x, curs_bkgrnd.3x,
2497 curs_getcchar.3x, curs_getch.3x, curs_kernel.3x, curs_mouse.3x,
2498 curs_outopts.3x, curs_overlay.3x, curs_pad.3x, curs_termattrs.3x
2499 curs_trace.3x, and curs_window.3x
2502 + correct an old logic error for %A and %O in tparm (report by "zreed").
2503 + improve documentation for signal handlers by adding section in the
2504 curs_initscr.3x page.
2505 + modify logic in make_keys.c to not assume anything about the size
2506 of strnames and strfnames variables, since those may be functions
2507 in the thread- or broken-linker configurations (problem found by
2509 + modify test/configure script to check for pthreads configuration,
2510 e.g., ncursestw library.
2513 + modify scripts to build/use test-packages for the pthreads
2514 configuration of ncurses6.
2515 + add references to ttytype and termcap symbols in demo_terminfo.c and
2516 demo_termcap.c to ensure that when building ncursest.map, etc., that
2517 the corresponding names such as _nc_ttytype are added to the list of
2518 versioned symbols (report by Werner Fink)
2519 + fix regression from 20150704 (report/patch by Werner Fink).
2522 + fix a few problems reported by Coverity.
2523 + fix comparison against "/usr/include" in misc/gen-pkgconfig.in
2524 (report by Daiki Ueno, Debian #790548, cf: 20141213).
2527 + modify configure script to remove deprecated ABI 5 symbols when
2529 + add symbols _nc_Default_Field, _nc_Default_Form, _nc_has_mouse to
2530 map-files, but marked as deprecated so that they can easily be
2531 suppressed from ABI 6 builds (Debian #788610).
2532 + comment-out "screen.xterm" entry, and inherit screen.xterm-256color
2533 from xterm-new (report by Richard Birkett) -TD
2534 + modify read_entry.c to set the error-return to -1 if no terminal
2535 databases were found, as documented for setupterm.
2536 + add test_setupterm.c to demonstrate normal/error returns from the
2537 setupterm and restartterm functions.
2538 + amend cleanup change from 20110813 which removed redundant definition
2539 of ret_error, etc., from tinfo_driver.c, to account for the fact that
2540 it should return a bool rather than int (report/analysis by Johannes
2544 + fix overflow warning for OSX with lib_baudrate.c (cf: 20010630).
2545 + modify script used to generate map/sym files to mark 5.9.20150530 as
2546 the last "5.9" version, and regenerated the files. That makes the
2547 files not use ".current" for the post-5.9 symbols. This also
2548 corrects the label for _nc_sigprocmask used in when weak symbols are
2549 configured for the ncursest/ncursestw libraries (prompted by
2550 discussion with Sven Joachim).
2551 + fix typo in NEWS (report by Sven Joachim).
2553 20150606 pre-release
2554 + make ABI 6 the default by updates to dist.mk and VERSION, with the
2555 intention that the existing ABI 5 should build as before using the
2556 "--with-abi-version=5" option.
2557 + regenerate ada- and man-html documentation.
2558 + minor fixes to color- and util-manpages.
2559 + fix a regression in Ada95/gen/Makefile.in, to handle special case of
2560 Cygwin, which uses the broken-linker feature.
2561 + amend fix for CF_NCURSES_CONFIG used in test/configure to assume that
2562 ncurses package scripts work when present for cross-compiling, as the
2563 lessor of two evils (cf: 20150530).
2564 + add check in configure script to disallow conflicting options
2565 "--with-termlib" and "--enable-term-driver".
2566 + move defaults for "--disable-lp64" and "--with-versioned-syms" into
2567 CF_ABI_DEFAULTS macro.
2570 + change private type for Event_Mask in Ada95 binding to work when
2571 mmask_t is set to 32-bits.
2572 + remove spurious "%;" from st entry (report by Daniel Pitts) -TD
2573 + add vte-2014, update vte to use that -TD
2574 + modify tic and infocmp to "move" a diagnostic for tparm strings that
2575 have a syntax error to tic's "-c" option (report by Daniel Pitts).
2576 + fix two problems with configure script macros (Debian #786436,
2577 cf: 20150425, cf: 20100529).
2580 + add 'P' menu item to test/ncurses.c, to show pad in color.
2581 + improve discussion in curs_color.3x about color rendering (prompted
2582 by comment on Stack Overflow forum):
2583 + remove screen-bce.mlterm, since mlterm does not do "bce" -TD
2584 + add several screen.XXX entries to support the respective variations
2586 + add putty+fnkeys* building-block entries -TD
2587 + add smkx/rmkx to capabilities analyzed with infocmp "-i" option.
2590 + amend change to ".pc" files to only use the extra loader flags which
2591 may have rpath options (report by Sven Joachim, cf: 20150502).
2592 + change versioning for dpkg's in test-packages for Ada95 and
2593 ncurses-examples for consistency with Debian, to work with package
2595 + regenerate html manpages.
2596 + clarify handling of carriage return in waddch manual page; it was
2597 discussed only in the portability section (prompted by comment on
2598 Stack Overflow forum):
2601 + add test-packages for cross-compiling ncurses-examples using the
2602 MinGW test-packages. These are only the Debian packages; RPM later.
2603 + cleanup format of debian/copyright files
2604 + add pc-files to the MinGW cross-compiling test-packages.
2605 + correct a couple of places in gen-pkgconfig.in to handle renaming of
2609 + modify the configure script to allow different default values
2610 for ABI 5 versus ABI 6.
2611 + add wgetch-events to test-packages.
2612 + add a note on how to build ncurses-examples to test/README.
2613 + fix a memory leak in delscreen (report by Daniel Kahn Gillmor,
2615 + remove unnecessary ';' from E3 capabilities -TD
2616 + add tmux entry, derived from screen (patch by Nicholas Marriott).
2617 + split-out recent change to nsterm-bce as nsterm-build326, and add
2618 nsterm-build342 to reflect changes with successive releases of OSX
2619 (discussion with Leonardo B Schenkel)
2620 + add xon, ich1, il1 to ibm3161 (patch by Stephen Powell, Debian
2622 + add sample "magic" file, to document ext-putwin.
2623 + modify gen-pkgconfig.in to add explicit -ltinfo, etc., to the
2624 generated ".pc" file when ld option "--as-needed" is used, or when
2625 ncurses and tinfo are installed without using rpath (prompted by
2626 discussion with Sylvain Bertrand).
2627 + modify test-package for ncurses6 to omit rpath feature when installed
2629 + add OSX's "*.dSYM" to clean-rules in makefiles.
2630 + make extra-suffix work for OSX configuration, e.g., for shared
2632 + modify Ada95/configure script to work with pkg-config
2633 + move test-package for ncurses6 to /usr, since filename-conflicts have
2635 + corrected build rules for Ada95/gen/generate; it does not depend on
2636 the ncurses library aside from headers.
2637 + reviewed man pages, fixed a few other spelling errors.
2638 + fix a typo in curs_util.3x (Sven Joachim).
2639 + use extra-suffix in some overlooked shared library dependencies
2640 found by 20150425 changes for test-packages.
2641 + update config.guess, config.sub from
2642 http://git.savannah.gnu.org/cgit/config.git
2645 + expanded description of tgetstr's area pointer in manual page
2646 (report by Todd M Lewis).
2647 + in-progress changes to modify test-packages to use ncursesw6 rather
2648 than ncursesw, with updated configure scripts.
2649 + modify CF_NCURSES_CONFIG in Ada95- and test-configure scripts to
2650 check for ".pc" files via pkg-config, but add a linkage check since
2651 frequently pkg-config configurations are broken.
2652 + modify misc/gen-pkgconfig.in to include EXTRA_LDFLAGS, e.g., for the
2654 + add 'dim' capability to screen entry (report by Leonardo B Schenkel)
2655 + add several key definitions to nsterm-bce to match preconfigured
2656 keys, e.g., with OSX 10.9 and 10.10 (report by Leonardo B Schenkel)
2657 + fix repeated "extra-suffix" in ncurses-config.in (cf: 20150418).
2658 + improve term_variables manual page, adding section on the terminfo
2659 long-name symbols which are defined in the term.h header.
2660 + fix bug in lib_tracebits.c introduced in const-fixes (cf: 20150404).
2663 + avoid a blank line in output from tabs program by ending it with
2664 a carriage return as done in FreeBSD (patch by James Clarke).
2665 + build-fix for the "--enable-ext-putwin" feature when not using
2666 wide characters (report by Werner Fink).
2667 + modify autoconf macros to use scripting improvement from xterm.
2668 + add -brtl option to compiler options on AIX 5-7, needed to link
2669 with the shared libraries.
2670 + add --with-extra-suffix option to help with installing nonconflicting
2671 ncurses6 packages, e.g., avoiding header- and library-conflicts.
2672 NOTE: as a side-effect, this renames
2673 adacurses-config to adacurses5-config and
2674 adacursesw-config to adacursesw5-config
2675 + modify debian/rules test package to suffix programs with "6".
2676 + clarify in curs_inopts.3x that window-specific settings do not
2677 inherit into new windows.
2680 + improve description of start_color() in the manual.
2681 + modify several files in ncurses- and progs-directories to allow
2682 const data used in internal tables to be put by the linker into the
2683 readonly text segment.
2686 + correct cut/paste error for "--enable-ext-putwin" that made it the
2687 same as "--enable-ext-colors" (report by Roumen Petrov)
2690 + add "-f" option to test/savescreen.c to help with testing/debugging
2691 the extended putwin/getwin.
2692 + add logic for writing/reading combining characters in the extended
2694 + add "--enable-ext-putwin" configure option to turn on the extended
2698 + in-progress changes to provide an extended version of putwin and
2699 getwin which will be capable of reading screen-dumps between the
2700 wide/normal ncurses configurations. These are text files, except
2701 for a magic code at the beginning:
2702 0 string \210\210 Screen-dump (ncurses)
2705 + document limitations of getwin in manual page (prompted by discussion
2707 + extend test/savescreen.c to demonstrate that color pair values
2708 and graphic characters can be restored using getwin.
2711 + modify win_driver.c to eliminate the constructor, to make it more
2712 usable in an application which may/may not need the console window
2713 (report by Grady Martin).
2716 + capture define's related to -D_XOPEN_SOURCE from the configure check
2717 and add those to the *-config and *.pc files, to simplify use for
2718 the wide-character libraries.
2719 + modify ncurses.spec to accommodate Fedora21's location of pkg-config
2721 + correct sense of "--disable-lib-suffixes" configure option (report
2722 by Nicolas Boos, cf: 20140426).
2725 + regenerate html manpages using improved man2html from work on xterm.
2726 + regenerated ".map" and ".sym" files using improved script, accounting
2727 for the "--enable-weak-symbols" configure option (report by Werner
2731 + regenerated ".map" and ".sym" files using improved script, showing
2732 the combinations of configure options used at each stage.
2735 + add configure check to determine if "local: _*;" can be used in the
2736 ".map" files to selectively omit symbols beginning with "_". On at
2737 least recent FreeBSD, the wildcard applies to all "_" symbols.
2738 + remove obsolete/conflicting rule for ncurses.map from
2739 ncurses/Makefile.in (cf: 20130706).
2742 + improve description in INSTALL of the --with-versioned-syms option.
2743 + add combination of --with-hashed-db and --with-ticlib to
2744 configurations for ".map" files (report by Werner Fink).
2747 + add a step to generating ".map" files, to declare any remaining
2748 symbols beginning with "_" as local, at the last version node.
2749 + improve configure checks for pkg-config, addressing a variant found
2751 + modify win_driver.c to provide characters for special keys, like
2752 ansi.sys, when keypad mode is off, rather than returning nothing at
2753 all (discussion with Eli Zaretskii).
2754 + add "broken_linker" and "hashed-db" configure options to combinations
2755 use for generating the ".map" and ".sym" files.
2756 + avoid using "ld" directly when creating shared library, to simplify
2757 cross-compiles. Also drop "-Bsharable" option from shared-library
2758 rules for FreeBSD and DragonFly (FreeBSD #196592).
2759 + fix a memory leak in form library Free_RegularExpression_Type()
2760 (report by Pavel Balaev).
2763 + modify_nc_flush() to retry if interrupted (patch by Stian Skjelstad).
2764 + change map files to make _nc_freeall a global, since it may be used
2765 via the Ada95 binding when checking for memory leaks.
2766 + improve sed script used in 20141220 to account for wide-, threaded-
2767 variations in ABI 6.
2770 + regenerate ".map" files, using step overlooked in 20141213 to use
2771 the same patch-dates across each file to match ncurses.map (report by
2775 + fix an incorrect variable assignment in 20141220 changes (report by
2779 + updated Ada95/configure with macro changes from 20141213
2780 + tie configure options --with-abi-version and --with-versioned-syms
2781 together, so that ABI 6 libraries have distinct symbol versions from
2782 the ABI 5 libraries.
2783 + replace obsolete/nonworking link to man2html with current one,
2784 regenerate html-manpages.
2787 + modify misc/gen-pkgconfig.in to add -I option for include-directory
2788 when using both --prefix and --disable-overwrite (report by Misty
2790 + add configure option --with-pc-suffix to allow minor renaming of
2791 ".pc" files and the corresponding library. Use this in the test
2792 package for ncurses6.
2793 + modify configure script so that if pkg-config is not installed, it
2794 is still possible to install ".pc" files (report by Misty De Meo).
2795 + updated ".sym" files, removing symbols which are marked as "local"
2796 in the corresponding ".map" files.
2797 + updated ".map" files to reflect move of comp_captab and comp_hash
2798 from tic-library to tinfo-library in 20090711 (report by Sven
2802 + updated ".map" files so that each symbol that may be shared across
2803 the different library configurations has the same label. Some
2804 review is needed to ensure these are really compatible.
2805 + modify MKlib_gen.sh to work around change in development version of
2806 gcc introduced here:
2807 https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
2808 https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html
2809 (reports by Marcus Shawcroft, Maohui Lei).
2810 + improved configure macro CF_SUBDIR_PATH, from lynx changes.
2813 + improved ".map" files by generating them with a script that builds
2814 ncurses with several related configurations and merges the results.
2815 A further refinement is planned, to make the tic- and tinfo-library
2816 symbols use the same versions across each of the four configurations
2817 which are represented (reports by Sven Joachim, Werner Fink).
2820 + improve description of limits for color values and color pairs in
2821 curs_color.3x (prompted by patch by Tim van der Molen).
2822 + add VERSION file, using first field in that to record the ABI version
2823 used for configure --with-libtool --disable-libtool-version
2824 + add configure options for applying the ".map" and ".sym" files to
2825 the ncurses, form, menu and panel libraries.
2826 + add ".map" and ".sym" files to show exported symbols, e.g., for
2830 + improve strict compiler-warnings by adding a cast in TRACE_RETURN
2831 and making a new TRACE_RETURN1 macro for cases where the cast does
2835 + in-progress changes to integrate the win32 console driver with the
2836 msys2 configuration.
2839 + reviewed terminology 0.6.1, add function key definitions. None of
2840 the vt100-compatibility issues were improved -TD
2841 + improve infocmp conversion of extended capabilities to termcap by
2842 correcting the limit check against parametrized[], as well as filling
2843 in a check if the string happens to have parameters, e.g., "xm"
2845 + add check for zero/negative dimensions for resizeterm and resize_term
2846 (report by Mike Gran).
2849 + add experimental support for xterm's 1005 mouse mode, to use in a
2850 demonstration of its limitations.
2851 + add experimental support for "%u" format to terminfo.
2852 + modify test/ncurses.c to also show position reports in 'a' test.
2853 + minor formatting fixes to _nc_trace_mmask_t, make this function
2854 exported to help with debugging mouse changes.
2855 + improve behavior of wheel-mice for xterm protocol, noting that there
2856 are only button-presses for buttons "4" and "5", so there is no need
2857 to wait to combine events into double-clicks (report/analysis by
2859 + provide examples xterm-1005 and xterm-1006 terminfo entries -TD
2860 + implement decoder for xterm SGR 1006 mouse mode.
2863 + implement curs_set in win_driver.c
2864 + implement flash in win_driver.c
2865 + fix an infinite loop in win_driver.c if the command-window loses
2867 + improve the non-buffered mode, i.e., NCURSES_CONSOLE2, of
2868 win_driver.c by temporarily changing the buffer-size to match the
2869 window-size to eliminate the scrollback. Also enforce a minimum
2870 screen-size of 24x80 in the non-buffered mode.
2871 + modify generated misc/Makefile to suppress install.data from the
2872 dependencies if the --disable-db-install option is used, compensating
2873 for the top-level makefile changes used to add ncurses*-config in the
2874 20140920 changes (report by Steven Honeyman).
2877 + add ncurses*-config to bin-directory of sample package-scripts.
2878 + add check to ensure that getopt is available; this is a problem in
2879 some older cross-compiler environments.
2880 + expanded on the description of --disable-overwrite in INSTALL
2881 (prompted by reports by Joakim Tjernlund, Thomas Klausner).
2882 See Gentoo #522586 and NetBSD #49200 for examples.
2883 which relates to the clarified guidelines.
2884 + remove special logic from CF_INCLUDE_DIRS which adds the directory
2885 for the --includedir from the build (report by Joakim Tjernlund).
2886 + add case for Unixware to CF_XOPEN_SOURCE, from lynx changes.
2887 + update config.sub from
2888 http://git.savannah.gnu.org/cgit/config.git
2891 + add a configure check to ignore some of the plethora of non-working
2892 C++ cross-compilers.
2893 + build-fixes for Ada95 with gnat 4.9
2896 + build-fix and other improvements for port of ncurses-examples to
2898 + minor compiler-warning fixes.
2901 + modify test/demo_termcap.c and test/demo_terminfo.c to make their
2902 options more directly comparable, and add "-i" option to specify
2903 a terminal description filename to parse for names to lookup.
2906 + fix special case where double-width character overwrites a single-
2907 width character in the first column (report by Egmont Koblinger,
2911 + fix colors in ncurses 'b' test which did not work after changing
2912 it to put the test-strings in subwindows (cf: 20140705).
2913 + merge redundant SEE-ALSO sections in form and menu manpages.
2916 + modify declarations for user-data pointers in C++ binding to use
2917 reinterpret_cast to facilitate converting typed pointers to void*
2918 in user's application (patch by Adam Jiang).
2919 + regenerated html manpages.
2920 + add note regarding cause and effect for TERM in ncurses manpage,
2921 having noted clueless verbiage in Terminal.app's "help" file
2922 which reverses cause/effect.
2923 + remove special fallback definition for NCURSES_ATTR_T, since macros
2924 have resolved type-mismatches using casts (cf: 970412).
2925 + fixes for win_driver.c:
2926 + handle repainting on endwin/refresh combination.
2931 + minor portability fixes for MinGW:
2932 + ensure WINVER is defined in makefiles rather than using headers
2933 + add check for gnatprep "-T" option
2934 + work around bug introduced by gcc 4.8.1 in MinGW which breaks
2936 http://stackoverflow.com/questions/20877689/gcc-4-8-1-minggw-d-option-does-not-work-as-usual
2937 + fix most compiler warnings for Cygwin ncurses-examples.
2938 + restore "redundant" -I options in test/Makefile.in, since they are
2939 typically needed when building the derived ncurses-examples package
2943 + eliminate some redundant -I options used for building libraries, and
2944 ensure that ${srcdir} is added to the include-options (prompted by
2945 discussion with Paul Gilmartin).
2946 + modify configure script to work with Minix3.2
2947 + add form library extension O_DYNAMIC_JUSTIFY option which can be
2948 used to override the different treatment of justification for static
2949 versus dynamic fields (adapted from patch by Leon Winter).
2950 + add a null pointer check in test/edit_field.c (report/analysis by
2951 Leon Winter, cf: 20130608).
2954 + make workarounds for compiling test-programs with NetBSD curses.
2955 + improve configure macro CF_ADD_LIBS, to eliminate repeated -l/-L
2956 options, from xterm changes.
2959 + correct Charable() macro check for A_ALTCHARSET in wide-characters.
2960 + build-fix for position-debug code in tty_update.c, to work with or
2964 + add w/W toggle to ncurses.c 'B' test, to demonstrate permutation of
2965 video-attributes and colors with double-width character strings.
2968 + correct check in win_driver.c for saving screen contents, e.g., when
2969 NCURSES_CONSOLE2 is set (cf: 20140503).
2970 + reorganize b/B menu items in ncurses.c, putting the test-strings into
2971 subwindows. This is needed for a planned change to use Unicode
2972 fullwidth characters in the test-screens.
2973 + correct update to form status for _NEWTOP, broken by fixes for
2974 compiler warnings (patch by Leon Winter, cf: 20120616).
2977 + change shared-library suffix for AIX 5 and 6 to ".so", avoiding
2978 conflict with the static library (report by Ben Lentz).
2979 + document RPATH_LIST in INSTALLATION file, as part of workarounds for
2980 upgrading an ncurses library using the "--with-shared" option.
2981 + modify test/ncurses.c c/C tests to cycle through subsets of the
2982 total number of colors, to better illustrate 8/16/88/256-colors by
2983 providing directly comparable screens.
2984 + add test/dots_curses.c, for comparison with the low-level examples.
2987 + fix dereference before null check found by Coverity in tic.c
2989 + fix sign-extension bug in read_entry.c which prevented "toe" from
2990 reading empty "screen+italics" entry.
2991 + modify sgr for screen.xterm-new to support dim capability -TD
2992 + add dim capability to nsterm+7 -TD
2993 + cancel dim capability for iterm -TD
2994 + add dim, invis capabilities to vte-2012 -TD
2995 + add sitm/ritm to konsole-base and mlterm3 -TD
2998 > fix regression in screen terminfo entries (reports by Christian
2999 Ebert, Gabriele Balducci) -TD
3000 + revert the change to screen; see notes for why this did not work -TD
3001 + cancel sitm/ritm for entries which extend "screen", to work around
3002 screen's hardcoded behavior for SGR 3 -TD
3005 + separate masking for sgr in vidputs from sitm/ritm, which do not
3006 overlap with sgr functionality.
3007 + remove unneeded -i option from adacurses-config; put -a in the -I
3008 option for consistency (patch by Pascal Pignard).
3009 + update xterm-new terminfo entry to xterm patch #305 -TD
3010 + change format of test-scripts for Debian Ada95 and ncurses-examples
3011 packages to quilted to work around Debian #700177 (cf: 20130907).
3012 + build fix for form_driver_w.c as part of ncurses-examples package for
3013 older ncurses than 20131207.
3014 + add Hello World example to adacurses-config manpage.
3015 + remove unused --enable-pc-files option from Ada95/configure.
3016 + add --disable-gnat-projects option for testing.
3017 + revert changes to Ada95 project-files configuration (cf: 20140524).
3018 + corrected usage message in adacurses-config.
3021 + fix typo in ncurses manpage for the NCURSES_NO_MAGIC_COOKIE
3022 environment variable.
3023 + improve discussion of input-echoing in curs_getch.3x
3024 + clarify discussion in curs_addch.3x of wrapping.
3025 + modify parametrized.h to make fln non-padded.
3026 + correct several entries which had termcap-style padding used in
3027 terminfo: adm21, aj510, alto-h19, att605-pc, x820 -TD
3028 + correct syntax for padding in some entries: dg211, h19 -TD
3029 + correct ti924-8 which had confused padding versus octal escapes -TD
3030 + correct padding in sbi entry -TD
3031 + fix an old bug in the termcap emulation; "%i" was ignored in tparm()
3032 because the parameters to be incremented were already on the internal
3033 stack (report by Corinna Vinschen).
3034 + modify tic's "-c" option to take into account the "-C" option to
3035 activate additional checks which compare the results from running
3036 tparm() on the terminfo expressions versus the translated termcap
3038 + modify tic to allow it to read from FIFOs (report by Matthieu Fronton,
3040 > patches by Nicolas Boulenguez:
3041 + explicit dereferences to suppress some style warnings.
3042 + when c_varargs_to_ada.c includes its header, use double quotes
3044 + samples/ncurses2-util.adb: removed unused with clause. The warning
3045 was removed by an obsolete pragma.
3046 + replaced Unreferenced pragmas with Warnings (Off). The latter,
3047 available with older GNATs, needs no configure test. This also
3048 replaces 3 untested Unreferenced pragmas.
3049 + simplified To_C usage in trace handling. Using two parameters allows
3050 some basic formatting, and avoids a warning about security with some
3052 + for generated Ada sources, replace many snippets with one pure
3054 + removed C_Chtype and its conversions.
3055 + removed C_AttrType and its conversions.
3056 + removed conversions between int, Item_Option_Set, Menu_Option_Set.
3057 + removed int, Field_Option_Set, Item_Option_Set conversions.
3058 + removed C_TraceType, Attribute_Option_Set conversions.
3059 + replaced C.int with direct use of Eti_Error, now enumerated. As it
3060 was used in a case statement, values were tested by the Ada compiler
3061 to be consecutive anyway.
3062 + src/Makefile.in: remove duplicate stanza
3063 + only consider using a project for shared libraries.
3064 + style. Silent gnat-4.9 warning about misplaced "then".
3065 + generate shared library project to honor ADAFLAGS, LDFLAGS.
3068 + cleanup recently introduced compiler warnings for MingW port.
3069 + workaround for ${MAKEFLAGS} configure check versus GNU make 4.0,
3070 which introduces more than one gratuitous incompatibility.
3073 + add vt520ansi terminfo entry (patch by Mike Gran)
3074 + further improve MinGW support for the scenario where there is an
3075 ANSI-escapes handler such as ansicon running in the console window
3076 (patch by Juergen Pfeifer).
3079 + add --disable-lib-suffixes option (adapted from patch by Juergen
3081 + merge some changes from Juergen Pfeifer's work with MSYS2, to
3082 simplify later merging:
3083 + use NC_ISATTY() macro for isatty() in library
3084 + add _nc_mingw_isatty() and related functions to windows-driver
3085 + rename terminal driver entrypoints to simplify grep's
3086 + remove a check in the sp-funcs flavor of newterm() which allowed only
3087 the first call to newterm() to succeed (report by Thomas Beierlein,
3091 + update config.guess, config.sub from
3092 http://git.savannah.gnu.org/cgit/config.git
3095 + modify configure script:
3096 + drop the -no-gcc option from Intel compiler, from lynx changes.
3097 + extend the --with-hashed-db configure option to simplify building
3098 with different versions of Berkeley database using FreeBSD ports.
3099 + improve initialization for MinGW port (Juergen Pfeifer):
3100 + enforce Windows-style path-separator if cross-compiling,
3101 + add a driver-name method to each of the drivers,
3102 + allow the Windows driver name to match "unknown", ignoring case,
3103 + lengthen the built-in name for the Windows console driver to
3104 "#win32console", and
3105 + move the comparison of driver-names allowing abbreviation, e.g.,
3106 to "#win32con" into the Windows console driver.
3109 + add check in tic for mismatch between ccc and initp/initc
3110 + cancel ccc in putty-256color and konsole-256color for consistency
3111 with the cancelled initc capability (patch by Sven Zuhlsdorf).
3112 + add xterm+256setaf building block for various terminals which only
3113 get the 256-color feature half-implemented -TD
3114 + updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
3118 + fix typo in "mlterm" entry (report by Gabriele Balducci) -TD
3121 + use types from <stdint.h> in sample build-scripts for chtype, etc.
3122 + modify configure script and curses.h.in to allow the types specified
3123 using --with-chtype and related options to be defined in <stdint.h>
3124 + add terminology entry -TD
3125 + add mlterm3 entry, use that as "mlterm" -TD
3126 + inherit mlterm-256color from mlterm -TD
3129 + modify _nc_New_TopRow_and_CurrentItem() to ensure that the menu's
3130 top-row is adjusted as needed to ensure that the current item is
3131 on the screen (patch by Johann Klammer).
3132 + add wgetdelay() to retrieve _delay member of WINDOW if it happens to
3133 be opaque, e.g., in the pthread configuration (prompted by patch by
3137 + modify ifdef in read_entry.c to handle the case where
3138 NCURSES_USE_DATABASE is not defined (patch by Xin Li).
3139 + add cast in form_driver_w() to fix ARM build (patch by Xin Li).
3140 + add logic to win_driver.c to save/restore screen contents when not
3141 allocating a console-buffer (cf: 20140215).
3144 + clarify error-returns from newwin (report by Ruslan Nabioullin).
3147 + fix some compiler warnings in win_driver.c
3148 + updated notes for wsvt25 based on tack and vttest -TD
3149 + add teken entry to show actual properties of FreeBSD's "xterm"
3153 + in-progress changes to win_driver.c to implement output without
3154 allocating a console-buffer. This uses a pre-existing environment
3155 variable NCGDB used by Juergen Pfeifer for debugging (prompted by
3156 discussion with Erwin Waterlander regarding Console2, which hangs
3157 when reading in an allocated console-buffer).
3158 + add -t option to gdc.c, and modify to accept "S" to step through the
3160 + regenerate NCURSES-Programming-HOWTO.html to fix some of the broken
3161 html emitted by docbook.
3164 + modify CF_XOPEN_SOURCE macro to omit followup check to determine if
3165 _XOPEN_SOURCE can/should be defined. g++ 4.7.2 built on Solaris 10
3166 has some header breakage due to its own predefinition of this symbol
3167 (report by Jean-Pierre Flori, Sage #15796).
3170 + add/use symbol NCURSES_PAIRS_T like NCURSES_COLOR_T, to illustrate
3171 which "short" types are for color pairs and which are color values.
3172 + fix build for s390x, by correcting field bit offsets in generated
3173 representation clauses when int=32 long=64 and endian=big, or at
3174 least on s390x (patch by Nicolas Boulenguez).
3175 + minor cleanup change to test/form_driver_w.c (patch by Gaute Hope).
3178 + remove unnecessary ifdef's in Ada95/gen/gen.c, which reportedly do
3179 not work as is with gcc 4.8 due to fixes using chtype cast made for
3180 new compiler warnings by gcc 4.8 in 20130824 (Debian #735753, patch
3181 by Nicolas Boulenguez).
3184 + apply includesubdir variable which was introduced in 20130805 to
3185 gen-pkgconfig.in (Debian #735782).
3188 + further improved man2html, used this to fix broken links in html
3190 ftp://ftp.invisible-island.net/ncurses/patches/man2html
3193 + modify configure-script/ifdef's to allow OLD_TTY feature to be
3194 suppressed if the type of ospeed is configured using the option
3195 --with-ospeed to not be a short. By default, it is a short for
3196 termcap-compatibility (adapted from suggestion by Christian
3198 + correct a typo in _nc_baudrate() (patch by Christian Weisgerber,
3200 + fix a few -Wlogical-op warnings.
3201 + updated llib-l* files.
3204 + add form_driver_w() entrypoint to wide-character forms library, as
3205 well as test program form_driver_w (adapted from patch by Gaute
3209 + minor fix for CF_GCC_WARNINGS to special-case options which are not
3210 recognized by clang.
3213 + add special case to configure script to move _XOPEN_SOURCE_EXTENDED
3214 definition from CPPFLAGS to CFLAGS if it happens to be needed for
3215 Solaris, because g++ errors with that definition (report by
3216 Jean-Pierre Flori, Sage #15268).
3217 + correct logic in infocmp's -i option which was intended to ignore
3218 strings which correspond to function-keys as candidates for piecing
3219 together initialization- or reset-strings. The problem dates to
3220 1.9.7a, but was overlooked until changes in -Wlogical-op warnings for
3221 gcc 4.8 (report by David Binderman).
3222 + updated CF_GCC_WARNINGS to documented options for gcc 4.9.0, moving
3223 checks for -Wextra and -Wdeclaration-after-statement into the macro,
3224 and adding checks for -Wignored-qualifiers, -Wlogical-op and
3226 + updated CF_CURSES_UNCTRL_H and CF_SHARED_OPTS macros from ongoing
3228 + update config.sub from
3229 http://git.savannah.gnu.org/cgit/config.git
3232 + minor cleanup of terminfo.tail
3235 + use TS extension to describe xterm's title-escapes -TD
3236 + modify terminator and nsterm-s to use xterm+sl-twm building block -TD
3237 + update hurd.ti, add xenl to reflect 2011-03-06 change in
3238 http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/display.c
3240 + simplify pfkey expression in ansi.sys -TD
3243 + correct/simplify ifdef's for cur_term versus broken-linker and
3244 reentrant options (report by Jean-Pierre Flori, cf: 20090530).
3245 + modify release/version combinations in test build-scripts to make
3246 them more consistent with other packages.
3249 + add nc_mingw.h to installed headers for MinGW port; needed for
3250 compiling ncurses-examples.
3251 + add rpm-script for testing cross-compile of ncurses-examples.
3254 + fix new typo in CF_ADA_INCLUDE_DIRS macro (report by Roumen Petrov).
3257 + fix a few compiler warnings in progs and test.
3258 + minor fix to package/debian-mingw/rules, do not strip dll's.
3259 + minor fixes to configure script for empty $prefix, e.g., when doing
3260 cross-compiles to MinGW.
3261 + add script for building test-packages of binaries cross-compiled to
3265 + minor fixes for ncurses-example package and makefile.
3266 + add scripts for test-builds of cross-compiler packages for ncurses6
3270 + some build-fixes for ncurses-examples with NetBSD-6.0 curses, though
3271 it lacks some common functions such as use_env() which is not yet
3273 + build-fix and some compiler warning fixes for ncurses-examples with
3275 + fix a possible null-pointer reference in a trace message from newterm.
3276 + quiet a few warnings from NetBSD 6.0 namespace pollution by
3277 nonstandard popcount() function in standard strings.h header.
3278 + ignore g++ 4.2.1 warnings for "-Weffc++" in c++/cursesmain.cc
3279 + fix a few overlooked places for --enable-string-hacks option.
3282 + fix typo in curs_attr.3x (patch by Sven Joachim, cf: 20130831).
3283 + build-fix for --with-shared option for DragonFly and FreeBSD (report
3284 by Rong-En Fan, cf: 20130727).
3287 + build-fixes for MSYS for two test-programs (patches by Ray Donnelly,
3289 + revert change to two of the dpkg format files, to work with dpkg
3290 before/after Debian #700177.
3291 + fix gcc -Wconversion warning in wattr_get() macro.
3292 + add msys and msysdll to known host/configuration types (patch by
3294 + modify CF_RPATH_HACK configure macro to not rely upon "-u" option
3295 of sort, improving portability.
3296 + minor improvements for test-programs from reviewing Solaris port.
3297 + update config.guess, config.sub from
3298 http://git.savannah.gnu.org/cgit/config.git
3301 + modify test/ncurses.c b/B tests to display lines only for the
3302 attributes which a given terminal supports, to make room for an
3304 + completed ncv table in terminfo.tail; it did not list the wide
3305 character codes listed in X/Open Curses issue 7.
3306 + add A_ITALIC extension (prompted by discussion with Egmont Koblinger).
3309 + fix some gcc 4.8 -Wconversion warnings.
3310 + change format of dpkg test-scripts to quilted to work around bug
3311 introduced by Debian #700177.
3312 + discard cached keyname() values if meta() is changed after a value
3313 was cached using (report by Kurban Mallachiev).
3316 + add checks in tic to warn about terminals which lack cursor
3317 addressing, capabilities or having those, are marked as hard_copy or
3319 + use --without-progs in mingw-ncurses rpm.
3320 + split out _nc_init_termtype() from alloc_entry.c to use in MinGW
3321 port when tic and other programs are not needed.
3324 + minor fixes to the --disable-overwrite logic, to ensure that the
3325 configured $(includedir) is not cancelled by the mingwxx-filesystem
3327 + add --disable-db-install configure option, to simplify building
3328 cross-compile support packages.
3329 + add mingw-ncurses.spec file, for testing cross-compiles.
3332 + improve configure macros from ongoing work on cdk, dialog, xterm:
3333 + CF_ADD_LIB_AFTER - fix a problem with -Wl options
3334 + CF_RPATH_HACK - add missing result-message
3335 + CF_SHARED_OPTS - modify to use $rel_builddir in cygwin and mingw
3336 dll symbols (which can be overridden) rather than explicit "../".
3337 + CF_SHARED_OPTS - modify NetBSD and DragonFly symbols to use ${CC}
3338 rather than ${LD} to improve rpath support.
3339 + CF_SHARED_OPTS - add a symbol to denote the temporary files that
3340 are created by the macro, to simplify clean-rules.
3341 + CF_X_ATHENA - trim extra libraries to work with -Wl,--as-needed
3342 + fix a regression in hashed-database support for NetBSD, which uses
3343 the key-size differently from other implementations (cf: 20121229).
3346 + further improvements for setupterm manpage, clarifying the
3347 initialization of cur_term.
3350 + improve manpages for initscr and setupterm.
3351 + minor compiler-warning fixes
3354 + add fallback defs for <inttypes.h> and <stdint.h> (cf: 20120225).
3355 + add check for size of wchar_t, use that to suppress a chunk of
3356 wcwidth.h in MinGW port.
3357 + quiet linker warnings for MinGW cross-compile with dll's using the
3358 --enable-auto-import flag.
3359 + add ncurses.map rule to ncurses/Makefile to help diagnose symbol
3363 + modify the clear program to take into account the E3 extended
3364 capability to clear the terminal's scrollback buffer (patch by
3365 Miroslav Lichvar, Redhat #815790).
3366 + clarify in resizeterm manpage that LINES and COLS are updated.
3367 + updated ansi example in terminfo.tail, correct misordered example
3369 + fix other doclifter warnings for manpages
3370 + remove unnecessary ".ta" in terminfo.tail, add missing ".fi"
3371 (patch by Eric Raymond).
3374 + minor changes to some configure macros to make them more reusable.
3375 + fixes for tabs program (prompted by report by Nick Andrik).
3376 + corrected logic in command-line parsing of -a and -c predefined
3378 + allow "-0" and "-8" options to be combined with others, e.g.,"-0d".
3379 + make warning messages more consistent with the other utilities by
3380 not printing the full pathname of the program.
3381 + add -V option for consistency with other utilities.
3382 + fix off-by-one in columns for tabs program when processing an option
3383 such as "-5" (patch by Nick Andrik).
3386 + add to test/demo_forms.c examples of using the menu-hooks as well
3387 as showing how the menu item user-data can be used to pass a callback
3389 + add test/dots_termcap.c
3390 + remove setupterm call from test/demo_termcap.c
3391 + build-fix if --disable-ext-funcs configure option is used.
3392 + modified test/edit_field.c and test/demo_forms.c to move the lengths
3393 into a user-data structure, keeping the original string for later
3394 expansion to free-format input/out demo.
3395 + modified test/demo_forms.c to load data from file.
3396 + added note to clarify Terminal.app's non-emulation of the various
3397 terminal types listed in the preferences dialog -TD
3398 + fix regression in error-reporting in lib_setup.c (Debian #711134,
3400 + build-fix for a case where --enable-broken_linker and
3401 --enable-reentrant options are combined (report by George R Goffe).
3404 + modify mvcur() to distinguish between internal use by the ncurses
3405 library, and external callers, preventing it from reading the content
3406 of the screen which is only nonblank when curses calls have updated
3407 it. This makes test/dots_mvcur.c avoid painting colored cells in
3408 the left margin of the display.
3409 + minor fix to test/dots_mvcur.c
3410 + move configured symbols USE_DATABASE and USE_TERMCAP to term.h as
3411 NCURSES_USE_DATABASE and NCURSES_USE_TERMCAP to allow consistent
3412 use of these symbols in term_entry.h
3415 + corrected ifdefs in test/testcurs.c to allow comparison of mouse
3416 interface versus pdcurses (cf: 20130316).
3417 + add pow() to configure-check for math library, needed since
3418 20121208 for test/hanoi (Debian #708056).
3419 + regenerated html manpages.
3420 + update doctype used for html documentation.
3423 + move nsterm-related entries out of "obsolete" section to more
3424 plausible "ansi consoles" -TD
3425 + additional cleanup of table-of-contents by reordering -TD
3426 + revise fix for check for 8-bit value in _nc_insert_ch(); prior fix
3427 prevented inserts when video attributes were attached to the data
3428 (cf: 20121215) (Redhat #959534).
3431 + fixes for issues found by Coverity:
3432 + correct FNKEY() macro in progs/dump_entry.c, allowing kf11-kf63 to
3433 display when infocmp's -R option is used for HP or AIX subsets.
3434 + fix dead-code issue with test/movewindow.c
3435 + improve limited-checking in _nc_read_termtype().
3438 + fix clang 3.2 warning in progs/dump_entry.c
3439 + drop AC_TYPE_SIGNAL check; ncurses relies on c89 and later.
3442 + add MinGW to cases where ncurses installs by default into /usr
3443 (prompted by discussion with Daniel Silva Ferreira).
3444 + add -D option to infocmp's usage-message (patch by Miroslav Lichvar).
3445 + add a missing 'int' type for main function in configure check for
3446 type of bool variable, to work with clang 3.2 (report by Dmitri
3448 + improve configure check for static_cast, to work with clang 3.2
3449 (report by Dmitri Gribenko).
3450 + re-order rule for demo.o and macros defining header dependencies in
3451 c++/Makefile.in to accommodate gmake (report by Dmitri Gribenko).
3454 + improve parameter checking in copywin().
3455 + modify configure script to work around OS X's "libtool" program, to
3456 choose glibtool instead. At the same time, chance the autoconf macro
3457 to look for a "tool" rather than a "prog", to help with potential use
3459 + separate the rpath usage for c++ library from demo program
3461 + update/correct header-dependencies in c++ makefile (report by Werner
3463 + add --with-cxx-shared to dpkg-script, as done for rpm-script.
3466 + build-fix for libtool configuration (reports by Daniel Silva Ferreira
3470 + build-fix for OS X, to handle changes for --with-cxx-shared feature
3471 (report by Christian Ebert).
3472 + change initialization for vt220, similar entries for consistency
3473 with cursor-key strings (NetBSD #47674) -TD
3474 + further improvements to linux-16color (Benjamin Sittler)
3477 + additional fix for tic.c, to allocate missing buffer space.
3478 + eliminate configure-script warnings for gen-pkgconfig.in
3479 + correct typo in sgr string for sun-color,
3480 add bold for consistency with sgr,
3481 change smso for consistency with sgr -TD
3482 + correct typo in sgr string for terminator -TD
3483 + add blink to the attributes masked by ncv in linux-16color (report
3484 by Benjamin Sittler)
3485 + improve warning message from post-load checking for missing "%?"
3486 operator by tic/infocmp by showing the entry name and capability.
3487 + minor formatting improvement to tic/infocmp -f option to ensure
3488 line split after "%;".
3489 + amend scripting for --with-cxx-shared option to handle the debug
3490 library "libncurses++_g.a" (report by Sven Joachim).
3493 + amend change to toe.c for reading from /dev/zero, to ensure that
3494 there is a buffer for the temporary filename (cf: 20120324).
3495 + regenerated html manpages.
3496 + fix typo in terminfo.head (report by Sven Joachim, cf: 20130302).
3497 + updated some autoconf macros:
3498 + CF_ACVERSION_CHECK, from byacc 1.9 20130304
3499 + CF_INTEL_COMPILER, CF_XOPEN_SOURCE from luit 2.0-20130217
3500 + add configure option --with-cxx-shared to permit building
3501 libncurses++ as a shared library when using g++, e.g., the same
3502 limitations as libtool but better integrated with the usual build
3503 configuration (Redhat #911540).
3504 + modify MKkey_defs.sh to filter out build-path which was unnecessarily
3505 shown in curses.h (Debian #689131).
3508 + add section to terminfo manpage discussing user-defined capabilities.
3509 + update manpage description of NCURSES_NO_SETBUF, explaining why it
3511 + add a check in waddch_nosync() to ensure that tab characters are
3512 treated as control characters; some broken locales claim they are
3514 + add some traces to the Windows console driver.
3515 + initialize a temporary array in _nc_mbtowc, needed for some cases
3516 of raw input in MinGW port.
3519 + correct ifdef on change to lib_twait.c (report by Werner Fink).
3520 + update config.guess, config.sub
3523 + modify test/testcurs.c to work with mouse for ncurses as it does for
3525 + modify test/knight.c to work with mouse for pdcurses as it does for
3527 + modify internal recursion in wgetch() which handles cooked mode to
3528 check if the call to wgetnstr() returned an error. This can happen
3529 when both nocbreak() and nodelay() are set, for instance (report by
3530 Nils Christopher Brause) (cf: 960418).
3531 + fixes for issues found by Coverity:
3532 + add a check for valid position in ClearToEOS()
3533 + fix in lib_twait.c when --enable-wgetch-events is used, pointer
3535 + improve a limit-check in make_hash.c
3536 + fix a memory leak in hashed_db.c
3539 + modify test/configure script to make it simpler to override names
3540 of curses-related libraries, to help with linking with pdcurses in
3542 + if the --with-terminfo-dirs configure option is not used, there is
3543 no corresponding compiled-in value for that. Fill in "no default
3544 value" for that part of the manpage substitution.
3547 + correct initialization in knight.c which let it occasionally make
3548 an incorrect move (cf: 20001028).
3549 + improve documentation of the terminfo/termcap search path.
3552 + further fixes to mvcur to pass callback function (cf: 20130112),
3553 needed to make test/dots_mvcur work.
3554 + reduce calls to SetConsoleActiveScreenBuffer in win_driver.c, to
3555 help reduce flicker.
3556 + modify configure script to omit "+b" from linker options for very
3557 old HP-UX systems (report by Dennis Grevenstein)
3558 + add HP-UX workaround for missing EILSEQ on old HP-UX systems (patch
3559 by Dennis Grevenstein).
3560 + restore memmove/strdup support for antique systems (request by
3561 Dennis Grevenstein).
3562 + change %l behavior in tparm to push the string length onto the stack
3563 rather than saving the formatted length into the output buffer
3564 (report by Roy Marples, cf: 980620).
3567 + fixes for issues found by Coverity:
3568 + fix memory leak in safe_sprintf.c
3569 + add check for return-value in tty_update.c
3570 + correct initialization for -s option in test/view.c
3571 + add check for numeric overflow in lib_instr.c
3572 + improve error-checking in copywin
3573 + add advice in infocmp manpage for termcap users (Debian #698469).
3574 + add "-y" option to test/demo_termcap and test/demo_terminfo to
3575 demonstrate behavior with/without extended capabilities.
3576 + updated termcap manpage to document legacy termcap behavior for
3577 matching capability names.
3578 + modify name-comparison for tgetstr, etc., to accommodate legacy
3579 applications as well as to improve compatibility with BSD 4.2
3580 termcap implementations (Debian #698299) (cf: 980725).
3583 + correct prototype in manpage for vid_puts.
3584 + drop ncurses/tty/tty_display.h, ncurses/tty/tty_input.h, since they
3585 are unused in the current driver model.
3586 + modify mvcur to use stdout except when called within the ncurses
3588 + modify vidattr and vid_attr to use stdout as documented in manpage.
3589 + amend changes made to buffering in 20120825 so that the low-level
3590 putp() call uses stdout rather than ncurses' internal buffering.
3591 The putp_sp() call does the same, for consistency (Redhat #892674).
3594 + add "-s" option to test/view.c to allow it to start in single-step
3595 mode, reducing size of trace files when it is used for debugging
3597 + revert part of 20121222 change to tinfo_driver.c
3598 + add experimental logic in win_driver.c to improve optimization of
3599 screen updates. This does not yet work with double-width characters,
3600 so it is ifdef'd out for the moment (prompted by report by Erwin
3601 Waterlander regarding screen flicker).
3604 + fix Coverity warnings regarding copying into fixed-size buffers.
3605 + add throw-declarations in the c++ binding per Coverity warning.
3606 + minor changes to new-items for consistent reference to bug-report
3610 + add *.dSYM directories to clean-rule in ncurses directory makefile,
3612 + add a configure check for gcc option -no-cpp-precomp, which is not
3613 available in all Mac OS X configurations (report by Andras Salamon,
3615 + improve 20021221 workaround for broken acs, handling a case where
3616 that ACS_xxx character is not in the acsc string but there is a known
3617 wide-character which can be used.
3620 + fix several warnings from clang 3.1 --analyze, includes correcting
3621 a null-pointer check in _nc_mvcur_resume.
3622 + correct display of double-width characters with MinGW port (report
3623 by Erwin Waterlander).
3624 + replace MinGW's wcrtomb(), fixing a problem with _nc_viscbuf
3625 > fixes based on Coverity report:
3626 + correct coloring in test/bs.c
3627 + correct check for 8-bit value in _nc_insert_ch().
3628 + remove dead code in progs/tset.c, test/linedata.h
3629 + add null-pointer checks in lib_tracemse.c, panel.priv.h, and some
3633 + modify test/knight.c to show the number of choices possible for
3634 each position in automove option, e.g., to allow user to follow
3635 Warnsdorff's rule to solve the puzzle.
3636 + modify test/hanoi.c to show the minimum number of moves possible for
3637 the given number of tiles (prompted by patch by Lucas Gioia).
3638 > fixes based on Coverity report:
3639 + remove a few redundant checks.
3640 + correct logic in test/bs.c, when randomly placing a specific type of
3642 + check return value from remove/unlink in tic.
3643 + check return value from sscanf in test/ncurses.c
3644 + fix a null dereference in c++/cursesw.cc
3645 + fix two instances of uninitialized variables when configuring for the
3647 + correct scope of variable used in SetSafeOutcWrapper macro.
3648 + set umask when calling mkstemp in tic.
3649 + initialize wbkgrndset() temporary variable when extended-colors are
3653 + also replace MinGW's wctomb(), fixing a problem with setcchar().
3654 + modify test/view.c to load UTF-8 when built with MinGW by using
3655 regular win32 API because the MinGW functions mblen() and mbtowc()
3659 + correct order of color initialization versus display in some of the
3660 test-programs, e.g., test_addstr.c
3661 > fixes based on Coverity report:
3662 + delete windows on exit from some of the test-programs.
3665 > fixes based on Coverity report:
3666 + add missing braces around FreeAndNull in two places.
3667 + various fixes in test/ncurses.c
3668 + improve limit-checks in tinfo/make_hash.c, tinfo/read_entry.c
3669 + correct malloc size in progs/infocmp.c
3670 + guard against negative array indices in test/knight.c
3671 + fix off-by-one limit check in test/color_name.h
3672 + add null-pointer check in progs/tabs.c, test/bs.c, test/demo_forms.c,
3674 + fix memory-leak in tinfo/lib_setup.c, progs/toe.c,
3675 test/clip_printw.c, test/demo_menus.c
3676 + delete unused windows in test/chgat.c, test/clip_printw.c,
3677 test/insdelln.c, test/newdemo.c on error-return.
3680 + modify configure macro CF_INCLUDE_DIRS to put $CPPFLAGS after the
3681 local -I include options in case someone has set conflicting -I
3682 options in $CPPFLAGS (prompted by patch for ncurses/Makefile.in by
3684 + modify the ncurses*-config scripts to eliminate relative paths from
3685 the RPATH_LIST variable, e.g., "../lib" as used in installing shared
3686 libraries or executables.
3689 + realign these related pages:
3694 and fix a long-ago error in curs_addstr.3x which said that a -1
3695 length parameter would only write as much as fit onto one line
3696 (report by Reuben Thomas).
3697 + remove obsolete fallback _nc_memmove() for memmove()/bcopy().
3698 + remove obsolete fallback _nc_strdup() for strdup().
3699 + cancel any debug-rpm in package/ncurses.spec
3700 + reviewed vte-2012, reverted most of the change since it was incorrect
3701 based on testing with tack -TD
3702 + un-cancel the initc in vte-256color, since this was implemented
3703 starting with version 0.20 in 2009 -TD
3706 + improve malloc/realloc checking (prompted by discussion in Redhat
3708 + add ncurses test-program as "ncurses6" to the rpm- and dpkg-scripts.
3709 + updated configure macros CF_GCC_VERSION and CF_WITH_PATHLIST. The
3710 first corrects pattern used for Mac OS X's customization of gcc.
3713 + fix change to _nc_scroll_optimize(), which incorrectly freed memory
3717 + add vte-2012, gnome-2012, making these the defaults for vte/gnome
3718 (patch by Christian Persch).
3721 + improve CF_GCC_VERSION to work around Debian's customization of gcc
3723 + improve configure macros as done in byacc:
3724 + drop 2.13 compatibility; use 2.52.xxxx version only since EMX port
3725 has used that for a while.
3726 + add 3rd parameter to AC_DEFINE's to allow autoheader to run, i.e.,
3727 for experimental use.
3728 + remove unused configure macros.
3729 + modify configure script and makefiles to quiet new autoconf warning
3730 for LIBS_TO_MAKE variable.
3731 + modify configure script to show $PATH_SEPARATOR variable.
3732 + update config.guess, config.sub
3735 + modify setupterm to set its copy of TERM to "unknown" if configured
3736 for the terminal driver and TERM was null or empty.
3737 + modify treatment of TERM variable for MinGW port to allow explicit
3738 use of the windows console driver by checking if $TERM is set to
3739 "#win32con" or an abbreviation of that.
3740 + undo recent change to fallback definition of vsscanf() to build with
3741 older Solaris compilers (cf: 20120728).
3744 + add test-screens to test/ncurses to show 256-characters at a time,
3745 to help with MinGW port.
3748 + simplify varargs logic in lib_printw.c; va_copy is no longer needed
3750 + modifications for MinGW port to make wide-character display usable.
3753 + regenerate configure script (report by Sven Joachim, cf: 20120901).
3756 + add a null-pointer check in _nc_flush (cf: 20120825).
3757 + fix a case in _nc_scroll_optimize() where the _oldnums_list array
3758 might not be allocated.
3759 + improve comparisons in configure.in for unset shell variables.
3762 + increase size of ncurses' output-buffer, in case of very small
3763 initial screen-sizes.
3764 + fix evaluation of TERMINFO and TERMINFO_DIRS default values as needed
3765 after changes to use --datarootdir (reports by Gabriele Balducci,
3769 + change output buffering scheme, using buffer maintained by ncurses
3770 rather than stdio, to avoid problems with SIGTSTP handling (report
3774 + update autoconf patch to 2.52.20120811, adding --datarootdir
3775 (prompted by discussion with Erwin Waterlander).
3776 + improve description of --enable-reentrant option in README and the
3778 + add nsterm-256color, make this the default nsterm -TD
3779 + remove bw from nsterm-bce, per testing with tack -TD
3782 + update test/configure, adding check for tinfo library.
3783 + improve limit-checks for the getch fifo (report by Werner Fink).
3784 + fix a remaining mismatch between $with_echo and the symbols updated
3785 for CF_DISABLE_ECHO affecting parameters for mk-2nd.awk (report by
3786 Sven Joachim, cf: 20120317).
3787 + modify followup check for pkg-config's library directory in the
3788 --enable-pc-files option to validate syntax (report by Sven Joachim,
3792 + correct path for ncurses_mingw.h in include/headers, in case build
3793 is done outside source-tree (patch by Roumen Petrov).
3794 + modify some older xterm entries to align with xterm source -TD
3795 + separate "xterm-old" alias from "xterm-r6" -TD
3796 + add E3 extended capability to xterm-basic and putty -TD
3797 + parenthesize parameters of other macros in curses.h -TD
3798 + parenthesize parameter of COLOR_PAIR and PAIR_NUMBER in curses.h
3799 in case it happens to be a comma-expression, etc. (patch by Nick
3803 + improved form_request_by_name() and menu_request_by_name().
3804 + eliminate two fixed-size buffers in toe.c
3805 + extend use_tioctl() to have expected behavior when use_env(FALSE) and
3806 use_tioctl(TRUE) are called.
3807 + modify ncurses test-program, adding -E and -T options to demonstrate
3808 use_env() versus use_tioctl().
3811 + add use_tioctl() function (adapted from patch by Werner Fink,
3815 + add ncurses_mingw.h to installed headers (prompted by patch by
3817 + clarify return-codes from wgetch() in response to SIGWINCH (prompted
3819 + modify resizeterm() to always push a KEY_RESIZE onto the fifo, even
3820 if screensize is unchanged. Modify _nc_update_screensize() to push a
3821 KEY_RESIZE if there was a SIGWINCH, even if it does not call
3822 resizeterm(). These changes eliminate the case where a SIGWINCH is
3823 received, but ERR returned from wgetch or wgetnstr because the screen
3824 dimensions did not change (Novell #769788).
3827 + add --enable-interop to sample package scripts (suggested by Juergen
3829 + update CF_PATH_SYNTAX macro, from mawk changes.
3830 + modify mk-0th.awk to allow for generating llib-ltic, etc., though
3831 some work is needed on cproto to work with lib_gen.c to update
3833 + remove redundant getenv() cal in database-iterator leftover from
3834 cleanup in 20120622 changes (report by Sven Joachim).
3837 + add -d, -e and -q options to test/demo_terminfo and test/demo_termcap
3838 + fix caching of environment variables in database-iterator (patch by
3839 Philippe Troin, Redhat #831366).
3842 + add configure check to distinguish clang from gcc to eliminate
3843 warnings about unused command-line parameters when compiler warnings
3845 + improve behavior when updating terminfo entries which are hardlinked
3846 by allowing for the possibility that an alias has been repurposed to
3848 + fix some strict compiler warnings based on package scripts.
3849 + further fixes for configure check for working poll (Debian #676461).
3852 + fix an uninitialized variable in -c/-n logic for infocmp changes
3854 + corrected fix for building c++ binding with clang 3.0 (report/patch
3855 by Richard Yao, Gentoo #417613, cf: 20110409)
3856 + correct configure check for working poll, fixing the case where stdin
3857 is redirected, e.g., in rpm/dpkg builds (Debian #676461).
3858 + add rpm- and dpkg-scripts, to test those build-environments.
3859 The resulting packages are used only for testing.
3862 + add kdch1 aka "Remove" to vt220 and vt220-8 entries -TD
3863 + add kdch1, etc., to qvt108 -TD
3864 + add dl1/il1 to some entries based on dl/il values -TD
3865 + add dl to simpleterm -TD
3866 + add consistency-checks in tic for insert-line vs delete-line
3867 controls, and insert/delete-char keys
3868 + correct no-leaks logic in infocmp when doing comparisons, fixing
3869 duplicate free of entries given via the command-line, and freeing
3870 entries loaded from the last-but-one of files specified on the
3872 + add kdch1 to wsvt25 entry from NetBSD CVS (reported by David Lord,
3873 analysis by Martin Husemann).
3874 + add cnorm/civis to wsvt25 entry from NetBSD CVS (report/analysis by
3875 Onno van der Linden).
3878 + extend -c and -n options of infocmp to allow comparing more than two
3880 + correct check in infocmp for number of terminal names when more than
3882 + correct typo in curs_threads.3x (report by Yanhui Shen on
3883 freebsd-hackers mailing list).
3886 + corrected 'op' for bterm (report by Samuel Thibault) -TD
3887 + modify test/background.c to demonstrate a background character
3888 holding a colored ACS_HLINE. The behavior differs from SVr4 due to
3889 the thick- and double-line extension (cf: 20091003).
3890 + modify handling of acs characters in PutAttrChar to avoid mapping an
3891 unmapped character to a space with A_ALTCHARSET set.
3892 + rewrite vt520 entry based on vt420 -TD
3895 + remove p6 (bold) from opus3n1+ for consistency -TD
3896 + remove acs stuff from env230 per clues in Ingres termcap -TD
3897 + modify env230 sgr/sgr0 to match other capabilities -TD
3898 + modify smacs/rmacs in bq300-8 to match sgr/sgr0 -TD
3899 + make sgr for dku7202 agree with other caps -TD
3900 + make sgr for ibmpc agree with other caps -TD
3901 + make sgr for tek4107 agree with other caps -TD
3902 + make sgr for ndr9500 agree with other caps -TD
3903 + make sgr for sco-ansi agree with other caps -TD
3904 + make sgr for d410 agree with other caps -TD
3905 + make sgr for d210 agree with other caps -TD
3906 + make sgr for d470c, d470c-7b agree with other caps -TD
3907 + remove redundant AC_DEFINE for NDEBUG versus Makefile definition.
3908 + fix a back-link in _nc_delink_entry(), which is needed if ncurses is
3909 configured with --enable-termcap and --disable-getcap.
3912 + fix some inconsistencies between vt320/vt420, e.g., cnorm/civis -TD
3913 + add eslok flag to dec+sl -TD
3914 + dec+sl applies to vt320 and up -TD
3915 + drop wsl width from xterm+sl -TD
3916 + reuse xterm+sl in putty and nsca-m -TD
3917 + add ansi+tabs to vt520 -TD
3918 + add ansi+enq to vt220-vt520 -TD
3919 + fix a compiler warning in example in ncurses-intro.doc (Paul Waring).
3920 + added paragraph in keyname manpage telling how extended capabilities
3921 are interpreted as key definitions.
3922 + modify tic's check of conflicting key definitions to include extended
3923 capability strings in addition to the existing check on predefined
3927 + improve cleanup of temporary files in tic using atexit().
3928 + add msgr to vt420, similar DEC vtXXX entries -TD
3929 + add several missing vt420 capabilities from vt220 -TD
3930 + factor out ansi+pp from several entries -TD
3931 + change xterm+sl and xterm+sl-twm to include only the status-line
3932 capabilities and not "use=xterm", making them more generally useful
3933 as building-blocks -TD
3934 + add dec+sl building block, as example -TD
3937 + add XT to some terminfo entries to improve usefulness for other
3938 applications than screen, which would like to pretend that xterm's
3939 title is a status-line. -TD
3940 + change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review
3941 of ordering and overrides -TD
3942 + add consistency check in tic for screen's "XT" capability.
3943 + add section in terminfo.src summarizing the user-defined capabilities
3944 used in that file -TD
3947 + fix an inconsistency between tic/infocmp "-x" option; tic omits all
3948 non-standard capabilities, while infocmp was ignoring only the user
3949 definable capabilities.
3950 + improve special case in tic parsing of description to allow it to be
3951 followed by terminfo capabilities. Previously the description had to
3952 be the last field on an input line to allow tic to distinguish
3953 between termcap and terminfo format while still allowing commas to be
3954 embedded in the description.
3955 + correct variable name in gen_edit.sh which broke configurability of
3956 the --with-xterm-kbs option.
3957 + revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD
3958 + further amend 20110910 change, providing for configure-script
3959 override of the "linux" terminfo entry to install and changing the
3960 default for that to "linux2.2" (Debian #665959).
3963 + update Ada95/configure to use CF_DISABLE_ECHO (cf: 20120317).
3964 + correct order of use-clauses in st-256color -TD
3965 + modify configure script to look for gnatgcc if the Ada95 binding
3966 is built, in preference to the default gcc/cc (suggested by
3967 Nicolas Boulenguez).
3968 + modify configure script to ensure that the same -On option used for
3969 the C compiler in CFLAGS is used for ADAFLAGS rather than simply
3970 using "-O3" (suggested by Nicolas Boulenguez)
3973 + amend an old fix so that next_char() exits properly for empty files,
3974 e.g., from reading /dev/null (cf: 20080804).
3975 + modify tic so that it can read from the standard input, or from
3976 a character device. Because tic uses seek's, this requires writing
3977 the data to a temporary file first (prompted by remark by Sven
3978 Joachim) (cf: 20000923).
3981 + correct a check made in lib_napms.c, so that terminfo applications
3982 can again use napms() (cf: 20110604).
3983 + add a note in tic.h regarding required casts for ABSENT_BOOLEAN
3985 + correct scripting for --disable-echo option in test/configure.
3986 + amend check for missing c++ compiler to work when no error is
3987 reported, and no variables set (cf: 20021206).
3988 + add/use configure macro CF_DISABLE_ECHO.
3991 + fix some strict compiler warnings for abi6 and 64-bits.
3992 + use begin_va_copy/end_va_copy macros in lib_printw.c (cf: 20120303).
3993 + improve a limit-check in infocmp.c (Werner Fink):
3996 + minor tidying of terminfo.tail, clarify reason for limitation
3997 regarding mapping of \0 to \200
3998 + minor improvement to _nc_copy_termtype(), using memcpy to replace
4000 + fix no-leaks checking in test/demo_termcap.c to account for multiple
4001 calls to setupterm().
4002 + modified the libgpm change to show previous load as a problem in the
4004 > merge some patches from OpenSUSE rpm (Werner Fink):