View Issue Details

IDProjectCategoryView StatusLast Update
00009011003.1(2013)/Issue7+TC1Shell and Utilitiespublic2022-05-12 16:28
Reporterrhansen Assigned To 
PrioritynormalSeverityEditorialTypeEnhancement Request
Status ClosedResolutionRejected 
NameRichard Hansen
OrganizationBBN
User Reference
Section2.14 'set' special built-in
Page Number2382
Line Number75879-75902
Interp Status---
Final Accepted Text
Summary0000901: reserve _POSIX* shell option namespace for future use
DescriptionAs a step towards supporting new shell features in a backward-compatible way, I would like to reserve the _POSIX* shell option (set +o) namespace.

See http://thread.gmane.org/gmane.comp.standards.posix.austin.general/9907 for discussion.

Note: Zsh currently ignores case and underscores when processing shell option names. It already defines several POSIX* shell options, which means that these existing Zsh shell options are already inside the _POSIX* namespace. As far as I can tell, it is uncommon for Zsh scripts to use a leading underscore when setting/testing POSIX* options, so I do not believe it would be an unreasonable burden for Zsh to special-case shell option names beginning with _POSIX (i.e., interpret _POSIX_foo as distinct from POSIX_foo, _posix_foo, _POSIX_foo_, and _POSIX_FOO).
Desired ActionAfter page 2382 line 75902 (XCU 2.14 description of 'set'), insert a new paragraph associated with the '-o option' item:
    
All other values of option beginning with _POSIX are reserved for use by POSIX.1-2008 and other POSIX standards.
TagsNo tags attached.

Relationships

related to 0000854 Closed requirement for additional built-in utilities to be searched for via $PATH was not and is not existing practice 
related to 0001071 Closed Name space reservation should move to XBD 
related to 0000935 Closed warn users away from naming functions after traditional built-ins 

Activities

joerg

2014-12-23 11:45

reporter   bugnote:0002511

Here is the list of built-in utilities from various shells that
have been collected on the Etherpad while discussing Bugid: #854

Reserve these names (in bug 901?):

    alloc
    autoload
    bind
    bindkey
    builtin
    bye
    caller
    cap
    chdir (alias for cd)
    clone
    comp* (anything begining with comp) - but not compress? NO: use the explicit list:

    comparguments
    compcall
    compctl
    compdescribe
    compfiles
    compgen
    compgroups
    complete
    compquote
    comptags
    comptry
    compvalues
    declare
    dirs
    disable
    disown
    dosh
    echotc
    echoti

    help Note that "help" is part of the SCCS utilities on a historic UNIX system

    history? hist?
    let
    local
    login
    logout
    map
    mapfile
    pushd
    popd
    print
    readarray
    repeat
    savehistory
    source (already reserved?)
    shopt
    stop
    suspend (needs to be intrinsic)
    times
    typeset
    whence

rhansen

2015-04-09 15:19

manager   bugnote:0002612

0000935 was filed to reserve the names in 0000901:0002511

geoffclare

2018-01-05 10:21

manager   bugnote:0003909

Given that 0001071 has been accepted, the change requested here is probably not needed. However, I think we should keep this bug open as a fall-back option in case there are objections to 1071 at some point down the line.

kre

2018-05-09 11:51

reporter   bugnote:0004024

See note 4023 (attached to issue 1071) for an explanation why reserving namespaces
is never the right solution. Whether 1071 is finally included in issue8 or not, this
should be rejected.

kre

2018-05-09 11:58

reporter   bugnote:0004025

In addition to the list in note 2511 there are also (that I know of)

exp (more or less the same thing as let)
fdflags (manipulate the fcntl type flags on a fd, incl close-on-exec, but also append, ...)
inputrc (define file for input mappings for line editing)
jobid (converts between % job notation and process ids)
wordexp (glob code access for libc - kind of like fnmatch() but using sh to do the work)

Issue History

Date Modified Username Field Change
2014-12-04 18:56 rhansen New Issue
2014-12-04 18:56 rhansen Name => Richard Hansen
2014-12-04 18:56 rhansen Organization => BBN
2014-12-04 18:56 rhansen Section => 2.14 'set' special built-in
2014-12-04 18:56 rhansen Page Number => 2382
2014-12-04 18:56 rhansen Line Number => 75879-75902
2014-12-04 18:56 rhansen Interp Status => ---
2014-12-04 18:58 rhansen Desired Action Updated
2014-12-11 16:21 nick Relationship added related to 0000854
2014-12-23 11:45 joerg Note Added: 0002511
2015-04-09 15:17 rhansen Relationship added related to 0000935
2015-04-09 15:19 rhansen Note Added: 0002612
2018-01-04 17:23 nick Relationship added related to 0001071
2018-01-05 10:21 geoffclare Note Added: 0003909
2018-05-09 11:51 kre Note Added: 0004024
2018-05-09 11:58 kre Note Added: 0004025
2022-05-12 16:28 geoffclare Status New => Closed
2022-05-12 16:28 geoffclare Resolution Open => Rejected