New draft (#7) of SRFI 170: POSIX API Arthur A. Gleckler (07 Oct 2019 15:08 UTC)
Re: New draft (#7) of SRFI 170: POSIX API John Cowan (07 Oct 2019 16:06 UTC)

New draft (#7) of SRFI 170: POSIX API Arthur A. Gleckler 07 Oct 2019 15:07 UTC

I've just published draft #7 of SRFI
170.  It was submitted by John Cowan,
coauthor/co-editor of the SRFI.

  <https://srfi.schemers.org/srfi-170/>

Please note that Harold Ancell is now
coauthor/co-editor of this SRFI.  Thank
you very much, Harold.

Here are John's comments on the draft:

  Please make this a new draft, as there
  are a *lot* of changes, notably the
  removal of error handling and
  subprocess sections to their own
  future SRFIs.

  There are also many other changes.

Here is the commit summary:

  - file-info-special? -> POSIX
    file-info-block-/character-special?
  - scsh file-info masks mode field to
    bottom three bytes
  - make arg names of
    create-hard-link/-symlink same as
    rename-file
  - Add chase? to set-file-owner/-group,
    note scsh doesn't do it
  - addind port as option to
    set-file-timespecs, it's trivial
  - added port as option to
    set-file-timespecs, it's trivial
  - added chase? as option to
    set-file-timespecs, it's trivial
  - added process-object/pid optional arg
    to process-group, it's trivial
  - Make delta for nice optional, explain
    defaults, proc->process-group
  - oops, it's process-object, not
    process-group
  - improved user-login-name through
    user-supplementary-gids explanation
  - normal order for effective id
    procedures, fixed error in set-*
  - description improvement for
    user-login-name through set-gid
  - more details about set-uid and
    set-gid, relevant to exec functions
  - added
    set-user-real-and-effective-uid/-gid,
    and much explaination
  - added Chibi Scheme implementation,
    scsh doesn't do new -and- procs
  - Added compiler versions to the Chibi
    Scheme implementation sentence
  - scsh does not impliment
    current-timezone and current-locale
  - clarify that signal-process/-group
    take process *objects* (or ints)
  - process ids < 1 have special meanings,
    please consult a reference
  - specify what directory-files returns
    if not handed a directory, '()
  - open-/read-/close-directory is a dumb
    wrapper that returns . and ..
  - Remove section 3.11 Environment
    variables and its exec-path-list
  - Clarify set-file-timespecs optional
    arguments and modify-time name
  - HTML quote abbrev cleanup
  - major cleanup and correction of
    open/read/close-directory
  - read-directory returns #f ->
    eof-object to be generator friendly
  - correct optional argument
    specification for directory-files
  - weaken file-info claim,
    directory-files will not return '()
  - updated set-file-timespecs
  - more fixups for coming SRFI on
    timespecs
  - move real-path so it doesn't get
    overlooked
  - increase clarity of what deletes what
    in override?
  - scsh difference improvement, and
    remove file-info-symlink?
  - remove all symbolic link awareness and
    handling except real-path
  - set-file-mode permission bits -> mode
    bits
  - delete set*id foot guns
  - of course it does when chasing....
  - remove file-info-*? predicates for
    types we aren't supporting
  - remove port argument from
    set-file-mode/-owner/-group/-timespecs
  - remove processes proceedures from spec
  - clean up Implementation section to
    match recent changes
  - Per John and Lassi, add myself (hga)
    to the list of authors
  - removed user-login-name, and section
    3.8 System parameters
  - remove group-info:members
  - clean up Implementation section
  - create more space on definition lines
    to add POSIX calls
  - add POSIX calls to definition lines,
    placeholders for with- ttys
  - add list of canonical POSIX calls that
    can EINTR
  - try to make it clear that dynamic-wind
    is magical, not our use of it
  - Chibi Scheme's user and group database
    access procedures fixed
  - first cut improving with- and without-
    procedure explainations, etc.
  - Added ppid and pgid,
    user-info:full-name and
    user-info:parsed-full-name, editorial
    improvements on terminals
  - fixed transposition of pid and
    parent-pid POSIX calls
  - added read-string as valid in raw mode
  - with-raw/rare-mode must be handed both
    an input and output port
  - added stty equivalents for
    with-rare-mode and without-echo
  - with/without- tty procedures now take
    a proc with port args
  - improve with/without- return
    information, other improvements
  - add Windows caveat for top set of
    user-info record fields
  - don't make user of without-echo guess
    as to correct input-port
  - editorial changes
  - Added back symlink, read-symlink, and
    file-info-symlink?; renamed tty? to
    terminal?
  - Fix broken anchors.
  - user-info:parsed-full-name titlecased
  -> capitalize if ASCII
  - remove errant [override?] argument
    from read-symlink
  - chase->follow, and return that as a
    non-optional flag to file-info
  - added user-effective-uid and
    user-effective-gid
  - POSIX realpath is simple to trivial,
    readlink is not
  - added make-directory-files-generator,
    clean up obsolete gecos note
  - fix some cut and paster errors in
    make-directory-files-generator
  - correct optional argument conventions
    for create-directory/-fifo
  - add when terminal? will raise an error
    vs. return #f
  - Chibi implementation of
    call-with-temporary-filename unfinished
  - initial versions
  - lots more details
  - small improvements and spell checking
  - added 0.8.0 Makefile and lib-tests.scm
  - improvements and additions from
    testing
  - add the example implementation files
  - Use DTD for HTML5.
  - add mention of Chibi Scheme example
    implementation in its directory
  - changed error system to return
    procedure name, not procedure
  - user-info:parsed-full-name titlecased
    -> capitalize if ASCII
  - remove errant [override?] argument
    from read-symlink
  - chase->follow, and return that as a
    non-optional flag to file-info
  - added user-effective-uid and
    user-effective-gid
  - POSIX realpath is simple to trivial,
    readlink is not
  - added make-directory-files-generator,
    clean up obsolete gecos note
  - fix some cut and paster errors in
    make-directory-files-generator
  - correct optional argument conventions
    for create-directory/-fifo
  - add when terminal? will raise an error
    vs. return #f
  - Chibi implementation of
    call-with-temporary-filename unfinished
  - add mention of Chibi Scheme example
    implementation in its directory
  - removed 3.1 Errors
  - restored headers
  - Publish seventh draft.

Here's the diff:

  <https://github.com/scheme-requests-for-implementation/srfi-170/compare/66bef82..e642826>

Regards,

SRFI Editor