X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=announce.html.in;h=9889ef1bfb6c6ac9dea91cd2e517403d0a4c5a06;hb=HEAD;hp=378f6f80b012306a993e9f59a3b37b69f380862e;hpb=d66080c21038ad4feb2e41a0c4e517d5b4a03ab2;p=ncurses.git diff --git a/announce.html.in b/announce.html.in index 378f6f80..9889ef1b 100644 --- a/announce.html.in +++ b/announce.html.in @@ -1,7 +1,7 @@ - - + "HTML Tidy for HTML5 for Linux version 5.6.0"> Announcing ncurses @VERSION@ - + -

Announcing ncurses @VERSION@

@@ -81,7 +82,7 @@ p,li { max-width:700px; } (aside from some embedded applications).
  • It is used as the system curses library on OpenBSD, FreeBSD - and OSX.
  • + and MacOS.
  • It is used in environments such as Cygwin and MinGW. The first of these was EMX on OS/2 Warp.
  • @@ -99,2247 +100,994 @@ p,li { max-width:700px; } including

    Full manual pages are provided for the library and tools.

    The ncurses distribution is available at ncurses' homepage:

    + "@HOMEPAGE@/">homepage:

    ftp://ftp.invisible-island.net/ncurses/ + "https://invisible-island.net/archives/ncurses/">https://invisible-island.net/archives/ncurses/ or
    https://invisible-mirror.net/archives/ncurses/ .

    -

    It is also available via anonymous FTP at the GNU distribution - site

    +

    It is also available at the GNU distribution site

    ftp://ftp.gnu.org/gnu/ncurses/ .

    + "https://ftp.gnu.org/gnu/ncurses/">https://ftp.gnu.org/gnu/ncurses/ .

    Release Notes

    These notes are for ncurses - @VERSION@, released January 27, 2018.

    + @VERSION@, released April 27, 2024.

    This release is designed to be source-compatible with - ncurses 5.0 through 6.0; providing + ncurses 5.0 through 6.4; providing extensions to the application binary interface (ABI). Although the source can still be configured to support the ncurses 5 ABI, the intent of the release is to - provide extensions to the ncurses - 6 ABI:

    - - + "main-name">ncurses 5 ABI, the reason for the release is + to reflect improvements to the ncurses 6 ABI and the supporting utility + programs.

    There are, of course, numerous other improvements, listed in this announcement.

    -

    The release notes also mention some bug-fixes, but are focused +

    The most important + bug-fixes/improvements dealt with robustness issues. The + release notes also mention some other bug-fixes, but are focused on new features and improvements to existing features since - ncurses 6.0 release.

    + ncurses 6.4 release.

    -

    Library - improvements

    +

    Library improvements

    -

    New - features

    +

    New features

    -

    The improved integration of tput and tset - made only small changes to the libraries. However, supporting - extended numeric capabilities required a few changes:

    +

    These are new features:

    - -

    The motivation for making this extension came from noticing - that - termcap applications could (though not - realistically) use larger numbers than would fit in 16-bits, - and the fact that the number of color pairs for a 256-color xterm - could not be expressed in terminfo (i.e., 32767 versus 65536). - Also, a few terminals support direct-colors, which could use the - extension.

    - -

    Generally speaking, applications that use internal details of - a library are unsupported. There was exactly one exception for - ncurses: the tack program used the internal - details of TERMINAL, because it provides an - ncurses-specific feature for interactively modifying a terminfo - description and writing the updated description to a text-file. - It was possible to not only separate tack from these internal - details of ncurses, but to - generalize it so that the program works with Unix curses - (omitting the ncurses-specific feature). That was released as - - tack 1.08 in July - 2017.

    - -

    While making changes to tack to - eliminate its dependency upon ncurses internals, the publicly-visible - details of those internals were reviewed, and some symbols were - moved to private header files, while others were marked - explicitly as ncurses internals. - Future releases of ncurses may - eliminate some of those symbols (such as those used by - tack 1.07) because they are - neither part of the API or the ABI.

    - -

    Using the TERMTYPE2 extended numeric - capabilities, it is possible to support both color pair values - and color values past 32767. Taking compatibility into account, - developers readily understand that neither function signatures - nor structure offsets change. Also, existing functions have to - operate with the extended numbers. Most of that work is internal - to the library. For the external interfaces, a hybrid approach - was used:

    +

    The ncurses library supports a compile-time feature + (enabled with the configure --enable-check-size + option) which simplifies initialization with terminals which + do not negotiate window (screen) size. This is done in + setupterm, by providing for using ANSI + cursor-position report (in user6/user7 terminfo capabilities) + to obtain the screen size if neither environment variables or + ioctl is used.

    - -

    Additionally, to improve performance other changes (and - extensions) are provided in this release:

    - - +

    This release drops compatibility with obsolete versions of + tack, e.g., pre-1.08

    Other improvements

    -

    These are new or revised features:

    - - - -

    These were done to limit or ultimately deprecate features:

    - - -

    These are improvements to existing features:

  • -

    remove an early-return from _nc_do_color, - which can interfere with data needed by bkgd - when ncurses is configured - with extended colors

    +

    improve check in lib_tparm.c, ensuring that a + char* fits into a TPARM_ARG

  • -

    incorporate A_COLOR mask into - COLOR_PAIR, in case user application provides an - out-of-range pair number

    +

    modify _nc_syserr_abort to use + _nc_env_access, rather than only checking root + uid

  • -

    modify logic for endwin-state to be able to - detect the case where the screen was never initialized, using - that to trigger a flush of ncurses' buffer for mvcur, - e.g., in the sample program dots_mvcur for the term-driver - configuration.

    +

    improve thread lock in lib_trace.c

  • - -

    These are corrections to existing features:

    - - -
  • -

    double-width multibyte characters were not counted - properly in winsnstr and - wins_nwstr.

    -
  • +

    These are corrections to existing features:

    +

    Program improvements

    -

    While reviewing user feedback, it became apparent that the - differences between - reset (an alias for - tset) and “tput reset” were confusing:

    - - - -

    On further investigation, it turned out that the differences - were largely an accident due to the way those programs had - evolved.

    - -

    This release eliminates the unnecessary differences, using the - same approach for tput's - init (initialization), reset and clear - operations as the separate - reset and - clear programs. Doing this does not change the - command-line options; existing scripts are unaffected.

    - -

    These are the user-visible changes for the three programs - (tput, tset and clear):

    +

    Several improvements were made to the + utility programs. Some were done to make the infocmp + option “-u” option help refactor the + terminal database.

    - +

    Examples

    -

    Other less-visible improvements and new features include:

    +

    Along with the library and utilities, improvements were made + to the ncurses-examples:

    -

    Several of the less apparent features deal with translation of - terminfo to termcap (and the reverse), with corresponding checks - by tic:

    - - +
    --enable-check-size +
    + +
    +

    Compile-in feature to detect screensize for terminals + which do not advertise their screensize, e.g., serial + terminals.

    +
    + +
    --with-abi-altered=NUM +
    + +
    +

    Override the displayed (rather than compiled-in) ABI. Only + packagers who have created configurations where the ABI + differs from ncurses should be interested in this option.

    +
    + +
    --with-strip-program=XXX +
    + +
    +

    When stripping executables during install, use the + specified program rather than “strip” overriding + program chosen by the install program for stripping + executables.

    +
    + + +

    These configure options are modified:

    + +
    +
    --with-pkg-config-libdir[=DIR] +
    + +
    +

    The optional DIR parameter can now be + “auto” to automatically use pkg-config's library + directory.

    + +

    The default is $(libdir).

    +
    + +
    --with-xterm-kbs[=XXX] +
    + +
    +

    The default is “auto” which tells the + configure script to choose BS or DEL according to platform + defaults.

    +
    +
    -

    Portability

    +

    Portability

    Many of the portability changes are implemented via the configure script:

    -
  • -

    fixes for OS/2:

    - - + +

    Features of @@ -2355,30 +1103,31 @@ p,li { max-width:700px; }

  • -

    ncurses supports all of the - for SVr4 curses features including keyboard mapping, color, - forms-drawing with ACS characters, and automatic recognition +

    ncurses supports the + features of SVr4 curses including keyboard mapping, color, + form drawing with ACS characters, and automatic recognition of keypad and function keys.

  • -

    ncurses provides these SVr4 - add-on libraries (not part of X/Open Curses):

    +

    ncurses provides work-alike + replacements of SVr4 supplemental libraries based on curses, + but which were not specified by X/Open Curses:

  • @@ -2390,7 +1139,7 @@ p,li { max-width:700px; } @@ -2422,11 +1171,11 @@ p,li { max-width:700px; }
    @@ -2580,14 +1351,15 @@ p,li { max-width:700px; }

    The ncurses distribution includes a selection of test programs (including a few games). These are available separately as ncurses-examples

    + "@HOMEPAGE@/ncurses-examples.html">ncurses-examples

    The ncurses library has been tested with a wide variety of applications including:

    -
    aptitude
    +
    aptitude +

    FrontEnd to Apt, the debian package manager

    @@ -2596,37 +1368,38 @@ p,li { max-width:700px; } "https://wiki.debian.org/Aptitude">https://wiki.debian.org/Aptitude

    -
    cdk
    +
    cdk +

    Curses Development Kit

    -

    https://invisible-island.net/cdk/
    +

    @WEBSITE@/cdk/

    -
    ded
    +
    ded +

    directory-editor

    -

    https://invisible-island.net/ded/

    +

    @WEBSITE@/ded/

    -
    dialog
    +
    dialog +

    the underlying application used in Slackware's setup, and the basis for similar install/configure applications on many systems.

    -

    https://invisible-island.net/dialog/

    +

    @WEBSITE@/dialog/

    -
    lynx
    +
    lynx +

    the text WWW browser

    @@ -2635,16 +1408,17 @@ p,li { max-width:700px; } "https://lynx.invisible-island.net/">https://lynx.invisible-island.net/

    -
    mutt
    +
    mutt +

    mail utility

    -

    http://www.mutt.org/

    +

    http://www.mutt.org/

    -
    ncftp
    +
    ncftp +

    file-transfer utility

    @@ -2653,17 +1427,21 @@ p,li { max-width:700px; } "https://www.ncftp.com/">https://www.ncftp.com/

    -
    nvi
    +
    nvi +

    New vi uses ncurses.

    https://sites.google.com/a/bostic.com/keithbostic/vi
    + "https://sites.google.com/a/bostic.com/keithbostic/the-berkeley-vi-editor-home-page"> + https://sites.google.com/a/bostic.com/keithbostic/the-berkeley-vi-editor-home-page
    +

    -
    ranger
    +
    ranger +

    A console file manager with VI key bindings in @@ -2673,16 +1451,17 @@ p,li { max-width:700px; } "https://ranger.github.io/">https://ranger.github.io/

    -
    tin
    +
    tin +

    newsreader, supporting color, MIME

    -

    http://www.tin.org/

    +

    http://www.tin.org/

    -
    vifm
    +
    vifm +

    File manager with vi like keybindings

    @@ -2697,34 +1476,36 @@ p,li { max-width:700px; }
    -
    minicom
    +
    minicom +

    terminal emulator for serial modem connections

    https://alioth.debian.org/projects/minicom/

    + "https://salsa.debian.org/minicom-team/minicom">https://salsa.debian.org/minicom-team/minicom

    -
    mosh
    +
    mosh +

    a replacement for ssh.

    -

    https://mosh.mit.edu/

    +

    https://mosh.org/

    -
    tack
    +
    tack +

    terminfo action checker

    -

    https://invisible-island.net/ncurses/tack.html

    +

    @HOMEPAGE@/tack.html

    -
    tmux
    +
    tmux +

    terminal multiplexor

    @@ -2733,14 +1514,14 @@ p,li { max-width:700px; } "https://github.com/tmux/tmux/wiki">https://github.com/tmux/tmux/wiki

    -
    vile
    +
    vile +
    -

    vi-like-emacs may be built to use the terminfo, termcap - or curses interfaces.

    +

    vi-like-emacs may be built to use the terminfo, + termcap or curses interfaces.

    -

    https://invisible-island.net/vile/

    +

    @WEBSITE@/vile/

    @@ -2749,7 +1530,8 @@ p,li { max-width:700px; }
    -
    emacs
    +
    emacs +

    text editor

    @@ -2758,7 +1540,8 @@ p,li { max-width:700px; } "https://www.gnu.org/software/emacs/">https://www.gnu.org/software/emacs/

    -
    less
    +
    less +

    The most commonly used pager (a program that @@ -2768,7 +1551,8 @@ p,li { max-width:700px; } "http://www.greenwoodsoftware.com/less/">http://www.greenwoodsoftware.com/less/

    -
    screen
    +
    screen +

    terminal multiplexor

    @@ -2777,13 +1561,13 @@ p,li { max-width:700px; } "https://www.gnu.org/software/screen/">https://www.gnu.org/software/screen/

    -
    vim
    +
    vim +

    text editor

    -

    https://www.vim.org/

    +

    https://www.vim.org/

    @@ -2794,12 +1578,18 @@ p,li { max-width:700px; }

    Zeyd Ben-Halim started ncurses from a previous package pcurses, written by Pavel Curtis. Eric S. Raymond continued development. Jürgen Pfeifer wrote most of - the form and menu libraries. Ongoing development work is done by - Thomas Dickey. - Thomas Dickey also acts as the maintainer for the Free Software - Foundation, which holds the copyright - on ncurses.

    + the form and menu libraries.

    + +

    Ongoing development work is done by Thomas E. Dickey. Thomas + E. Dickey has acted as the maintainer for the Free Software + Foundation, which held a copyright on ncurses for + releases 4.2 through 6.1. Following the release of ncurses 6.1, + effective as of release 6.2, copyright for ncurses reverted to + Thomas E. Dickey (see the ncurses FAQ for + additional information).

    Contact the current maintainers at

    @@ -2812,8 +1602,8 @@ p,li { max-width:700px; }
    bug-ncurses-request@gnu.org -
    containing the line: - +
    + containing the line:

    subscribe <name>@<host.domain>

    @@ -2822,24 +1612,32 @@ p,li { max-width:700px; }

    This list is open to anyone interested in helping with the development and testing of this package.

    -

    Beta versions of ncurses and - patches to the current release are made available at

    +

    Beta versions of ncurses are + made available at

    ftp://ftp.invisible-island.net/ncurses/ + "https://invisible-island.net/archives/ncurses/current/">https://invisible-island.net/archives/ncurses/current/ and
    https://invisible-mirror.net/archives/ncurses/ .

    + "https://invisible-mirror.net/archives/ncurses/current/">https://invisible-mirror.net/archives/ncurses/current/ .

    +
    + +

    Patches to the current release are made available at

    + +
    +

    https://invisible-island.net/archives/ncurses/6.4/ + and
    + https://invisible-mirror.net/archives/ncurses/6.4/ .

    There is an archive of the mailing list here:

    http://lists.gnu.org/archive/html/bug-ncurses - (also https)

    + "https://lists.gnu.org/archive/html/bug-ncurses">https://lists.gnu.org/archive/html/bug-ncurses .

    Related @@ -2849,30 +1647,28 @@ p,li { max-width:700px; } which may be interesting by themselves:

    Other @@ -2883,13 +1679,17 @@ p,li { max-width:700px; } Eric Raymond . Unlike the older version, the termcap and terminfo data are provided in the same file, which also provides - several user-definable extensions beyond the X/Open + several user-definable extensions beyond the X/Open Curses specification.

    You can find lots of information on terminal-related topics - not covered in the terminfo file at - Richard Shuford's archive .

    + not covered in the terminfo file in Richard Shuford's + archive (original). + The collection of computer manuals at bitsavers.org has also been + useful.