NEWS revision 50276
1214152Sed-- $Id: NEWS,v 1.474 1999/08/22 00:12:43 tom Exp $
2214152Sed
3214152SedThis is a log of changes that ncurses has gone through since Zeyd started
4214152Sedworking with Pavel Curtis' original work, pcurses, in 1992.
5222656Sed
6222656SedChanges through 1.9.9e are recorded by Zeyd M. Ben-Halim.
7214152SedChanges since 1.9.9e are recorded by Thomas Dickey.
8214152Sed
9214152Sed990821	pre-release
10214152Sed	+ updated configure macros CF_MAKEFLAGS, CF_CHECK_ERRNO
11214152Sed	+ minor corrections to beterm terminfo entry.
12214152Sed	+ modify lib_setup.c to reject values of $TERM which have a '/' in them.
13214152Sed	+ add ifdef's to guard against CS5, CS6, CS7, CS8 being zero, as more
14214152Sed	  than one is on BeOS.  That would break a switch statement.
15214152Sed	+ add configure macro CF_LINK_FUNCS to detect and work around BeOS's
16214152Sed	  nonfunctional link().
17214152Sed	+ improved configure macros CF_BOOL_DECL and CF_BOOL_SIZE to detect
18214152Sed	  BeOS's bool, which is declared as an unsigned char.
19214152Sed
20214152Sed990814	pre-release
21214152Sed	+ add ms-vt100 terminfo entry -TD
22214152Sed	+ minor fixes for misc/emx.src, based on testing with tack.
23214152Sed	+ minor fix for test/ncurses.c, test 'a', in case ncv is not set.
24214152Sed
25214152Sed990731	pre-release
26214152Sed	+ minor correction for 'screen' terminfo entry.
27214152Sed	+ clarify description of errret values for setupterm in manpage.
28214152Sed	+ modify tput to allow it to emit capabilities for hardcopy terminals
29	  (patch by Goran Uddeborg <goeran@uddeborg.pp.se>).
30	+ modify the 'o' (panel) test in ncurses.c to show the panels in color
31	  or at least in bold, to test Juergen's change to wrefresh().
32	> patches by Juergen Pfeifer:
33	+ Fixes a problem using wbkgdset() with panels.  It has actually
34	  nothing to with panels but is a problem in the implementation of
35	  wrefresh().  Whenever a window changes its background attribute to
36	  something different than newscr's background attribute, the whole
37	  window is touched to force a copy to newscr.  This is an unwanted
38	  side-effect of wrefresh() and it is actually not necessary.  A changed
39	  background attribute affects only further outputs of background it
40	  doesn't mean anything to the current content of the window.  So there
41	  is no need to force a copy.  (reported by Frank Heckenbach
42	  <frank@g-n-u.de>).
43	+ an upward compatible enhancement of the NCursesPad class in the C++
44	  binding.  It allows one to add a "viewport" window to a pad and then
45	  to use panning to view the pad through the viewport window.
46
47990724	pre-release
48	+ suppress a call to def_prog_mode() in the SIGTSTP handler if the
49	  signal was received while not in curses mode, e.g., endwin() was
50	  called in preparation for spawning a shell command (reported by Frank
51	  Heckenbach <frank@g-n-u.de>)
52	+ corrected/enhanced xterm-r5, xterm+sl, xterm+sl-twm terminfo entries.
53	+ change test for xterm mouse capability:  it now checks only if the
54	  user's $DISPLAY variable is set in conjunction with the kmous
55	  capability being present in the terminfo.  Before, it checked if any
56	  of "xterm", "rxvt" or "kterm" were substrings of the terminal name.
57	  However, some emulators which are incompatible with xterm in other
58	  ways do support the xterm mouse capability.
59	+ reviewed and made minor changes in ncurses to quiet g++ warnings
60	  about shadowed or uninitialized variables.  g++ incorrectly warns
61	  about uninitialized variables because it does not take into account
62	  short-circuit expression evaluation.
63	+ change ncurses 'b' test to start in color pair 0 and to show in the
64	  right margin those attributes which are suppressed by no_color_video,
65	  i.e., "(NCV)".
66	+ modify ifdef's in curses.h so that __attribute__ is not redefined
67	  when compiling with g++, but instead disabled the macros derived for
68	  __attribute__ since g++ does not consistently recognize the same
69	  keywords as gcc (reported by Stephan K Zitz <zitz@erf.net>).
70	+ update dependencies for term.h in ncurses/modules (reported by
71	  Ilya Zakharevich).
72
73990710	pre-release
74	+ modify the form demo in ncurses.c to illustrate how to manipulate the
75	  field appearance, e.g, for highlighting or translating the field
76	  contents.
77	+ correct logic in write_entry from split-out of home_terminfo in
78	  980919, which prevented update of $HOME/.terminfo (reported by Philip
79	  Spencer <pspencer@fields.utoronto.ca>).
80
81990703	pre-release
82	+ modify linux terminfo description to make use of kernel 2.2.x mods
83	  that support cursor style, e.g., to implement cvvis (patch by Frank
84	  Heckenbach <frank@g-n-u.de>)
85	+ add special-case in setupterm to retain previously-saved terminal
86	  settings in cur_term, which happens when curses and termcap calls are
87	  mixed (from report by Bjorn Helgaas <helgaas@dhc.net>).
88	+ suppress initialization of key-tries in _nc_keypad() if we are only
89	  disabling keypad mode, e.g., in endwin() called when keypad() was not.
90	+ modify the Ada95 makefile to ensure that always the Ada files from
91	  the development tree are used for building and not the eventually
92	  installed ones (patch by Juergen Pfeifer).
93
94990626	pre-release
95	+ use TTY definition in tack/sysdep.c rather than struct termios
96	  (reported by Philippe De Muyter).
97	+ add a fallback for strstr, used in lib_mvcur.c and tack/edit.c,
98	  not present on sysV68 (reported by Philippe De Muyter).
99	+ correct definition in comp_hash.c to build with configure
100	  --with-rcs-ids option.
101
102990619	pre-release
103	+ modified ifdef's for sigaction and sigvec to ensure we do not try to
104	  handle SIGTSTP if neither is available (from report by Philippe De
105	  Muyter).
106	> patch by Philippe De Muyter:
107	+ in tic.c, use `unlink' if `remove' is not available. 
108	+ use only `unsigned' as fallback value for `speed_t'.  Some files used
109	  `short' instead. 
110
111990616	pre-release
112	+ fix some compiler warnings in tack.
113	+ add a check for predefined bool type in CC, based on report that
114	  BeOS predefines a bool type.
115	+ correct logic for infocmp -e option (i.e., the configure
116	  --with-fallbacks option), which I'd not updated when implementing
117	  extended names (cf:  990301).  The new implementation adds a -E
118	  option to infocmp.
119	> patch by Juergen Pfeifer:
120	+ introduce the private type Curses_Bool in the Ada95 binding
121	  implementation.  This is to clearly represent the use of "bool" also
122	  in the binding.  It should have no effect on the generated code.
123	+ improve the man page for field_buffer() to tell the people, that the
124	  whole buffer including leading/trailing spaces is returned.  This is
125	  a common source of confusion, so it's better to document it clearly. 
126
127990614	pre-release
128	> patch by Juergen Pfeifer:
129	+ use pragma PreElaborate in several places.
130	+ change a few System.Address uses to more specific types.
131	+ change interface version-number to 1.0
132	+ regenerate Ada95 HTML files.
133
134990612	pre-release
135	+ modify lib_endwin.c to avoid calling reset_shell_mode(), return ERR
136	  if it appears that curses was never initialized, e.g., by initscr(). 
137	  For instance, this guards against setting the terminal modes to
138	  strange values if endwin() is called after setupterm().  In the same
139	  context, Solaris curses will dump core.
140	+ modify logic that avoids a conflict in lib_vidattr.c between sgr0 and
141	  equivalent values in rmso or rmul by ensuring we do not modify the
142	  data which would be returned by the terminfo or termcap interfaces
143	  (reported by Brad Pepers <brad@linuxcanada.com>, cf:  960706).
144	+ add a null-pointer check for SP in lib_vidattr.c to logic that checks
145	  for magic cookies.
146	+ improve fallback declaration of 'bool' when the --without-cxx option
147	  is given, by using a 'char' on i386 and related hosts (from discussion
148	  with Alexander Lukyanov).
149
150990605	pre-release
151	+ include time.h in lib_napms.c if nanosleep is used (patch by
152	  R Lindsay Todd <toddr@rpi.edu>).
153	+ add an "#undef bool" to curses.h, in case someone tries to define it,
154	  e.g., perl.
155	+ add check to tparm to guard against divide by zero (reported by Aaron
156	  Campbell <aaron@ug.cs.dal.ca>).
157
158990516	pre-release
159	+ minor fix to build tack on CLIX (mismatched const).
160	> patch by Juergen Pfeifer:
161	+ change Juergen's old email address with new one in the files where it
162	  is referenced.  The Ada95 HTML pages are regenerated. 
163	+ update MANIFEST to list the tack files.
164 
165990509	pre-release
166	+ minor fixes to make 'tack' build/link on NeXT (reported by Francisco
167	  A. Tomei Torres).
168
169990417	pre-release
170	+ add 'tack' program (which is GPL'd), updating it to work with the
171	  modified TERMTYPE struct and making a fix to support setaf/setab
172	  capabilities.  Note that the tack program is not part of the
173	  ncurses libraries, but an application which can be distributed with
174	  ncurses.  The configure script will ignore the directory if it is
175	  omitted, however.
176	+ modify gpm mouse support so that buttons 2 and 3 are used for
177	  select/paste only when shift key is pressed, making them available
178	  for use by an application (patch by Klaus Weide).
179	+ add complete list of function keys to scoansi terminfo entry - TD
180
181990410	pre-release
182	+ add a simple test program cardfile.c to illustrate how to read form
183	  fields, and showing forms within panels.
184	+ change shared-library versioning for the Hurd to be like Linux rather
185	  than *BSD (patch by Mark Kettenis <kettenis@wins.uva.nl>).
186	+ add linux-lat terminfo entry.
187	+ back-out _nc_access check in read_termcap.c (both incorrect and
188	  unnecessary, except to guard against a small window where the file's
189	  ownership may change).
190
191990403	pre-release
192	+ remove conflicting _nc_free_termtype() function from test module
193	  lib_freeall.c
194	+ use _nc_access check in read_termcap.c for termpaths[] array (noted
195	  by Jeremy Buhler, indicating that Alan Cox made a similar patch).
196	> patch by Juergen Pfeifer:
197	+ modify menu creation to not inherit status flag from the default menu
198	  which says that the associated marker string has been allocated and
199	  should be freed (bug reported by Marek Paliwoda" <paliwoda@kki.net.pl>)
200
201990327	pre-release (alpha.gnu.org:/gnu/ncurses-5.0-beta1.tar.gz)
202	+ minor fixes to xterm-xfree86 terminfo entry - TD.
203	+ split up an expression in configure script check for ldconfig to
204	  workaround limitation of BSD/OS sh (reported by Jeff Haas
205	  <jmh@mail.msen.com>).
206	+ correct a typo in man/form_hook.3x (Todd Miller).
207
208990318	pre-release
209	+ parenthesize and undef 'index' symbol in c++ binding and demo, to
210	  accommodate its definition on NeXT (reported by Francisco A. Tomei
211	  Torres).
212	+ add sigismember() to base/sigaction.c compatibility to link on NeXT
213	  (reported by Francisco A. Tomei Torres).
214	+ further refinements to inequality in hashmap.c to cover a case with
215	  ^U in nvi (patch by Alexander Lukyanov).
216
217990316	pre-release
218	+ add fallback definition for getcwd, to link on NeXT.
219	+ add a copy of cur_term to tic.c to make it link properly on NeXT
220	  (reported by Francisco A. Tomei Torres).
221	+ change inequality in hashmap.c which checks the distance traveled by
222	  a chunk so that ^D command in nvi (scrolls 1/2 screen) will use
223	  scrolling logic (patch by Alexander Lukyanov, reported by Jeffrey
224	  Honig).
225
226990314	pre-release
227	+ modify lib_color.c to handle a special case where the curscr
228	  attributes have been made obsolete (patch by Alexander Lukyanov).
229	+ update BSD/OS console terminfo entries to use klone+sgr and
230	  klone+color (patch by Jeffrey Honig).
231	+ update glibc addon configure script for extended capabilities.
232	+ correct a couple of warnings in the --enable-const configuration.
233	+ make comp_hash build properly with _nc_strdup(), on NeXT (reported by
234	  Francisco A. Tomei Torres <francisco.tomei@cwix.com>).
235
236990313	pre-release
237	+ correct typos in linux-c initc string - TD
238	+ add 'crt' terminfo entry, update xterm-xfree86 entry - TD
239	+ remove a spurious argument to tparm() in lib_sklrefr.c (patch by
240	  Alexander Lukyanov).
241
242990307	pre-release
243	+ back-out change to wgetch because it causes a problem with ^Z
244	  handling in lynx (reported by Kim DeVaughn).
245
246990306	pre-release
247	+ add -G option to tic and infocmp, to reverse the -g option.
248	+ recode functions in name_match.c to avoid use of strncpy, which
249	  caused a 4-fold slowdown in tic (cf: 980530).
250	+ correct a few warnings about sign-extension in recent changes.
251	> patch by Juergen Pfeifer:
252	+ fixes suggested by Jeff Bradbury <jibradbury@lucent.com>:
253	  + improved parameter checking in new_fieldtype().
254	  + fixed a typo in wgetch() timeout handling.
255	  + allow slk_init() to be called per newterm call.  The internal SLK
256	    state is stored in the SCREEN struct after every newterm() and then
257	    reset for the next newterm.
258	  + fix the problem that a slk_refresh() refreshes stdscr if the
259	    terminal has true SLKs.
260	+ update HTML documentation for Ada binding.
261
262990301	pre-release
263	+ remove 'bool' casts from definitions of TRUE/FALSE so that statements
264	  such as "#if TRUE" work.  This was originally done to allow for a C++
265	  compiler which would warn of implicit conversions between enum and
266	  int, but is not needed for g++ (reported by Kim DeVaughn).
267	+ add use_extended_names() function to allow applications to suppress
268	  read of the extended capabilities.
269	+ add configure option --enable-tcap-names to support logic which
270	  allows ncurses' tic to define new (i.e., extended) terminal
271	  capabilities.  This is activated by the tic -x switch.  The infocmp
272	  program automatically shows or compares extended capabilities.
273	  Note:  This changes the Strings and similar arrays in the TERMTYPE
274	  struct so that applications which manipulate it must be recompiled.
275	+ use macros typeMalloc, typeCalloc and typeRealloc consistently
276	  throughout ncurses library.
277	+ add _nc_strdup() to doalloc.c.
278	+ modify define_key() to allow multiple strings to be bound to the
279	  same keycode.
280	+ correct logic error in _nc_remove_string, from 990220.
281	> patch by Juergen Pfeifer, for Ada95 binding:
282	+ regenerate some of the html documentation
283	+ minor cleanup in terminal_interface-curses.adb
284
285990220	pre-release
286	+ resolve ambiguity of kend/kll/kslt and khome/kfnd/kich1 strings in
287	  xterm and ncsa terminfo entries by removing the unneeded ones.  Note
288	  that some entries will return kend & khome versus kslt and kfnd, for
289	  PC-style keyboards versus strict vt220 compatiblity - TD
290	+ add function keybound(), which returns the definition associated with
291	  a given keycode.
292	+ modify define_key() to undefine the given string when no keycode is
293	  given.
294	+ modify keyok() so it works properly if there is more than one string
295	  defined for a keycode.
296	+ add check to tic to warn about terminfo descriptions that contain
297	  more than one key assigned to the same string.  This is shown only if
298	  the verbose (-v) option is given.  Moved related logic (tic -v) from
299	  comp_parse.c into the tic program.
300	+ add/use _nc_trace_tries() to show the function keys that will be
301	  recognized.
302	+ rename init_acs to _nc_init_acs (request by Alexander Lukyanov).
303	> patch by Juergen Pfeifer, for Ada95 binding:
304	+ remove all the *_adabind.c from ncurses, menu and form projects.
305	  Those little helper routines have all been implemented in Ada and are
306	  no longer required.
307	+ The option handling routines in menu and form have been made more
308	  save.  They now make sure that the unused bits in options are always
309	  zero.
310	+ modify configuration scripts to
311	  + use gnatmake as default compiler name.  This is a safer choice than
312	    gcc, because some GNAT implementations use other names for the
313	    compilerdriver to avoid conflicts.
314	  + use new default installation locations for the Ada files according
315	    to the proposed GNU Ada filesystem standard (for Linux).
316	+ simplify the Makefiles for the Ada binding
317	+ rename ada_include directory to src.
318
319990213
320	+ enable sigwinch handler by default.
321	+ disable logic that allows setbuf to be turned off/on, because some
322	  implementations will overrun the buffer after it has been disabled
323	  once.
324
325990206
326	+ suppress sc/rc capabilities from terminal description if they appear
327	  in smcup/rmcup.  This affects only scrolling optimization, to fix a
328	  problem reported by several people with xterm's alternate screen,
329	  though the problem is more general.
330	> patch by Juergen Pfeifer, for Ada95 binding:
331	+ removed all pragma Preelaborate() stuff, because the just released
332	  gnat-3.11p complains on some constructs.
333	+ fixed some upper/lower case notations because gnat-3.11p found
334	  inconsistent use.
335	+ used a new method to generate the HTML documentation of the Ada95
336	  binding.  This invalidates nearly the whole ./Ada95/html subtree.
337	  Nearly all current files in this subtree are removed
338
339990130
340	+ cache last result from _nc_baudrate, for performance (suggested by
341	  Alexander Lukyanov).
342	+ modify ClrUpdate() function to workaround a problem in nvi, which
343	  uses redrawwin in SIGTSTP handling.  Jeffrey Honig reported that
344	  ncurses repainted the screen with nulls before resuming normal
345	  operation (patch by Alexander Lukyanov).
346	+ generalize is_xterm() function a little by letting xterm/rxvt/kterm
347	  be any substring rather than the prefix.
348	+ modify lib_data.c to initialize SP.  Some linkers, e.g., IBM's, will
349	  not link a module if the only symbols exported from the module are
350	  uninitialized ones (patch by Ilya Zakharevich, who says that he has
351	  seen messages claiming this behaviour conforms to the standard.)
352	+ move call on _nc_signal_handler past _nc_initscr, to avoid a small
353	  window where Nttyb hasn't yet been filled (reported by Klaus Weide).
354	+ modify lib_tstp.c to block SIGTTOU when handling SIGTSTP, fixes a
355	  problem where ncurses applications which were run via a shell script
356	  would hang when given a ^Z.  Also, check if the terminal's process
357	  group is consistent, i.e., a shell has not taken ownership of it,
358	  before deciding to save the current terminal settings in the SIGTSTP
359	  handler (patch by Klaus Weide).
360	+ correct spelling of ACS_ names in curs_border.3x (reported by Bob van
361	  der Poel <bvdpoel@kootenay.com>).
362	+ correct a couple of typos in the macros supporting the configure
363	  --with-shlib-version option.
364
365990123
366	+ modify fty_regex.c to compile on HAVE_REGEXPR_H_FUNCS machine (patch
367	  by Kimio Ishii <ishii@csl.sony.co.jp>).
368	+ rename BSDI console terminfo entries:  bsdos to bsdos-pc-nobold, and
369	  bsdos-bold to bsdos-pc (patch by Jeffrey C Honig).
370	+ modify tput to accept termcap names as an alternative to terminfo
371	  names (patch by Jeffrey C Honig).
372	+ correct a typo in term.7 (Todd Miller).
373	+ add configure --with-shlib-version option to allow installing shared
374	  libraries named according to release or ABI versions.  This
375	  parameterizes some existing logic in the configure script, and is
376	  intended for compatiblity upgrades on Digital Unix, which used
377	  versioned libraries in ncurses 4.2, but no longer does (cf:  980425).
378	+ resync configure script against autoconf 2.13 + patches
379	+ minor improvements for teraterm terminfo entry based on the program's
380	  source distribution.
381
382990116
383	+ change default for configure --enable-big-core to assume machines do
384	  have enough memory to resolve terminfo.src in-memory.
385	+ correct name of ncurses library in TEST_ARGS when configuring with
386	  debug library.
387	+ minor fixes to compile ncurses library with broken-linker with g++.
388	+ add --enable-broken-linker configure option, default to environment
389	  variable $BROKEN_LINKER (request by Jeffrey C Honig).
390	+ change key_names[] array to static since it is not part of the curses
391	  interface (reported by Jeffrey C Honig <jch@bsdi.com>).
392
393990110
394	+ add Tera Term terminfo entry - TD
395
396990109
397	+ reviewed/corrected macros in curses.h as per XSI document.
398	+ provide support for termcap PC variable by copying it from terminfo
399	  data and using it as the padding character in tputs (reported by
400	  Alexander Lukyanov).
401	+ corrected iris-ansi and iris-ansi-ap terminfo entries for kent and
402	  kf9-kf12 capabilities, as well as adding kcbt.
403	+ document the mouse handling mechanism in menu_driver and make a small
404	  change in menu_driver's return codes to provide more consistency
405	  (patch by Juergen Pfeifer).
406	+ add fallback definition for NCURSES_CONST to termcap.h.in (reported
407	  by Uchiyama Yasushi <uch@nop.or.jp>).
408	+ move lib_restart.c to ncurses/base, since it uses curses functions
409	  directly, and therefore cannot be used in libtinfo.so
410	+ rename micro_char_size to micro_col_size, adding #define to retain
411	  old name.
412	+ add set_a_attributes and set_pglen_inch to terminfo structure, as per
413	  XSI and Solaris 2.5.
414	+ minor makefile files to build ncurses test_progs
415	+ update html files in misc directory to reflect changes since 4.2
416
417990102
418	+ disable scroll hints when hashmap is enabled (patch by Alexander
419	  Lukyanov).
420	+ move logic for tic's verify of -e option versus -I and -C so that the
421	  terminfo data is not processed if we cannot handle -e (reported by
422	  Steven Schwartz <steves@unitrends.com>.
423	+ add test-driver traces to terminfo and termcap functions.
424	+ provide support for termcap ospeed variable by copying it from the
425	  internal cur_term member, and using ospeed as the baudrate reference
426	  for the delay_output and tputs functions.  If an application does not
427	  set ospeed, the library behaves as before, except that _nc_timed_wait
428	  is no longer used, or needed, since ospeed always has a value.  But
429	  the application can modify ospeed to adjust the output of padding
430	  characters (from a bug report for screen 3.7.6 and email from Michael
431	  Schroeder <Michael.Schroeder@informatik.uni-erlangen.de>).
432	+ removed some unused ifdef's as part of Alexander's restructuring.
433	+ reviewed/updated curses.h, term.h against X/Open Curses Issue 4
434	  Version 2.  This includes making some parameters NCURSES_CONST
435	  rather than const, e.g., in termcap.h.
436	+ change linux terminfo entry to use ncv#2, since underline does not
437	  work with color
438
439981226
440	+ miscellaneous corrections for curses.h to match XSI.
441	+ change --enable-no-padding configure option to be normally enabled.
442	+ add section to ncurses manpage for environment variables.
443	+ investigated Debian bug report that pertains to screen 3.7.4/3.7.6
444	  changes, found no sign of problems on Linux (or on SunOS, Solaris)
445	  running screen built with ncurses.
446	+ check if tmp_fp is opened in tic.c before closing it (patch by Pavel
447	  Roskin <pavel_roskin@geocities.com>).
448	+ correct several font specification typos in man-pages.
449
450981220
451	+ correct default value for BUILD_CC (reported by Larry Virden).
452
453981219
454	+ modify _nc_set_writedir() to set a flag in _nc_tic_dir() to prevent
455	  it from changing the terminfo directory after chdir'ing to it.
456	  Otherwise, a relative path in $TERMINFO would confuse tic (from a
457	  Debian bug report).
458	+ correct/update ncsa terminfo entry (report by Larry Virden).
459	+ update xterm-xfree86 terminfo to current (patch 90), smcur/rmcur changes
460	+ add Mathew Vernon's mach console entries to terminfo.src
461	+ more changes, moving functions, as part of Alexander's restructuring.
462	+ modify configure script for GNU/Hurd share-library support, introduce
463	  BUILD_CC variable for cross compiling (patch by Uchiyama Yasushi
464	  <uch@nop.or.jp>)
465
466981212
467	+ add environment variable NCURSES_NO_SETBUF to allow disabling the
468	  setbuf feature, for testing purposes.
469	+ correct ifdef's for termcap.h versus term.h that suppress redundant
470	  declarations of prototypes (reported by H.J.Lu).
471	+ modify Makefile.os2 to add linker flags which allow multiple copies
472	  of an application to coexist (reported by Ilya Zakharevich).
473	+ update Makefile.glibc and associated configure script so that ncurses
474	  builds as a glibc add-on with the new directory configuration
475	  (reported by H.J.Lu).
476
477981205
478	+ modify gen_reps() function in gen.c to work properly on SunOS
479	  (sparc), which is a left-to-right architecture.
480	+ modify relative_move and tputs to avoid an interaction with the
481	  BSD-style padding.  The relative_move function could produce a string
482	  to replace on the screen which began with a numeric character, which
483	  was then interpreted by tputs as padding.  Now relative_move will not
484	  generate a string with a leading digit in that case (overwrite).
485	  Also, tputs will only interpret padding if the string begins with a
486	  digit; as coded it permitted a string to begin with a decimal point
487	  or asterisk (reported by Larry Virden).
488	> patches by Juergen Pfeifer:
489	+ fix a typo in m_driver.c mouse handling and improves the error
490	  handling.
491	+ fix broken mouse handling in the Ada95 binding
492	+ make the Ada95 sample application menus work with the new menu mouse
493	  support
494	+ improve the mouse handling introduced by Ilya; it now handles menus
495	  with spacing.
496	+ repair a minor bug in the menu_driver code discovered during this
497	  rework.
498	+ add new function wmouse_trafo() to hide implementation details of
499	  _yoffset member of WINDOW struct needed for mouse coordinate
500	  transformation.
501
502981128
503	+ modify Ada95/gen/gen.c to avoid using return-value of sprintf, since
504	  some older implementations (e.g., SunOS 4.x) return the buffer
505	  address rather than its length.
506	> patch by Rick Ohnemus:
507	+ modify demo.cc to get it to compile with newer versions of egcs.
508	+ trim a space that appears at the end of the table preprocessor lines
509	  ('\" t).  This space prevents some versions of man from displaying
510	  the pages - changed to remove all trailing whitespace (TD)
511	+ finally, 'make clean' does not remove panel objects.
512	> patches by Ilya Zakharevich:
513	+ allow remapping of OS/2 mouse buttons using environment variable
514	  MOUSE_BUTTONS_123 with the default value 132.
515	+ add mouse support to ncurses menus.
516
517981121
518	+ modify misc/makedef.cmd to report old-style .def file symbols, and to
519	  generate the .def files sorted by increasing names rather than the
520	  reverse.
521	+ add misc/*.ref which are J.J.G.Ripoll's dll definition files (renamed
522	  from misc/*.old), and updated based on the entrypoint coding he used
523	  for an older version of ncurses.
524	+ add README.emx, to document how to build on OS/2 EMX.
525	+ updates for config.guess, config.sub from Lynx
526	> patches by Ilya Zakharevich:
527	+ minor fixes for mouse handling mode:
528	  a) Do not initialize mouse if the request is to have no mouse;
529	  b) Allow switching of OS/2 VIO mouse on and off.
530	+ modify Makefile.os2 to support alternative means of generating
531	  configure script, by translating Unix script with Perl.
532	> patches by Juergen Pfeifer:
533	+ Updates MANIFEST to reflect changes in source structure
534	+ Eliminates a problem introduced with my last patch for the C++
535	  binding in the panels code.  It removes the update() call done in the
536	  panel destructor.
537	+ Changes in the Ada95 binding to better support systems where
538	  sizeof(chtype)!=sizeof(int) (e.g.  DEC Alpha).
539
540981114
541	+ modify install-script for manpages to skip over .orig and .rej files
542	  (request by Larry Virden).
543	> patches/discussion by Alexander Lukyanov:
544	+ move base-library sources into ncurses/base and tty (serial terminal)
545	  sources into ncurses/tty, as part of Alexander Lukyanov's proposed
546	  changes to ncurses library.
547	+ copy _tracemouse() into ncurses.c so that lib_tracemse.c need not
548	  be linked into the normal ncurses library.
549	+ move macro winch to a function, to hide details of struct ldat
550	> patches by Juergen Pfeifer:
551	+ fix a potential compile problem in cursesw.cc
552	+ some Ada95 cosmetics
553	+ fix a gen.c problem when compiling on 64-Bit machines
554	+ fix Ada95/gen/Makefile.in "-L" linker switch
555	+ modify Ada95 makefiles to use the INSTALL_PREFIX setting.
556
557981107
558	+ ifdef'd out lib_freeall.c when not configured.
559	+ rename _tracebits() to _nc_tracebits().
560	+ move terminfo-library sources into ncurses/tinfo, and trace-support
561	  functions into ncurses/trace as part of Alexander Lukyanov's proposed
562	  changes to ncurses library.
563	+ modify generated term.h to always specify its own definitions for
564	  HAVE_TERMIOS_H, etc., to guard against inclusion by programs with
565	  broken configure scripts.
566
567981031
568	+ modify terminfo parsing to accept octal and hexadecimal constants,
569	  like Solaris.
570	+ remove an autoconf 2.10 artifact from the configure script's check
571	  for "-g" compiler options.  (Though harmless, this confused someone
572	  at Debian, who recently issued a patch that results in the opposite
573	  effect).
574	+ add configure option --with-ada-compiler to accommodate installations
575	  that do not use gcc as the driver for GNAT (patch by Juergen
576	  Pfeifer).
577
578981017
579	+ ensure ./man exists in configure script, needed when configuring
580	  with --srcdir option.
581	+ modify infocmp "-r" option to remove limit on formatted termcap
582	  output, which makes it more like Solaris' version.
583	+ modify captoinfo to treat no-argument case more like Solaris' version,
584	  which uses the contents of $TERMCAP as the entry to format.
585	+ modify mk-2nd.awk to handle subdirectories, e.g., ncurses/tty
586	  (patch by Alexander V Lukyanov).
587
588981010
589	+ modify --with-terminfo-dirs option so that the default value is the
590	  ${datadir} value, unless $TERMINFO_DIRS is already set.  This gets
591	  rid of a hardcoded list of candidate directories in the configure
592	  script.
593	+ add some error-checking to _nc_read_file_entry() to ensure that
594	  strings are properly terminated (Todd Miller).
595	+ rename manpage file curs_scr_dmp.3x to curs_scr_dump.3x, to
596	  correspond with contents (reported by Neil Zanella
597	  <nzanella@cs.mun.ca>).
598	+ remove redundant configure check for C++ which did not work when $CXX
599	  was specified with a full pathname (reported by Andreas Jaeger).
600	+ corrected bcopy/memmove check; the macro was not standalone.
601
602981003
603	+ remove unnecessary portion of OS/2 EMX mouse change from
604	  check_pending() (reported by Alexander V Lukyanov).
605
606980926
607	+ implement mouse support for OS/2 EMX (adapted from patch against
608	  4.2(?) by Ilya Zakharevich).
609	+ add configure-check for bcopy/memmove, for 980919 changes to hashmap.
610	+ merge Data General terminfo from Hasufin <hasufin@vidnet.net> - TD
611	+ merge AIX 3.2.5 terminfo descriptions for IBM terminals, replaces
612	  some older entries - TD
613	+ modify tic to compile into %'char' form in preference to %{number},
614	  since that is a little more efficient.
615	+ minor correction to infocmp to avoid displaying "difference" between
616	  two capabilities that are rendered in equivalent forms.
617	+ add -g option to tic/infocmp to force character constants to be
618	  displayed in quoted form.  Otherwise their decimal values are shown.
619	+ modify setupterm so that cancelled strings are treated the same as
620	  absent strings, cancelled and absent booleans false (does not affect
621	  tic, infocmp).
622	+ modify tic, infocmp to discard redundant i3, r3 strings when output
623	  to termcap format.
624 	> patch by Alexander V Lukyanov:
625	+ improve performance of tparm, now it takes 19% instead of 25% when
626	  profiling worm.
627	+ rename maxlen/minlen to prec/width for better readability.
628	+ use format string for printing strings.
629	+ use len argument correctly in save_text, and pass it to save_number.
630
631980919
632	+ make test_progs compile (but hashmap does not function).
633	+ correct NC_BUFFERED macro, used in lib_mvcur test-driver, modify
634	  associated logic to avoid freeing the SP->_setbuf data.
635	+ add modules home_terminfo and getenv_num to libtinfo.
636	+ move write_entry to libtinfo, to work with termcap caching.
637	+ minor fixes to blue.c to build with atac.
638	+ remove softscroll.c module; no longer needed for testing.
639	> patches by Todd C Miller:
640	+ use strtol(3) instead of atoi(3) when parsing env variables so we can
641	  detect a bogus (non-numeric) value.
642	+ check for terminal names > MAX_NAME_SIZE in a few more places when
643	  dealing with env variables again.
644	+ fix a MAX_NAME_SIZE that should be MAX_NAME_SIZE+1
645	+ use sizeof instead of strlen(3) on PRIVATE_INFO since it is a fixed
646	  string #define (compile time vs runtime).
647	+ when setting errno to ENOMEM, set it right before the return, not
648	  before code that could, possibly, set errno to a different value.
649 	> patches by Alexander V Lukyanov:
650	+ use default background in update_cost_from_blank()
651	+ disable scroll-hints when hashmap is configured.
652	+ improve integration of hashmap scrolling code, by adding oldhash and
653	  newhash data to SP struct.
654	+ invoke del_curterm from delscreen.
655	+ modify del_curterm to set cur_term to null if it matches the function's
656	  parameter which is deleted.
657	+ modify lib_doupdate to prefer parm_ich to the enter_insert_mode and
658	  exit_insert_mode combination, adjusting InsCharCost to check
659	  enter_insert_mode, exit_insert_mode and insert_padding.  Add
660	  insert_padding in insert mode after each char.  This adds new costs
661	  to the SP struct.
662
663980912
664	+ modify test-driver in lib_mvcur.s to use _nc_setbuffer, for consistent
665	  treatment.
666	+ modify ncurses to restore output to unbuffered on endwin, and resume
667	  buffering in refresh (see lib_set_term.c and NC_BUFFERED macro).
668	+ corrected HTML version numbers (according to the W3C validator, they
669	  never were HTML 2.0-compliant, but are acceptable 3.0).
670
671980905
672	+ modify MKterminfo.sh to generate terminfo.5 with tables sorted by
673	  capability name, as in SVr4.
674	+ modified term.h, termcap.h headers to avoid redundant declarations.
675	+ change 'u_int' type in tset.c to unsigned, making this compile on
676	  Sequent PRX 4.1 (reported by Michael Sterrett <msterret@coat.com>).
677
678980829
679	+ corrections to mailing addresses, and moving the magic line that
680	  causes the man program to invoke tbl to the first line of each
681	  manpage (patch by Rick Ohnemus <rick@ecompcon.com>).
682	+ add Makefile.os2 and supporting scripts to generate dll's on OS/2 EMX
683	  (from J.J.G.Ripoll, with further integration by TD).
684 	+ correct a typo in icl6404 terminfo entry.
685 	+ add xtermm and xtermc terminfo entries.
686	> from esr's terminfo version:
687 	+ Added Francesco Potorti's tuned Wyse 99 entries.
688 	+ dtterm enacs correction from Alexander V Lukyanov.
689 	+ Add ncsa-ns, ncsa-m-ns and ncsa-m entries from esr version.
690
691980822
692	+ document AT&T acs characters in terminfo.5 manpage.
693	+ use EMX _scrsize() function if terminfo and environment do not
694	  declare the screen size (reported by Ilya Zakharevich
695	  <ilya@math.ohio-state.edu>).
696	+ remove spurious '\' characters from eterm and osborne terminfo
697	  entries (prompted by an old Debian bug report).
698	+ correct reversed malloc/realloc calls in _nc_doalloc (reported by
699	  Hans-Joachim Widmaier <hjwidmai@foxboro.com>).
700	+ correct misplaced parenthesis which caused file-descriptor from
701	  opening termcap to be lost, from 980725 changes (reported by Andreas
702	  Jaeger).
703
704980815
705	+ modify lib_setup.c to eliminate unneeded include of <sys/ioctl.h> when
706	  termios is not used (patch by Todd C Miller).
707	+ add function _nc_doalloc, to ensure that failed realloc calls do not
708	  leak memory (reported by Todd C Miller).
709	+ improved ncsa-telnet terminfo entry.
710
711980809
712	+ correct missing braces around a trace statement in read_entry.c,
713	  from 980808 (reported by Kim DeVaughn <kimdv@best.com> and Liviu
714	  Daia).
715
716980808
717	+ fix missing include <errno.h> in ditto.c (reported by Bernhard
718	  Rosenkraenzer <bero@k5.sucks.eu.org>)
719	+ add NCSA telnet terminfo entries from Francesco Potorti
720	  <F.Potorti@cnuce.cnr.it>, from Debian bug reports.
721	+ make handling of $LINES and $COLUMNS variables more compatible with
722	  Solaris by allowing them to individually override the window size
723	  as obtained via ioctl.
724
725980801
726	+ modify lib_vidattr.c to allow for terminal types (e.g., xterm-color)
727	  which may reset all attributes in the 'op' capability, so that colors
728	  are set before turning on bold and other attributes, but still after
729	  turning attributes off.
730	+ add 'ditto.c' to test directory to illustrate use of newterm for
731	  initializing multiple screens.
732	+ modify _nc_write_entry() to recover from failed attempt to link alias
733	  for a terminfo on a filesystem which does not preserve character case
734	  (reported by Peter L Jordan <PJordan@chla.usc.edu>).
735
736980725
737	+ updated versions of config.guess and config.sub based on automake 1.3
738	+ change name-comparisons in lib_termcap to compare no more than 2
739	  characters (gleaned from Debian distribution of 1.9.9g-8.8, verified
740	  with Solaris curses).
741	+ fix typo in curs_insstr.3x (patch by Todd C Miller)
742	+ use 'access()' to check if ncurses library should be permitted to
743	  open or modify files with fopen/open/link/unlink/remove calls, in
744	  case the calling application is running in setuid mode (request by
745	  Cristian Gafton <gafton@redhat.com>, responding to Duncan Simpson
746	  <dps@io.stargate.co.uk>).
747	+ arm100 terminfo entries from Dave Millen <dmill@globalnet.co.uk>).
748	+ qnxt2 and minitel terminfo entries from esr's version.
749
750980718
751	+ use -R option with ldconfig on FreeBSD because otherwise it resets
752	  the search path to /usr/lib (reported by Dan Nelson).
753	+ add -soname option when building shared libraries on OpenBSD 2.x
754	  (request by QingLong).
755	+ add configure options --with-manpage-format and --with-manpage-renames
756	  (request by QingLong).
757	+ correct conversion of CANCELLED_NUMERIC in write_object(), which was
758	  omitting the high-order byte, producing a 254 in the compiled
759	  terminfo.
760	+ modify return-values of tgetflag, tgetnum, tgetstr, tigetflag,
761	  tigetnum and tigetstr to be compatible with Solaris (gleaned from
762	  Debian distribution of 1.9.9g-8.8).
763	+ modify _nc_syserr_abort to abort only when compiled for debugging,
764	  otherwise simply exit with an error.
765
766980711
767	+ modify Ada95 'gen' program to use appropriate library suffix (e.g.,
768	  "_g" for a debug build).
769	+ update Ada95 'make clean' rule to include generics .ali files
770	+ add a configure test to ensure that if GNAT is found, that it can
771	  compile/link working Ada95 program.
772	+ flush output in beep and flash functions, fixing a problem with
773	  getstr (patch by Alexander V Lukyanov)
774	+ fix egcs 1.0.2 warning for etip.h (patch by Chris Johns).
775	+ correct ifdef/brace nesting in lib_sprintf.c (patch by Bernhard
776	  Rosenkraenzer <bero@Pool.Informatik.RWTH-Aachen.DE>).
777	+ correct typo in wattr_get macro from 980509 fixes (patch by Dan
778	  Nelson).
779
780980704
781	+ merge changes from current XFree86 xterm terminfo descriptions.
782	+ add configure option '--without-ada'.
783	+ add a smart-default for termcap 'ac' to terminfo 'acs_chars' which
784	  corresponds to vt100.
785	+ change translation for termcap 'rs' to terminfo 'rs2', which is
786	  the documented equivalent, rather than 'rs1'.
787
788980627
789	+ slow 'worm' down a little, for very fast machines.
790	+ corrected firstchar/lastchar computation in lib_hline.c
791	+ simplify some expressions with CHANGED_CELL, CHANGED_RANGE and
792	  CHANGED_TO_EOL macros.
793	+ modify init_pair so that if a color-pair is reinitialized, we will
794	  repaint the areas of the screen whose color changes, like SVr4 curses
795	  (reported by Christian Maurer <maurer@inf.fu-berlin.de>).
796	+ modify getsyx/setsyx macros to comply with SVr4 man-page which
797	  says that leaveok() affects their behavior (report by Darryl Miles,
798	  patch by Alexander V Lukyanov).
799
800980620
801	+ review terminfo.5 against Solaris 2.6 curses version, corrected
802	  several minor errors/omissions.
803	+ implement tparm %l format.
804	+ implement tparm printf-style width and precision for %s, %d, %x, %o
805	  as per XSI.
806	+ implement tparm dynamic variables (reported by Xiaodan Tang).
807
808980613
809	+ update man-page for for wattr_set, wattr_get (cf:  980509)
810	+ correct limits in hashtest, which would cause nonprinting characters
811	  to be written to large screens.
812	+ correct configure script, when --without-cxx was specified:  the
813	  wrong variable was used for cf_cv_type_of_bool.  Compilers up to gcc
814	  2.8 tolerated the missing 'int'.
815	+ remove the hardcoded name "gcc" for the GNU Ada compiler.  The
816	  compiler's name might be something like "egcs" (patch by Juergen
817	  Pfeifer).
818	+ correct curs_addch.3x, which implied that echochar could directly
819	  display control characters (patch by Alexander V Lukyanov).
820	+ fix typos in ncurses-intro.html (patch by Sidik Isani
821	  <isani@cfht.hawaii.edu>)
822
823980606
824	+ add configure test for conflicting use of exception in math.h and
825	  other headers.
826	+ minor optimization to 'hash()' function in hashmap.c, reduces its
827	  time by 10%.
828	+ correct form of LD_SHARED_OPTS for HP-UX 10.x (patch by Tim Mooney).
829	+ fix missing quotes for 'print' in MKunctrl.awk script (reported by
830	  Mihai Budiu <mihaib@gs41.sp.cs.cmu.edu>).
831	> patch by Alexander V Lukyanov:
832	+ correct problem on Solaris (with poll() function) where getch could
833	  hang indefinitely even if timeout(x) was called.  This turned out to
834	  be because milliseconds was not updated before 'goto retry' in
835	  _nc_timed_wait.
836	+ simplified the function _nc_timed_wait and fixed another bug, which
837	  was the assumption of !GOOD_SELECT && HAVE_GETTIMEOFDAY in *timeleft
838	  assignment.
839	+ removed the cycle on EINTR, as it seems to be useless.
840
841980530
842	+ add makefile-rule for test/keynames
843	+ modify run_tic.sh and shlib to ensure that user's .profile does not
844	  override the $PATH used to run tic (patch by Tim Mooney).
845	+ restore LD_SHARED_OPTS to $(LD_SHARED_FLAGS) when linking programs,
846	  needed for HP-UX shared-library path (recommended by Tim Mooney).
847	+ remove special case of HP-UX -L options, use +b options to embed
848	  $(libdir) in the shared libraries (recommended by Tim Mooney).
849	+ add checks for some possible buffer overflows and unchecked
850	  malloc/realloc/calloc/strdup return values (patch by Todd C Miller
851	  <Todd.Miller@courtesan.com>)
852
853980523
854	+ correct maxx/maxy expression for num_columns/num_lines in derwin
855	  (patch by Alexander V Lukyanov).
856	+ add /usr/share/lib/terminfo and /usr/lib/terminfo as compatibilty
857	  fallbacks to _nc_read_entry(), along with --with-terminfo-dirs
858	  configure option (suggested by Mike Hopkirk).
859	+ modify config.guess to recognize Unixware 2.1 and 7 (patch by Mike
860	  Hopkirk <hops@sco.com>).
861	+ suppress definition of CC_SHARED_OPTS in LDFLAGS_SHARED in c++
862	  Makefile.in, since this conflicts when g++ is used with HP-UX
863	  compiler (reported by Tim Mooney).
864	+ parenthesize 'strcpy' calls in c++ binding to workaround redefinition
865	  in some C++ implementations (reported by several people running
866	  egcs with glibc 2.0.93, analysis by Andreas Jaeger.
867
868980516
869	+ modify write_entry.c so that it will not attempt to link aliases
870	  with embedded '/', but give only a warning.
871	+ put -L$(libdir) first when linking programs, except for HP-UX.
872	+ modify comp_scan.c to handle SVr4 terminfo description for att477,
873	  which contains a colon in the description field.
874	+ modify configure script to support SCO osr5.0.5 shared libraries
875	  (from comp.unix.sco.programmer newsgroup item by Mike Hopkirk
876	  <hops@sco.com>).
877	+ eliminate extra GoTo call in lib_doupdate.c (patch by Alexander V.
878	  Lukyanov).
879	+ minor adjustments of const/NCURSES_CONST from IRIX compile.
880	+ add updates based on esr's 980509 version of terminfo.src.
881
882980509
883	+ correct macros for wattr_set, wattr_get, separate wattrset macro from
884	  these to preserve behavior that allows attributes to be combined with
885	  color pair numbers.
886	+ add configure option --enable-no-padding, to allow environment
887	  variable $NCURSES_NO_PADDING to eliminate non-mandatory padding,
888	  thereby making terminal emulators (e.g., for vt100) a little more
889	  efficient (request by Daniel Eisenbud <eisenbud@cs.swarthmore.edu>).
890	+ modify configure script to embed ABI in shared libraries for HP-UX
891	  10.x (detailed request by Tim Mooney).
892	+ add test/example of the 'filter()' function.
893	+ add nxterm and xterm-color terminfo description (request by Cristian
894	  Gafton <gafton@redhat.com>).
895	+ modify rxvt terminfo description to clear alternate screen before
896	  switching back to normal screen, for compatibility with applications
897	  which use xterm (reported by Manoj Kasichainula <manojk@io.com>).
898	+ modify linux terminfo description to reset color palette (reported
899	  by Telford Tendys <telford@eng.uts.edu.au>).
900	+ correction to doupdate, for case where terminal does not support
901	  insert/delete character.  The logic did not check that there was a
902	  difference in alignment of changes to old/new screens before
903	  repainting the whole non-blank portion of the line.  Modified to fall
904	  through into logic that reduces by the portion which does not differ
905	  (reported by Daniel Eisenbud <eisenbud@cs.swarthmore.edu>).
906	+ minor performance improvement to wnoutrefresh by moving some
907	  comparisons out of inner loop.
908
909980425
910	+ modify configure script to substitute NCURSES_CONST in curses.h
911	+ updated terminfo entries for xterm-xf86-v40, xterm-16color,
912	  xterm-8bit to correspond to XFree86 3.9Ag.
913	+ remove restriction that forces ncurses to use setaf/setab if the
914	  number of colors is greater than 8.  (see 970524 for xterm-16color).
915	+ change order of -L options (so that $(libdir) is searched first) when
916	  linking tic and other programs, to workaround HP's linker.
917	  Otherwise, the -L../lib is embedded when linking against shared
918	  libraries and the installed program does not run (reported by Ralf
919	  Hildebrandt).
920	+ modify configuration of shared libraries on Digital Unix so that
921	  versioning is embedded in the library, rather than implied by
922	  links (patch by Tim Mooney).
923
924980418
925	+ modify etip.h to avoid conflict with math.h on HP-UX 9.03 with gcc
926	  2.8.1 which redefines 'exception' (reported by Ralf Hildebrandt
927	  <R.Hildebrandt@tu-bs.de>).
928	+ correct configure tests in CF_SHARED_OPTS which used $CC value to
929	  check for gcc, rather than autoconf's $GCC value.  This did not
930	  work properly if the full pathname of the compiler were given
931	  (reported by Michael Yount <yount@csf.Colorado.edu>).
932	+ revise check for compiler options to force ANSI mode since repeating
933	  an option such as -Aa causes HP's compiler to fail on its own headers
934	  (reported by Clint Olsen <olsenc@ichips.intel.com>).
935
936980411
937	+ ifdef'd has_key() and mcprint() as extended functions.
938	+ modified several prototypes to correspond with 1997 version of
939	  X/Open Curses (affects ABI since developers have used attr_get).
940	+ remove spurious trailing blanks in glibc addon-scripts (patch by
941	  H.J.Lu).
942	+ insert a few braces at locations where gcc-2.8.x asks to use them to
943	  avoid ambigous else's, use -fpic rather than -fPIC for Linux (patch
944	  by Juergen Pfeifer).
945
946980404
947	+ split SHLIB_LIST into SHLIB_DIRS/SHLIB_LIST to keep -L options
948	  before -l to accommodate Solaris' linker (reported by Larry Virden).
949
950980328
951	+ modify lib_color.c to eliminate dependency on orig_colors and
952	  orig_pair, since SVr4 curses does not require these either, but
953	  uses them when they are available.
954	+ add detailed usage-message to infocmp.
955	+ correct a typo in att6386 entry (a "%?" which was "?").
956	+ add -f option to infocmp and tic, which formats the terminfo
957	  if/then/else/endif so that they are readable (with newlines and
958	  tabs).
959	+ fixes for glibc addon scripts (patch by H.J.Lu).
960
961980321
962	+ revise configure macro CF_SPEED_TYPE so that termcap.h has speed_t
963	  declared (from Adam J. Richter <adam@yggdrasil.com>)
964	+ remove spurious curs_set() call from leaveok() (J.T.Conklin).
965	+ corrected handling leaveok() in doupdate() (patch by Alexander V.
966	  Lukyanov).
967	+ improved version of wredrawln (patch by Alexander V. Lukyanov).
968	+ correct c++/Makefile.in so install target do not have embedded ../lib
969	  to confuse it (patch by Thomas Graf <graf@essi.fr>).
970	+ add warning to preinstall rule which checks if the installer would
971	  overwrite a curses.h or termcap.h that is not derived from ncurses.
972	  (The recommended configuration for developers who need both is to
973	  use --disable-overwrite).
974	+ modify preinstall rule in top-level Makefile to avoid implicit
975	  use of 'sh', to accommodate Ultrix 4.4 (reported by Joao Palhoto
976	  Matos <jmatos@math.ist.utl.pt>, patch by Thomas Esser
977	  <te@informatik.uni-hannover.de>)
978	+ refine ifdef's for TRACE so that libncurses has fewer dependencies
979	  on libtinfo when TRACE is disabled.
980	+ modify configure script so that if the --with-termlib option is used
981	  to generate a separate terminfo library, we chain it to the ncurses
982	  library with a "-l" option (reported by Darryl Miles and Ian T.
983	  Zimmerman).
984
985980314
986	+ correct limits and window in wredrawln function (reported/analysis by
987	  Alexander V. Lukyanov).
988	+ correct sed expression in configure script for --with-fallback
989	  option (patch by Jesse Thilo).
990	+ correct some places in configure script where $enableval was used
991	  rather than $withval (patch by Darryl Miles <dlm@g7led.demon.co.uk>).
992	+ modify some man-pages so no '.' or '..' falls between TH and SH
993	  macros, to accommodate man_db program (reported by Ian T. Zimmerman
994	  <itz@rahul.net>).
995	+ terminfo.src 10.2.1 from Eric's webpage.
996	> several changes by Juergen Pfeifer:
997	+ add copyright notices (and rcs id's) on remaining man-pages.
998	+ corrected prototypes for slk_* functions, using chtype rather than
999	  attr_t.
1000	+ implemented the wcolor_set() and slk_color() functions
1001	+ the slk_attr_{set,off,on} functions need an additional void*
1002	  parameter according to XSI.
1003	+ fix the C++ and Ada95 binding as well as the man pages to
1004    	  reflect above enhancements.
1005
1006980307
1007	+ use 'stat()' rather than 'access()' in toe.c to check for the
1008	  existence of $HOME/.terminfo, since it may be a file.
1009	+ suppress configure CF_CXX_LIBRARY check if we are not using g++
1010	  2.7.x, since this is not needed with g++ 2.8 or egcs (patch by
1011	  Juergen Pfeifer).
1012	+ turn on hashmap scrolling code by default, intend to remedy defects
1013	  by 4.3 release.
1014	+ minor corrections to terminfo.src changelog.
1015
1016980302	4.2 release for upload to prep.ai.mit.edu
1017	+ correct Florian's email address in ncurses-intro.html
1018	+ terminfo.src 10.2.0 from Eric.
1019
1020980228	pre-release
1021	+ add linux-koi8r replace linux-koi8, which is not KOI8 (patch by
1022	  QingLong <qinglong@Bolizm.ihep.su>).
1023	+ minor documentation fixes (patch by Juergen Pfeifer).
1024	+ add setlocale() call to ncurses.c (reported by Claes G. Lindblad
1025	  <claesg@algonet.se>).
1026	+ correct sign-extension in lib_insstr.c (reported by Sotiris
1027	  Vassilopoulos <svas@leon.nrcps.ariadne-t.gr>)
1028
1029980221	pre-release
1030	+ regenerated some documentation overlooked in 980214 patch
1031	  (ncurses-intro.doc, curs_outopts.3x.html)
1032	+ minor ifdef change to C++ binding to work with gcc 2.8.0 (patch by
1033	  Juergen Pfeifer).
1034	+ change maintainer's mailing address to florian@gnu.org, change
1035	  tentative mailing list address to bug-ncurses-request@gnu.org (patch
1036	  by Florian La Roche).
1037	+ add definition of $(REL_VERSION) to c++/Makefile.in (reported by Gran
1038	  Hasse <gh@raditex.se>).
1039	+ restore version numbers to Ada95 binding, accidentally deleted by
1040	  copyright patch (patch by Juergen Pfeifer).
1041
1042980214	pre-release
1043	+ remove ncurses.lsm from MANIFEST so that it won't be used in FSF
1044	  distributions, though it is retained in development.
1045	+ correct scaling of milliseconds to nanoseconds in lib_napms.c (patch
1046	  by Jeremy Buhler).
1047	+ update mailing-list information (bug-ncurses@gnu.org).
1048	+ update announcement for upcoming 4.2 release.
1049	+ modify -lm test to check for 'sin()' rather than 'floor()'
1050	+ remove spurious commas from terminfo.src descriptions.
1051	+ change copyright notices to Free Software Foundation
1052
1053980207
1054	+ minor fixes for autoconf macros CF_ERRNO, CF_HELP_MESSAGE and
1055	  CF_SIZECHANGE
1056	+ modify Makefile.glibc so that $(objpfx) is defined (H.J.Lu).
1057	+ ifdef-out true-return from _nc_mouse_inline() which depends on
1058	  merge of QNX patch (pending 4.2 release).
1059	> patch by J.T.Conklin, to split off seldom-used modules in ncurses
1060	  (reduces size by up to 2.6kb):
1061	+ move functionality of _nc_usleep into napms, add configuration case
1062	  for nanosleep().
1063	+ moved wchgat() from lib_addch.c to lib_chgat.c
1064	+ moved clearok(), immedok(), leaveok(), and scrollok() from
1065	  lib_options.c to lib_clearok.c, lib_immedok.c, lib_leaveok.c and
1066	  lib_scrollok.c.
1067	+ moved napms() from lib_kernel.c to lib_napms.c
1068	+ moved echo() and noecho() from lib_raw.c to lib_echo.c
1069	+ moved nl() and nonl() from lib_raw.c to lib_nl.c
1070
1071980131
1072	+ corrected conversion in tclock.c (cf: 971018).
1073	+ updates to Makefile.glibc and associated Linux configure script
1074	  (patch by H.J.Lu).
1075	+ workaround a quoting problem on SunOS with tar-copy.sh
1076	+ correct init_pair() calls in worm.c to work when use_default_colors()
1077	  is not available.
1078	+ include <sys/types.h> in CF_SYS_TIME_SELECT to work with FreeBSD 2.1.5
1079	+ add ncv capability to FreeBSD console (cons25w), making reverse
1080	  work with color.
1081	+ correct sense of configure-test for sys/time.h inclusion with
1082	  sys/select.h
1083	+ fixes for Ada95/ada_include/Makefile.in to work with --srcdir option.
1084	+ remove unused/obsolete test-program rules from progs/Makefile.in
1085	  (the rules in ncurses/Makefile.in work).
1086	+ remove shared-library loader flags from test/Makefile.in, etc.
1087	+ simplify test/configure.in using new version of autoconf to create
1088	  test/ncurses_cfg.h
1089	+ suppress suffix rules in test/Makefile.in, provide explicit dependency
1090	  to work with --srcdir option and less capable 'make' programs.
1091	> adapted from patch for QNX by Xiaodan Tang:
1092	+ initialize %P and %g variables set/used in tparm, and also ensure
1093	  that empty strings don't return a null result from tparam_internal
1094	+ add QNX-specific prototype for vsscanf()
1095	+ move initialization of SP->_keytry from init_keytry() to newterm() to
1096	  avoid resetting it via a keyok() call by mouse_activate().
1097	+ reorganized some functions in lib_mouse() to use case-statements.
1098	+ remove sgr string from qnx terminfo entry since it is reported to
1099	  turn off attributes inconsistently.
1100
1101980124
1102	+ add f/F/b/B commands to ncurses 'b' test to toggle colors, providing
1103	  test for no_color_video.
1104	+ adjusted emx.src to use no_color_video, now works with ncurses 'b'
1105	  and 'k' tests.
1106	+ implement no_color_video attribute, and as a special case, reverse
1107	  colors when the reverse attribute cannot be combined with color.
1108	+ check for empty string in $TERM variable (reported by Brett Michaels
1109	  <brett@xylan.com>).
1110	> from reports by Fred Fish:
1111	+ add configure-test for isascii
1112	+ add configure-test for -lm library.
1113	+ modify CF_BOOL_SIZE to check if C++ bool types are unsigned.
1114	> patches by J.J.G.Ripoll
1115	+ add configure/makefile variables to support .exe extension on
1116	  OS/2 EMX (requires additional autoconf patches).
1117	+ explicitly initialize variables in lib_data.c to appease OS/2 linker
1118	> patches by Fred Fish <fnf@ninemoons.com>
1119	+ misc/Makefile.in (install.data):  Avoid trying to install the CVS
1120	  directory.
1121	+ aclocal.m4 (install.includes):  Remove files in the include directory
1122	  where we are going to install new ones, not the original source
1123	  files.
1124	+ misc/terminfo.src:  Add entry for "beterm", derived from termcap
1125	  distributed with BeOS PR2 using captoinfo.
1126	+ aclocal.m4: Wrap $cf_cv_type_of_bool with quotes (contains space)
1127	+ aclocal.m4: Assume bool types are unsigned.
1128	+ progs/infocmp.c: workaround mwcc 32k function data limit
1129
1130980117
1131	+ correct initialization of color-pair (from 970524) in xmas.c, which
1132	  was using only one color-pair for all colors (reported by
1133	  J.J.G.Ripoll).
1134	+ add multithread options for objects build on EMX, for compatibility
1135	  with XFree86.
1136	+ split up an expression in MKlib_gen.sh to work around a problem on
1137	  OS/2 EMX, with 'ash' (patch by J.J.G.Ripoll).
1138	+ change terminfo entries xterm (xterm-xf86-v40), xterm-8bit rs1 to use
1139	  hard reset.
1140	+ rename terminfo entry xterm-xf86-v39t to xterm-xf86-v40
1141	+ remove bold/underline from sun console entries since they're not
1142	  implemented.
1143	+ correct _tracef calls in _tracedump(), which did not separate format
1144	  from parameters.
1145	+ correct getopt string for tic "-o" option, and add it to man-page
1146	  synopsis (reported by Darren Hiebert <darren@hmi.com>).
1147	+ correct typo in panel/Makefile.in, reversed if-statement in scrolling
1148	  optimization (Alexander V.  Lukyanov).
1149	+ test for 'remove()', use 'unlink() if not found (patch by Philippe De
1150	  Muyter <phdm@macqel.be>).
1151	> patches by Juergen Pfeifer:
1152	+ Improve a feature of the forms driver.  For invisible fields
1153	  (O_VISIBLE off) only the contents but not the attributes are cleared.
1154	  We now clear both.  (Reported by Javier Kohan
1155	  <jkohan@adan.fceia.unr.edu.ar>)
1156	+ The man page form_field_opts.3x makes now clear, that invisible
1157	  fields are also always inactive.
1158	+ adjust ifdef's to compile the C++ binding with the just released
1159	  gcc-2.8.0 c++ and the corresponding new C++ libraries.
1160
1161980110
1162	+ correct "?" command in ncurses.c; it was performing non-screen writes
1163	  while the program was in screen mode.  (It "worked" in 1.9.9e because
1164	  that version sets OPOST and OCRNL incorrectly).
1165	+ return error from functions in lib_kernel, lib_raw and lib_ti if
1166	  cur_term is null, or if underlying I/O fails.
1167	+ amend change to tputs() so that it does not return an error if
1168	  cur_term is null, since some applications depend on being able to use
1169	  tputs without initializing the terminal (reported by Christian J.
1170	  Robinson <infynity@cyberhighway.net>).
1171
1172980103
1173	+ add a copy of emx.src from J.J.G.Ripoll's OS/2 EMX version of ncurses
1174	  1.9.9e, together with fixes/additions for the "ansi" terminal type.
1175	+ add tic check for save/restore cursor if change_scroll_region is
1176	  defined (from O'Reilly book).
1177	+ modify read_termcap.c to handle EMX-style pathnames (reported by
1178	  J.J.G.Ripoll).
1179	+ modify lib_raw.c to use EMX's setmode (from J.J.G.Ripoll, who says
1180	  EMX's curses does this).
1181	+ modify _nc_tic_expand() to generate \0 rather than \200.
1182	+ move/revise 'expand()' from dump_entry.c to ncurses library as
1183	  _nc_tic_expand(), for use by tack.
1184	+ decode \a as \007 for terminfo, as per XSI.
1185	+ correct translation of terminfo "^@", to \200, like \0.
1186	+ modify next_char() to treat <cr><lf> the same as <newline>, for
1187	  cross-platform compatibility.
1188	+ use new version of autoconf (971230) to work around limited
1189	  environment on CLIX, due to the way autoconf builds --help message.
1190	> patch by Juergen Pfeifer:
1191	+ check that the Ada95 binding runs against the correct version of
1192	  ncurses.
1193	+ insert constants about the library version into the main spec-file of
1194	  the Ada95 binding.
1195
1196971227
1197	+ modify open/fopen calls to use binary mode, needed for EMX.
1198	+ modify configure script to work with autoconf 2.10 mods for OS/2
1199	  EMX from J.J.G.Ripoll.
1200	+ generated ncurses_cfg.h with patch (971222) to autoconf 2.12 which
1201	  bypasses limited sed buffer length.
1202	> several changes from Juan Jose Garcia Ripoll <worm@arrakis.es>
1203	  (J.J.G.Ripoll) to support OS/2 EMX:
1204	+ add a _scrolling flag to SP, to set when we encounter a terminal
1205	  that simply cannot scroll.
1206	+ corrected logic in _nc_add_to_try(), by ensuring that strings with
1207	  embedded \200 characters are matched.
1208	+ don't assume the host has 'link()' function, for linking terminfo
1209	  entries.
1210
1211971220
1212	+ if there's no ioctl's to support sigwinch handler, disable it.
1213	+ add configure option --disable-ext-funcs to remove the extended
1214	  functions from the build.
1215	+ add configure option --with-termlib to generate the terminfo
1216	  functions as a separate library.
1217	+ add 'sources' rule to facilitate cross-compiling.
1218	+ review/fix order of mostlyclean/clean/distclean rules.
1219	+ modify install-rule for headers to first remove old header, in
1220	  case there was a symbolic link that confuses the install script.
1221	+ corrected substitution for NCURSES_CONST in term.h (cf: 971108)
1222	+ add null pointer checks in wnoutrefresh(), overlap() (patch by
1223	  Xiaodan Tang <xtang@qnx.com>)
1224	+ correct tputs(), which could dereference a null cur_term if invoked
1225	  before terminal is initialized (patch by Christopher Seawood
1226	  <cls@seawood.org>)
1227	> patch by Juergen Pfeifer:
1228	+ makes better use of "pragma Inline" in the Ada95 binding
1229	+ resynchronizes the generated html manpages
1230
1231971213
1232	+ additional fixes for man-pages section-references
1233	+ add (for debugging) a check for ich/ich1 conflict with smir/rmir
1234	  to tic, etc.
1235	+ remove hpa/vpa from rxvt terminal description because they are not
1236	  implemented correctly, added sgr0.
1237	+ change ncurses 's' to use raw mode, so ^Q works (reported by Rudolf
1238	  Leitgeb <leitgeb@leland.stanford.edu>)
1239
1240971206
1241	+ modify protection when installing libraries to (normally) not
1242	  executable.  HP-UX shared libraries are an exception.
1243	+ add configure check for 'tack'.
1244	+ implement script for renaming section-references in man-page install,
1245	  for Debian configuration.
1246	+ add validity-check for SP in trace code in baudrate() (reported by
1247	  Daniel Weaver).
1248	> patch by Alexander V. Lukyanov (fixes to match sol25 curses)
1249	+ modify 'overlay()' so that copy applies target window background to
1250	  characters.
1251	+ correct 'mvwin()' so that it does not clear the previous locations.
1252	+ correct lib_acs.c so that 8-bit character is not sign expanded in
1253	  case of wide characters in chtype.
1254	+ correct control-char test in lib_addch.c for use with wide chars
1255	+ use attribute in the chtype when adding a control character in
1256	  lib_addch.c control char was added with current attribute
1257
1258971129
1259	+ save/restore errno in _tracef() function
1260	+ change treatment of initialize_color to use a range of 0..1000
1261	  (recommended by Daniel Weaver).
1262	+ set umask in mkinstalldirs, fixing problems reported by users who
1263	  have set root's umask to 077.
1264	+ correct bug in tic that caused capabilities to be reprinted at the
1265	  end of output when they had embedded comments.
1266	+ rewrote wredrawln to correspond to XSI, and split-out since it is
1267	  not often used (from report by Alexander V. Lukyanov, 970825)
1268	+ rewrote Dan Nelson's change to make it portable, as well as to
1269	  correct logic for handling backslashes.
1270	+ add code to _nc_tgetent() to make it work more like a real tgetent().
1271	  It removes all empty fields, and removes all but the first in a group
1272	  of duplicate caps.  The code was pulled from the BSD libtermcap code
1273	  in termcap.c (patch by Dan Nelson <dnelson@emsphone.com>
1274	+ don't include --enable-widec in the --with-develop configure option,
1275	  since it is not binary-compatible with 4.1 (noted by Alexander V.
1276	  Lukyanov)
1277	> patch by Juergen Pfeifer:
1278	+ further improvements of the usage of elaboration pragmas in the Ada95
1279	  binding
1280	+ enhanced Ada95 sample to use the user_data mechanism for panels.
1281	+ a fix for the configuration script to make gnat-3.10 the required
1282	  version.
1283	+ resync of the html version of the manpages
1284
1285971122
1286	> fixes/updates for terminfo.src:
1287	+ add vt220-js, pilot, rbcomm, datapoint entries from esr's 27-jun-97
1288	  version.
1289	+ add hds200 description (Walter Skorski)
1290	+ add EMX 0.9b descriptions
1291	+ correct rmso/smso capabilities in wy30-mc and wy50-mc (Daniel Weaver)
1292	+ rename xhpterm back to hpterm.
1293	> patch by Juergen Pfeifer:
1294	+ Improves the usage of elaboration pragmas for the Ada95 binding.
1295	+ Adds a translation of the test/rain.c into Ada95 to the samples.
1296	  This has been contributed to the project by Laurent Pautet
1297	  (pautet@gnat.com)
1298
1299971115
1300	+ increase MAX_NAME_SIZE to 512 to handle extremely long alias list
1301	  in HP-UX terminfo.
1302	+ correction & simplification of delay computation in tputs, based on
1303	  comments from Daniel Weaver.
1304	+ replace test for SCO with more precise header tests.
1305	+ add configure test for unsigned literals, use in NCURSES_BITS macro.
1306	+ comment-out the -PIC, etc., flags from c++, progs and test makefiles
1307	  since they probably are not needed, and are less efficient (noted by.
1308	  Ju"rgen Fluk)
1309	+ add -L$(libdir) to loader options, after -L../lib so that loaders
1310	  that record this information will tend to do the right thing if
1311	  the programs are moved around after installing them (suggested by.
1312	  Ju"rgen Fluk).
1313	+ add -R option to loader options for programs for Solaris if the
1314	  --enable-rpath option is specified for the libraries.
1315
1316971112
1317	+ correct installed filename for shared libraries on *BSD (reported by
1318	  Ju"rgen Fluk).
1319
1320971108
1321	+ cleanup logic for deciding when tputs() should call delay_output(),
1322	  based on comments from Daniel Weaver.
1323	+ modified tputs() to avoid use of float.
1324	+ correct use of trailpad in tputs(), which used the wrong variable
1325	  in call to delay_output().
1326	+ correct inverted expression for null-count in delay_output()
1327	  (analysis by Daniel Weaver).
1328	+ apply --enable-rpath option to Solaris (requested by Larry Virden).
1329	+ correct substitution of EXTRA_CFLAGS for gcc 2.6.3
1330	+ correct check for error-return by _nc_tgetent(), which returns 0
1331	  for success.
1332	+ add configure test for BSD 4.4 cgetent() function, modify
1333	  read_termcap.c to use the host's version of that if found, using the
1334	  terminal database on FreeBSD (reported by Peter Wemm).
1335	+ add u8, u9 strings to sun-il description for Daniel Weaver.
1336	+ use NCURSES_CONST in panel's user-pointer.
1337	+ modify edit_cfg.sh and MKterm.h.awk.in to substitute NCURSES_CONST
1338	  so that will work on NeXT.
1339	+ use _nc_set_screen() rather than assignments to SP to fix port to
1340	  NeXT (reported by Francisco A. Tomei Torres).
1341
1342971101
1343	+ force mandatory padding in bell and flash_screen, as specified in XSI.
1344	+ don't allow padding_baud_rate to override mandatory delays (reported
1345	  by Daniel Weaver).
1346	+ modify delay_output() to use _nc_timed_wait() if no baudrate has been
1347	  defined, or if the cur_term pointer is not initialized.  XSI treats
1348	  this as unspecified.  (requested by Daniel Weaver).
1349	+ change getcap-cache ifdef's to eliminate unnecessary chdir/mkdir
1350	  when that feature is not configured.
1351	+ remove _nc_err_abort() calls when write_entry.c finds a directory but
1352	  cannot write to it, e.g., when translating part/all of /etc/termcap
1353	  (reported by Andreas Jaeger <aj@arthur.rhein-neckar.de>).
1354	  (this dates back to 951102, in 1.9.7a).
1355	+ minor ifdef fixes to compile with atac and glibc 2.0.5c
1356	+ add check for -lgen when configuring regexpr.h
1357	+ modify Solaris shared-library option "-d y" to "-dy" to workaround
1358	  incompatibility of gcc 2.7.2 vs vendor's tools.
1359
1360971026
1361	+ correct ifdef's for struct winsize vs struct ttysize in lib_setup.c
1362	  to compile on SCO.
1363	+ remove dangling backslash in panel/Makefile.in
1364	+ modify MKkeyname.awk to work with SCO's nawk, which dumps core in the
1365	  length() function.
1366	+ correct length of allocation in _nc_add_to_try(), to allow for
1367	  trailing null.
1368	+ correct logic in _nc_remove_key(), which was discarding too many
1369	  nodes (patch by Alexander V. Lukyanov)
1370
1371971025
1372	+ add definition for $(REL_VERSION) to test/Makefile.in, so *BSD
1373	  shared libraries link properly (see 970524).
1374	+ modify Linux shared-library generation to include library
1375	  dependencies (e.g., -lncurses and -lgpm) in the forms, menu and
1376	  panel libraries (suggested by Juergen Pfeifer).
1377	+ modify configure script to use config.guess and config.sub rather
1378	  than uname, which is unreliable on some systems.
1379	+ updated Makefile.glibc, test-built with glibc 2.0.5c
1380	+ modify keyname() to return values consistent with SVr4 curses (patch
1381	  by Ju"rgen Fluk).
1382	> changes requested by Daniel Weaver:
1383	+ modify delay_output() so that it uses the same output function as
1384	  tputs() if called from that function.
1385	+ move _baudrate from SCREEN to TERMINAL so that low-level use of
1386	  tputs works when SP is not set.
1387	> patch by Juergen Pfeifer:
1388	+ factor lib_menu and lib_form into smaller modules
1389	+ clean up the interface between panel and SCREEN
1390	+ minor changes to the Ada95 mouse support implemenation
1391	+ minor bugfix in C++ binding to ripoff windows
1392	+ fix a few Ada95 html documentation pages
1393
1394971018
1395	+ split-out lib_ungetch.c, make runtime link to resizeterm() to
1396	  decouple those modules from lib_restart.c
1397	+ add xterm-xf86-v39t description to terminfo.src
1398	+ reset SP->_endwin in lib_tstp.c cleanup() function after calling
1399	  endwin() to avoid unnecessary repainting if the application has
1400	  established an atexit function, etc.  Encountered this problem in
1401	  the c++ demo, whose destructors repaint the screen.
1402	+ combine _nc_get_screensize() and resizeterm() calls as new function
1403	  _nc_update_screensize().
1404	+ minor fixes to allow compile with g++ (suggested by Nelson H. F.
1405	  Beebe).
1406	+ implement install-rules for Ada95 makefiles.
1407	+ use screen_lines or MAXLINES as needed where LINES was coded,
1408	  as well as screen_columns for COLS, in the ncurses library.
1409	> patch by Alexander V. Lukyanov:
1410	+ modify logic for ripped-off lines to handle several SCREENs.
1411	> patch by Juergen Pfeifer:
1412	+ factors lib_slk.c into some smaller modules
1413	+ factors panel.c into some smaller modules
1414	+ puts the static information about the current panel stack into the
1415	  SCREEN structure to allow different panel stacks on different
1416	  screens.
1417	+ preliminary fix for an error adjusting LINES to account for
1418	  ripped-off lines.
1419
1420971011
1421	+ move _nc_max_click_interval and other mouse interface items to SCREEN
1422	  struct so that they are associated with a single terminal, and also
1423	  save memory when the application does not need a mouse (roughly 3k vs
1424	  0.5k on Linux).
1425	+ modify mouseinterval() so that a negative parameter queries the
1426	  click-interval without modifying it.
1427	+ modify ncurses 'i' test to work with ncurses' apparent extension from
1428	  SVr4, i.e., allows nocbreak+noecho (analysis by Alexander V.
1429	  Lukyanov).
1430	+ add configure options --with-ada-includes and --with-ada-objects,
1431	  to drive Ada95 binding install (not yet implemented).
1432	+ install C++ binding as -lncurses++ and associated headers with the
1433	  other ncurses headers.
1434	+ fix header uninstall if configure --srcdir is used.
1435	> minor interface changes (request by Daniel Weaver <danw@znyx.com>,
1436	  to support 'tack' program):
1437	+ export functions _nc_trans_string() and _nc_msec_cost().
1438	+ add variable _nc_nulls_sent, to record the number of padding
1439	  characters output in delay_output().
1440	+ move tests for generic_type and hard_copy terminals in setupterm()
1441	  to the end of that function so that the library will still be
1442	  initialized, though not generally useful for curses programs.
1443	> patches by Alexander V. Lukyanov:
1444	+ modify ClrBottom() to avoid using clr_eos if there is only one line
1445	  to erase.
1446	+ typo in configure --help.
1447	> patch by J.T.Conklin (with minor resync against Juergen's changes)
1448	+ split-out lib_flash.c from lib_beep.c
1449	+ split-out lib_hline.c and lib_vline.c from lib_box.c
1450	+ split-out lib_wattron.c, lib_wattroff.c from lib_addch.c
1451
1452971005
1453	> patch by Juergen Pfeifer:
1454	+ correct source/target of c++/edit_cfg.sh
1455
1456971004
1457	+ add color, mouse support to kterm terminfo entry.
1458	+ modify lib_mouse.c to recognize rxvt, kterm, color_xterm also as
1459	  providing "xterm"-style mouse.
1460	+ updated rxvt's terminfo description to correspond to 2.21b, with
1461	  fixes for the acsc (the box1 capability is incorrect, ech1 does not
1462	  work).
1463	+ fix logic in parse_entry.c that discarded acsc when 'synthesizing'
1464	  an entry from equivalents in XENIX or AIX.  This lets ncurses handle
1465	  the distribution copy of rxvt's terminfo.
1466	+ modify acsc capability for linux and linux-koi8 terminfo descriptions
1467	  (from Pavel Roskin <pavel@absolute.spb.su>).
1468	+ corrected definition in curses.h for ACS_LANTERN, which was 'I'
1469	  rather than 'i' (see 970802).
1470	+ updated terminfo.src with reformatted acsc entries, and repaired the
1471	  trashed entries with spurious '\' characters that this exposed.
1472	+ add logic to dump_entry.c to reformat acsc entries into canonical
1473	  form (sorted, unique mapping).
1474	+ add configure script to generate c++/etip.h
1475	+ add configure --with-develop option, to enable by default most of the
1476	  experimental options (requested by Alexander V. Lukyanov).
1477	+ rename 'deinstall' to 'uninstall', following GNU convention (suggested
1478	  by Alexander V. Lukyanov).
1479	> patches by Alexander V. Lukyanov:
1480	+ modify tactics 2 and 5 in onscreen_mvcur(), to allow them on the last
1481	  line of the screen, since carriage return will not cause a newline.
1482	+ remove clause from PutCharLR() that would try to use
1483	  eat_newline_glitch since that apparently does not work on some
1484	  terminals (e.g., M$ telnet).
1485	+ correct a limit check in scroll_csr_backward()
1486	> patches by Juergen Pfeifer:
1487	+ adds dummy implementations of methods above() and below() to the
1488	  NCursesPanel class.
1489	+ fixes missing returncode in NCursesWindow::ripoffline()
1490	+ fixes missing returncode in TestApplication::run() in demo.cc
1491	+ We should at least give a comment in etip.h why it is currently a
1492	  problem to install the C++ binding somewhere
1493	+ makes the WINDOW* argument of wenclose() a const.
1494	+ modifies several of the routines in lib_adabind.c to use a const
1495	  WINDOW* argument.
1496
1497970927
1498	+ add 'deinstall' rules.
1499	+ use explicit assignments in configure --without-progs option to
1500	  work around autoconf bug which doesn't always set $withval.
1501	+ check for ldconfig, don't try to run it if not found.
1502	+ implement simple/unoptimized case in lib_doupdate.c to handle
1503	  display with magic cookie glitch, tested with ncurses.c program.
1504	+ correct missing _tracef in getmouse(), to balance the returnCode
1505	  macro.
1506	+ simplify show_attr() in ncurses.c using termattrs().
1507	> patches by Juergen Pfeifer:
1508	+ provides missing inlines for mvw[hv]line in cursesw.h of the C++
1509	  binding
1510	+ fixes a typo in a comment of frm_driver.c
1511	+ Enhances Ada95 Makefiles to fulfill the requirement of GNAT-3.10 that
1512	  generics should be compiled.  Proper fixes to the configuration
1513	  scripts are also provided.
1514
1515970920
1516	+ several modifications to the configure script (requested by Ward
1517	  Horner):
1518	  + add configure options --without-progs, to suppress the build of the
1519	    utility programs, e.g., for cross-compiling.
1520	  + add $(HOSTCCFLAGS) and $(HOSTLDFLAGS) symbols to ncurses
1521	    Makefile.in, to simplify setup for cross compiling.
1522	  + add logic in configure script to recognize "--target=vxworks", and
1523	    generate load/install actions for VxWorks objects.
1524	+ move typedef for sigaction_t into SigAction.h to work around problem
1525	  generating lint library.
1526	+ modify fty_regex.c to reflect renaming of ifdef's for regular
1527	  expressions.
1528	+ simplify ifdef in lib_setup.c for TIOCGWINSZ since that symbol may
1529	  reside in <sys/ioctl.h>.
1530	+ merge testcurs.c with version from PDCurses 2.3, clarifying some of
1531	  the more obscure tests, which rely upon color.
1532	+ use macros getbegyx() and getmaxyx() in newdemo.c and testcurs.c
1533	+ modify ncurses.c to use getbegyx() and getmaxyx() macros to cover up
1534	  implementation difference wrt SVr4 curses, allow 's' test to work.
1535	+ add missing endwin() to testscanw.c program (reported by Fausto
1536	  Saporito <fausap@itb.it>).
1537	+ fixes/updates for Makefile.glibc and related files under sysdeps
1538	  (patch by H.J.Lu).
1539	> patches by Juergen Pfeifer:
1540	+ add checks for null pointers, especially WINDOW's throughout the
1541	  ncurses library.
1542	+ solve a problem with wrong calculation of panel overlapping (reported
1543	  by Ward Horner):
1544	  + make sure that a panel's window isn't a pad.
1545	  + do more error checking in module lib_touch.c
1546	+ missing files for Ada95 binding from the last patch
1547	+ synch. of generated html pages (RCS-Id's were wrong in html files)
1548	+ support for Key_Resize in Ada binding
1549	+ changed documentation style in ./c++/cursesm.h
1550	> patches by Alexander V. Lukyanov:
1551	+ undo attempt to do recursive inlining for PutChar(), noting that it
1552	  did not improve timing measurably, but inflated the size of
1553	  lib_doupdate.o
1554
1555970913
1556	+ modify rain.c to use color.
1557	+ correct scroll_csr_backward() to match scroll_csr_forward().
1558	+ minor adjustment to llib-lncurses, to work with Solaris 2.5.1
1559	+ minor fixes to sysdeps/unix/sysv/linux/configure to reflect renaming
1560	  of configure cache variables in 970906.
1561	+ correct logic involving changes to O_VISIBLE option in
1562	  Synchronize_Options function in frm_driver.c (Tony Hoffmann
1563	  <Tony.Hoffmann@hia.nrc.ca>)
1564	+ add $(HOSTCC) symbol to ncurses Makefile.in, to simplify setup for
1565	  cross compiling (suggested by Chris Johns).
1566	+ modify ifdef in lib_setup.c to only include <sys/ioctl.h> if we can
1567	  use it to support screen-size calculation (reported by Chris Johns).
1568	+ #undef unctrl to avoid symbol conflict in port to RTEMS (reported by
1569	  Chris Johns <cjohns@plessey.com.au>)
1570	> patches by Juergen Pfeifer:
1571	+ simplified, made minor corrections to Ada95 binding to form fieldtype.
1572	+ The C++ binding has been enhanced:
1573	  + Improve NCursesWindow class:  added additional methods to cover
1574	    more ncurses functionality.  Make refresh() and noutrefresh()
1575	    virtual members to allow different implementation in the
1576	    NCursesPanel class.
1577	  + CAUTION:  changed order of parameters in vline() and hline() of
1578	    NCursesWindow class.
1579	  + Make refresh() in NCursesPanel non-static, it is now a
1580	    reimplementation of refresh() in the base class.  Added
1581	    noutrefresh() to NCursesPanel.
1582	  + Added NCursesForm and related classes to support libform
1583	    functionality.
1584	  + Moved most of configuration related stuff from cursesw.h to etip.h
1585	  + Added NCursesApplication class to support easy configuration of
1586	    menu and forms related attributes as well as ripped of title lines
1587	    and Soft-Label-Keys for an application.
1588	  + Support of Auto-Cleanup for a menu's fieldlist.
1589	  + Change of return type for current_item() and operator[] for menus.
1590	  + Enhanced demo.
1591	+ Fixed a bug in form/fld_def.c:  take into account that copyarg and
1592	  freearg for a fieldtype may be NULL, makearg must not be NULL
1593	+ Fixed a bug in form/fld_type.c:  in set_fieldtype_arg() makearg must
1594	  not be NULL, copyarg and freearg may be NULL.
1595	+ Fixed a bug in form/frm_def.c:  Allow Disconnect_Fields() if it is
1596	  already disconnected.
1597	+ Enhance form/frm_driver.c:  Allow growth of dynamic fields also on
1598	  navigation requests.
1599	+ Fixed a bug in form/fty_enum.c:  wrong position of postincrement in
1600	  case-insensitiva comparision routine.
1601	+ Enhanced form/lib_adabind.c with function _nc_get_field() to get a
1602	  forms field by index.
1603	+ Enhanced menu/m_adabind.c with function _nc_get_item() to get a menus
1604	  item by index.
1605	+ Fixed in curses.h.in:  make chtype argument for pechochar() constant.
1606	  Mark wbkgdset() as implemented, remove wbkgdset macro, because it was
1607	  broken (didn't handle colors correctly).
1608	+ Enhanced lib_mouse.c: added _nc_has_mouse() function
1609	+ Added _nc_has_mouse() prototype to curses.priv.h
1610	+ Modified lib_bkgd.c:  hopefully correct implementation of wbkgdset();
1611	  streamlined implementation of wbkgd()
1612	+ Modified lib_mvwin.c:  Disable move of a pad.  Implement (costly)
1613	  move of subwindows.  Fixed update behaviour of movements of regular
1614	  windows.
1615	+ Fixed lib_pad.c:  make chtype argument of pechochar() const.
1616	+ Fixed lib_window.c:  dupwin() is not(!) in every bit a really clone
1617	  of the original.  Subwindows become regular windows by doing a
1618	  dupwin().
1619	+ Improved manpage form_fieldtype.3x
1620	> patches by Alexander V. Lukyanov:
1621	+ simplify the PutChar() handling of exit_am_mode, because we already
1622	  know that auto_right_margin is true.
1623	+ add a check in PutChar() for ability to insert to the case of
1624	  shifting character to LR corner.
1625	+ in terminal initialization by _nc_screen_resume(), make sure that
1626	  terminal right margin mode is known.
1627	+ move logic that invokes touchline(), or does the equivalent, into
1628	  _nc_scroll_window().
1629	+ modify scrolling logic use of insert/delete line capability, assuming
1630	  that they affect the screen contents only within the current
1631	  scrolling region.
1632	+ modify rain.c to demonstrate SIGWINCH handler.
1633	+ remove logic from getch() that would return an ERR if the application
1634	  called getch() when the cursor was at the lower-right corner of the
1635	  physical screen, and the terminal does not have insert-character
1636	  ability.
1637	+ change view.c so that it breaks out of getch() loop if a KEY_RESIZE
1638	  is read, and modify logic in getch() so this fix will yield the
1639	  desired behavior, i.e., the screen is repainted automatically when
1640	  the terminal window is resized.
1641
1642970906
1643	+ add configure option --enable-sigwinch
1644	+ modify view.c to test KEY_RESIZE logic, with "-r" option.
1645	+ modify testcurs.c to eliminate misleading display wrt cursor type
1646	  by testing if the terminal supports cnorm, civis, cvvis.
1647	+ several fixes for m68k/NeXT 4.0, to bring cur_term, _nc_curr_line and
1648	  _nc_curr_col variables into linked programs:  move these variables,
1649	  making new modules lib_cur_term and trace_buf (reported by Francisco
1650	  Alberto Tomei Torres <fatomei@sandburg.unm.edu>).
1651	> patches by Alexander V. Lukyanov:
1652	+ add pseudo-functionkey KEY_RESIZE which is returned by getch() when
1653	  the SIGWINCH handler has been called since the last call to
1654	  doupdate().
1655	+ modify lib_twait.c to hide EINTR only if HIDE_EINTR is defined.
1656	+ add SIGWINCH handler to ncurses library which is used if there is no
1657	  application SIGWINCH handler in effect when the screen is
1658	  initialized.
1659	+ make linked list of all SCREEN structures.
1660	+ move curses.h include before definition of SCREEN to use types in
1661	  that structure.
1662	+ correction to ensure that wgetstr uses only a newline to force a
1663	  scroll (970831).
1664
1665970831
1666	+ add experimental configure option --enable-safe-sprintf; the normal
1667	  mode now allocates a buffer as large as the screen for the
1668	  lib_printw.c functions.
1669	+ modify wgetch to refresh screen when reading ungetch'd characters,
1670	  since the application may require this - SVr4 does this.
1671	+ refine treatment of newline in wgetstr to echo only when this would
1672	  force the screen to scroll.
1673
1674970830
1675	+ remove override in wgetstr() that forces keypad(), since SVr4 does
1676	  not do this.
1677	+ correct y-reference for erasure in wgetstr() when a wrap forces a
1678	  scroll.
1679	+ correct x-position in waddch() after a wrap forces a scroll.
1680	+ echo newline in wgetstr(), making testscanw.c scroll properly when
1681	  scanw is done.
1682	+ modify vwscanw() to avoid potential buffer overflow.
1683	+ rewrote lib_printw.c to eliminate fixed-buffer limits.
1684	> patches by Alexander V. Lukyanov:
1685	+ correct an error in handling cooked mode in wgetch(); processing
1686	  was in the wrong order.
1687	+ simplified logic in wgetch() that handles backspace, etc., by using
1688	  wechochar().
1689	+ correct wechochar() so that it interprets the output character as
1690	  in waddch().
1691	+ modify pechochar() to use prefresh() rather than doupdate(), since
1692	  the latter does not guarantee immediate refresh of the pad.
1693	+ modify pechochar() so that if called with a non-pad WINDOW, will
1694	  invoke wechochar() instead.
1695	+ modify fifo indices to allow fifo to be longer than 127 bytes.
1696
1697970823
1698	+ add xterm-8bit to terminfo.src
1699	+ moved logic for SP->_fifohold inside check_pending() to make it
1700	  work properly when we add calls to that function.
1701	+ ensure that bool functions return only TRUE or FALSE, and TRUE/FALSE
1702	  are assigned to bool values (patch by H.J.Lu).
1703	> patches by Alexander V. Lukyanov:
1704	+ several fixes to getch:
1705	  1.  Separate cooked and raw keys in fifo
1706	  2.  Fix the case of ungetch'ed KEY_MOUSE
1707	  3.  wrap the code for hiding EINTR with ifdef HIDE_EINTR
1708	  4.  correctly handle input errors (i.e., EINTR) without loss of raw
1709	      keys
1710	  5.  recognize ESC KEY_LEFT and similar
1711	  6.  correctly handle the case of receiption of KEY_MOUSE from gpm
1712	+ correct off-by-one indexing error in _nc_mouse_parse(), that caused
1713	  single mouse events (press/release) to be ignored in favor of
1714	  composed events (click).  Improves on a fix from integrating gpm
1715	  support in 961229.
1716	+ add another call to check_pending, before scrolling, for
1717	  line-breakout optimization
1718	+ improve hashmap.c by
1719	  1.  fixed loop condition in grow_hunks()
1720	  2.  not marking lines with offset 0
1721	  3.  fixed condition of 'too far' criteria, thus one-line hunks are
1722	  ignored and two lines interchanged won't pass.
1723	+ rewrote/simplified _nc_scroll_optimize() by separating into two
1724	  passes, forward/backward, looking for chunks moving only in the given
1725	  direction.
1726	+ move logic that emits sgr0 when initializing the screen to
1727	  _nc_screen_init(), now invoked from newterm.
1728	+ move cursor-movement cleanup from endwin() into _nc_mvcur_wrap()
1729	  function and screen cleanup (i.e., color) into _nc_screen_wrap()
1730	  function.
1731	+ add new functions _nc_screen_init(), _nc_screen_resume() and
1732	  _nc_screen_wrap().
1733	+ rename _nc_mvcur_scrolln() to _nc_scrolln().
1734	+ add a copy of acs_map[] to the SCREEN structure, where it can be
1735	  stored/retrieved via set_term().
1736	+ move variables _nc_idcok, _nc_idlok, _nc_windows into the SCREEN
1737	  structure.
1738
1739970816
1740	+ implement experimental _nc_perform_scroll().
1741	+ modify newterm (actually _nc_setupscreen()) to emit an sgr0 when
1742	  initializing the screen, as does SVr4 (reported by Alexander V.
1743	  Lukyanov).
1744	+ added test_progs rule to ncurses/Makefile.
1745	+ modify test/configure.in to check if initscr is already in $LIBS
1746	  before looking for (n)curses library.
1747	+ correct version-number in configure script for OSF1 shared-library
1748	  options (patch by Tim Mooney).
1749	+ add -DNDEBUG to CPPFLAGS for --enable-assertions (as Juergen
1750	  originally patched) since the c++ demo files do not necessarily
1751	  include ncurses_cfg.h
1752	+ supply default value for --enable-assertions option in configure
1753	  script (reported by Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>).
1754	> patches by Alexander V. Lukyanov:
1755	+ correct/simplify logic of werase(), wclrtoeol() and wclrbot().  See
1756	  example firstlast.c
1757	+ optimize waddch_literal() and waddch_nosync() by factoring out
1758	  common subexpressions.
1759	+ correct sense of NDEBUG ifdef for CHECK_POSITION macro.
1760	+ corrections to render_char(), to make handling of colored blanks
1761	  match SVr4 curses, as well as to correct a bug that xor'd space
1762	  against the background character.
1763	+ replaced hash function with a faster one (timed it)
1764	+ rewrote the hashmap algorithm to be one-pass, this avoids multiple
1765	  cost_effective() calls on the same lines.
1766	+ modified cost_effective() so it is now slightly more precise.
1767	> patches by H.J.Lu for glibc integration:
1768	+ add modules define_key, keyok, name_match, tries
1769	+ add makefile rules for some of the unit tests in ncurses (mvcur,
1770	  captoinfo, hardscroll, hashmap).
1771	+ update Linux configure-script for wide-character definitions.
1772
1773970809
1774	+ modify _tracebits() to show the character size (e.g., CS8).
1775	+ modify tparm() to emit '\200' where the generated string would have a
1776	  null (reported by From:  Ian Dall <Ian.Dall@dsto.defence.gov.au> for
1777	  terminal type ncr7900).
1778	+ modify install process so that ldconfig is not invoked if the
1779	  package is built with an install-prefix.
1780	+ correct test program for chtype size (reported by Tim Mooney).
1781	+ add configure option --disable-scroll-hints, using this to ifdef the
1782	  logic that computes indices for _nc_scroll_optimize().
1783	+ add module ncurses/softscroll.c, to perform single-stage computation
1784	  of scroll indices used in _nc_scroll_optimize().  This is faster than
1785	  the existing scrolling algorithm, but tends to make too-small hunks.
1786	+ eliminate fixed buffer size in _nc_linedump().
1787	+ minor fixes to lib_doupdate.c to add tradeoff between clr_eol (el)
1788	  and clr_bol (el1), refine logic in ClrUpdate() and ClrBottom() (patch
1789	  by Alexander V. Lukyanov).
1790	+ add test/testaddch.c, from a pending patch by Alexander V. Lukyanov.
1791	+ correct processing of "configure --enable-assertions" option (patch
1792	  by Juergen Pfeifer).
1793
1794970802
1795	+ add '-s' (single-step) option too test/hashtest.c, correct an error
1796	  in loop limit for '-f' (footer option), toggle scrollok() when
1797	  writing footer to avoid wrap at lower-right corner.
1798	+ correct behavior of clrtoeol() immediately after wrapping cursor,
1799	  which was not clearing the line at the cursor position (reported by
1800	  Liviu Daia <daia@stoilow.imar.ro>).
1801	+ corrected mapping for ACS_LANTERN, which was 'I' rather than 'i'
1802	  (reported by Klaus Weide <kweide@tezcat.com>).
1803	+ many corrections to make progs/capconvert work, as well as make it
1804	  reasonably portable and integrated with ncurses 4.1 (reported by Dave
1805	  Furstenau <df@ravine.binary.net>).
1806
1807970726
1808	+ add flag SP->_fifohold, corresponding logic to modify the behavior of
1809	  the line breakout logic so that if the application does not read
1810	  input, refreshes will not be stopped, but only slowed.
1811	+ generate slk_attr_off(), slk_attr_on(), slk_attr_set(), vid_attr(),
1812	  ifdef'd for wide-character support, since ncurses' WA_xxx attribute
1813	  masks are identical with the A_xxx masks.
1814	+ modify MKlib_gen.sh to generate ifdef'd functions to support optional
1815	  configuration of wide-characters.
1816	+ modify tset to behave more like SVr4's tset, which does not modify
1817	  the settings of intr, quit or erase unless they are given as command
1818	  options (reported by Nelson H. F. Beebe <beebe@math.utah.edu>).
1819	+ modify tset to look in /etc/ttys or /etc/ttytype if the configuration
1820	  does not have getttynam().
1821	+ extend baudrate table in tset.c to match baudrate() function.
1822	+ add table entries for 230400 and 460800 bd to baudrate() function.
1823	+ improve breakout logic by allowing it before the first line updated,
1824	  which is what SVr4 curses does (patch by Alexander V. Lukyanov).
1825	+ correct initialization of vcost in relative_move(), for cursor-down
1826	  case (patch by Alexander V. Lukyanov).
1827	> nits gleaned from Debian distribution of 1.9.9g-3:
1828	+ install symbolic link for intotocap.
1829	+ reference libc directly when making shared libraries.
1830	+ correct renaming of curs_scr_dmp.3x in man_db.renames.
1831	+ guard tgetflag() and other termcap functions against null cur_term
1832	  pointer.
1833
1834970719
1835	+ corrected initial state of software echo (error in 970405, reported
1836	  by Alexander V. Lukyanov).
1837	+ reviewed/added messages to configure script, so that all non-test
1838	  options should be accompanied by a message.
1839	+ add configure check for long filenames, using this to determine if
1840	  it is safe to allow long aliases for terminal descriptions as does
1841	  SVr4.
1842	+ add configure options for widec (wide character), hashmap (both
1843	  experimental).
1844	> patch by Alexander V. Lukyanov:
1845	+ hashmap.c - improved by heuristic, so that scroll test works much
1846	  better when csr is not available.
1847	+ hardscroll.c - patched so that it continues to scroll other chunks
1848	  after failure to scroll one.
1849	+ lib_doupdate.c - _nc_mvcur_scrolln extended to handle more cases; csr
1850	  is avoided as it is relative costly.  Fixed wrong coordinates in one
1851	  case and wrong string in TRACE.
1852	> patch by Juergen Pfeifer:
1853	+ modify C++ binding to compile on AIX 4.x with the IBM C-SET++
1854	  compiler.
1855
1856970712
1857	+ remove alternate character set from kterm terminfo entry; it uses the
1858	  shift-out control for a purpose incompatible with curses, i.e., font
1859	  switching.
1860	+ disentangle 'xterm' terminfo entry from some derived entries that
1861	  should be based on xterm-r6 instead.
1862	+ add cbt to xterm-xf86-xv32 terminfo entry; I added the emulation for
1863	  XFree86 3.1.2F, but overlooked its use in terminfo then - T.Dickey.
1864	+ correct logic in lib_mvcur.c that uses back_tab.
1865
1866970706
1867	+ correct change from 970628 to ClrUpdate() in lib_doupdate.c so that
1868	  contents of curscr are saved in newscr before clearing the screen.
1869	  This is needed to make repainting work with the present logic of
1870	  TransformLine().
1871	+ use napms() rather than sleep() in tset.c to avoid interrupting I/O.
1872
1873970705
1874	+ add limit checks to _nc_read_file_entry() to guard against overflow
1875	  of buffer when reading incompatible terminfo format, e.g, from OSF/1.
1876	+ correct some loop-variable errors in xmc support in lib_doupdate.c
1877	+ modify ncurses 'b' test to add gaps, specified by user, to allow
1878	  investigation of interaction with xmc (magic cookie) code.
1879	+ correct typo in 970524 mods to xmas.c, had omitted empty parameter
1880	  list from has_colors(), which gcc ignores, but SVr4 does not
1881	  (reported by Larry Virden).
1882	+ correct rmso capability in wy50-mc description.
1883	+ add configure option "--enable-hard-tabs", renamed TABS_OK ifdef to
1884	  USE_HARD_TABS.
1885	> patch by Juergen Pfeifer:
1886	+ Add bindings for keyok() and define_key() to the Ada95 packages.
1887	+ Improve man pages menu_post.3x and menu_format.3x
1888	+ Fix the HTML pages in the Ada95/html directory to reflect the above
1889	  changes.
1890
1891970628
1892	+ modify change from 970101 to ClrUpdate() in lib_doupdate.c so that
1893	  pending changes to both curscr and newscr are flushed properly.
1894	  This fixes a case where the first scrolling operation in nvi would
1895	  cause the screen to be cleared unnecessarily and repainted before
1896	  doing the indexing, i.e., by repeatedly pressing 'j' (reported by
1897	  Juergen Pfeifer).
1898	+ correct error in trans_string() which added embedded newlines in a
1899	  terminfo description to the stored strings.
1900	+ remove spurious newlines from sgr in wyse50 (and several other)
1901	  terminfo descriptions.
1902	+ add configure option for experimental xmc (magic cookie) code,
1903	  "--enable-xmc-glitch".  When disabled (the default), attributes that
1904	  would store a magic cookie are suppressed in vidputs().  The magic
1905	  cookie code is far from workable at this stage; the configuration
1906	  option is a stopgap.
1907	+ move _nc_initscr() from lib_initscr.c to lib_newterm.c
1908	+ correct path for invoking make_keys (a missing "./").
1909
1910970621
1911	+ correct sign-extension problem with "infocmp -e", which corrupted
1912	  acsc values computed for linux fallback data.
1913	+ correct dependency on ncurses/names.c (a missing "./").
1914	+ modify configure script to use '&&' even for cd'ing to existing
1915	  directories to work around broken shell interpreters.
1916	+ correct a loop-limit in _nc_hash_map() (patch by Alexander V.
1917	  Lukyanov).
1918
1919970615
1920	+ restore logic in _nc_scroll_optimize() which marks as touched the
1921	  lines in curscr that are shifted.
1922	+ add new utility 'make_keys' to compute keys.tries as a table rather
1923	  than a series of function calls.
1924	+ correct include-dependency for tic.h used by name_match
1925	+ removed buffer-allocation for name and description from m_item_new.c,
1926	  since this might result in incompatibilities with SVr4.  Also fixed
1927	  the corresponding Ada95 binding module (patch by Juergen Pfeifer,
1928	  from report by Avery Pennarun <apenwarr@foxnet.net>)
1929	+ removed the mechanism to timestamp the generated Ada95 sources.  This
1930	  resulted always in generating patches for the HTML doc, even when
1931	  nothing really changed (patch by Juergen Pfeifer).
1932	+ improve man page mitem_new.3x (patch by Juergen Pfeifer).
1933
1934970614
1935	+ remove ech capability from rxvt description because it does not work.
1936	+ add missing case logic for infocmp -I option (reported by Lorenzo M.
1937	  Catucci <lorenzo@argon.roma2.infn.it>)
1938	+ correct old bug in pnoutrefresh() unmasked by fix in 970531; this
1939	  caused glitches in the ncurses 'p' test since the area outside the
1940	  pad was not compared when setting up indices for _nc_scroll_optimize.
1941	+ rewrote tracebits() to workaround misdefinition of TOSTOP on Ultrix
1942	  4.4, as well as to eliminate fixed-size buffer (reported by Chris
1943	  Tanner <tannerc@aecl.ca>)
1944	+ correct prototype for termattrs() as per XPG4 version 2.
1945	+ add placeholder prototypes for color_set(), erasewchar(),
1946	  term_attrs(), wcolor_set() as per XPG4 version 2.
1947	+ correct attribution for progs/progs.priv.h and lib_twait.c
1948	+ improve line-breakout logic by checking based on changed lines rather
1949	  than total lines (patch by Alexander V. Lukyanov).
1950	+ correct loop limits for table-lookup of enumerated value in form
1951	  (patch by Juergen Pfeifer).
1952	+ improve threshhold computation for determining when to call ClrToEOL
1953	  (patch by Alexander V. Lukyanov).
1954
1955970531
1956	+ add configure option --disable-database to force the library to
1957	  use only the fallback data.
1958	+ add configure option --with-fallbacks, to specify list of fallback
1959	  terminal descriptions.
1960	+ add a symbolic link for ncurses.h during install; too many programs
1961	  still assume there's an ncurses.h
1962	+ add new terminfo.src entry for xterm-xf86-v33.
1963	+ restore terminfo.src entry for emu to using setf/setb, since it is
1964	  not, after all, generating ANSI sequences.  Corrected missing comma
1965	  that caused setf/setb entries to merge.
1966	+ modify mousemask() to use keyok() to enable/disable KEY_MOUSE, so
1967	  that applications can disable ncurses' mouse and supply their own
1968	  handler.
1969	+ add extensions keyok() and define_key().  These are designed to allow
1970	  the user's application better control over the use of function keys,
1971	  e.g., disabling the ncurses KEY_MOUSE.  (The define_key idea was from
1972	  a mailing-list thread started by kjahds@kjahds.com Nov'1995).
1973	+ restore original behavior in ncurses 'g' test, i.e., explicitly
1974	  set the keypad mode rather than use the default, since it confuses
1975	  people.
1976	+ rewrote the newdemo banner so it's readable (reported by Hugh Daniel).
1977	+ tidy up exit from hashtest (reported by Hugh Daniel).
1978	+ restore check for ^Q in ncurses 'g' test broken in 970510 (reported
1979	  by Hugh Daniel)
1980	+ correct tput program, checking return-value of setupterm (patch by
1981	  Florian La Roche).
1982	+ correct logic in pnoutrefresh() and pechochar() functions (reported
1983	  by Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>).  The computation
1984	  of 'wide' date to eric's #283 (1.9.9), and the pechochar bug to the
1985	  original implementation (1.9.6).
1986	+ correct typo in vt102-w terminfo.src entry (patch by Robert Wuest
1987	  <rwuest@sire.vt.com>)
1988	+ move calls of _nc_background() out of various loops, as its return
1989	  value will be the same for the whole window being operated on (patch
1990	  by J.T.Conklin).
1991	+ add macros getcur[xy] getbeg[xy] getpar[xy], which are defined in
1992	  SVr4 headers (patch by J.T.Conklin <jtc@NetBSD.ORG>)
1993	+ modify glibc addon-configure scripts (patch by H.J.Lu).
1994	+ correct a bug in hashmap.c: the size used for clearing the hashmap
1995	  table was incorrect, causing stack corruption for large values of
1996	  LINES, e.g., >MAXLINES/2 (patch by Alexander V. Lukyanov).
1997	+ eric's terminfo 9.13.23 & 9.13.24 changes: replaced minitel-2 entry,
1998	  added MGR, ansi-nt (note: the changes described for 9.13.24 have not
1999	  been applied).
2000	> several changes by Juergen Pfeifer:
2001	+ correct a missing error-return in form_driver.c when wrapping of a
2002	  field is not possible.
2003	+ correct logic in form_driver.c for configurations that do not have
2004	  memccpy() (reported by Sidik Isani <isani@cfht.hawaii.edu>)
2005	+ change several c++ binding functions to inline.
2006	+ modify c++ menu binding to inherit from panels, for proper
2007	  initialization.
2008	+ correct freeing of menu items in c++ binding.
2009	+ modify c++ binding to reflect removal of const from user data pointer
2010	  in forms/menus libraries.
2011
2012970524
2013	+ add description of xterm-16color.
2014	+ modify name of shared-library on *BSD to end with $(REL_VERSION)
2015	  rather than $(ABI_VERSION) to match actual convention on FreeBSD
2016	  (cf: 960713).
2017	+ add OpenBSD to shared-library case, same as NetBSD and FreeBSD
2018	  (reported by Hugh Daniel <hugh@rat.toad.com>).
2019	+ corrected include-dependency in menu/Makefile so that "make install"
2020	  works properly w/o first doing "make".
2021	+ add fallback definition for isascii, used in infocmp.
2022	+ modify xmas to use color, and to exit right away when a key is
2023	  pressed.
2024	+ modify gdc so that the scrolled digits function as described (there
2025	  was no time delay between the stages, and the digits overwrote the
2026	  bounding box without tidying up).
2027	+ modify lib_color.c to use setaf/setab only for the ANSI color codes
2028	  0 through 7.  Using 16 colors requires setf/setb.
2029	+ modify ncurses 'c' test to work with 16 colors, as well as the normal
2030	  8 colors.
2031	+ remove const qualifier from user data pointer in forms and menus
2032	  libraries (patch by Juergen Pfeifer).
2033	+ rewrote 'waddchnstr()' to avoid using the _nc_waddch_nosync()
2034	  function, thereby not interpreting tabs, etc., as per spec (patch by
2035	  Alexander V. Lukyanov).
2036
2037970517
2038	+ suppress check for pre-existing ncurses header if the --prefix
2039	  option is specified.
2040	+ add configure options "--with-system-type" and "--with-system-release"
2041	  to assist in checking the generated makefiles.
2042	+ add configure option "--enable-rpath" to allow installers to specify
2043	  that programs linked against shared libraries will have their library
2044	  path embedded, allowing installs into nonstandard locations.
2045	+ add flags to OSF1 shared-library options to specify version and
2046	  symbol file (patch by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>)
2047	+ add missing definition for ABI_VERSION to c++/Makefile.in (reported
2048	  by Satoshi Adachi <adachi@wisdom.aa.ap.titech.ac.jp>).
2049	+ modify link flags to accommodate HP-UX linker which embeds absolute
2050	  pathnames in executables linked against shared libraries (reported by
2051	  Jason Evans <jasone@mrc.uidaho.edu>, solved by Alan Shutko
2052	  <ats@hubert.wustl.edu>).
2053	+ drop unnecessary check for attribute-change in onscreen_mvcur() since
2054	  mvcur() is the only caller within the library, and that check in turn
2055	  is exercised only from lib_doupdate.c (patch by Alexander V.
2056	  Lukyanov).
2057	+ add 'blank' parameter to _nc_scroll_window() so _nc_mvcur_scrolln()
2058	  can use the background of stdscr as a parameter to that function
2059	  (patch by Alexander V. Lukyanov).
2060	+ moved _nc_mvcur_scrolln() from lib_mvcur.c to lib_doupdate.c, to use
2061	  the latter's internal functions, as well as to eliminate unnecessary
2062	  cursor save/restore operations (patch by Alexander V. Lukyanov).
2063	+ omit parameter of ClrUpdate(), since it is called only for newscr,
2064	  further optimized/reduced by using ClearScreen() and TransformLine()
2065	  to get rid of duplicate code (patch by Alexander V. Lukyanov).
2066	+ modify scrolling algorithm in _nc_scroll_optimize() to reject hunks
2067	  that are smaller than the distance to be moved (patch by Alexander V.
2068	  Lukyanov).
2069	+ correct a place where the panel library was not ifdef'd in ncurses.c
2070	  (Juergen Pfeifer)
2071	+ documentation fixes (Juergen Pfeifer)
2072
2073970515	4.1 release for upload to prep.ai.mit.edu
2074	+ re-tag changes since 970505 as 4.1 release.
2075
2076970510
2077	+ modify ncurses 'g' test to allow mouse input
2078	+ modify default xterm description to include mouse.
2079	+ modify configure script to add -Wwrite-strings if gcc warnings are
2080	  enabled while configuring --enable-const (and fixed related warnings).
2081	+ add toggle, status display for keypad mode to ncurses 'g' test to
2082	  verify that keypad and scrollok are not inherited from parent window
2083	  during a call to newwin.
2084	+ correction to MKexpanded.sh to make it work when configure --srcdir is
2085	  used (reported by H.J.Lu).
2086	+ revise test for bool-type, ensuring that it checks if builtin.h is
2087	  available before including it, adding test for sizeof(bool) equal
2088	  to sizeof(short), and warning user if the size cannot be determined
2089	  (reported by Alexander V. Lukyanov).
2090	+ add files to support configuration of ncurses as an add-on library
2091	  for GNU libc (patch by H.J.Lu <hjl@lucon.org>)
2092
2093970506
2094	+ correct buffer overrun in lib_traceatr.c
2095	+ modify change to lib_vidattr.c to avoid redundant orig_pair.
2096	+ turn on 'echo()' in hanoi.c, since it is initially off.
2097	+ rename local 'errno' variable in etip.h to avoid conflict with global
2098	  (H.J.Lu).
2099	+ modify configure script to cache LD, AR, AR_OPTS (patch by H.J.Lu
2100	  <hjl@lucon.org>)
2101
2102970505	4.1 pre-release
2103	+ regenerate the misc directory html dumps without the link list, which
2104	  is not useful.
2105	+ correct dependency in form directory makefile which caused unnecessary
2106	  recompiles.
2107	+ correct substitution for ABI_VERSION in test-makefile
2108	+ modify install rules for shared-library targets to remove the target
2109	  before installing, since some install programs do not properly handle
2110	  overwrite of symbolic links.
2111	+ change order of top-level targets so that 'include' immediate
2112	  precedes the 'ncurses' directory, reducing the time between new
2113	  headers and new libraries (requested by Larry Virden).
2114	+ modify lib_vidattr.c so that colors are turned off only before
2115	  modifying other attributes, turned on after others.  This makes the
2116	  hanoi.c program display correctly on FreeBSD console.
2117	+ modify debug code in panel library to print user-data addresses
2118	  rather than the strings which they (may) point to.
2119	+ add check to ensure that C++ binding and demo are not built with g++
2120	  versions below 2.7, since the binding uses templates.
2121	+ modify c++ binding and demo to build and run with SGI's c++ compiler.
2122	  (It also compiles with the Sun SparcWorks compiler, but the demo does
2123	  not link, due to a vtbl problem).
2124	+ corrections to demo.cc, to fix out-of-scope variables (Juergen
2125	  Pfeifer).
2126
2127970503
2128	+ correct memory leak in _nc_trace_buf().
2129	+ add configure test for regexpr.h, for Unixware 1.x.
2130	+ correct missing "./" prefixing names of generated files in ncurses
2131	  directory.
2132	+ use single-quotes in configure scripts assignments for MK_SHARED_LIB
2133	  to workaround shell bug on FreeBSD 2.1.5
2134	+ remove tabs from intermediate #define's for GCC_PRINTF, GCC_SCANF
2135	  that caused incorrect result in ncurses_cfg.h
2136	+ correct initialization in lib_trace.c, which omitted version info.
2137	+ remove ech, el1 attributes from cons25w description; they appear to
2138	  malfunction in FreeBSD 2.1.5
2139	+ correct color attributes in terminfo.src and lib_color.c to match
2140	  SVr4 behavior by interchanging codes 1,4, 3,6 in the setf/setb
2141	  capabilities.
2142	+ use curs_set() rather than checks via tigetstr() for test programs
2143	  that hide the cursor: firework, rain, worm.
2144	+ ensure that if the terminal lacks change_scroll_region, parm_index
2145	  and parm_rindex are used only to scroll the whole screen (patch by
2146	  Peter Wemm).
2147	+ correct curs_set() logic, which did not return ERR if the requested
2148	  attributes did not exist, nor did it assume an unknown initial state
2149	  for the cursor (patch by Alexander V. Lukyanov).
2150	+ combine IDcTransformLine and NoIDcTransformLine to new TransformLine
2151	  function in lib_doupdate.c (patch by Alexander V. Lukyanov).
2152	+ correct hashmap.c, which did not update index information (patch by
2153	  Alexander V. Lukyanov).
2154	+ patch by Juergen Pfeifer for C++ binding and demo (see c++/NEWS)
2155	+ correct index in lib_instr.c (Juergen Pfeifer).
2156	+ correct typo in 970426 patch from Tom's cleanup of lib_overlay.c
2157	  (Juergen Pfeifer).
2158
2159970426
2160	+ corrected cost computation in PutRange(), which was using
2161	  milliseconds compared to characters by adding two new members to the
2162	  SCREEN struct, _hpa_ch_cost and _cup_ch_cost.
2163	+ drop ncurses/lib_unctrl.c, add ncurses/MKunctrl.awk to generate a
2164	  const array of strings (suggested by Alexander V. Lukyanov, though
2165	  with a perl script 970118).
2166	+ rewrote ncurses 'b' test to better exercise magic-cookie (xmc), as
2167	  well as noting the attributes that are not supported by a terminal.
2168	+ trace the computation of cost values in lib_mvcur.c
2169	+ modify _nc_visbuf() to use octal rather than hex, corrected sign
2170	  extension bug in that function that caused buffer overflow.
2171	+ modify trace in lib_acs.c to use _nc_visbuf().
2172	+ suppress trace within _traceattr2().
2173	+ correct logic of _tracechtype2(), which did not account for repeats
2174	  or redefinition within an acsc string.
2175	+ modify debug-library version baudrate() to use environment variable
2176	  $BAUDRATE to override speed computation.  This is needed for
2177	  regression testing.
2178	+ correct problems shown by "weblint -pedantic".
2179	+ update mailing-list information (now ncurses@bsdi.com).
2180
2181970419
2182	+ Improve form_field_validation.3x manpage to better describe the
2183	  precision parameter for TYPE_NUMERIC and TYPE_INTEGER.  Provide more
2184	  precise information how the range checking can be avoided.  (patch by
2185	  Juergen Pfeifer, reported by Bryan Henderson)
2186	+ change type of min/max value of form types TYPE_INTEGER to long to
2187	  match SVr4 documentation.
2188	+ set the form window to stdscr in set_form_win() so that form_win()
2189	  won't return null (patch by Juergen Pfeifer, reported by Bryan
2190	  Henderson <bryanh@giraffe.netgate.net>).
2191
2192970412
2193	+ corrected ifdef'ing of inline (from 970321) for TRACE vs C++.
2194	+ corrected toggle_attr_off() macro (patch by Andries.Brouwer).
2195	+ modify treatment of empty token in $MANPATH to /usr/man (reported by
2196	  <Andries.Brouwer@cwi.nl>)
2197	+ modify traces that record functions-called so that chtype and attr_t
2198	  values are expressed symbolically, to simplify reuse of generated
2199	  test-scripts on SVr4 regression testing.
2200	+ add new trace functions _traceattr2() and _tracechtype2()
2201
2202970405
2203	+ add configure option --enable-const, to support the use of 'const'
2204	  where XSI should have, but did not, specify.  This defines
2205	  NCURSES_CONST, which is an empty token otherwise, for strict
2206	  compatibility.
2207	+ make processing of configure options more verbose by echoing the
2208	  --enable/--with values.
2209	+ add configure option --enable-big-core
2210	+ set initial state of software echo off as per XSI.
2211	+ check for C++ builtin.h header
2212	+ correct computation of absolute-path for $INSTALL that dropped "-c"
2213	  parameter from the expression.
2214	+ rename config.h to ncurses_cfg.h to avoid naming-conflict when ncurses
2215	  is integrated into larger systems (from diffs by H.J.Lu for libc).
2216	+ correct inequality in lib_doupdate.c that caused a single-char to not
2217	  be updated when the char on the right-margin was not blank, idcok()
2218	  was true (patch by Alexander V.  Lukyanov 970124, also reported by
2219	  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu> 970329).
2220	+ modify 'clean' rule in include/Makefile so that files created by
2221	  configure script are removed in 'distclean' rule instead.
2222
2223970328
2224	+ correct array limit in tparam_internal(), add case to interpret "%x"
2225	  (patch by Andreas Schwab)
2226	+ rewrote number-parsing in ncurses.c 'd' test; it did not reset the
2227	  value properly when non-numeric characters were given (reported by
2228	  Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>)
2229
2230970321
2231	+ move definition of __INTERNAL_CAPS_VISIBLE before include for
2232	  progs.priv.h (patch by David MacKenzie).
2233	+ add configuration summary, reordered check for default include
2234	  directory to better accommodate a case where installer is configuring
2235	  a second copy of ncurses (reported by Klaus Weide
2236	  <kweide@tezcat.com>)
2237	+ moved the #define for 'inline' as an empty token from the
2238	  $(CFLAGS_DEBUG) symbol into config.h, to avoid redefinition warning
2239	  (reported by Ward Horner).
2240	+ modify test for bool builtin type to use 'unsigned' rather than
2241	  'unknown' when cross-compiling (reported by Ward Horner).
2242
2243970315
2244	+ add header dependencies so that "make install.libs" will succeed
2245	  even if "make all" is not done first.
2246	+ moved some macros from lib_doupdate.c to curses.priv.h to use in
2247	  expanded functions with ATAC.
2248	+ correct implementation of lib_instr.c; both XSI and SVr4 agree that
2249	  the winnstr functions can return more characters than will fit on one
2250	  line.
2251
2252970308
2253	+ modify script that generates lib_gen.c to support traces of called &
2254	  return.
2255	+ add new configure option "--disable-macros", for testing calls within
2256	  lib_gen.c
2257	+ corrected logic that screens level-checking of called/return traces.
2258
2259970301
2260	+ use new configure macro NC_SUBST to replace AC_PATH_PROG, better
2261	  addressing request by Ward Horner.
2262	+ check for cross-compiling before trying to invoke the autoconf
2263	  AC_FUNC_SETVBUF_REVERSED macro (reported by Ward Horner)
2264	+ correct/simplify loop in _nc_visbuf(), 970201 changes omitted
2265	  a pointer-increment.
2266	+ eliminate obsolete symbol SHARED_ABI from dist.mk (noted by
2267	  Florian La Roche).
2268
2269970215
2270	+ add configure option --enable-expanded, together with code that
2271	  implements an expanded form of certain complex macros, for testing
2272	  with ATAC.
2273	+ disable CHECK_POSITION unless --with-assertions is configured
2274	  (Alexander Lukyanov pointed out that this is redundant).
2275	+ use keyname() to show traced chtype values where applicable rather
2276	  than _tracechar(), which truncates the value to 8-bits.
2277	+ minor fixes to TRACE_ICALLS, added T_CREATE, TRACE_CCALLS macros.
2278	+ modify makefiles in progs and test directories to avoid using C
2279	  preprocessor options on link commands (reported by Ward Horner)
2280	+ correct ifdef/include-order for nc_alloc.h vs lib_freeall.c (reported
2281	  by Ward Horner)
2282	+ modify ifdef's to use configure-defined symbols consistently
2283	  (reported by Ward Horner)
2284	+ add/use new makefile symbols AR, AR_OPTS and LD to assist in non-UNIX
2285	  ports (reported by Ward Horner <whorner@tsi-telsys.com>)
2286	+ rename struct try to struct tries, to avoid name conflict with C++
2287	  (reported by Gary Johnson).
2288	+ modify worm.c to hide cursor while running.
2289	+ add -Wcast-qual to gcc warnings, fix accordingly.
2290	+ use PutChar rather than PutAttrChar in ClrToEOL to properly handle
2291	  wrapping (Alexander Lukyanov).
2292	+ correct spurious echoing of input in hanoi.c from eric's #291 & #292
2293	  patches (reported by Vernon C. Hoxie <vern@zebra.alphacdc.com>).
2294	+ extend IRIX configuration to IRIX64
2295	+ supply missing install.libs rule needed after restructuring
2296	  test/Makefile.in
2297
2298970208
2299	+ modify "make mostlyclean" to leave automatically-generated source
2300	  in the ncurses directory, for use in cross-compiles.
2301	+ autogenerated object-dependencies for test directory
2302	+ add configure option --with-rcs-ids
2303	+ modify configuration scripts to generate major/minor/patch versions
2304	  (suggested by Alexander Lukyanov).
2305	+ supply missing va_end's in lib_scanw.c
2306	+ use stream I/O for trace-output, to eliminate fixed-size buffer
2307	+ add TRACE_ICALLS definition/support to lib_trace.c
2308	+ modify Ada95 binding to work with GNAT 3.09 (Juergen Pfeifer).
2309
2310970201
2311	+ add/modify traces for called/return values to simplify extraction
2312	  for test scripts.
2313	+ changed _nc_visbuf to quote its result, and to dynamically allocate
2314	  the returned buffer.
2315	+ invoke ldconfig after installing shared library
2316	+ modify install so that overwrite applies to shared library -lcurses
2317	  in preference to static library (reported by Zeyd 960928).
2318	+ correct missing ';' in 961221 mod to overwrite option use of $(LN_S).
2319	+ fixes to allow "make install" to work without first doing a "make
2320	  all" (suggested by Larry Virden).
2321
2322970125
2323	+ correct order of #ifdef for TABS_OK.
2324	+ instrumented toe.c to test memory-leaks.
2325	+ correct memory-deallocation in toe.c (patch by Jesse Thilo).
2326	+ include <sys/types.h> in configuration test for regex.h (patch by
2327	  Andreas Schwab)
2328	+ make infocmp recognize -I option, for SVr4 compatibility (reported by
2329	  Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>)
2330
2331970118
2332	+ add extension 'use_default_colors()', modified test applications that
2333	  use default background (firework, gdc, hanoi, knight, worm) to
2334	  demonstrate.
2335	+ correct some limit checks in lib_doupdate.c exposed while running
2336	  worm.
2337	+ use typeCalloc macro for readability.
2338	+ add/use definition for CONST to accommodate testing with Solaris
2339	  (SVr4) curses, which doesn't use 'const' in its prototypes.
2340	+ modify ifdef's in test/hashtest.c and test/view.c to compile with
2341	  Solaris curses.
2342	+ modify _tracedump() to pad pad colors & attrs lines to match change
2343	  in 970101 showing first/last changes.
2344	+ corrected location of terminating null on dynamically allocated forms
2345	  fields (patch by Per Foreby).
2346
2347970111
2348	+ added headers to make view.c compile on SCO with the resizeterm()
2349	  code (i.e., struct winsize) - though this compiles, I don't have a
2350	  suitable test configuration since SIGWINCH doesn't pass my network to
2351	  that machine - T.Dickey.
2352	+ update test/configure.in to supply some default substitutions.
2353	+ modify configure script to add -lncurses after -lgpm to fix problem
2354	  linking against static libraries.
2355	+ add a missing noraw() to test/ncurses.c (places noted by Jeremy
2356	  Buhler)
2357	+ add a missing wclear() to test/testcurs.c (patch by Jeremy Buhler
2358	  <jbuhler@cs.washington.edu>)
2359	+ modify headers to accommodate compilers that don't allow duplicate
2360	  "#define" lines for NCURSES_VERSION (reported by Larry W. Virden
2361	  <lvirden@cas.org>)
2362	+ fix formatting glitch in curs_getch.3x (patch by Jesse Thilo).
2363	+ modify lib_doupdate to make el, el1 and ed optimization use the
2364	  can_clear_with macro, and change EmitRange to allow leaving cursor at
2365	  the middle of interval, rather than always at the end (patch by
2366	  Alexander Lukyanov originally 960929, resync 970106).
2367
2368970104
2369	+ workaround defect in autoconf 2.12 (which terminates configuration
2370	  if no C++ compiler is found) by adding an option --without-cxx.
2371	+ modify several man-pages to use tbl, where .nf/.fi was used (reported
2372	  by Jesse Thilo).
2373	+ correct font-codes in some man-pages (patch by Jesse Thilo
2374	  <Jesse.Thilo@pobox.com>)
2375	+ use configure script's knowledge of existence of g++ library for the
2376	  c++ Makefile (reported by Paul Jackson).
2377	+ correct misleading description of --datadir configuration option
2378	  (reported by Paul Jackson <pj@sam.engr.sgi.com>)
2379
2380970101
2381	+ several corrections to _nc_mvcur_scrolln(), prompted by a bug report
2382	  from Peter Wemm:
2383	> the logic for non_dest_scroll_region was interchanged between the
2384	  forward & reverse scrolling cases.
2385	> multiple returns from the function allowed certain conditions to do
2386	  part of an operation before discovering that it couldn't be
2387	  completed, returning an error without restoring the cursor.
2388	> some returns were ERR, where the function had completed the
2389	  operation, because the insert/delete line logic was improperly
2390	  tested (this was probably the case Peter saw).
2391	> contrary to comments, some scrolling cases were tested after the
2392	  insert/delete line method.
2393	+ modify _tracedump() to show first/last changes.
2394	+ modify param of ClrUpdate() in lib_doupdate.c to 'newscr', fixes
2395	  refresh problem (reported by Peter Wemm) that caused nvi to not show
2396	  result of ":r !ls" until a ^L was typed.
2397
2398961229	(internal alpha)
2399	+ correct some of the writable-strings warnings (reported by Gary
2400	  Johnson <gjohnson@season.com>).  Note that most of the remaining ones
2401	  are part of the XSI specification, and can't be "fixed".
2402	+ improve include-dependencies in form, menu, panel directories.
2403	+ correct logic of delay_output(), which would return early if
2404	  there is data on stdin.
2405	+ modify interface & logic of _nc_timed_wait() to support 2 file
2406	  descriptors, needed for GPM.
2407	+ integrate patch by Andrew Kuchling <amk@magnet.com> for GPM (mouse)
2408	  support, correcting logic in wgetch() and _nc_mouse_parse() which
2409	  prevented patch from working properly.
2410	+ improve performance of panel algorithm (Juergen Pfeifer 961203).
2411	+ strip RCS id's from generated .html files in Ada95 subtree.
2412	+ resync with generated .html files (Juergen Pfeifer 961223).
2413	+ terminfo.src 10.1.0 from Eric.
2414
2415961224	4.0 release
2416	+ release as 4.0 to accommodate Linux ld.so.1.8.5
2417	+ correct syntax/spelling, regenerated .doc files from .html using
2418	  lynx 2.5
2419	+ refined forms/menus makefiles (Juergen Pfeifer 961223).
2420
2421961221	- snapshot
2422	+ remove logic in read_entry.c that attempts to refine errno by using
2423	  'access()' for the directory (from patch by Florian La Roche).
2424	+ correct configure test/substitution that inhibits generating
2425	  include-path to /usr/include if gcc is used (reported by Florian La
2426	  Roche).
2427	+ modify setupterm() to allocate new TERMINAL for each call, just as
2428	  solaris' curses does (Alexander Lukyanov 960829).
2429	+ corrected memory leaks in read_entry.c
2430	+ add configure options --with-dbmalloc, --with-dmalloc, and
2431	  --disable-leaks, tested by instrumenting infocmp, ncurses programs.
2432	+ move #include's for stdlib.h and string.h to *.priv.h to accommodate
2433	  use of dbmalloc.
2434	+ modify use of $(LN_S) to follow recommendation in autoconf 2.12,
2435	  i.e., set current directory before linking.
2436	+ split-out panel.priv.h, improve dependencies for forms, menus
2437	  (Juergen Pfeifer 961204).
2438	+ modify _nc_freewin() to reset globals curscr/newscr/stdscr when
2439	  freeing the corresponding WINDOW (Purify).
2440	+ modify delwin() to return ERR if the window to be deleted has
2441	  subwindows, needed as a side-effect of resizeterm() (Purify).  Tested
2442	  and found that SVr4 curses behaves this way.
2443	+ implement logic for _nc_freeall(), bringing stub up to date.
2444
2445961215
2446	+ modify wbkgd() so that it doesn't set nulls in the rendered text,
2447	  even if its argument doesn't specify a character (fixes test case by
2448	  Juergen Pfeifer for bug-report).
2449	+ set window-attributes in wbkgd(), to simplify comparison against
2450	  Solaris curses, which does this.
2451
2452961214	- snapshot
2453	+ replace most constants in ncurses 'o' test by expressions, making it
2454	  work with wider range of screen sizes.
2455	+ add options to ncurses.c to specify 'e' test softkey format, and the
2456	  number of header/footer lines to rip-off.
2457	+ add ^R (repaint after resize), ^L (refresh) commands to ncurses 'p'
2458	  test.
2459	+ add shell-out (!) command to ncurses 'p' test to allow test of
2460	  resize between endwin/refresh.
2461	+ correct line-wrap case in mvcur() by emitting carriage return,
2462	  overlooked in 960928, but needed due to SVr4 compatibility changes to
2463	  terminal modes in 960907.
2464	+ correct logic in wresize that causes new lines to be allocated,
2465	  broken for the special case of increasing rows only in 960907's fix
2466	  for subwindows.
2467	+ modify configure script to generate $(LDFLAGS) with -L and -l options
2468	  in preference to explicit library filenames.  (NOTE: this may
2469	  require further amending, since I vaguely recall a dynamic loader
2470	  that did not work properly without the full names, but it should be
2471	  handled as an exception to the rule, since some linkers do bulk
2472	  inclusion of libraries when given the full name - T.Dickey).
2473	+ modify configure script to allow user-supplied $CFLAGS to set the
2474	  debug-option in all libraries (requested by lots of people).
2475	+ use return consistently from main(), rather than exit (reported by
2476	  Florian La Roche).
2477	+ add --enable-getcap-cache option to configure, normally disabled
2478	  (requested by Florian La Roche).
2479	+ make configure test for gettimeofday() and possibly -lbsd more
2480	  efficient (requested by Florian La Roche florian@knorke.saar.de)
2481	+ minor adjustments to Ada95 binding (patches by Juergen Pfeifer)
2482	+ correct attributes after emitting orig_pair in lib_vidattr.c (patch
2483	  by lav@yars.free.net).
2484
2485961208
2486	+ corrected README wrt Ada95 (Juergen Pfeifer)
2487
2488961207	- snapshot
2489	+ integrate resizeterm() into doupdate(), so that if screen size
2490	  changes between endwin/refresh, ncurses will resize windows to fit
2491	  (this needs additional testing with pads and softkeys).
2492	+ add, for memory-leak testing, _nc_freeall() entrypoint to free all
2493	  data used in ncurses library.
2494	+ initialize _nc_idcok, _nc_idlok statically to resolve discrepancy
2495	  between initscr() and newwin() initialization (reported by
2496	  lav@yars.free.net).
2497	+ test built VERSION=4.0, SHARED_ABI=4 with Linux ld.so.1.8.5
2498	  (set beta versions to those values -- NOTE that subsequent pre-4.0
2499	  beta may not be interchangeable).
2500	+ modify configure script to work with autoconf 2.12
2501
2502961130	1.9.9g release
2503	+ add copyright notices to configuration scripts (written by Thomas
2504	  Dickey).
2505
2506961127
2507	> patch by Juergen Pfeifer (mostly for panel):
2508	+ cosmetic improvement for a few routines in the ncurses core library
2509	  to avoid warning messages.
2510	+ the panel overlap detection was broken
2511	+ the panel_window() function was not fool-proof.
2512	+ Some inlining...
2513	+ Cosmetic changes (also to avoid warning messages when compiling with
2514	  -DTRACE).
2515
2516961126
2517	> patch by Juergen Pfeifer:
2518	+ eliminates warning messages for the compile of libform.
2519	+ inserts Per Foreby's new field type TYPE_IPV4 into libform.
2520	+ Updates man page and the Ada95 binding to reflect this.
2521	+ Improves inlining in libmenu and libform.
2522
2523961120
2524	+ improve the use of the "const" qualifier in the
2525	  panel library (Juergen Pfeifer)
2526	+ change set_panel_userptr() and panel_userptr() to use void*
2527	  (Juergen Pfeifer)
2528
2529961119
2530	+ change ABI to 3.4
2531	+ package with 961119 version of Ada95 binding (fixes for gnat-3.07).
2532	  (Juergen Pfeifer)
2533	+ correct initialization of the stdscr pseudo panel in panel library
2534	  (Juergen Pfeifer)
2535	+ use MODULE_ID (rcs keywords) in forms and menus libraries (Juergen
2536	  Pfeifer).
2537	> patch #324 by Eric.
2538	+ typo in curs_termcap man page (reported by Hendrik Reichel
2539	  <106065.2344@compuserve.com>)
2540	+ change default xterm entry to xterm-r6.
2541	+ add entry for color_xterm
2542
2543961116	- snapshot
2544	+ lint found several functions that had only #define implementations
2545	  (e.g., attr_off), modified curses.h.in to generate them as per XSI
2546	  Curses requirement that every macro be available as a function.
2547	+ add check in infocmp.c to guard against string compare of
2548	  CANCELLED_STRING values.
2549	+ modify firework.c, rain.c to hide cursor while running.
2550	+ correct missing va_end in lib_tparm.c
2551	+ modify hanoi.c to work on non-color terminals, and to use timing
2552	  delays when in autoplay mode.
2553	+ correct 'echochar()' to refresh immediately (reported by Adrian
2554	  Garside 94ajg2@eng.cam.ac.uk)
2555	> patch #322 by eric:
2556	+ reorganize terminfo.src entries for xterm.
2557
2558961109	- snapshot
2559	+ corrected error in line-breakout logic (lib_doupdate.c)
2560	+ modified newdemo to use wgetch(win) rather than getch() to eliminate
2561	  a spurious clear-screen.
2562	+ corrected ifdef's for 'poll()' configuration.
2563	+ added modules to ncurses, form, menu for Ada95 binding (Juergen
2564	  Pfeifer).
2565	+ modify set_field_buffer() to allow assignment of string longer than
2566	  the initial buffer length, and to return the complete string rather
2567	  than only the initial size (Juergen Pfeifer and Per Foreby
2568	  <perf@efd.lth.se>).
2569
2570961102	- snapshot
2571	+ configure for 'poll()' in preference to 'select()', since older
2572	  systems are more likely to have a broken 'select()'.
2573	+ modified render_char() to avoid OR'ing colors.
2574	+ minor fixes to testcurs.c, newdemo.c test programs: ifdef'd out the
2575	  resize test, use wbkgd and corrected box() parameters.
2576	+ make flushinp() test work in ncurses.c by using napms() instead of
2577	  sleep().
2578	+ undo Eric's changes to xterm-x11r6 (it no longer matched the X11R6.1
2579	  distribution, as stated)
2580	+ terminfo 9.13.18 (resync by Eric)
2581	+ check for getenv("HOME") returning null (Eric).
2582	+ change buffer used to decode xterm-mouse commands to unsigned to
2583	  handle displays wider than 128 chars (Juergen Pfeifer).
2584	+ correct typo curs_outopts.3x (Juergen Pfeifer).
2585	+ correct limit-checking in wenclose() (Juergen Pfeifer).
2586	+ correction to Peter Wemm's newwin change (Thomas Fehr <fehr@suse.de>).
2587	+ corrections to logic that combines colors and attributes; they must
2588	  not be OR'd (Juergen Pfeifer, extending from report/patch by Rick
2589	  Marshall).
2590
2591961026	- snapshot
2592	+ reset flags in 'getwin()' that might cause refresh to attempt to
2593	  manipulate the non-existent parent of a window that is read from a
2594	  file (lib_screen.c).
2595	+ restructure _nc_timed_wait() to log more information, and to try to
2596	  recover from badly-behaved 'select()' calls (still testing this).
2597	+ move define for GOOD_SELECT into configure script.
2598	+ corrected extra '\' character inserted before ',' in comp_scan.c
2599	+ corrected expansion of %-format characters in dump_entry.c; some were
2600	  rendered as octal constants.
2601	+ modify dump_entry.c to make terminfo output more readable and like
2602	  SVr4, by using "\s" for spaces (leading/trailing only), "\," for
2603	  comma, "\^" and "\:" as well.
2604	+ corrected some memory leaks in ncurses.c, and a minor logic error
2605	  in the top-level command-parser.
2606	+ correction for label format 4 (PC style with info line), a
2607	  slk_clear(), slk_restore() sequence didn't redraw the info line
2608	  (Juergen Pfeifer).
2609	+ modified the slk window (if simulated) to inherit the background and
2610	  default character attributes from stdscr (Juergen Pfeifer).
2611	+ corrected limit-check in set_top_row (Juergen Pfeifer).
2612
2613961019	- snapshot
2614	+ correct loop-limit in wnoutrefresh(), bug exposed during pipe-testing
2615	  had '.lastchar' entry one beyond '._maxx'.
2616	+ modify ncurses test-program to work with data piped to it.
2617	+ corrected pathname computation in run_tic.sh, removing extra "../"
2618	  (reported by Tim Mooney).
2619	+ modified configure script to use previous install's location for
2620	  curses.h
2621	+ added NetBSD and FreeBSD to platforms that use --prefix=/usr as
2622	  a default.
2623
2624961013
2625	+ revised xterm terminfo descriptions to reflect the several versions
2626	  that are available.
2627	+ corrected a pointer reference in dump_entry.c that didn't test if
2628	  the pointer was -1.
2629
2630961005	- snapshot
2631	+ correct _nc_mvcur_scrolln for terminals w/o scrolling region.
2632	+ add -x option to hashtest to control whether it allows writes to the
2633	  lower-right corner.
2634	+ ifdef'd (NCURSES_TEST) the logic for _nc_optimize_enable to make it
2635	  simpler to construct tests (for double-check of _nc_hash_map tests).
2636	+ correct ifdef's for c++ in curses.h
2637	+ change default xterm type to xterm-x11r6.
2638	+ correct quoting in configure that made man-pages installed with
2639	  $datadir instead of actual terminfo path.
2640	+ correct whitespace in include/Caps, which caused kf11, clr_eol and
2641	  clr_end to be omitted from terminfo.5
2642	+ fix memory leaks in delscreen() (adapted from Alexander Lukyanov).
2643	+ improve appearance of marker in multi-selection menu (Juergen
2644	  Pfeifer)
2645	+ fix behaviour for forms with all fields inactive (Juergen
2646	  Pfeifer)
2647	+ document 'field_index()' (Juergen Pfeifer)
2648	> patch #321 by eric:
2649	+ add some more XENIX keycap translations to include/Caps.
2650	+ modify newwin to set initial state of each line to 'touched'
2651	  (from patch by Peter Wemm <peter@spinner.dialix.com>)
2652	+ in SET_TTY, replace TCSANOW with TCSADRAIN (Alexander Lukyanov).
2653
2654960928	- snapshot
2655	+ ifdef'd out _nc_hash_map (still slower)
2656	+ add graphic characters to vt52 description.
2657	+ use PutAttrChar in ClrToEOL to ensure proper background, position.
2658	+ simplify/correct logic in 'mvcur()' that does wrapping; it was
2659	  updating the position w/o actually moving the cursor, which broke
2660	  relative moves.
2661	+ ensure that 'doupdate()' sets the .oldindex values back to a sane
2662	  state; this was causing a spurious refresh in ncurses 'r'.
2663	+ add logic to configure (from vile) to guard against builders who
2664	  don't remove config.cache & config.status when doing new builds.
2665	+ corrected logic for 'repeat_char' in EmitRange (from #317), which
2666	  did not follow the 2-parameter scheme specified in XSI.
2667	+ corrected logic of wrefresh, wnoutrefresh broken in #319, making
2668	  clearok work properly (from report by Michael Elkins).
2669	+ corrected problem with endwin introduced by #314 (removing the
2670	  scrolling-region reset) that broke ncurses.c tests.
2671	+ corrected order of args in AC_CHECK_LIB (from report by Ami Fischman
2672	  <fischman@math.ucla.edu>).
2673	+ corrected formatting of terminfo.5 tables (Juergen Ehling)
2674	> patch 320 by eric:
2675	+ change ABI to 3.3
2676	+ emit a carriage-return in 'endwin()' to workaround a kernel bug in
2677	  BSDI.  (requested by Mike Karels <karels@redrock.bsdi.com>)
2678	+ reverse the default o configure --enable-termcap (consensus).
2679	> patch 319 by eric:
2680	+ modified logic for clearok and related functions (from report by
2681	  Michael Elkins) - untested
2682	> patch 318 by eric:
2683	+ correction to #317.
2684	> patch 317 by eric:
2685	+ re-add _nc_hash_map
2686	+ modify EmitRange to maintain position as per original design.
2687	+ add hashtest.c, program to time the hashmap optimization.
2688	> patch 316 by eric:
2689	+ add logic to deal with magic-cookie (how was this tested?)
2690	  (lib_doupdate.c).
2691	+ add ncurses.c driver for magic-cookie, some fixes to ncurses.c
2692	> patch 315 by eric:
2693	+ merged A. Lukyanov's patch to use ech and rep - untested
2694	  (lib_doupdate.c).
2695	+ modified handling of interrupted system calls - untested
2696	  (lib_getch.c, lib_twait.c).
2697	+ new function _nc_mvcur_resume()
2698	+ fix return value for 'overlay()', 'overwrite()'
2699
2700960914	- snapshot
2701	+ implement subwindow-logic in wresize, minor fixes to ncurses 'g'
2702	  test.
2703	+ corrected bracketing of fallback.c (reported/suggested fix by Juergen
2704	  Ehling <eh@eclipse.aball.de>).
2705	+ update xterm-color to reflect XFree86 3.1.3G release.
2706	+ correct broken dtterm description from #314 patch (e.g., spurious
2707	  newline.  The 'pairs' change might work, but no one's tested it
2708	  either ;-)
2709	+ clarify the documentation for the builtin form fieldtypes (Juergen
2710	  Pfeifer)
2711	> patch 314 by eric:
2712	+ Enhancement suggested by A. Lukyanov -- reset scroll region on
2713	  startup rather than at wrapup time.
2714	+ Fix suggested by A. Lukyanov, make storage of palette tables
2715	  and their size counts per-screen for multi-terminal applications.
2716	+ Improved error reporting for infotocap translation errors.
2717	+ Update terminfo.src to 9.13.14.
2718
2719960907	- snapshot
2720	+ rewrote wgetstr to make it erase control chars and also fix bogus use
2721	  of _nc_outstr which caused the display to not wrap properly (display
2722	  problem reported by John M. Flinchbaugh <glynis@netrax.net>)
2723	+ modify ncurses 'f' test to accommodate terminal responses to C1 codes
2724	  (and split up this screen to accommodate non-ANSI terminals).
2725	+ test enter_insert_mode and exit_insert_mode in has_ic().
2726	+ removed bogus logic in mvcur that assumes nl/nonl set output modes
2727	  (XSI says they are input modes; SVr4 implements this).
2728	+ added macros SET_TTY, GET_TTY to term.h
2729	+ correct getstr() logic that altered terminal modes w/o restoring.
2730	+ disable ICRNL, etc., during initialization to match SVr4, removing
2731	  the corresponding logic from raw, cbreak, etc.
2732	+ disable ONLCR during initialization, to match SVr4 (this is needed
2733	  for cursor optimization when the cursor-down is a newline).
2734	+ replaced Eric's imitation of wresize with my original (his didn't
2735	  work).
2736
2737960831	- snapshot
2738	+ memory leaks (Alexander V. Lukyanov).
2739	+ modified pnoutrefresh() to be more tolerant of too-large screen
2740	  size (reported by Michael Elkins).
2741	+ correct handling of terminfo files with no strings (Philippe De
2742	  Muyter)
2743	+ correct "tic -s" to take into account -I, -C options.
2744	+ modify ncurses 'f' test to not print codes 80 through 9F, since they
2745	  are considered control codes by ANSI terminals.
2746
2747960824	- snapshot
2748	+ correct speed variable-type in 'tgetent()' (reported by Peter Wemm)
2749	+ make "--enable-getcap" configuration-option work (reported by
2750	  Peter Wemm <peter@spinner.DIALix.COM>)
2751
2752960820
2753	+ correct err in 960817 that changed return-value of tigetflag()
2754	  (reported by Alexander V. Lukyanov).
2755	+ modify infocmp to use library default search-path for terminfo
2756	  directory (Alexander V. Lukyanov).
2757
2758960817	- snapshot
2759	+ corrected an err in mvcur that broke resizing-behavior.
2760	+ correct fall-thru behavior of _nc_read_entry(), which was not finding
2761	  descriptions that existed in directories past the first one searched
2762	  (reported by Alexander V. Lukyanov)
2763	+ corrected typo in dtterm description.
2764	> patch 313 by eric:
2765	+ add dtterm description
2766	+ clarify ncurses 'i' test (drop vscanf subtest)
2767
2768960810	- snapshot
2769	+ correct nl()/nonl() to work as per SVr4 & XSI.
2770	+ minor fixes to ncurses.c (use 'noraw()', mvscanw return-code)
2771	+ refine configure-test for -g option (Tim Mooney).
2772	+ correct interaction between O_BLANK and NEW_LINE request in form
2773	  library (Juergen Pfeifer)
2774
2775960804
2776	+ revised fix to tparm; previous fix reversed parameter order.
2777	> patch 312 by eric:
2778	  correct terminfo.src corrupted by #310
2779	> patch 311 by eric:
2780	+ fix idlok() and idcok() and the default of the idlok switch.
2781
2782960803	- snapshot
2783	+ corrected tparm to handle capability strings without explicit pop
2784	  (reported by William P Setzer)
2785	+ add fallback def for GCC_NORETURN, GCC_UNUSED for termcap users
2786	  (reported by Tim Mooney).
2787	> patch 310 by eric:
2788	+ documentation and prototyping errors for has_color, immedok and idcok
2789	  (reported by William P Setzer <wsetzer@pams.ncsu.edu>)
2790	+ updated qnx terminfo entry (by Michael Hunter)
2791
2792960730
2793	+ eliminate quoted includes in ncurses subdirectory, ensure config.h
2794	  is included first.
2795	+ newterm initializes terminal settings the same as initscr (reported
2796	  by Tim Mooney).
2797
2798960727	- snapshot
2799	+ call cbreak() in initscr(), as per XSI & SVr4.
2800	+ turn off hardware echo in initscr() as per XSI & SVr4
2801	> patch 309 by eric:
2802	+ terminfo changes (9.3.10), from BRL
2803	+ add more checks to terminfo parser.
2804	+ add more symbols to infocmp.
2805
2806960720	- snapshot
2807	+ save previous-attribute in lib_vidattr.c if SP is null (reported by
2808	  Ju"rgen Fluk <louis@dachau.marco.de>)
2809	+ corrected calls on _nc_render so that background character is set
2810	  as per XSI.
2811	+ corrected wbkgdset macro (XSI allows background character to be null),
2812	  and tests that use it.
2813	+ more corrections to terminfo (xterm & rxvt)
2814	+ undid change to mcprint prototype (cannot use size_t in curses.h
2815	  because not all systems declare it in the headers that we can safely
2816	  include therein).
2817	+ move the ifdefs for errno into curses.priv.h
2818	> patch 308 by eric:
2819	+ terminfo changes (9.3.8)
2820	+ modified logic of error-reporting in terminfo parser
2821
2822960713	- snapshot
2823	+ always check for <sys/bsdtypes.h> since ISC needs it to declare
2824	  fd_set (Juergen Pfeifer)
2825	+ install shared-libraries on NetBSD/FreeBSD with ABI-version (reported
2826	  by several people:  Juergen Pfeifer, Mike Long)
2827	+ add LOCAL_LDFLAGS2 symbol (Juergen Pfeifer)
2828	+ corrected prototype for delay_output() -- bump ABI to 3.2
2829	+ terminfo patches #306/307 from Eric.
2830	+ moved logic that filters out rmul and rmso from setupterm to newterm
2831	  where it is less likely to interfere with termcap applications.
2832
2833960707
2834	+ rollback Eric's #305 change to terminfo.src (it breaks existing
2835	  applications, e.g., 'less 290').
2836	+ correct path of edit_man.sh, and fix typo that made all man-pages
2837	  preformatted.
2838	+ restore man/menu_requestname.3x omitted in Zeyd's resync (oops).
2839	+ auto-configure the GCC_PRINTFLIKE/GCC_SCANFLIKE macros (reported by
2840	  Philippe De Muyter).
2841
2842960706	- snapshot
2843	+ make lib_vidattr.c more readable using macros.
2844	+ filter out rmul, rmso that conflict with sgr0 when reading terminal
2845	  descriptions.
2846	+ added sanity-checking of various paired string attributes (Eric).
2847	+ work around autoconf bug, force $INSTALL to absolute path.
2848	  (reported by Zeyd).
2849	+ modify man-page install for BSDI to install preformatted .0 files
2850	  (reported by David MacKenzie).
2851	+ add/use gcc __attribute__ for printf and scanf in curses.h
2852	+ added SGR attributes test-case to ncurses
2853	+ revised ncurses 't' logic to show trace-disable effect in the menu.
2854	+ use getopt in ncurses program to process -s and -t options.
2855	+ make ncurses 'p' legend toggle with '?'
2856	+ disable scrollok during the ncurses 'p' test; if it is enabled the
2857	  stdscr will scroll when putting the box-corners in the lower-right
2858	  of the screen.
2859
2860960629	- snapshot
2861	+ check return code of _nc_mvcur_scrolln() in _nc_scroll_optimize() for
2862	  terminals with no scrolling-support (reported by Nikolay Shadrin
2863	  <queen@qh.mirea.ac.ru>)
2864	+ added ^S scrollok-toggle to ncurses 'g' test.
2865	+ added ^T trace-toggle to ncurses tests.
2866	+ modified ncurses test program to use ^Q or ESC consistently for
2867	  terminating tests (rather than ^D), and to use control keys rather
2868	  than function keys in 'g' test.
2869	+ corrected misplaced wclrtoeol calls in addch to accommodate wrapping
2870	  (reported by Philippe De Muyter).
2871	+ modify lib_doupdate.c to use effective costs to tradeoff between
2872	  delete-character/insert-character vs normal updating (reported by
2873	  David MacKenzie).
2874	+ compute effective costs for screen update operations (e.g., clr_eos,
2875	  delete_character).
2876	+ corrected error in knight.c exposed by wrap fixes in 960622; the
2877	  msgwin needed scrollok set.
2878	+ corrected last change to IDcTransformLine logic to avoid conflict
2879	  between PutRange and InsStr
2880	+ modified run_tic.sh to not use /usr/tmp (reported by David MacKenzie),
2881	  and further revised it and aclocal.m4 to use $TMPDIR if set.
2882	+ corrected off-by-one in RoomFor call in read_entry.c
2883
2884960622	- snapshot
2885	+ modified logic that wraps cursor in addch to follow the XSI spec,
2886	  (implemented in SVr4) which states that the cursor position is
2887	  updated when wrapping.  Renamed _NEED_WRAP to _WRAPPED to reflect the
2888	  actual semantics.
2889	+ added -s option to tic, to provide better diagnostics in run_tic.sh
2890	+ improved error-recovery for tabset install.
2891	+ change ABI to 3.1 (dropped tparam, corrected getbkgd(), added
2892	  _yoffset to WINDOW).
2893	+ modified initialization of SP->_ofp so that init_acs() is called with
2894	  the "right" file pointer (reported by Rick Marshall <rjm@nlc.net.au>
2895	+ documentation fixes (Juergen Pfeifer).
2896	+ corrected, using new SCREEN and WINDOW members, the behavior of
2897	  ncurses if one uses ripoffline() to remove a line from the top of the
2898	  screen (Juergen Pfeifer).
2899	+ modified autoconf scripts to prepare for Ada95 (GNAT) binding to
2900	  ncurses (Juergen Pfeifer).
2901	+ incorrect buffer-size in _nc_read_entry, reported by Eric Raymond.
2902
2903960617
2904	+ corrected two logic errors in read_entry.c, write_entry.c (called by
2905	  tic, the write/read of terminfo entries used inconsistent rules for
2906	  locating the entries; the $TERMINFO_DIRS code would find only the
2907	  first entry in a list).
2908	+ refined pathname computation in run_tic.sh and shlib.
2909	+ corrected initialization of $IP in misc/run_tic.sh
2910
2911960615	- snapshot
2912	+ ifdef'd out _nc_hash_map() call because it does not improve speed.
2913	+ display version of gcc if configure script identifies it.
2914	+ modify configure script to use /usr as Linux's default prefix.
2915	+ modify run_tic.sh to use shlib script, fixes some problems installing
2916	  with a shared-library configuration.
2917	+ adjusted configure script so that it doesn't run tests with the
2918	  warnings turned on, which makes config.log hard to read.
2919	+ added 'lint' rule to top-level Makefile.
2920	+ added configure option '--with-install-prefix' for use by system
2921	  builders to install into staging locations (from request by
2922	  charles@comm.polymtl.ca)
2923	+ corrected autoconfigure for Debian man program; it's not installed
2924	  as "man_db".
2925	+ set noecho in 'worm'; it was ifdef'd for debug only
2926	+ updated test/configure.in for timing-display in ncurses 'p' test
2927	+ corrected misspelled 'getbkgd()'.
2928	+ corrected wbkgdset to work like observed syvr4 (sets A_CHARTEXT part
2929	  to blank if no character given, copies attributes to window's
2930	  attributes).
2931	+ modified lib_doupdate.c to use lower-level SP's current_attr state
2932	  instead of curscr's state, since it is redundant.
2933	+ correction to IDcTransformLine logic which controls where InsStr is
2934	  invoked (refined by lav@yars.free.net).
2935	> patches 303 by eric
2936	+ conditionally include Chris Torek's hash function _nc_hash_map().
2937	+ better fix for nvi refresh-bug (Rick Marshall)
2938	+ fix for bug in handling of interrupted keystroke waits,
2939	  (Werner Fleck).
2940
2941960601	- snapshot
2942	+ auto-configure man-page compression-format and renames for Debian.
2943	+ corrected several typos in curses.h.in (i.e., the mvXXXX macros).
2944	+ re-order curses.priv.h for lint.
2945	+ added rules for lintlib, lint
2946	+ corrected ifdef for BROKEN_LINKER in MKnames.awk.in
2947	+ corrected missing INSTALL_DATA in misc/Makefile.in
2948	+ flush output when changing cursor-visibility (Rick Marshall)
2949	+ fix a minor bug in the _nc_ripoff() routine and improve error checking
2950	  when creating the label window (Juergen Pfeifer).
2951	+ enhancement to the control over the new PC-style soft key format.
2952	  allow caller now to select whether or not one wants to have
2953	  the index-line; see curs_slk.3x for documentation (Juergen Pfeifer).
2954	+ typos, don't use inline with -g (Philippe De Muyter)
2955	+ fixes for menus & wattr-, slk-functions (Juergen Pfeifer)
2956
2957960526	- snapshot
2958	+ removed --with-ticdir option altogether, maintain compatibility with
2959	  existing applications via symbolic link in run_tic.sh
2960	+ patch for termio.h, signal (Philippe De Muyter)
2961	+ auto-configure gcc warning options rather than infer from version.
2962	+ auto-configure __attribute__ for different gcc versions.
2963	+ corrected special use of clearok() in hardscroll.c by resetting flag
2964	  in wrefresh().
2965	+ include stdlib.h before defs for EXIT_SUCCESS, for OSF/1.
2966	+ include sys/types.h in case stdlib.h does not declare size_t.
2967	+ fixes for makefile (Tim Mooney)
2968	+ fixes for menus & forms (Juergen.Pfeifer@T-Online.de)
2969
2970960518	- snapshot
2971	+ revised ncurses.c panner test, let pad abut all 4 sides of screen.
2972	+ refined case in lib_doupdate.c for ClrToEOL().
2973	+ corrected prior change for PutRange (Alexander V.  Lukyanov:
2974	  lav@yars.free.net).
2975	+ autoconf mods (Tim Mooney: mooney@dogbert.cc.ndsu.NoDak.edu).
2976	+ locale fix for forms (Philippe De Muyter: phdemuyt@ulb.ac.be)
2977	+ renamed "--with-datadir" option to "--with-ticdir" to avoid
2978	  confusion, and made this check for the /usr/lib/terminfo pre-existing
2979	  directory.
2980	> patches 299-301 by eric:
2981	+ added hashmap.c
2982	+ mods to tracing, especially for ACS chars.
2983	+ corrected off-by-one in IDCtransform.
2984	+ corrected intermittent mouse bug by using return-value from read().
2985	+ mods to parse_entry.c, for smarter defaults.
2986
2987960512
2988	+ use getopt in 'tic'; added -L option and modified -e option to allow
2989	  list from a file.
2990
2991960511
2992	+ don't use fixed buffer-size in tparm().
2993	+ modified tic to create terminfo directory if it doesn't exist.
2994	+ added -T options to tic and infocmp (for testing/analysis)
2995	+ refined the length criteria for termcap and terminfo
2996	+ optimize lib_doupdate with memcpy, PutRange
2997	> patches 297, 298 by eric
2998	+ implement TERMINFO_DIRS, and -o option of tic
2999	+ added TRACE_IEVENT
3000	+ removed boolean version of 'getm'
3001	+ added lib_print.c (for Rick Marshall)
3002	+ added has_key()
3003	+ added 't' to ncurses.c test.
3004	+ moved delay_output() to lib_tputs.c
3005	+ removed tparam().
3006	+ misc cursor & optimization fixes.
3007
3008960504	- snapshot
3009	+ modified ncurses 'p' test to allow full-screen range for panner size.
3010	+ fixes for locale (phdm@labauto1.ulb.ac.be)
3011	+ don't use fixed buffer-size in fmt_entry().
3012	+ added usage-message to 'infocmp'.
3013	+ modified install.includes rules to prepend subdirectory-name to
3014	  "#include" if needed.
3015
3016960430
3017	+ protect wrefresh, wnoutrefresh from invocation with pad argument.
3018	+ corrected default CCFLAGS in test/Makefile.
3019
3020960428	- snapshot
3021	+ implemented logic to support terminals with background color erase
3022	  (e.g., rxvt and the newer color xterm).
3023	+ improved screen update logic (off-by-one logic error; use clr_eos if
3024	  possible)
3025
3026960426	- snapshot
3027	+ change ncurses 'a' test to run in raw mode.
3028	+ make TIOCGWINSZ configure test less stringent, in case user
3029	  configures via terminal that cannot get screen size.
3030	> patches 295, 296 by eric:
3031	+ new "-e" option of tic.
3032	+ fix for "infocmp -e".
3033	+ restore working-directory in read_termcap.c
3034	+ split lib_kernel.c, lib_setup.c and names.c in order to reduce
3035	  overhead for programs that use only termcap features.
3036
3037960418	- snapshot
3038	+ use autoconf 2.9
3039	+ fix for AIX 3.2.5 (must define _POSIX_SOURCE to get termios struct
3040	  definitions via <termios.h>, modified macros in lib_raw.c to avoid
3041	  K&R-style substitution)
3042	> patches 293, 294 by eric:
3043	+ mods to wgetch() in cooked mode
3044	+ corrected askuser() logic in tset
3045	+ correct interaction of endwin() with mouse processing
3046	+ added trace support for TTY flags
3047
3048960406
3049	+ fixes for NeXT, ISC and HPUX auto-configure
3050	+ autogenerate development header-dependencies (config.h, *.priv.h)
3051	+ corrected single-column formatting of "use=" (e.g., in tic)
3052	+ modify tic to read full terminfo-names
3053	+ corrected divide-by-zero that caused hang (or worse) when redirecting output
3054	+ modify tic to generate directories only as-needed (and corrected
3055	  instance of use of data from function that had already returned).
3056
3057### ncurses-1.9.8a -> 1.9.9e
3058
3059* fixed broken wsyncup()/wysncdown(), as a result wnoutrefresh() now has
3060  copy-changed-lines behavior.
3061* added and documented wresize() function.
3062* more fixes to LOWER-RIGHT corner handling.
3063* changed the line-breakout optimization code to allow some lines to be
3064  emitted before the first check.
3065* added option for tic to use symbolic instead of hard links (for AFS)
3066* fix to restore auto-wrap mode.
3067* trace level can be controlled by environment variable.
3068* better handling of NULs in terminal descriptions.
3069* improved compatibility with observed SVR4 behavior.
3070* the refresh behavior of over-lapping windows is now more efficient and
3071  behaves like SVR4.
3072* use autoconf 2.7, which results in a working setup for SCO 5.0.
3073* support for ESCDELAY.
3074* small fixes for menu/form code.
3075* the test directory has its own configure.
3076* fixes to pads when optimizing scrolling.
3077* fixed several off-by-one bugs.
3078* fixes for termcap->terminfo translation; less restrictions more correct
3079  behavior.
3080
3081### ncurses-1.9.7 -> 1.9.8a
3082
3083* teach infocmp -i to recognize ECMA highlight sequences
3084* infocmp now dumps all SVr4 termcaps (not just the SVr4 ones) on -C
3085* support infocmp -RBSD.
3086* satisfy XSI Curses requirement that every macro be available as a function.
3087* This represents the last big change to the public interface of ncurses. The
3088  ABI_VERSION has now been set at 3.0 and should stay there barring any great
3089  catastrophies or acts of God.
3090* The C++ has been cleaned up in reaction to the changes to satisfy XSI's
3091  requirements.
3092* libncurses now gets linked to libcurses to help seamless emulation
3093  (replacement) of a vendor's curses. --disable-overwrite turns this behavior
3094  off.
3095
3096### ncurses-1.9.6 -> 1.9.7
3097
3098* corrected return values of setupterm()
3099* Fixed some bugs in tput (it does padding now)
3100* fixed a bug in tic that made it do the wrong thing on entries with more than
3101  one `use' capability.
3102* corrected the screen-size calculation at startup time to alter the
3103  numeric capabilities as per SVr4, not just LINES and COLS.
3104* toe(1) introduced; does what infocmp -T used to.
3105* tic(1) can now translate AIX box1 and font[0123] capabilities.
3106* tic uses much less core, the dotic.sh kluge can go away now.
3107* fix read_entry() and write_entry() to pass through cancelled capabilities OK.
3108* Add $HOME/.terminfo as source/target directory for terminfo entries.
3109* termcap compilation now automatically dumps an entry to $HOME/.terminfo.
3110* added -h option to toe(1).
3111* added -R option to tic(1) and infocmp(1).
3112* added fallback-entry-list feature.
3113* added -i option to infocmp(1).
3114* do a better job at detecting if we're on SCO.
3115
3116### ncurses-1.9.5 -> 1.9.6
3117
3118* handling of TERMCAP environment variables now works correctly.
3119* various changes to shorten termcap translations to less that 1024 chars.
3120* tset(1) added
3121* mouse support for xterm.
3122* most data tables are now const and accordingly live in shareable text space.
3123* Obey the XPG4/SVr4 practice that echo() is initally off.
3124* tic is much better at translating XENIX and AIX termcap entries now.
3125* tic can interpret ko capabilities now.
3126* integrated Juergen Pfeifer's forms library.
3127* taught write_entry() how not to write more than it needs to; this change
3128  reduces the size of the terminfo tree by a full 26%!
3129* infocmp -T option added.
3130* better warnings about historical tic quirks from tic.
3131
3132### ncurses 1.9.4 -> 1.9.5
3133
3134* menus library is now included with documentation.
3135* lib_mvcur has been carefully profiled and tuned.
3136* Fixed a ^Z-handling bug that was tanking lynx(1).
3137* HJ Lu's patches for ELF shared libraries under Linux
3138* terminfo.src 9.8.2
3139* tweaks for compiling in seperate directories.
3140* Thomas Dickey's patches to support NeXT's brain-dead linker
3141* Eric Raymond's patches to fix problems with long termcap entries.
3142* more support for shared libraries under SunOS and IRIX.
3143
3144### ncurses 1.9.3 -> 1.9.4
3145
3146* fixed an undefined-order-of-evaluation bug in lib_acs.c
3147* systematically gave non-API public functions and data an _nc_ prefix.
3148* integrated Juergen Pfeifer's menu code into the distribution.
3149* totally rewrote the knight test game's interface
3150
3151### ncurses 1.9.2c -> 1.9.3
3152
3153* fixed the TERMCAP_FILE Support.
3154* fixed off-by-one errors in scrolling code
3155* added tracemunch to the test tools
3156* took steps to cut the running time of make install.data
3157
3158### ncurses 1.9.2c -> 1.9.2d
3159
3160* revised 'configure' script to produce libraries for normal, debug,
3161  profile and shared object models.
3162
3163### ncurses 1.9.1 -> 1.9.2
3164
3165* use 'autoconf' to implement 'configure' script.
3166* panels support added
3167* tic now checks for excessively long termcap entries when doing translation
3168* first cut at eliminating namespace pollution.
3169
3170### ncurses 1.8.9 -> 1.9
3171
3172* cleanup gcc warnings for the following: use size_t where 'int' is not
3173  appropriate, fixed some shadowed variables, change attr_t to compatible with
3174  chtype, use attr_t in some places where it was confused with 'int'.
3175* use chtype/attr_t casts as appropriate to ensure portability of masking
3176  operations.
3177* added-back waddchnstr() to lib_addstr.c (it had been deleted).
3178* supplied missing prototypes in curses.h
3179* include <termcap.h> in lib_termcap.c to ensure that the prototypes
3180  are consistent (they weren't).
3181* corrected prototype of tputs in <termcap.h>
3182* rewrote varargs parsing in lib_tparm.c (to avoid referencing memory
3183  that may be out of bounds on the stack) -- Purify found this.
3184* ensure that TRACE is defined in lib_trace.c (to solve prototype
3185  warnings from gcc).
3186* corrected scrolling-region size in 'mvcur_wrap()'
3187* more spelling fixes
3188* use 'calloc()' to allocate WINDOW struct in lib_newwin.c (Purify).
3189* set default value for SP->_ofp in lib_set_term.c (otherwise SunOS dumps
3190  core in init_acs()).
3191* include <errno.h> in write_entry.c (most "braindead" includes declare errno
3192  in that file).
3193
3194### ncurses 1.8.8 -> 1.8.9
3195
3196* compile (mostly) clean with gcc 2.5.8 -Wall -Wstrict-prototypes
3197  -Wmissing-prototypes -Wconversion and using __attribute__ to flush out
3198  non-portable use of "%x" for pointers, or for chtype data (which is declared
3199  as a long).
3200* modified doupdate to ensure that typahead was turned on before attempting
3201  select-call (otherwise, some implementations hang).
3202* added trace mask TRACE_FIFO, use this in lib_getch.c to allow finer
3203  resolution of traces.
3204* improved bounds checking on several critical functions.
3205* the data directory has been replaced by the new master terminfo file.
3206* -F file-comparison option added to infocmp.
3207* compatibility with XSI Curses is now documented in the man bages.
3208* wsyncup/wsyncdown functions are reliable now; subwindow code in general
3209  is much less flaky.
3210* capabilities ~msgr, tilde_glitch, insert_padding, generic_type, no_pad_char,
3211  memory_above, memory_below, and hard_copy are now used properly.
3212* cursor-movement optimization has been completely rewritten.
3213* vertical-movement optimization now uses hardware scrolling, il, dl.
3214
3215### ncurses 1.8.7 -> 1.8.8
3216* untic no longer exists, infocmp replaces it.
3217* tic can understand termcap now, especially if it is called captoinfo.
3218* The Linux Standard Console terminfo entry is called linux insead of console.
3219  It also uses the kernel's new method of changing charsets.
3220* initscr() will EXIT upon error (as the docs say) This wil mostly happen if
3221  you try to run on an undefined terminal.
3222* I can get things running on AIX but tic can't compile terminfo. I have to
3223  compile entries on another machine. Volunteers to hunt this bug are welcome.
3224* wbkgd() and wbkgdset() can be used to set a windows background to color.
3225  wclear()/werase() DO NOT use the current attribute to clear the screen.
3226  This is the way SVR4 curses works. PDCurses 2.1 is broken in this respect,
3227  though PDCurses 2.2 has been fixed.
3228* cleaned up the test/ directory.
3229* test/worm will segfault after quite a while.
3230* many spelling corrections courtesy of Thomas E. Dickey
3231
3232### ncurses 1.8.6 -> 1.8.7
3233* cleaned up programs in test/ directory.
3234* fixed wbkgdset() macro.
3235* modified getstr() to stop it from advancing cursor in noecho mode.
3236* modified linux terminfo entry to work with the latest kernel to get
3237  the correct alternate character set.
3238* also added a linux-mono entry for those running on monochrome screens.
3239* changed initscr() so that it behaves like the man page says it does.
3240  this fixes the problem with programs in test/ crashing with SIGSEV if
3241  a terminal is undefined.
3242* modified addch() to avoid using any term.h #define's
3243* removed duplicate tgoto() in lib_tparm.c
3244* modified dump_entry.c so that infocmp deals correctly with ',' in acsc
3245* modified delwin() to correctly handle deleting subwindows.
3246* fixed Makefile.dist to stop installing an empty curses.h
3247* fixed a couple of out-of-date notes in man pages.
3248
3249### ncurses 1.8.5 -> 1.8.6
3250* Implemented wbkgd(), bkgd(), bkgdset(), and wbkgdset().
3251* The handling of attributes has been improved and now does not turn off color
3252  if other attributes are turned off.
3253* scrolling code is improved. Scrolling in subwindows is still broken.
3254* Fixes to several bugs that manifest them on platforms other than Linux.
3255* The default to meta now depends on the status of the terminal when ncurses
3256  is started.
3257* The interface to the tracing facility has changed.  Instead of the pair of
3258  functions traceon() and traceoff(), there is just one function trace() which
3259  takes a trace mask argument.  The trace masks, defined in curses.h, are
3260  as follows:
3261
3262	#define TRACE_DISABLE	0x00	/* turn off tracing */
3263	#define TRACE_ORDINARY	0x01	/* ordinary trace mode */
3264	#define TRACE_CHARPUT	0x02	/* also trace all character outputs */
3265	#define TRACE_MAXIMUM	0x0f	/* maximum trace level */
3266
3267  More trace masks may be added, or these may be changed, in future releases.
3268* The pad code has been improved and the pad test code in test/ncurses.c has
3269  been improved.
3270* The prototype ansi entry has been changed to work with a wider variety
3271  of emulators.
3272* Fix to the prototype ansi entry that enables it to work with PC emulators
3273  that treat trailing ";m" in a highlight sequence as ";0m"; this doesn't
3274  break operation with any emulators.
3275* There are now working infocmp, captoinfo, tput, and tclear utilities.
3276* tic can now compile entries in termcap syntax.
3277* Core-dump bug in pnoutrefresh fixed.
3278* We now recognize and compile all the nonstandard capabilities in Ross
3279  Ridge's mytinfo package (rendering it obsolete).
3280* General cleanup and documentation improvements.
3281* Fixes and additions to the installation-documentation files.
3282* Take cursor to normal mode on endwin.
3283
3284### ncurses 1.8.4 -> 1.8.5
3285* serious bugs in updating screen which caused erratic non-display,
3286  fixed.
3287* fixed initialization for getch() related variable which cause
3288  unpredictable results.
3289* fixed another doupdate bug which only appeared if you have
3290  parm_char.
3291* implemented redrawln() and redrawwin().
3292* implemented winsnstr() and related functions.
3293* cleaned up insertln() and deleteln() and implemented (w)insdeln().
3294* changed Makefile.dist so that installation of man pages will
3295  take note of the terminfo directory.
3296* fixed Configure (removed the mysterious 'X').
3297* Eric S. Raymond fixed the script.* files so that they work with
3298  stock awk.
3299
3300#### ncurses 1.8.3 -> 1.8.4 #### ####
3301* fixed bug in refreshing the screen after return from shell_mode.
3302  There are still problems but they don't manifest themselves on
3303  my machine (Linux 0.99.14f).
3304* added wgetnstr() and modified things accordingly.
3305* fixed the script.src script.test to work with awk not just gawk.
3306* Configure can now take an argument of the target system.
3307* added test/ncurses.c which replaces several other programs and
3308  performs more testing.
3309[Thanks to Eric S Raymond for the last 4]
3310* more fixes to lib_overlay.c and added test/over.c to illustrate
3311  how it works.
3312* fixed ungetch() to take int instead of ch.
3313* fixes to cure wgetch() if flushinp() is called.
3314
3315One note I forgot to mention in 1.8.3 is that tracing is off by
3316default starting in the version. If you want tracing output, put
3317traceon(); in your code and link with -ldcurses.
3318
3319#### ncurses 1.8.2 -> ncurses 1.8.3 #### ####
3320MAJOR CHANGES:
33211) The order of capabilities has been changed in order to achieve
3322binary compatibility with SVR4 terminfo database. This has the
3323unfortunate effect of breaking application currently linked with
3324ncurses. To ensure correct behavior, recompile all such programs.
3325Most programs using color or newer capabilities will break, others
3326will probably continue to work ok.
3327
33282) Pavel Curtis has renounced his copyright to the public domain.
3329This means that his original sources (posted to comp.sources.unix,
3330volume 1) are now in the public domain.  The current sources are
3331NOT in the public domain, they are copyrighted by me.  I'm
3332entertaining ideas on what the new terms ncurses is released under.
3333
33343) Eric S. Raymond has supplied a complete set of man pages for
3335ncurses in ?roff format. They will eventually replace most of the
3336current docs. Both sets are included in this release.
3337
3338Other changes and notes from 1.8.2 include:
3339* SIGSEGV during scrolling no longer occurs.
3340* Other problems with scrolling and use of idl have been corrected.
3341* lib_getch.c has been re-written and should perform flawlessly.
3342  please use test/getch.c and any other programs to test this.
3343* ripoffline() is implemented (Thanks to Eric) and slk_ functions
3344  changed accordingly.
3345* I've added support for terminals that scroll if you write in the
3346  bottom-right corner.
3347* fixed more bugs in pads code. If anybody has a program that uses
3348  pads I'd love a copy.
3349* correct handling for terminal with back_color_erase capability
3350  (such as Linux console, and most PC terminals)
3351* ^Z handling apparently didn't work (I should never trust code
3352  sent me to me without extensive testing). It now seems to be
3353  fixed. Let me know if you have problems.
3354* I've added support for Apollo and NeXT, but it may still be
3355  incomplete, especially when dealing with the lack of POSIX
3356  features.
3357* scrolling should be more efficient on terminals with idl
3358  capabilities. Please see src/lib_scroll.c for more notes.
3359* The line drawing routines were offset by 1 at both ends. This
3360  is now fixed.
3361* added a few missing prototypes and macros (e.g. setterm())
3362* fixed code in src/lib_overlay.c which used to crash.
3363* added a few more programs in test/ The ones from the PDCurses
3364  package are useful, especially if you have SVR4 proper. I'm
3365  interested in the results you get on such a systems (Eric? ;-).
3366  They already exposed certain bugs in ncurses.
3367* See src/README for porting notes.
3368* The C++ code should really replace ncurses.h instead of working
3369  around it. It should avoid name-space clashes with nterm.h (use
3370  rows instead of lines, etc.)
3371* The C++ should compile ok. I've added explicit rules to the
3372  Makefile because no C++ defaults are documented on the suns.
3373* The docs say that echo() and nocbreak() are mutually exclusive.
3374  At the moment ncurses will switch to cbreak() if the case above
3375  occurs. Should it continue to do so? How about echo() and noraw()?
3376* PDCurses seem to assume that wclear() will use current attribute
3377  when clearing the screen. According to Eric this is not the case
3378  with SVR4.
3379* I have discovered, to my chagrin, SunOS 4.x (and probably other systems)
3380  * doesn't have vsscanf and God knows what else!  I've will do a vsscanf().
3381* I've also found out that the src/script.* rely on gawk and will not
3382  work with stock awk or even with nawk. Any changes are welcome.
3383* Linux is more tolerant of NULL dereferences than most systems. This
3384  fact was exposed by hanoi.
3385* ncurses still seems inefficient in drawing the screen on a serial
3386  link between Linux and suns. The padding may be the culprit.
3387* There seems to be one lingering problem with doupdate() after shelling
3388  out. Despite the fact the it is sending out the correct information
3389  to the terminal, nothing takes effect until you press ^L or another
3390  refresh takes place. And yes, output does get flushed.
3391
3392#### ncurses 1.8.1 -> ncurses 1.8.2 #### Nov 28, 1993 ####
3393
3394* added support for SVR4 and BSDI's BSD/386.
3395* major update and fix to scrolling routine.
3396* MORE fixes to stuff in lib_getch.c.
3397* cleaned-up configuration options and can now generate
3398	Config.* files through an awk script.
3399* changed setupterm() so it can be called more than once,
3400	add added set_curterm(), del_curterm().
3401* a few minor cleanups.
3402* added more prototypes in curses.h
3403
3404#### ncurses 1.8 -> ncurses 1.8.1 #### Nov 4, 1993 ####
3405
3406* added support for NeXTStep 3.0
3407* added termcap emulation (not well tested).
3408* more complete C++ interface to ncurses.
3409* fixed overlay(), overwrite(), and added copywin().
3410* a couple of bug fixes.
3411* a few code cleanups.
3412
3413#### ncurses 0.7.2/0.7.3 -> ncurses 1.8 #### Aug 31, 1993 ####
3414
3415* The annoying message "can't open file." was due to missing
3416  terminfo entry for the used terminal. It has now been
3417  replaced by a hopefully more helpful message.
3418* Problems with running on serial lines are now fixed.
3419* Added configuration files for SunOS, Linux, HP/UX, Ultrix,
3420  386bsd/BSDI (if you have others send'em to me)
3421* Cleaner Makefile.
3422* The documentation in manual.doc is now more uptodate.
3423* update optimization and support for hp terminals, and 386bsd
3424  console driver(s).
3425* mvcur optimization for terminals without cursor addressing
3426  (doesn't work on Linux)
3427* if cursor moved since last update, getch() will refresh the
3428  screen before working.
3429* getch() & alarm() can now live together. in 0.7.3 a signal
3430  interrupted getch() (bug or feature?) now the getch is
3431  restarted.
3432* scanw() et all were sick, now fixed.
3433* support for 8-bit input (use meta()).
3434* added default screen size to all terminfos.
3435* added c++ Ncursesw class.
3436* several minor bug fixes.
3437
3438#### ncurses 0.7.2 -> ncurses 0.7.3 #### May 27, 1993 ####
3439
3440* Config file to cope with different platforms (386BSD, BSDI, Ultrix, SunOS)
3441* more fixes to lib_getch.c
3442* changes related to Config
3443
3444#### ncurses 0.7 -> ncurses 0.7.2 #### May 22, 1993 ####
3445
3446* docs updated slightly (color usage is now documented).
3447* yet another fix for getch(), this one fixes problems with ESC being swallowed
3448  if another character is typed before the 1 second timeout.
3449* Hopefully, addstr() and addch() are 8-bit clean.
3450* fixed lib_tparm.c to use stdarg.h (should run on suns now)
3451* order of capabilities changed to reflect that specified in SYSV
3452  this will allow for binary-compatibility with existing terminfo dbs.
3453* added halfdelay()
3454* fixed problems with asc_init()
3455* added A_PROTECT and A_INVIS
3456* cleaned up vidputs()
3457* general cleanup of the code
3458* more attention to portability to other systems
3459* added terminfos for hp70092 (wont work until changes to lib_update.c are
3460  made) and 386BSD pcvt drivers.
3461
3462Thanks to Hellmuth Michaelis for his help.
3463optimization code is slated for the next major release, stay tuned!
3464
3465#### ncurses 0.6/0.61 -> ncurses 0.7 #### April 1, 1993
3466Please note that the next release will be called 1.8. If you want to know about
3467the rationale drop me a line.
3468
3469Included are several test programs in test/.
3470I've split up the panels library, reversi, tetris, sokoban. They are now
3471available separately from netcom.com:pub/zmbenhal/
3472
3473* color and ACS support is now fully compatible with SYSV at the terminfo
3474  level.
3475* Capabilities now includes as many SYSV caps I could find.
3476* tigetflag,tigetnum,tigetstr functions added.
3477* boolnames, boolfnames, boolcodes numnames, numfnames, numcodes,
3478  strnames, strfnames, strcodes arrays are now added.
3479* keyname() is added.
3480* All function keys can be defined in terminfo entries.
3481* fixed lin_tparm.c to behave properly.
3482* terminfo entries for vt* and xterm are included (improvements are welcome)
3483* more automation in handling caps and keys.
3484* included fixes from 0.6.1
3485* added a few more missing functions.
3486* fixed a couple of minor bugs.
3487* updated docs JUST a little (still miles behind in documenting the newer
3488	features).
3489
3490#### ncurses 0.6 -> ncurses 0.61 ####
3491
34921) Included the missing data/console.
3493
34942) allow attributes when drawing boxes.
3495
34963) corrected usage of win->_delay value.
3497
34984) fixed a bug in lib_getch.c. if it didn't recognize a sequence it would
3499	simply return the last character in the sequence. The correct
3500	behavior is to return the entire sequence one character at a time.
3501
3502#### ncurses0.5 -> ncurses0.6 #### March 1, 1993 ####
3503* removed _numchngd from struct _win_st and made appropriate changes.
3504* rewritten kgetch() to remove problems with interaction between alarm and
3505  read(). It caused SIGSEGV every now and then.
3506* fixed a bug that miscounted the numbers of columns when updating.
3507  (in lib_doupdate.c(ClrUpdate() -- iterate to columns not columns-1)
3508* fixed a bug that cause the lower-right corner to be incorrect.
3509  (in lib_doupdate.c(putChar() -- check against columns not columns-1)
3510* made resize() and cleanup() static to lib_newterm.c
3511* added notimeout().
3512* added timeout() define in curses.h
3513* added more function prototypes and fixed napms.
3514* added use_env().
3515* moved screen size detection to lib_setup.c.
3516* fixed newterm() to confirm to prototype.
3517* removed SIGWINCH support as SYSV does not define its semantics.
3518* cleaned-up lib_touch.c
3519* added waddnstr() and relatives.
3520* added slk_* support.
3521* fixed a bug in wdeleteln().
3522* added PANEL library.
3523* modified Makefile for smoother installation.
3524* terminfo.h is really term.h
3525
3526#### ncurses 0.4 -> ncurses 0.5 #### Feb 14, 1993 ####
3527* changed _win_st structure to allow support for missing functionality.
3528* Addition of terminfo support for all KEY_*.
3529* Support for nodelay(), timeout(), notimeout().
3530* fixed a bug with the keypad char reading that did not return ESC until
3531  another key is pressed.
3532* nl mapping no longer occur on output (as should be)
3533  fixed bug '\n' no causing a LF.
3534* fixed bug that reset terminal colors regardless of whether we use color
3535  or not.
3536* Better support for ACS (not quite complete).
3537* fixed bug in wvline().
3538* added curs_set().
3539* changed from signal() to sigaction().
3540* re-included the contents of important.patch into source.
3541
3542#### ncurses 0.3 -> ncurses 0.4 #### Feb 3, 1993 ####
3543* Addition of more KEY_* definitions.
3544* Addition of function prototypes.
3545* Addition of several missing functions.
3546* No more crashes if screen size is undefined (use SIGWINCH handler).
3547* added a handler to cleanup after SIGSEGV (hopefully never needed).
3548* changed SRCDIR from /etc/term to /usr/lib/terminfo.
3549* renamed compile/dump to tic/untic.
3550* New scrolling code.
3551* fixed bug that reversed the sense of nl() and nonl().
3552
3553#### ncurses 0.2 -> ncurses 0.3  #### Jan 20, 1993 ####
3554* more support for color and graphics see test/ for examples.
3555* fixed various files to allow correct update after shelling out.
3556* more fixes for updates.
3557* no more core dumps if you don't have a terminfo entry.
3558* support for LINES and COLUMNS environment variables.
3559* support for SIGWINCH signal.
3560* added a handler for SIGINT for clean exits.
3561
3562#### ncurses 0.1 -> ncurses 0.2 #### Aug 14, 1992 ####
3563* support for color.
3564* support for PC graphic characters.
3565* lib_trace.c updated to use stdarg.h and vprintf routines.
3566* added gdc.c (Great Digital Clock) as an example of using color.
3567
3568#### ncurses -> ncurses 0.1 #### Jul 31, 1992 ####
3569* replacing sgtty stuff by termios stuff.
3570* ANSIfication of some functions.
3571* Disabling cost analysis 'cause it's incorrect.
3572* A quick hack for a terminfo entry.
3573