• [ANN] KornShell 93u+m/1.0.0-rc.1

    From Martijn Dekker@21:1/5 to All on Mon Jul 25 04:33:58 2022
    XPost: comp.unix.shell, de.comp.os.unix.shell

    Announcing: KornShell 93u+m 1.0.0-rc.1
    Readme: https://github.com/ksh93/ksh/tree/1.0#readme
    Get it: https://github.com/ksh93/ksh/releases/tag/v1.0.0-rc.1

    We're nearly there!

    I intend to release ksh 93u+m/1.0.0 on 2022-08-01, precisely ten years
    after the last canonical 93u+ release.

    We have a week until then, so here's a release candidate. Please try to
    break it. I particularly want to hear about any compatibility problems
    with existing scripts. Help fixing known bugs is also very much wanted.

    CONTRIBUTORS

    Main developers: Martijn Dekker, Johnothan King, hyenias

    Direct contributors: Andy Fiddaman, Anuradha Weeraman, atheik, Chase,
    Finnbarr P. Murphy, George Lijo, Govind Kamat, Harald van Dijk, Lev
    Kujawski, Marc Wilson, Ryan Schmidt, Sterling Jensen, Trey Valenta, vmihalko

    All applicable third-party OS distribution patches from OpenSUSE, Red
    Hat and Solaris have been merged. These are detailed and acknowledged
    here:
    https://github.com/ksh93/ksh/wiki#upstreamed-third-party-ksh-93u-patches

    Many fixes have also been backported from the AT&T 93v- beta as well as
    the former ksh2020 project lead by Kurtis Rader and Siteshwar Vashisht;
    we appreciate and benefit from their work. Many thanks also to Siteshwar
    for graciously donating his 'ksh93' GitHub organisation account!

    HOW TO GET IT

    Please download the source code tarball from our GitHub releases page:
    https://github.com/ksh93/ksh/releases
    To build, follow the instructions in README.md or src/cmd/ksh93/README.

    HOW TO GET INVOLVED

    To report a bug, please open an issue at our GitHub page (see above). Alternatively, email me at martijn@inlv.org with your report. To get
    involved in development, read the brief policy information in README.md
    and then jump right in with a pull request or email a patch. See the
    TODO file in the top-level directory for a to-do list.

    ### MAIN CHANGES between 1.0.0-beta.2 and 1.0.0-rc.1 ###

    New features in built-in commands:

    - Two bash-like flags for 'whence' were backported from ksh 93v-:
    - 'whence -P/type -P' is an alias to the existing -p flag.
    - 'whence -t/type -t' will print only the type of a command in a simple
    format that is designed to be easy to use for scripts. Example:
    $ type -t typeset; whence -t sh
    builtin
    file

    - Added three options to the ulimit builtin with the same names and
    functionality as in Bash:
    - 'ulimit -k' sets the maximum number of kqueues.
    - 'ulimit -P' sets the maximum number of pseudo-terminals.
    - 'ulimit -R' sets the maximum time in microseconds a real-time process
    can run before blocking.
    Note that to use these options the operating system must support the
    corresponding resource limit.

    - 'typeset' has a new '-g' flag that forces variables to be created or
    modified at the global scope regardless of context, as on bash 4.2+.

    New command line editor features:

    - Various keys on extended PC keyboards are now handled as expected in the
    emacs and vi built-in line editors: Ctrl or Alt + left or right arrow (go
    back or forward one word), Ctrl+G (cancel reverse search), Ctrl+Delete
    (delete next word). In addition, the Insert key now escapes the next
    character in emacs and enters insert mode in vi, and the arrow keys are
    recognized on more terminals.

    New features in shell options:

    - A new --functrace long-form shell option causes the -x/--xtrace option's
    state and the DEBUG trap action to be inherited by function scopes
    instead
    of being reset to default. Changes made to them within a function scope
    still do not propagate back to the parent scope. Similarly, this option
    also causes the DEBUG trap action to be inherited by subshells.

    - The new --histreedit and --histverify options modify history expansion
    (--histexpand). If --histreedit is on and a history expansion fails, the
    command line is reloaded into the next prompt's edit buffer, allowing
    corrections. If --histverify is on, the results of a history
    expansion are
    not immediately executed but instead loaded into the next prompt's edit
    buffer, allowing further changes.

    - When the -b/--notify shell option is on and the vi or emacs/gmacs shell
    line editor is in use, 'Done' and similar notifications from completed
    background jobs are now inserted directly above the line you're typing,
    without affecting your command line display.


    --
    || modernish -- harness the shell
    || https://github.com/modernish/modernish
    ||
    || KornShell lives!
    || https://github.com/ksh93/ksh

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)