112-07-25 pathprobe.c: fix read() loop to handle EINTR
212-06-28 vmalloc/malloc.c: use sbrk() unless VMALLOC_OPTIONS=mmap or asoinit(0,0,0)!=0 (workaround until next malloc update)
312-06-28 aso/aso.c: asoinit(0,0,0): 0: no specific init, 1: app initialized
412-06-27 sfio/sfvprintf.c: allow { L* z* } aliases for I* -- posix will probably pick one
512-06-26 regex/regnexec.c: fix uninitialized variable reference
612-06-26 comp/setlocale.c: utf8_wctomb() now calls (the corrrect) wc2utf8()
712-06-25 string/chresc.c: accept \u[U+<hex>] and \u{U+<hex>}
812-06-24 regex/regcomp.c: mb [^...] must be marked "complicated"
912-06-20 port/astconf.c: increase DEBUG_astconf error debug levels (may leach into rt output)
1012-06-18 sfio/_sfopen.c: add 'e' => O_CLOEXEC
1112-06-18 features/fcntl.c: add #define O_CLOEXEC 0 if not defined
1212-06-13 features/float: handle __mips c99 peculiarities
1312-06-13 features/standards: handle __MACH__ posix peculiarities
1412-06-08 sfio/sfclose.c,sfmode.c: sfclose() for sfopopen() stream returns sh-compatible $?
1512-06-08 comp/strtold.c: fix header botch that missed ldexpl() prototype -- ouch
1612-06-06 misc/proclib.h: partially undo <ast_standards.h> for leaked ancient bsd-isms
1712-05-31 misc/proclib.h: <ast_standards.h> for linux undefined struct mmsghdr*
1812-05-31 error.h: add ERROR_PIPE(errno) to handle EPIPE and ECONNRESET
1912-05-31 Makefile: don't install $(INCLUDEDIR)/prototyped.h: src/cmd/INIT does it
2012-05-31 regcomp.c: add (?V...) ~(V...) REG_REGEXP switch
2112-05-28 regex: regoff_t in => ssize_t via api 20120528
2212-05-21 features/asometh: split intrinsic and method tests so code only instantiated in aso.c
2312-05-21 comp/strdup.c: use oldof() since mem overwritten by string copy
2412-05-18 misc/stk.c: fix access of moved realloc() data
2512-05-15 misc/optget.c: #? option with no value should have opt_info.num==0
2612-05-11 misc/stk.c: fix memmove() read of 1 uninitialized byte
2712-05-11 regex/regcoll.c: avoid memcpy() to self
2812-05-01 port/astconf.c: fix astconflist() to list standard minmax value if defined
2912-04-26 sfio/sftmp.c: fix memory leak due to inadvertent SF_STATIC copy
3012-04-26 sfio/sfwrite.c: fix subtle memory leak (with Vmlast or Vmpool or freeBSD malloc)
3112-04-26 vmalloc/vmbest.c: SIGSEGV overcommit check for __linux__ only
3212-04-25 vmalloc: add _vmfd() for private close-on-exec fds
3312-04-23 sfio_t.h: change getr to 32 bits to prepare for UTF-8 delimiters
3412-04-23 features/signal.c: add SIGSTKFLT
3512-04-17 regex/regcomp.c: fix (E:...) vs (E)... scoping
3612-04-11 features/sys: add aix's _LARGE_FILE_API to the _LARGEFILE(64)?_SOURCE mix -- anyone else?
3712-04-11 include/cmdarg.h,misc/cmdarg.c: (finally!) add a discipline with Cmdrun_f
3812-03-28 vmalloc: int vs [s]size_t cleanup
3912-03-27 sfio: fix #if logic that caused syntax errors (on 64 bit uwin)
4012-03-10 misc/optget.c: HELP_index for "PLUGIN" too
4112-02-29 include/shcmd.h: PLUGIN_VERSION 20111111 for cdt disc/meth change
4212-02-29 comp/spawnveg.c: fix sigcritical() to include waitpid() for internal child
4312-02-29 malloc.c: make __malloc_hook initialization thread safe
4412-02-24 comp/iconv.c: fix winix UTF-8 vs UCS-2 over-conversion
4512-02-24 astsa/*.h: clean up header guards
4612-02-24 astsa/astsa.omk: clean up standalone old make makefile interactions
4712-02-21 misc/cmdarg.c: fix bug that set argv[0]
4812-02-10 sfvprintf.c: fix 1 byte too long buffer access
4912-02-07 malloc.c/features/vmalloc: add gnu __malloc_hook tests
5012-02-06 vmmopen.c: fix ALIGN vs sys/param.h macro conflict
5112-02-02 astlicense.c: add license.component for component-specific licenses
5212-01-31 spawnveg.c: fix transient bug that made invalid setpgid() call
5312-01-27 pathpath.c: fix buffer size math when internal allocation requested
5412-01-24 malloc.c: fix _vmkeep() bug that did not return previous state
5512-01-23 malloc.c: add VMALLOC_OPTIONS=break to try sbrk() block allocator first
5612-01-21 astlicense.c: option style only overrides default license.type
5712-01-18 malloc.c: disable multiple regions for tracing or !vmbest or ASO_SIGNAL
5812-01-12 sfpkrd.c: add __sun I_PEEK+rsh runtime workaround
5912-01-10 shcmd.h: void* => Shbltin_t*
6012-01-10 tmxdate.c: handle { n>=1000 } TM_PARTS
6111-12-21 plug up some memory links -- thanks mhlavink
6211-12-21 vmprivate.c: enclose VM_NONMEM exception in CLRLOCK(vm,0) ... SETLOCK(vm,0)
6311-12-13 aso: in -lposix for uwin, not -last -- just like vmalloc
6411-12-13 sfpoll.c: all streams SF_IOINTR => don't ignore EINTR
6511-12-13 sfdcslow.c: set SF_IOINTR
6611-12-09 malloc.c: add _vmkeep() for setlocale() intercept _SYS_setlocale_free_OK
6711-12-04 sfio: _Sfmaxr=0 (unlimited) by default; use ulimit -M|-d or SFIO_OPTIONS
6811-12-01 aso: sync to new api
6911-11-11 optget.c: move .TH to the top for --nroff to get our macros first
7011-11-11 aso,cdt,vmalloc: resync with kpv
7111-11-11 cdt: preserve bits and Dt_link_t for CDT_VERSION < 20111111
7211-10-24 sfvprintf.c: %.-ns truncate from left to n chars
7311-10-21 sfvprintf.c: fix %0s (no width) core dump
7411-10-10 aso: add _WIN32 support
7511-09-26 vmalloc: sync with kpv
7611-08-29 features/{dirent,wchar,wctype}: eliminate #include with no header
7711-08-25 #pragma prototyped tweaks -- sun4 is dead, long live sun4
7811-08-25 ftwalk.c: FTS_SLNONE => FTW_SL
7911-08-11 features/wchar: fix #include _nxt_wchar for K&R C
8011-08-04 optget.c: tweak --html rendering
8111-07-24 mime.c: add %(default)[st] default if arg == ""
8211-07-21 setlocale.c: fix debug locale to treat "<<" as two single byte chars
8311-06-14 spawnveg.c: pgid -1: new session -2: setpgrp()&&tcsetpgid()
8411-06-14 pathprog.c: add darwin _NSGetExecutablePath
8511-05-14 features/common,features/align.c: { _X86_ _X64_ } conditionals for generic uwin
8611-05-13 tm/tminit.c: tweak tzname[] prototype
8711-05-09 astlicense.c: add ". file" parent-relative include and depth 4 input stack
8811-05-05 cmdarg: update to cmdopen_20110505 api
8911-05-03 sfio/sfclose.c: make sure close() errors propagate to sfclose() return value
9011-04-20 port/astlicense.c: add { id name } keys
9111-04-15 fmtdev.c: fix to work for non-{blk,chr} special
9211-04-12 stk: change size args to size_t and stseek() offset to ssize_t
9311-04-12 sfio: sync with kpv to optimize large SF_STRING sfputr() buffer allocation
9411-03-28 misc/fts.c: fix FTS_SLNONE logic to set it when it should!
9511-03-17 misc/stk.c: fixed bug that could delete an active stack frame
9611-03-10 sfio/sfvprintf.c: add %0<width>s to preserve <width> trailing chars in string arg
9711-03-09 misc/magic.c: add %d...%s where if %d==1 then %s=="" else %s=="s"
9811-03-09 misc/magic.tab: add windows ico
9911-02-08 misc/stk.c: change STK_FSIZE to (1024*sizeof(char*)) for 64 bit normalization
10011-02-02 sfio/sfmode.c: don't call sfsetbuf() on unbuffered stream to make it unbuffered
10111-02-02 features/wchar: handle hp.ia64 va_list interactions
10211-02-02 comp/omitted.c: fix mismatch between stat() vs _stat()
10311-01-31 std/wctype,features/wctype: add to handle <wchar.h> interactions
10411-01-28 add -lw for ancient sunos
10511-01-28 include/magic.h,misc/magic.c: add MAGIC_ALL
10611-01-27 tm/tmxfmt.c,tmpoff.c: %_z for SHH:MM
10711-01-25 features/wchar: change <wctype.h> <wchar.h> ordering
10810-12-24 sfstrtof.h: fix thousand grouping bug that did not check last group
10910-12-21 pathkey.c: add win32 { /32 /64 } preroot to hash
11010-12-09 pathprog.c: handle intermediate path != '* and fix invalid pathpath() call
11110-12-01 astconf.c: fix look.standard undefined variable reference
11210-12-01 sfset.c: SF_LINE|SF_WCWIDTH => no need for sfsetbuf() to call isatty()
11310-12-01 sfsetbuf.c: cache /dev/null <dev,ino> to cut down /dev/null stat()'s
11410-12-01 optget.c: delay dictionary initialization until needed
11510-11-30 malloc.c: drop { VMDEBUG VMETHOD VMPROFILE VMTRACE } env checks
11610-11-30 port/astconf.c: eliminate esaccess() calls for OP_universe checks
11710-11-24 regcomp.c: [[=]=]] must at least match itself in non-C locales
11810-11-23 glob.h,glob.c: add GLOB_GROUP => REG_SHELL_GROUP
11910-11-20 glob.c: handle mode switches across /
12010-11-19 regcomp.c: REG_SHELL => REG_CLASS_ESCAPE
12110-11-16 vmalloc.h: add VMFL tracing to vmstrdup()
12210-11-16 ast.h: simplify VMDEBUG _BLD_DEBUG and VMFL logic
12310-11-12 tm/tmlocale.c: ast TM_* extensions default to C locale
12410-11-10 regex/regnexec.c,vmalloc/vmstat.c: eliminate strict-aliasing puns
12510-10-20 misc/translate.c: change debug translation to drop " in (a,b,c,"d")
12610-10-10 misc/glob.c: drop ancient D_FILENO(d)!=0 test and trust readdir()
12710-10-06 misc/translate.c: fix "debug" locale logic
12810-10-04 misc/magic.c: fix magic() skip check to honor the continuation
12910-10-04 regex/regcoll.c: add wchar_t* args to regcollate(), drop ucs name lookup
13010-09-28 comp/setlocale.c: add utf8_wctomb()
13110-09-28 string/chresc.c,regex/regcoll.c: fix \S[.X.] (\C[.X.] never worked!)
13210-09-24 string/chresc.c: \Cc for control c, \S[.X.] for collating symbol X
13310-09-24 string/chresc.c: { \cc \e } deprecated
13410-09-22 regex/regcomp.c: fix off-by-one collation class allocation bug
13510-09-20 regex/regclass.c: fix CTYPES off-by-one bug
13610-09-14 comp/conf.sh: const int conf_elements, prefix_elements;
13710-09-08 add features/sizeof => ast_sizeof.h
13810-08-31 comp/getopt[l].c: export functions for dlls
13910-08-25 port/lc.c: add features/locale check for canonical UTF-8 spelling
14010-08-20 include/ast.h: add export plugin_version() prototype
14110-08-20 comp/conf.tab: add SF_BUFSIZE
14210-08-11 misc/conformance.c: conformance(0,0) => "standard"
14310-08-11 misc/conformance.c: check ast_env_serial for dynamic astconf() changes
14410-08-11 port/lcgen.c: remember to fudge Table_t.count for synthesized entries
14510-08-04 include/ast.h,comp/setlocale.c: add { debug C.UTF-8 } mbalpha() mbwidth()
14610-08-02 misc/translate.c: add NLSPATH message cache check
14710-07-29 string/fmtint.c: fix nasty bug that rendered "1000" as "1"
14810-07-27 setlocale,lsgen,localeconv: handle C vs C_EU decimal thousands sep
14910-07-26 misc/optget.c: fix interaction with nested plugin/builtin calls
15010-06-29 string/strtoi.h: strton() multiplier 1 => power of two suffix
15110-06-28 features/wchar: handle systems that require __va_list => va_list
15210-06-28 comp/conf.tab: another PID_MAX tweak -- default to 99999 for most
15310-06-28 port/astconf.c: lone "CONFORMANCE = standard" => all defaults standard
15410-06-25 misc/optget.c: avoid sfprints() call during initialization
15510-06-01 features/api, ast_api.h: formalized forwards/backwards api compatibility
15610-06-01 _AST_API=20100601: add size_t args for all path*() output buffers
15710-06-01 comp/setlocale.c: handle C.UTF-8 test locale
15810-06-01 include/mc.h: add size_t to mcfind() for result buffer (internal api)
15910-06-01 use strlcpy() instead of strncpy()
16010-05-28 include/ast_version.h: add AST_PLUGIN_VERSION for dllplugin()
16110-05-28 include/shcmd.h: add SH_PLUGIN_VERSION for dllplugin()
16210-05-28 misc/conformance.c: add conformance(3)
16310-05-28 misc/optget.c: add [(id1|id2)...] conformance("id1|id2",0) conditionals
16410-05-25 include/sfhdr.h: adjust SF_NMAP according to _ptr_bits
16510-05-25 include/shcmd.h: add sh_builtin() macro for lib_init() table initialization
16610-05-21 misc/optget.c: --html \bfoo::bar([[:digit:]][[:upper:]]*) => foo-bar.html
16710-05-15 include/proc.h,misc/procopen.c: add PROC_ORPHAN
16810-05-09 misc/optget.c: add --???MAN[section] --???SECTION
16910-05-07 sfio,stdio: fix all snprintf() variants to handle buf==0 and/or n==0
17010-05-04 string/fmtesc.c: add mb iswsoace() and iswcntrl() quoting checks
17110-05-03 fix LC_MESSAGES catalog lookup bugs, check for $set==3, accept $set==1
17210-04-30 string/chresc.c: add chrexp() for FMT_EXP_*
17310-04-30 string/stresc.c: add strexp() for FMT_EXP_*
17410-04-30 string/chresc.c: fix \uXXXXY bug that consumed Y
17510-04-22 misc/optget.c: check for html entities in <A name="...">
17610-04-22 misc/getcwd.c: add features/syscall check for SYSGETCWD() { linux solaris }
17710-04-22 string/stresc.c: wide chars absent locale guidance default to UTF-8
17810-04-12 port/mnt.c: favor bsd getfsstat() over getmntinfo()
17910-04-11 string/strtoi.h: k (1000) and ki (1024) now differentiated
18010-04-10 misc/recstr.c: fix 'd[delimiter]' parse
18110-04-08 include/vmalloc.h,vmalloc/vmstat.c: add Vmstat_t.mode region mode bits
18210-04-05 misc/fts.c: drop 1997-01-07 fts_open()=0 is one file and stat() fails
18310-04-05 misc/optget.c,optlib.h: add Optpass_t.release for --nroff .TH
18410-04-02 misc/optget.c: fix $'[-n?\n...]' --version bug
18510-04-02 regex/regcomp.c: ~(X) => REG_EXTENDED|REG_AUGMENTED, ~(PU) instead of ~(U)
18610-03-24 misc/procopen.c: add PROC_FD_CTTY(fd)
18710-03-24 path/pathtemp.c: fix pointer => int casts
18810-03-15 regex/regcache.c: fix 1 byte buffer overflow (didn't count trailing \0)
18910-03-08 features/tvlib: fix utimensat probe to include all macros/structs
19010-03-07 features/lib: change stream_peek to test pipes only
19110-03-07 string/strelapsed.c: fix next char return overrun
19210-03-06 tm/tvtouch.c: use runtime fallback if utimensat() fails with ENOSYS
19310-03-05 path/pathtemp.c: add pfx /seed for regression testing
19410-03-04 vmalloc/vmwalk.c: add user supplied handle arg
19510-03-04 path/pathtemp.c: properly handle mktemp()-style *+(X) templates
19610-03-03 include/ast_getopt.h: remove NULL guard - _AST_GETOPT_H now handles it
19710-02-24 comp/getopt.h: fix ast_std.h interactions
19810-02-24 vmalloc/malloc.c: empty { VMALLOC_OPTION VMDEBUG ... } => no debug!
19910-02-02 string/base64.c: fix corner case output buffer overflow
20010-02-02 features/fs: sys/mnttab.h requires stdio.h on some systems!!
20110-02-01 misc/optget.c: uppercase --html heading -- doh
20210-01-29 misc/optget.c: [+NAME?...] overrides error_info.id for >= STYLE_man
20310-01-25 vmalloc/vmprivate.c: fix seg ptr initialization bug (24 years old!!)
20410-01-20 misc/optget.c: handle nested {...} rendering
20510-01-20 misc/state.c: add ast.version for runtime api version
20610-01-20 port/astconf.c: "_AST_VERSION" now returns ast.version
20710-01-20 include/ast_std.h: add ast.version for runtime api version
20810-01-19 astlicense.c: add epl
20910-01-01 vmalloc: VMALLOC_OPTIONS env var for all runtime options
21010-01-01 include: change some <ast.h> refs to less intrusive <ast_*.h>
21110-01-01 setlocale.c,translate.c,fmterror.c: AST_LC_internal retains prev state
21210-01-01 comp/setlocale.c: AST_LC_setenv defers to LC_ALL (for sh)
21310-01-01 ast_std.h: add { AST_LC_internal AST_LC_setenv }
21409-12-24 comp/setlocale.c: fix setlocale(LC_ALL,"") when already initialized
21509-12-17 misc/optget.c: handle mixed solaris usage="x:f:(in)yo:(out)"
21609-12-11 regex/regcomp.c: posix semantics for [z-a]
21709-12-11 regex/regcomp.c: fix BRE/ERE ^^ logic
21809-12-11 regex/regcomp.c: fix regcomb() for REG_LEFT|REG_RIGHT
21909-12-11 regex/regcomp.c: bm complete=0 if REX_END
22009-12-11 comp/sigflag.c: add with npt check in features/sig.sh
22109-12-11 tm/tminit.c: fix _tzset_environ logic
22209-12-09 tm/tmlocale.c: include "ast_nl_types.h" to pull nl_langinfo in!
22309-12-04 features/options: add "opt map-libc" check
22409-12-03 tm/tmxdate.c: fix 'next month final day' for dec -> jan
22509-11-21 misc/magic.tab: add gimp XCF
22609-11-20 vmalloc/vmtrace.c: add pid to assertion disgnostics
22709-11-11 regex.h,regcomp.c: add REG_CLASS_ESCAPE, \ inside [...] literal by default
22809-11-03 regex/regcache.c: change to variable length pattern strings
22909-10-28 include/error.h: fix ERROR_translate() arg parens
23009-10-26 port/lcgen.c,comp/setlocale.c: handle LANG init after LC_* already defined
23109-10-05 _sfopen.c: add but ignore 'F' flags for stdio compatibility
23209-09-28 fts.h,ftwalk.h,fts.c: promote { namelen pathlen level } to (s)size_t
23309-09-28 locales: add AST_LC_LANG for $LANG
23409-09-28 setlocale.c: fix logic for dynamic { LANG LC_ALL LC_* } changes
23509-09-17 include/sfio.h,sfio/sfwalk.c: add sfwalk()
23609-09-09 sfio/sfputr.c: add SIGPIPE hang fix
23709-08-24 sfio/sfreserve.c: fix SF_UNBOUND logic with pushed streams
23809-08-18 include/ast_std.h,ast.h: add ast.mb_sync to sync mbchar() after error
23909-08-17 comp/setlocale.c: add AST_LC_utf8 and { utf8_mbtowc() utf8_mblen() }
24009-08-11 comp/setlocale.c: treat "en"/"en_US" AST_LC_MESSAGES as "C"/"POSIX"
24109-08-10 vmalloc/vmhdr.h: add user-defined _AST_PAGESIZE and computed VMHEAPINCR
24209-08-09 comp/conf.tab: add NPROCESSORS_MAX
24309-07-29 astlicense.c: fix first name=value logic error
24409-07-22 string/fmtip6.c: don't drop trailing 0 in 44::1:0:0
24509-06-30 port/astconf.c: standard PATH_RESOLVE is "physical" (not "metaphysical")
24609-06-19 vmalloc: sync with kpv
24709-06-19 include/shcmd.h: add sh_context(p) cast
24809-06-11 misc/magic.tab: differentiate pc 386 32/64 bit dll/exe/obj
24909-06-06 port/astconf.c: fix look->name null pointer reference
25009-06-05 port/astconf.c: fix 'UNIVERSE = value' synthesize logic
25109-05-25 tm/tmxduration.c: add
25209-05-08 comp/syslog.c: add _UWIN /var/log/syslog preference
25309-05-01 comp/setlocale.c: fix _UWIN intercepts to return NiL on unknown locales
25409-04-27 sfio/sfpool.c: fix bug that did not return pool on delete
25509-04-22 include/regex.h,regex/regcomp.c: add REG_REGEXP <regexp.h> compatibility
25609-04-15 tm/tmxdate.c: handle "4th thursday in november"
25709-03-31 string/strvcmp.c,string/strnvcmp.c: add version strcmp(3)
25809-03-31 string/strpcmp.c,string/strnpcmp.c: add path prefix strcmp(3)
25909-03-29 misc/optget.c: clean up num = number casts
26009-03-04 tm/tmxmake.c: add tmxtm() with zone override
26109-03-03 tm/tmxfmt.c: add %(...)<c>, specifically %(...)z for output zone
26209-02-22 tm/tmxdate.c: add iso P... durations
26309-02-02 path/pathprog.c: add
26409-02-02 misc/opthdr.h,optget.c: fix flags mixup, handle old '-' as option
26509-02-02 sfio/sfprints.c: fix sfvaprints() return value to not count trailing '\0'
26609-02-02 misc/cmdarg.c: handle !defined(ARG_MAX)
26709-02-02 port/astconf.c: fix UNIVERSE overwrite of null[] value!
26809-01-31 features/sys: drop header sys/localedef.h
26909-01-28 include/fs3d.h,misc/fs3d.c: mount() => fs3d_mount() for diff std prototypes
27009-01-14 misc/fts_open.c: delay top list reorder until first fts_read()
27109-01-14 include/ls.h: LS_W_INUMBER => 9 to accomodate large st_ino
27209-01-14 misc/optget.c: expand STYLE_usage input text
27309-01-09 features/uwin,stdio/_stdfun.c: iffe for _p__iob and __p__iob
27409-01-09 misc/magic.tab: add ISO filesystem image entries
27509-01-07 string/strtoi.c: strtol() etc. do not consume [lLuU] suffix -- thanks jkf
27609-01-07 sfio/sfstrtof.h: strtod() etc. do not consume [fFlL] suffix -- thanks jkf
27709-01-05 string/strlcat.c: fix logic to match docs (not that easy)
27808-12-30 tm/tmxdate.c,include/tm.h: add TM_WORK { "workday" "working" "work" }
27908-12-28 sfio/sfcvt.c: fix 'a' format rounding
28008-12-21 tm/tmdata.c: add 2008-12-31+23:59:60-0000 leap second event
28108-12-19 tm/tmxdate.c: check for dates near the epoch rolling back to the future
28208-12-19 tm/tmxfmt.c: change %s for now==0 to be the epoch
28308-12-07 include/ast_std.h,misc/getenv.c: no _ast_getenv for uwin ast54 compatibility
28408-12-07 tm/tmxfmt.c: add %[_][EO]K for [space pad] [full|long] iso
28508-12-07 sfio/sfvscanf.c: fix ok[] short by one allocation
28608-12-07 comp/setlocale.c: fix off by one composite initialition loop test
28708-12-07 path/pathkey.c: fix off by one loop test
28808-12-04 vmalloc/vmbest.c: catch sbrk() wraparound
28908-12-04 comp/spawnveg.c: clean up attrs on failure too
29008-11-04 regex/regcomp.c: fix locale [!-...] and [^-...] re-initialization
29108-11-04 stdio: add flockfile.c ftrylockfile.c funlockfile.c
29208-10-24 port/astconf.c: handle multiple/trailing '/' in universe initialization
29308-09-10 misc/magic.c: handle old vcodex() indices
29408-09-10 sfio/sfvprintf.c: drop SF_WCWIDTH, use %Lc or %Ls instead
29508-09-05 Makefile: ibm.risc joins the :NOOPTIMIZE: crowd
29608-09-04 regex/regnexec.c: fix nested delimiter match beyond end of subject
29708-08-20 misc/fts.c: fix st_nlink stat() optimization logic
29808-08-19 sfio/sfpkrd.c: workaround macosx recv(PEEK) data consumption on non-socket
29908-08-19 strn?tol?d: handle long double with smaller exponent range than double
30008-08-18 sfio/sfcvt.c: eliminate excessive multiplies and integral overprecision
30108-08-11 tm/tmxfmt.c: handle %10N and %010N
30208-08-06 include/shcmd.h: add 'int invariant;' for builtin invariant arg count
30308-08-05 features/ndbm: favor sleepycat ndbm compatibility
30408-07-21 include/glob.h,misc/glob.c: GLOB_STARSTAR only forces lstat on chdir
30508-07-17 sfio: sync with kpv
30608-07-17 misc/optget.c: call astwinsize() each time terminal width required
30708-07-16 sfio/sfvscanf.c: fix %% to skip leading space per posix
30808-07-16 vmalloc/vmbest.c: add VMCHECK=m, VM_mmap to favor mmap() alloc
30908-07-16 features/stdio,stdio/f(read|write).c: size_t return value!! ouch
31008-06-24 tm/tmxfmt.c: fix %z to handle tm_isdst -- doh
31108-06-24 misc/astintercept.c,misc/getenv.c: split from misc/setenviron.c
31208-06-17 misc/setenviron.c: add { astintercept() getenv() }
31308-06-09 tm/tmlocale.c: use _DATE_FMT if defined for TM_DEFAULT
31408-06-06 misc/optget.c: handle sub-component about details
31508-06-04 misc/optget.c: fix [-n?\n...\n] version parse
31608-06-04 include/debug.h,misc/debug.c: merge with kpvdebug.h
31708-06-02 features/ndbm: add to tame dbmlib.iffe replication
31808-06-01 comp/resolvepath.c,realpath.c: fix resolvepath() return value type
31908-05-22 tm/tmxdate.c: fix a few ordinal/last/this/next bugs
32008-05-18 string/fmtre.c: fix omitted stack var initialization bug
32108-05-14 regex/regcomp.c,regcoll.c: fix UTF-8 collation sequence logic
32208-05-11 tm/tmxfmt.c: :NOOPTIMIZE:, otherwise %Q/../../ fails
32308-05-01 tm/tmxdate.c: mon 1..12 => mon[13] -- doh
32408-04-30 misc/glob.c,reegex/regcomp.c: ~(R) => ~(O) to avoid pcre clash
32508-04-24 port/astconf.c: 'name = value' does assignment without system init
32608-04-15 port/astconf.c: SC#N treated like 'SC(N)'
32708-04-14 misc/optget.c: clean up nroff output
32808-04-01 port/astconf.c: add RELEASE => /proc/version fallback
32908-03-30 misc/optget.c: [-n]... to enable -number & +number options
33008-03-06 misc/optget.c: ---* and +++* are now operands
33108-03-06 misc/errorx.c: fix old error_info.translate workaround
33208-02-05 regex/regcomp.c: allow REG_SHELL {,n}... => {0,n}...
33308-02-27 misc/stk.c: top element during allocation relocated to top
33408-02-18 include/ip6.h,string/strtoip6.c,fmtip6.c: add ipv6 addr support
33508-02-14 regex/regsubexec.c: fix null match (tricky)
33608-02-14 regex/regsubcomp.c: fix SRE to match ksh
33708-02-11 comp/spawnveg.c: return proper errno on [v]fork() failure
33808-02-11 tm/tmxdate.c,tmdata.c: handle more ISO 8601:2000 forms
33908-02-02 regex/reglib.h: add REGMULTIREF to REG_COMP
34008-02-02 string/strmatch.c: fix str="" pat="" sub values
34108-01-31 comp/conf.sh,conf.tab: handle /bin/sh \ in read data, redir subshell
34208-01-18 misc/magic.tab: amd-x68, 64-bit => x86-64
34308-01-18 string/strnton.c,strntonll.c: add
34407-12-10 string/strelapsed.c: "0" is a valid elapsed time!
34507-12-02 sfio/sfreserve.c: preserve SF_SHARE sfrd() via sfreserve(f,0,0)
34607-11-21 comp/setlocale.c: add sjis_mbtowc() to work around [\~] translation
34707-11-15 features/signal.c: RT(1) .. RT(MAX-1) => RTMIN+1 .. RTMAX-1
34807-11-14 features/float: favor sscanf() due to gnu strto[l]d() nan bugs
34907-10-31 regex/regcomp.c: fix REX_COLL_CLASS node allocation size
35007-10-31 sfio/sfcvt.c: use signbit() if available
35107-10-31 features/isoc99: _ISOC99_SOURCE tests
35207-10-31 port/astmath.c: add -DN=8 for signbit()
35307-10-31 sfio/sfstrtod.h: don't forget about -0.0
35407-10-26 features/map.c: add { optopt optarg optind opterr }
35507-10-26 features/stdio: add _filbuf => _ast__filbuf
35607-10-26 comp/getsubopt.c: fix #undef that interfered with <ast_map.h>
35707-10-26 regex/regcomp.c: fix bug that missed ')' in ~(F)...
35807-10-12 port/astconf.c: fix CONF_ALLOC 16 bit overflow
35907-10-12 misc/fts.c: fix fts_close() to free the handle -- doh
36007-10-11 comp/setlocale.c: second and subsequent setlocale(*,"") reverts to previous
36107-10-11 path/pathprobe.c: add vfs ST_NOSUID check
36207-10-10 comp/conf.tab: add a few more xpg6 deferrals
36307-09-28 astsa: update to share with mainline src via _PACKAGE_astsa
36407-09-25 sfio/sfgetr.c: no limit on string stream line size
36507-09-25 sfio/sfextern.c: increase _Sfmaxr to 256*1024
36607-09-18 misc/procopen.c: tighten up SIGCHLD logic between parent/child
36707-09-18 misc/signal.c: unblock SIG_DFL after setting handler, sig<0 => don't unblock
36807-09-13 misc/fs3d.c: no $LD_PRELOAD => no 3d and avoids invalid mount(2) call
36907-09-11 vmalloc: vmstat(0,0)==1 => region in use, drop VM_primary|VM_secondary
37007-09-05 misc/recstr.c: handle [lL] gobbled by strtol() -- ouch
37107-08-17 path/pathprobe.c: handle '\r' in VERSION string
37207-07-17 regex/regcache.c: regcache(0,n,0) extends cache to size n (no shrinking)
37307-07-16 tm/tmdata.c: add 2005-12-31, drop 1999-12-31 (where did that come from?)
37407-05-21 tm/tmxfmt.c,tmxscan.c: %F => %L (TM_DEFAULT); %F => %Y-%m-%d
37507-05-15 sfio/sfvprintf.c: %h? and SFFMT_SHORT => raw bytes
37607-05-09 features/signal.c,features/siglist: use kill -l & strsignal()
37707-04-25 misc/optctx.c: add for opt_info switching
37807-04-24 misc/cmdarg.c,include/cmdarg.h: add CMD_CHECKED, CMD_SILENT
37907-04-24 misc/procopen.c,include/proc.h: add PROC_CHECK
38007-04-24 misc/procrun.c: add flags arg (current use PROC_ARGMOD)
38107-04-24 misc/cmdarg.c,include/cmdarg.h: move from src/cmd/tw
38207-04-20 port/(lclang.h|lc.c|mc.c|lclib.h|lcgen.c): separate lctab.c
38307-04-20 comp/conf.sh: defer to systems without 'grep -q' -- sigh
38407-04-20 comp/conf.sh: probe for LL integer constant initializer suffix
38507-04-20 include/syslog.h: <namval.h> => <ast_namval.h> for win32
38607-04-20 ast_namval.h: add as copy of include/namval.h for win32
38707-04-19 comp/conf.tab: fix SVID SI entries to probe SI_* (not _SI_*)
38807-04-13 tm/tmxdate.c,tm/tmzone.c: handle [-+]0000 UTC zone offset
38907-04-11 sfio/sfvprintf.c: add %F, propagate SFFMT_UPPER
39007-04-11 sfio/sfcvt.c: handle SFFMT_UPPER => nan/inf vs. NAN/INF
39107-04-02 comp/conf.tab,comp/conf.sh: add C/POSIX <stdint.h> symbols
39207-03-28 misc/optget.c: fix l10n --?-
39307-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic
39407-03-21 error.h: move from error_info to (*_error_data_)
39507-03-21 misc/error.c: add errorctx() for error_info switching
39607-03-21 option.h: move from opt_info to (*_opt_data_)
39707-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP
39807-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions
39907-02-27 comp/conf.sh: handle native getconf invalid numeric values
40007-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX
40107-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification
40207-02-14 features/common: cover <stdint.h>, move to int_(bits)_t
40307-02-14 include/int.h: drop
40407-02-14 include/sfio.h: add SF_WCWIDTH
40507-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc.
40607-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix
40707-02-12 features/float: *LONGLONG* => *LLONG* to match posix
40807-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral
40907-02-12 stdio/vasprintf.c: add trailing '\0' -- doh
41007-02-04 string/fmtelapsed.c: fix naive multi month/year logic
41107-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3)
41207-01-26 string/chresc.c: use mbchar()
41307-01-26 misc/optget.c: handle "o:-:" usage for old-style long options
41407-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek
41507-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h
41607-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1
41707-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?)
41807-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP)
41907-01-05 misc/error.c: fix multibyte vs. printable logic
42007-01-01 comp/conf.sh: LC_ALL=C
42106-12-26 tm/tmxdate.c: handle nn*.nnnn* == sec.ns
42206-12-20 features/libpath.sh: generalize sol.* LIBPATH patterns
42306-12-18 comp/setlocale.c: include ast_standards.h and ast_wchar.h !
42406-12-12 string/strperm.c: octal modes are absolute!
42506-12-11 comp/conf.tab: always defer ARG_MAX
42606-12-07 Makefile: fix conftab.c generation CCFLAGS to match build - doh
42706-12-04 sfio/sfcvt.c: fix (int) vs. (long) cast mismatches
42806-12-01 comp/conf.tab: add changes to cover solaris { bin xpg4 xpg6 }
42906-12-01 regex/reginit.c: adjust { SRE KRE } escaped (){}*? inside [...]
43006-12-01 sfio/sfcvt.c: add signbit/copysign tests
43106-11-22 comp/spawnveg.c: fix _real_vfork logic to work with 3d
43206-11-20 features/common: bias _ast_int8_t "long long" before "__int64"
43306-11-20 string/strperm.c: fix X to work with all ops (not just +)
43406-11-15 astconf.c,conf.tab: add CONF_DEFER_* for variable constants
43506-11-11 port/astconf.c: validate path arg w.r.t. underlying calls
43606-11-11 comp/conf.sh: fix S CONF_STANDARD bug, add D to defer to native
43706-11-11 comp/conf.tab: add D to defer to native
43806-11-01 include/vmalloc.h: avoid VM_FLAGS sys/v*.h clash
43906-11-01 include/ast.h: add FMT_PARAM for fmtquote()
44006-10-31 disc/sfdcseekable.c: add SFSK_DISCARD for seekable window control
44106-10-31 comp/spawnveg.c,features/lib: handle posix_spawn exit status 127
44206-10-30 features/lib: fix posix_spawn() fork() prototype conflicts
44306-10-30 string/fmtscale.c: fix 1024 rounding bugs
44406-10-27 disc/sfkeyprintf.c: handle 'i' (=='d') -- oops
44506-10-26 sfio/sfvprintf.c: %#d => fmtscale(1000), %#i => fmtscale(1024)
44606-10-26 features/map.c: _map_libc cleanup
44706-10-26 features/fcntl: add to the circle of trust
44806-10-26 features/sys: add <sys/socket.h> socklen_t
44906-10-26 include/regex.h: handle include before <ast_map.h>
45006-10-25 astconf "SHELL" => "SH" to avoid _POSIX_SHELL conflict
45106-10-25 comp/conf.*: drop no-op duplicate conftab.c entries
45206-10-18 string/fmtscale.c: 1000: n[.]n[n](kMGTPE), 1024: n[.]n[n](KMGTPE)i
45306-10-11 ast_std.h: now implies <sys/stat.h> (did on most before anyway)
45406-10-11 strtoi.h: ignore sign for 0, validate scale shift
45506-10-11 strdup.c,vmstrdup.c: handle 0 arg
45606-10-11 add sfstruse()/sfstropen() error checks
45706-10-10 misc/procopen.c: envv==environ => don't modify environ
45806-10-10 misc/procclose.c: return valid exit(1) status
45906-10-06 port/astconf.c,comp/conf.sh,comp/conf.tab: play nice with getconf(1)
46006-10-01 comp/conf.tab: SHELL default checks { _CS_PATH } X { ksh ksh93 sh }
46106-10-01 comp/conf.sh: export CONF_getconf to shell actions
46206-10-01 comp/putenv.c: always enable setenv() for procopen()
46306-10-01 misc/procopen.c: use pathshell() or astconf("SHELL",0,0) if PARANOID
46406-10-01 path/pathshell.c: localize the shell path patterns and accept ksh93
46506-09-28 Makefile: avoid ast <stdio.h> vix iffe -X ast -- doh
46606-09-27 regex/regdecomp.c: add
46706-09-26 regex/regcomp.c: handle KRE ~(...)<invalid-kre>
46806-09-25 reorganize to avoid native header intercepts
46906-09-15 uwin/crypt.c: _UWIN only!
47006-09-14 Makefile: tweak the ast_common.h bootstrap again (finally?)
47106-09-14 misc/optget.c: noncommercial => OPT_proprietary
47206-09-12 string/strelapsed.c: fix multi-char qualifier parse
47306-09-12 string/strtoi.h: drop [cClLqQwW] multipliers
47406-09-11 misc/optget.c: add numeric arg validity check
47506-09-07 misc/optget.c,tm/tmfix.c: fix uninitialzed var refs
47606-09-05 path/pathprobe.c: add version header verification
47706-08-01 Makefile: handle iffe vs FEATURE/common vs ast_common.h
47806-08-31 Makefile: add ast_map.h to the bootstrap list
47906-08-30 misc/glob.c: fix ~(E)re bug that stripped ~(E) before regcomp
48006-08-30 include/ast.h: add { integralof(x) pointerof(x) }
48106-08-27 string/strelapsed.c: fix off-by-one (too little) parse bug
48206-08-25 misc/optget.c: 0*<n>.* numeric option args => <n>.*
48306-08-22 misc/glob.c: handle ~(...) pattern options
48406-08-16 string/strelapsed.c: fix off-by-one (too far) parse bug
48506-08-16 regex/regcomp.c: accept but ignore ~(N)
48606-08-14 features/libpath.sh: add solaris LD_LIBRARY_PATH_64 check
48706-08-05 sfio/sfpool.c: pool SF_READ|SF_WRITE loop fix
48806-08-02 misc/fts.c: fix FTS_NOSTAT optimization to check for ..
48906-07-28 include/glob.h: add gl_extra for user globlist_t expansion
49006-07-27 features/common: #include "ast_map.h"
49106-07-26 comp/fnmatch.[ch]: allow <ast_map.h> to map fnmatch()
49206-07-22 cdt: snarf from kpv
49306-07-17 string/strperm.c: perm==-1 skips umask(1)
49406-07-17 sfio/sfvprintf.c: handle format invalid mb seq
49506-07-17 regex/regcomp.c: inline REG_SHELL => anchored, otherwise not
49606-07-17 regex/regcomp.c: inline B|G:basic E:REG_EXTENDED F|L:REG_LITERAL
49706-07-17 regex/regcomp.c: inline l:REG_LEFT r:REG_RIGHT
49806-07-17 regex/regcomp.c: inline a:REG_LEFT|REG_RIGHT p:~REG_LENIENT
49906-07-17 string/chresc.c: add \Uxxxxxxxx
50006-07-17 sfio/sfstrtof.h: ignore thousands sep after decimal
50106-07-17 string/tokline.c: splice() => spliceline() for bsd
50206-06-27 features/float,sfio/sfcvt.c: fix Nan logic
50306-06-27 port/astmath.c: fix long double isnan() test
50406-06-27 features/map.c: _map_libc for std => _ast_std
50506-06-25 string/strperm.c: handle posix = w.r.t. umask
50606-06-19 port/mnt.c,features/fs: handle netbsd getmntent api change
50706-06-18 regex/regstat.c: add REG_LITERAL check
50806-06-11 cdt/dtview.c: update from kpv
50906-05-31 sfio/sfhdr.h: fix _SFOPEN() typo
51006-05-09 comp/conf.sh: add native getconf -a names to the mix
51106-04-28 misc/optget.c: add solaris long option name compatibility
51206-03-09 string/strmatch.c: add REG_ADVANCE => REG_* flags
51306-02-14 comp/iconv.c: fix uwin iconv_list() /reg/ generator
51406-02-10 port/astconf.c: relax standard prefix filter
51506-02-08 sfrd.c,sfsync.c: lock logic bug fix
51606-02-01 port/astlicense.c: add { parent incorporation }
51706-01-26 port/astconf.c: fix { LIBPREFIX LIBSUFFIX } length
51806-01-06 features/lib: change _UNIV_DEFAULT probe to use cross{...}
51906-01-04 misc/stk.c: fix n**2 realloc behavior
52006-01-01 include/sfio.h: export { _Sfi _Sfmaxr }
52105-12-13 string/chresc.c: handle \C-X => control-X, \M- => ESC
52205-11-22 regex/regcache.c: add, convert string/strmatch.c to regcache()
52305-10-06 string/ccmap.c: update ebcdic-u to be idempotent
52405-09-28 vmalloc: snarf from kpv; fixes large block brk() thrashing
52505-09-26 misc/magic.c,misc/magic.tab: handle latest vcodex header
52605-09-12 misc/optget.c: reset opt_info.offset on error
527	 string/strtoi.h: strton() '.' multiplier only if m>1
528	 string/fmtesc.c: add unadvertized FMT_PARM for FMT_SHELL
52905-09-09 string/fmtesc.c: fix FMT_SHELL logic w.r.t. [$`]
53005-08-11 string/strerror.c: fix { sys_errlist sys_nerr } prototypes
53105-08-03 sfio: snarf sfvaprints sfaprints
53205-07-21 port/astconf.c: retain most recent synthesized lookup
53305-07-20 sfio/sfsetbuf.c: default file io size now 64K on all systems
53405-07-17 ccmap*: add microfocus cobol EBCDIC_U
53505-06-29 regex/regcomp.c: fix the A & B inline flag logic
53605-06-15 include/recfmt.h: add fs format flag to fmtrec()
53705-06-14 error.c: add ERROR_OPTIONS { break count match }
53805-06-07 features/stdio: drop FEATURE/limits to fix bootstrap circular dep
53905-06-02 features/*,Makefile: drop vestigel iffeio.h bootstrap workaround
54005-05-31 string/fmtbuf.c: unlock (spin) before each return -- doh
54105-05-30 sfio/sfpkrd.c: work around macos 10.4 recv(MSG_PEEK) bug
54205-05-27 regex: add REX_NEST (?%[S.][T.][OT])
543	 magic.tab: ammend bsd db magic
54405-05-23 regex: REX_NEST (?%[D.][E.][L.][Q.][oc]...)
54505-05-21 regex: state.fold[] is now locale specific -- doh
54605-05-19 regex: add REX_NEST (?%\\()<>[]""...) %(...) nested match
54705-05-15 recfmt.h: add recstr() reclen() fmtrec()
54805-05-13 optget.c: allow boolean options to take numeric values
54905-05-12 recfmt.c: add to recfmt.h, adjust Recfmt_t encodings
55005-04-30 sfio: add sfmaxr(), default 64K
55105-04-22 comp/omitted.c: fix magic() logic for files < 512 bytes
55205-04-20 cdt: snarf update from kpv; void* Dt_t.user added
553	 misc/error.c: library => ERROR_LIBRARY
55405-04-19 regex/regcomp.c: handle REG_SHELL [^...] == [!...]
55505-04-11 tm/tmxscan.c: handle yyy.mm.dd[-+.]hh.mm.ss.nnnnnn
55605-04-07 regex/regnexec.c: fix out of bounds boundary check -- ouch
557	 features/align.c: add jmp_buf to the alignment mix (ia64)
558	 vmalloc/vmhdr.h: add jmp_buf to the alignment mix (ia64)
55905-03-31 misc/optget.c: fix option { - _ } separator matching
56005-03-30 misc/glob.c: eliminate superfluous GLOB_NOMATCH stat() calls
56105-03-24 port/astwinsize.c: include <sys/ioctl.h> if possible
56205-03-23 string/ccmap.c: add ebcdic-m mvs cobol table
56305-03-11 comp/omitted.c: handle utime[s](const,const)
564	 comp/conf.tab: fix linux PID_MAX probe
56505-03-10 comp/setlocale.c: LC_* value "" => unset -- doh
566	 misc/optget.c: reorder _PACKAGE_astsa code for msgcc
56705-03-08 misc/optget.c: delete leading space in STYLE_nroff output
56805-03-07 sfio/sfhdr.h: drop extern _sfdscan -- clashes with sfvscanf.c static
56905-03-01 tm/tminit.c: add tmlocaltime() for tzset() getenv() override workaround
57005-02-20 features/tvlib: tmsettimeofday only for systems that have settimeofday
571	 features/float: fix mvs.s390 NaN tests
57205-02-18 tm/tmxmake.c: fix <0 west of GMT bug that warped to 1800's -- wow
57305-02-11 port/mnt.c: handle lynxos MOUNTED=/etc/fstab
57405-02-08 features/float,sfio.h,sfcvt.c,sftable.c: add INF and fix NAN
57505-02-04 features/lib: add _std_strtol (for lynxos)
576	 include/ast_std.h: add _std_strtol tests
577	 comp/strtod.c: #define S2F_function strtod
578	 misc/signal.c: fix ancient bsd SV_INTERRUPT vs. SV_ABORT clash
57905-01-11 sfio/sfmove.c: try to seek(fr) when fw==0
580	 comp/omitted.c: intercept utimes() too
581	 comp/omitted.c: add DOSPATHVARS env var path value conversions
582	 features/tvlib,tm/tvtouch.c: check for utimets()
583	 misc/optget.c: handle '-' or '_' option word separators
584	 sfio/_sfopen.c: allow stream mode changes after initialization
585	 sfio: sync with kpv: SF_SYNCED fix for ksh input loss bug
58605-01-09 tm/tmxfmt.c: fix %6N for n<100000000
58705-01-08 regex/regcomp.c: conj() => con() to avoid C99 clash
58805-01-05 tm/*: fix { %U %V %W } logic -- my head hurts
58904-12-30 tm/tmxtime.c: fix tm_isdst<0 loop
59004-12-23 vmalloc/vmbest.c: fix vmresize bug that didn't 0 new data
59104-12-19 misc/optget.c: broaden - long option match
59204-12-09 string/strtoi.h: fix terabyte 't' suffix math
593	 string/strmatch.c: flush cache on locale change
59404-12-01 tm/tmsleep.c: add
595	 tv.h,tv*.c,tv.3: move from pax
596	 tmx.h,tmx*.c,tmx.3: add high resolution tm(3) counterparts
597	 features/lib: add *another* sgi linux.ia64 memccpy bug check
59804-10-31 Makefile: __OBSOLETE__ now computed <6 months ago year>0101
599	 ccode.h,ccmapid.c: add ccmaplist(Ccmap_t*) iterator
600	 option.h,optesc.c: add 3rd arg, 1 => quote '?' too
601	 misc/magic.c: fix bug that terminated `string \0a' at \0
602	 misc/magic.c: handle vcodex() via decompose()
603	 misc/magic.tab: add vcodex magic
604	 features/stdio: handle _LARGEFILE64_SOURCE -- oops
605	 stdio/(fseek|ftell|fseeko|fsetpos|fgetpos|ftello).c: oops^2
60604-10-28 string/swapop.c: size==-4 => size=4 and extend op=3 to op=7
607	 tm/tmfix.c: fix tm_mon<0 logic
60804-10-22 tm/tmdate.c: handle 'final day feb 2004'
609	 port/astlicense.c: add query=all|id|${...}${...}
610	 port/astlicense.c: "free" => "mit"
611	 comp/omitted.c: revert to the open source license
612	 string/stropt.c: drop siz==0 => tab is hash table
613	 include/sfio.h: incorporate <sfstr.h>
614	 include/sfstr.h: drop
615	 disc/sfstrtmp.c: drop -- use sfstrbuf()
61604-10-20 misc/magic.tab: update tar magic
61704-10-18 ufc-crypt.h,crypt_util.c: drop GPL code
618	 crypt.c: add BSD code
619	 pathpath.c: disable { $0 $_ $PWD } related root search
62004-10-01 normalize ident stamps
621	 port/astlicense.c: add type=cpl -- yeah
62204-09-25 string/swapop.c: return op < size -- duh
62304-09-23 comp/spawnveg.c: :NOOPTIMIZE: -- volatile sometimes ignored
62404-09-21 comp/spawnveg.c: exec_errno_ptr is volatile -- duh
62504-09-14 tm/tmscan.c: add %| alternation and %& => tmdate()
62604-09-08 misc/optget.c: add :!value: omitted optional arg value
627	 misc/optget.c: fix --noNAME ambiguous option logic
62804-08-26 string/strperm.c: add who^mode to propagate least restrictive up
629	 astmath.c: add { frexpl ldexpl } checks for ast.req
630	 port/astlicense.c: ignore first option if non-assignment
631	 include/ast_dir.h: move d_fileno map before struct defs -- duh
63204-08-24 vmalloc/vmbest.c: add {VM_region} VMCHECK=+r for region segment checks
633	 misc/recfmt.c,include/recfmt.h: add
63404-08-23 vmalloc/vmbest.c: add {VM_primary VM_secondary} VMCHECK=-s for primary
635	 features/common: punt to <stdarg.h> for unknown va_list
63604-08-11 vmalloc: sync _UWIN libposix hooks
63704-07-27 features/common,features/limits.c: ULL suffix for unsigned _ast_int8_t
63804-07-22 include/ast.h,comp/eaccess.c: add eaccess() for effective access()
63904-07-19 comp/open.c,sfio/_sfopen.c: { O_RDONLY O_WRONLY O_RDWR } are values
64004-06-28 misc/error.c: check level after error_info.auxilliary
64104-06-24 string/strmatch.c: strgrpmatch() match[] now variable size array
64204-06-17 features/common: change _DLL null define to (the standard ast) 1
64304-06-11 misc/optget.c: allow optional [-|+|--|++] optstr() option prefix
644	 misc/optget.c: reset optstr() state on 0 return
645	 misc/optget.c: text()=>textout() linux.ppc symbol hijack workaround
64604-05-31 sfio/sfreserve.c: no side buffer if user buffer is large enough
64704-05-27 string/fmtbuf.c: handle one concurrent buf > sizeof(buf)
64804-05-24 regcomp.c: fix no-advance initialization
64904-05-05 conf.tab,conf.sh: update to align with standards
650	 magic.tab: ms suffix update
65104-05-04 port/lcgen.c: fix territory initialization
65204-04-15 tm/tmdate.c,include/tm.h: fix specific and ordinal days
65304-04-08 astconf: retain { HOSTTYPE LIBPATH LIBPREFIX LIBSUFFIX } strict vals
65404-04-07 vmalloc/vmbest.c: fix alpha tiny block bug
655	 vmalloc/malloc.c: re-enable on alpha
65604-03-30 tm/tminit.c: GMT => UCT only if tz.daylight not defined
65704-03-25 vmalloc/malloc.c: _AST_std_malloc=1 for __alpha
658	 path/pathprobe.c: per-user probe dir => $HOME/.probe/$HOSTTYPE
65904-03-23 regex/reglib.h: fix isw*() redefines
66004-03-17 features/stdio: no __FILE override for __CYGWIN_ (sys/reent.h clash)
661	 sfio/sfhdr.h,sfio/sfsetbuf.c: lower sfmove() default buf size 4x
66204-02-29 comp/omitted.c: move env trace after PATH fixup
663	 comp/omitted.c: cygwin spawn _P_DETACH => _P_NOWAIT+setpgid(pid,0)
664	 misc/optget.c: fix html mailto: match
665	 port/astlicense.c: add type=test for fixed 2001 date
666	 features/float: check local NaNQ first
667	 vmalloc/vmhdr.h: fix _vmextern_ vm_truncate return type
668	 misc/magic.tab: add elf s390 index=22
66904-02-26 vmalloc: VMCHECK a:assertions c:arena-check w:warn-instead-of-abort
670	 sfio/sfvscanf.c: fix extf arg selection
67104-02-24 features/dirent: set nodefine to avoid ast_std.h _typ_off64_t undef
672	 disc/sfkeyprintf.c: only case pattern must be ()[] balanced
67304-02-14 include/sfio_t.h: add SF_DCDOWN, SFDCNEXT(), SFDCPREV()
67404-02-13 string/strmatch.c: fix bug that didn't save one-time sub[] size
675	 vmalloc: -g: export VMCHECK=1 enable malloc/free checks
676	 vmalloc: -g: free(0) to check and disable malloc/free checks
677	 vmalloc: -g: free(1) to check and enable malloc/free checks
67804-02-11 Makefile: add :P=A: to conf and lcgen exec for cross-compile
679	 regex: use MBSIZE() instead of mbsize() to grab 1 char on err
680	 vmalloc/vmbest.c: updated to do more comprehensive DEBUG tests
68104-02-04 sfio/sfraise.c: add sfraise(0,a,b) to iterate over all streams
68204-02-01 vmalloc/vmbest.c: _BLD_DEBUG free(0) checks the arena
68304-01-31 features/vmalloc: fix typo that missed _mmap_zero
68404-01-23 string/strerror.c: handle real strerror() return value overwrite
68504-01-11 path/pathpath.c: fix size vs. sizeof(buf) typo
68603-12-22 misc/magic.tab: dos EXE tweaks
68703-12-05 vmalloc: sync with kpv, adding exceptf announcements
68803-12-04 port/astlicense.c: fix expand() loop sentinel bug
68903-12-02 include/ast.h: mbchar() advances by 1 on mbtowc() error
690	 misc/fts.c: increase MINNAME to 32
69103-11-21 vmalloc/vmbest.c: export VMCHECK=1 to enable $(CC.DEBUG) vmcheck()
692         vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT
693	 misc/magic.c: add { cobol copybook pl1 } and suffix preference
69403-11-12 features/stdio: drop cuserid,getopt for SUSV3
69503-11-11 vmalloc/*: merge kpv update -- this should stomp the compaction bug
69603-10-23 comp/iconv.c: fix sfreserve lock fallback
69703-10-20 sfio/_sfopen.c: add to allow user sfopen() intercept
69803-10-17 regnexec.c: fix exec time REG_LEFT, \x.... => wctomb()
69903-10-12 string/strtoi.h: fix strton '.' overconsumption
70003-10-12 comp/iconv.c: identity is always (iconv_t)0
70103-10-09 string/fmtesc.c: fix FMT_SHELL to check for all shell magic chars
70203-10-01 port/astlicense.c: unknown authors copied verbatim (instead of ignored)
70303-09-30 string/chresc.c: handle \u..., \x... consumes all trailing hex digits
704	 string/stresc.c: \u... and \x... > UCHAR_MAX => wctomb()
70503-09-29 fnv.h: add
70603-09-23 modedata.c: table is for external modes, so no arch specific hacks
707	 optget.c: fix option prefix match translation bug
708	 optget.c: add `<length> <name>=<value>\n' to optstr()
709	 features/lib: add memcmp() test for sgi optimzation bug
71003-09-22 regex.h,regcomp.c: add regncomp()
711	 regclass.c: fix for loop dangling ; in regaddclass()
71203-09-20 sftable.c,sfvprintf.c: fix SFFMT_CHAR handling to match extf api
71303-09-19 sfmode.c: update release to kpv's
71403-09-17 regcomp.c: add pedantic backref error checks
71503-09-16 regnexec.c: exec time REG_LEFT => don't advance past initial position
716	 regclass.c: add regaddclass() for user defined [:class:]
717	 regexec.h: REG_VERSION_N2X, add redisc_t {re_map} ccode map
718	 regstat.c: add regstat_t
71903-09-11 optget.c: --n:=v sets opt_info.assign=':', opt_info.number enabled
72003-09-09 disc/sfkeyprintf.c: *pn on lookup is arg separator; lookup "" arg too
72103-09-05 optget.c: [f:l*?] preserves user long name past '*' in opt_info.name[]
72203-09-03 sfstr.h: add sfstrpend() for #pending bytes in read buffer
72303-08-25 regex: add REG_FIRST, optimize bm
724	 features/lib: _AST_no_spawnveg==1 falls back to fork/exec
72503-08-22 features/stdio,stdio/asprintf.c,stdio/vasprintf.c: add
72603-08-21 path/pathnative.c,path/pathposix.c: interix updates
727	 features/botched: add cygwin _stat => _stat64
72803-08-15 include/ast.h: map out bsd strmode()
729	 features/common: add interix _ast_intmax_t workarounds
730	 misc/fs3d.c: 3d mount test now uses "" instead of NiL (or cygwin dumps)
73103-08-11 string/fmtesc.c: fix optional quoting checks
732	 tm/tmdate.c: fix > 1 year of seconds arithmetic
733	 tm/tmfix.c: fix leap year adjustments
73403-08-01 features/lib: beef up sock_peek test for interix
73503-07-29 features/float: add -lm to frexp... test
736	 Makefile: fix -lm astmath test sense
73703-07-26 features/mem.c: favor _mem_sbrk over _mem_mmap_*
73803-07-22 vmalloc/vmbest.c: fall back to sbrk() if mmap() fails
739	 features/mem.c: _mem_sbrk means sbrk() and brk() work
74003-07-17 regex/regcomp.c: fix bug that treated KRE X{n,m} like {n,m}(X)
741	 misc/magic.c: check MAGIC_VERBOSE for all load() messages
74203-07-14 misc/optget.c: handle [...]{[...]\f...\f...}
74303-06-21 misc/sigcrit.c: block SIGCHLD if _lib_sigprocmask || _lib_sigsetmask
744	 comp/spawnveg.c,sfio/sfmode.c: use sigcritical() SIG_REG_* macros
745	 comp/spawnveg.c: drop ENOEXEC logic
746	 vmalloc/*: snarf kpv KPVCOMPACT() fix
747	 vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT (just in case)
748	 string/strdup.c: drop __strdup() etc. intercepts -- malloc gets it
749	 features/mem: define _mem_method and _mem_* possible values
750	 vmalloc/malloc.c: _AST_mem_method==_mem_* to force mem get method
751	 sfio/sfputr.c: __ia64 memccpy is bogus -- how many tries do they get?
752	 path/pathshell.c: verify abs path and access(path,X_OK) -- duh
753	 vmalloc/vmhdr.h: add private _Vmessage() for non-sfio ASSERT()
754	 port/astconf.c: fix bug that always returned the minmax value
75503-06-11 comp/*.c: reorder macro hding for mvs.390 and <ast_map.h>
756	 features/vmalloc: add _lib_brk and _lib_sbrk verification
757	 include/ast_std.h,etc.: add _map_malloc for malloc => _ast_malloc
758	 comp/conf.sh: fix SI_* and *_SI_* macro redefs
759	 ast.h: VMDEBUG or _BLD_DEBUG enable <vmalloc.h> and VMFL tracing
760	 vmalloc/vmtrace.c: _PACKAGE_ast __FUNCTION__ is a string
761	 vmalloc/vmtrace.c: set trace file fd FD_CLOEXEC
762	 vmalloc/vmbest.c: set /dev/zero mmap fd FD_CLOEXEC
763	 features/mmap: fix ancient read() vs. mmap() time arithmetic typo
764	 vmalloc/malloc.c: _AST_std_malloc==1 to force standard malloc
76503-06-09 comp/omitted.c: add _imp__FUNCTION sybols for __CYGWIN__ static link
766	 vmalloc/vmbest.c: handle systems with sbrk() but no brk()
76703-06-04 port/astconf.c: drop non-standard diagnostics
76803-06-03 comp/conf.sh: rework symbol collision logic
76903-05-30 conf.tab,conf.sh,astconf.c: add <sys/systeminfo.h> sysinfo() SI_*
77003-05-29 ccode.h: rework for extensibility, drop obsolete mematoe(), memetoa()
77103-05-28 regex/*: recode to use isw*() directly when needed, is*() otherwise
77203-05-27 features/vmalloc: fix _std_malloc test
77303-05-25 misc/optget.c: fix optstr() ???* internal options
77403-05-24 misc/optget.c: fix (ancient) argv null dereference
77503-05-23 comp/getcwd.c: don't intercept on _WINIX -- unreliable st_ino
77603-05-22 sfio/sfsprintf.c: n<0 => don't append '\0'
77703-05-18 misc/fts.c: re-stat FTS_DP to update nlink/times
778	 misc/fts.c: add FTSENT.stack to eliminate getlist() recursion
779	 regex/ucs_names.h: use "..." catenation to placate some cc's
78003-05-11 string/strtoi.h: handle "-" "+" "0x" "11#"
78103-05-09 vmalloc/vmbest.c: large memory allocation tweaks
78203-05-06 misc/optget.c: fix getopt_long() prefix==1 bug that missed short flags
78303-04-27 comp/system.c: handle <ast_map.h>
78403-04-24 vmalloc/vmmopen.c: drop dup <unistd.h>
78503-04-21 tm/tmdate.c: fix next hour/min logic
78603-04-15 vmalloc/malloc.c: intercept __malloc() along with __libc_malloc()
787	 string/strdup.c: intercept __strdup() along with __libc_strdup()
788	 features/mmap: consolidate from features/(lib|sfio|vmalloc)
789	 add _NO_MMAP==1 to disable all mmap()/munmap() calls
790	 path/pathposix.c: add
79103-04-14 comp/setlocale.c: fix debug_mbtowc() return value for *s==0 || n < 1
792	 comp/iconv.c: fix error return errno values
79303-04-11 misc/stk.c: fix stkgrow() realloc bug
79403-04-05 string/tok.c: support readonly single token input strings
795	 disc/sfdcdio.c: fix F_DIOINFO and FDIRECT #ifdef's
796	 include/ast_std.h: allow _LARGEFILE64_SOURCE on __hppa
797	 features/common: fix `tst _foo_' => `tst foo_' typo
798	 features/float: fix `tst _foo_' => `tst foo_' typo
800	 comp/omitted.c: fix pathconf => _pathconf => _ast_pathconf loop
80103-04-03 features/float: add _ast_no_um2fm: no usinged intmax => floatmax cast
802	 vmalloc/vmbest.c: add getenv("VMCHECK") to initialize Vmcheck
80303-03-28 include/ast_dir.h: add D_TYPE; { D_FILENO D_TYPE } must be #ifdef'd
804	 misc/fts.c|getcwd.c|glob.c,preroot/getpreroot.c: add D_FILENO #ifdef's
805	 Makefile: make sure _BLD_ast is defined for all compiles
80603-03-27 ast_vfork.h: generate from features/vfork to pick up headers/pragmas
80703-03-25 comp/omitted.c: drop free() of live environ
808	 path/pathshell.c: allow trailing .exe -- pox on that
809	 string/strtoi.h: fix bug leading 3 digits before thousands sep bug
810	 string/(fmt|str)[gu]id.c: we know root when we see it
81103-03-24 misc/optget.c: handle : and ? in := default value
81203-03-21 ast_std.h: drop all spawn*() but spawnveg()
813	 obsolete/spawn.c: add for dropped spawn*()
814	 features/lib: _use_spawnveg if spawnveg() is a win over fork()/exec()
815	 features/lib: drop NutForkExecve() and _map_spawnve
816	 features/lib: fix memccpy test to clean up /tmp droppings
817	 comp/spawnveg.c: call posix_spawn() if implemented
818	 comp/omitted.c: add spawnve() intercept
819	 comp/getoptl.c: set getopt_long() optind even if no options
820	 tm/tmfmt.c: add %Q<delim>recent<delim>distant<delim>
821	 misc/optget.c: fix trailing '*' for option and option args
822	 sfio/sfmode.c: getenv("_AST_SFIO_OPTIONS") [,]SF_LINE[,] for fd {0,1,2}
823	 vmalloc/*: kpv sync for uwin build independent of libast
82403-03-18 port/astconf.c: switch to dynamic string values (saves 7K data/bss)
825	 string/strmatch.c: switch to dynamic regex cache (saves 3K data/bss)
826	 regex/regcoll.c,ucs_names.h: initialize rw tables from smaller ro data
827	 features/lib: add vfork test for passing SIG_IGN across exec
828	 features/lib: add spawn test for passing SIG_IGN across spawn
82903-03-17 comp/omitted.c: unlink() renames to .deleted dir in case file open
830	 sfio/sfpopen.c: handle mode "" for spawn with no pipe
831	 features/float,comp/frexp.c,comp/frexpl.c: add pow2() table alternative
83203-03-12 features/lib: fix linux.ia64 memccpy() tests -- now its their turn
833	 features/vmalloc: fix /dev/zero test
834	 features/align: _ast_intmax_t and _ast_fltmax_t join the union
835	 misc/stk.c: fix struct frame size to align data
836	 disc/sfdcdos.c: change sfslen() => sfvalue(f)
83703-03-10 misc/optget.c: handle [f\f:x:lll\f?ddd]
83803-03-07 port/astconf.c: uninitialized CONFORMANCE + POSIXLY_CORRECT => standard
83903-03-05 comp/omitted.c: make sure at least /bin is in PATH to find cygwin dlls
84003-03-02 path/pathshell.c: write access to /bin is effectively root
84103-02-28 features/float: add (FLT|DBL|LDBL)_U?(LONG|LONGLONG|INTMAX)_(MIN|MAX)
84203-02-25 features/lib: change vfork() test to use _exit() instead of exit()
84303-02-23 include/error.h: update ERROR_VERSION for error_info.number space
84403-02-22 comp/conf.sh: wrap ksh check in eval to avoid premature exit
84503-02-21 misc/fts.c: verify chdir(..) to avoid malicious dir rename()
84603-02-19 string/strtoip4.c: isspace() instead of ' '||'\t'
84703-02-17 regex/regcomp.c: fix stats.l REX_REP logic that botched REX_BM
84803-02-13 string/base64.c: handle catenated encodings
84903-02-11 features/libpath.sh: change LIBPATH to <dir>[:<env>[:<pat>]][,...]
85003-02-07 path/pathfind.c: allow "/dev/null" to be PATH_REGULAR
85103-02-06 include/ast.h,fmtquote.c: add FMT_ALWAYS|FMT_ESCAPED|FMT_SHELL|FMT_WIDE
85203-02-05 tm/tmdate.c,tm/tmword.c,string/strelapsed.c: '_' treated like ' '
85303-02-01 string/strelapsed.c: handle ps style [day-][hour:]min:sec
85403-01-31 port/astlicense.c: fix author=* match
85503-01-30 include/tm.h: add tmisleapyear() macro
85603-01-29 comp/getopt.h,comp/getoptl.c: add gnu getopt_long(), getopt_long_only()
857	 include/ast_getopt.h: for non-gnu part of comp/getopt.h
858	 include/ast_std.h: include <ast_getopt.h> instead of <getopt.h>
85903-01-28 ast.h,string/base64.c: add base64encode() and base64decode()
860	 path/pathfind.c: verify S_ISREG()
86103-01-24 path/pathexists.c: fix abs dir bug and deal with case ignorance
86203-01-23 path/pathpath.c: honor PATH_ABSOLUTE for the easy case too
86303-01-22 path/pathprobe.c: fix search to find both the probe script and command
86403-01-17 misc/magic.tab: application/zip => appplication/(gzip|pzip|zip)
86503-01-14 misc/optget.c: change href="" to href="."
86603-01-10 include/ast_std.h: strtold() import hackery for static __CYGWIN__
86703-01-03 include/regex.h,regex/regcomp.h: add REG_SHELL_GROUP
868	 include/ast.h,string/strmatch.c: add STR_GROUP for REG_SHELL_GROUP
86902-12-15 include/error.h: errorcontext => Error_context_s (compatible til 2004)
87002-12-06 misc/sigdata.c: add NoF(sigdadata) -- why nmake was uninterruptable!
87102-12-03 comp/omitted.c,features/omitted: handle cygwin alarm() return botch
87202-11-27 misc/swapop.c: op=3,size=4 => op=7
873	 string/strlcat.c,strlcpy.c: fix uwin decl clash
87402-11-26 sfio/sfvprintf.c: fix sfsprintf() '\0' termination bug
87502-11-22 misc/glob.c: move static struniq() to libast extern
876	 string/fmtversion.c,include/ast.h: add fmtversion
87702-11-18 string/strncopy.c: add
878	 misc/magic.tab: list size for magicid.h magic
87902-11-14 sfio/sfvprintf.c: add %#c for C escapes
880	 include/error.h: add ERROR_NOTIFY context flag for builtin commands
88102-11-11 string/strtoi.h: add S2I_size for strnto*() size_t 2nd arg
882	 sfio/sfstrtof.h: add S2I_size for strnto*() size_t 2nd arg
883	 comp/putenv.c: add setenv() and unsetenv() wrappers for setenviron()
88402-10-31 path/pathfind.c: add dir of including file to the pathinclude() list
885	 misc/optesc.c: add
88602-10-30 string/strtoip4.c: set next char pointer even on error
88702-10-29 comp/resolvepath.c: add (size_t version of realpath())
888	 misc/mime.c: fix mimehead() to ignore null content values
88902-10-28 misc/glob.c: add GLOB_STARSTAR for /**/ and GLOB_NOTDIR optimization
89002-10-27 string/struniq.c: add
89102-10-23 features/common: fix off-by-one loop check
89202-10-18 include/ast_std.h: avoid off_t,ftruncate,lseek,truncate redefinitions
89302-10-17 misc/mime.c: handle type/* match, fix bogus header parse
89402-10-04 sfio/sfstrtof.h: S2F_static <0:export =0:private >0:static
89502-10-02 features/common: don't define _WIN32; define _WINIX => unix on windows
896	 features/tty: finally stomp the bsd _POSIX_VDISABLE redefinition
897	 misc/fastfind.c: add more specific findwrite() error messages
898	 comp/omitted.c: fix cygwin utime() to update st_ctime
899	 comp/strtol.c,strtoul.c: __CYGWIN__ static link workaround XXX
900	 string/fmtls.c,fmttime.c: tmform() => tmfmt()
90102-09-22 port/astconf.c: return values in fmtbuf() buffer instead of stack
902	 port/mnt.c: don't set MNT_REMOTE for win32 ?:\* paths
903	 sfio/sfvscanf.c: _sfdscan() is library global (not static)
90402-09-21 path/pathkey.c: add tool arg for mamake compatible hash
905	 features/fcntl.c: handle iffe _hdr_lcl_* => _lcl_* change
90602-09-15 comp/conf.sh: fix enum vs. macro test
907	 cdt: kpv sync
90802-09-11 ast.h,features/common: move _WIN32 macro init to features/common
909	 features/common: enable __EXTERN__ and __DEFINE__ for _WIN32&!_UWIN
910	 features/float: add -lm to _ast_*_nan_init tests
911	 vmalloc: kpv sync with vmresizef => vmgetmem
912	 features/iconv: must have both <iconv.h> and iconv_open()!
913	 features/vmalloc: alloca test must compile *and* link
914	 sfio/sfvscanf.c,sfstrtof.h: add flag arg to char get, fix NaN loop
91502-09-10 vmalloc/vmhdr.h: enable getpagesize() and sbrk() prototypes
916	 features/fcntl.c: enable mmap64() prototype
917	 include/ast_windows.h: windows.h wrapper with ast namespace workarounds
91802-09-07 misc/mime.c: fix quoted value parse bug that ate the whole line
91902-09-05 features/vmalloc: add free() to _std_malloc test
920	 include/ast.h: NoF(x) now defines _DATA_x for !_BLD_DLL too
921	 tm/tmlocale.c: { C POSIX en } == unix dadgummit
92202-08-29 path/pathfind.c: initialize Dir_t.next=0
92302-08-28 uwin/rint.c: update
924	 features/libpath.sh: "bin" is now the default value
92502-08-22 vmtrace.h: add for debugging
92602-08-20 misc/magic.c: convert to use <cdt.h>
927	 vmalloc/vmresizef.c: add for generic discipline resizef default
928	 string/strelapsed.c: allow long time component names
92902-08-19 misc/optget.c: add `.fp 5 CW' to --nroff output
930	 string/(fmtfs|fmtuid|fmtgid|strgid|struid).c: convert to use <cdt.h>
931	 include/dt.h,cdt/dtnew.c: add for dtopen() in specific vm region
93202-08-13 comp/omitted.c: fix bzero logic for e.g. unixware.i386
933	 include/ast.h: add fmtbase->fmtbasell; swap in 2003-09-01
93402-08-12 regex/regnexec.c: fix REG_MINIMAL REX_DOT mb bug
93502-08-08 features/iconv: <ast_common.h> instead of <sys/types.h> <ast_common.h>
93602-08-07 regex/regcomp.c: recognize anchors in BRE subexpressions
93702-08-06 comp/iconv.c: handle win32 cpNNNN == windows-NNNN aliases
93802-08-05 cdt/*: sync with kpv src
93902-08-02 features/iconv: include sys/types.h for ast_types.h
94002-08-01 misc/magic.c: magic file "." names the default
941	 misc/magic.c: handle addr type (from irix string)
942	 features/lib: move malloc tests to features/vmalloc
943	 features/vmalloc: snarf tests from features/lib
944	 vmalloc/*: sync with kpv src
945	 comp/libc.c: dropped -- __libc_* intercepts moved to vmalloc/malloc.c
94602-07-30 features/lib: handle __libc_malloc() in _std_malloc test
947	 vmalloc/malloc.c: add gnu pvalloc()
948	 features/vmalloc: fix alloca check
94902-07-29 features/limits.c: handle netbsd guards
95002-07-27 sfio/sfpoll.c: handle rw pipes
95102-07-25 features/iconv: include ast_types.h for size_t in ast_iconv.h
95202-07-18 apply LARGEFILE64 header prototype clash patches
953	 misc/optget.c: __EXTERN__ _opt_info_ instead of opt_info
95402-07-17 ast_std.h: memzero() now defaults to memset() instead of bzero()
95502-07-16 ast_std.h: add ast.env_serial
956	 misc/setenviron.c: increment ast.env_serial
957	 include/tm.h: tmset() now calls tminit() directly
958	 tm/tminit.c: check ast.env_serial for env change
959	 tm/tmfix.c: speed up for large values of tm_mday
96002-07-15 comp/fnmatch.c: fix memory leak caused by missing regfree()
961	 comp/strstr.c: fix broken interpretation and implementation
962	 comp/iconv.c: intercept (but no-op) null to and from buffer pointers
96302-06-27 ast_std.h: map _sysconf => _ast_sysconf for sun
96402-06-26 cdt,sfio,vmalloc: kpv sync -- is this ever easy?
96502-06-24 sfio: kpv sync, vfwscanf(),fputw() fix (wcslen(x)*sizeof(wchar_t)!!)
966	 misc/fts.c: fix symlink chdir() optimzation bug
96702-06-11 sfio/sfwrite.c: string to file fix
968	 Makefile: __OBSOLETE__==20020101
96902-06-01 regex/regcomp.c: REG_DELIMITED now consumes the delimiter
97002-05-31 regex/reglib.h,regcomp.c,regnexec.c: null subexpression fixes
97102-05-24 misc/fts.c: disable dir link counts in 3d
972	 misc/magic.c: fix "*(mkfile)" sh pattern to "*@(mkfile)"
97302-05-20 regex.h,regex/regsubcomp.c,regex/regsubexec.c: add
974	 regex/regsub.c: deprecate
97502-05-16 tm/tmfix.c: fix '60+n min/sec ago' bug for n min/sec after the hour
97602-05-14 regex/regsub.c: fix (^|x) null match early termination bug
97702-05-13 dir/dirlib.h: drop errant extern==__EXPORT__
978	 features/uwin: add uwin lib tests
979	 uwin/*.c: check features/uwin for stubs
980	 features/float: add nan representation generation
981	 sfio/sftable.h: used _ast_*_nan_init for huge values
98202-05-09 misc/fts.c: fix virtual top to force ``child'' stat()
983	 features/common: define va_copy() only if not in <stdarg.h>
98402-05-01 string/strtoip4.c: cisco inverted quad mask must have 4 parts
98502-04-30 misc/magic.tab: fix pzip version check
98602-04-19 string/strtoip4.c: handle cisco inverted quad mask n.n.n.n/i.i.i.i
98702-04-18 misc/fts.c: add chdir() verification stat() optimizations
988	 path/pathkey.c: check PROBE_ATTRIBUTES for list of vars
98902-04-12 port/astlicense.c: type=open tweak, fix author list spacing
99002-04-11 regex/regcomp.c: check for pattern number overflow
99102-04-05 tm/tmfmt.c: add %u
99202-04-04 sfkeyprintf.c: fix %c numeric value
993	 path/pathpath.c: check plain path first -- duh
99402-04-03 misc/fts.c: fix (FTS_PHYSICAL|FTS_NOSTAT) stat optimizations
995	 ftwalk.c: only clear FTW_DELAY if FTW_CHILDREN
996	 ftwalk.h: add FTW_NSOK for FTW_DELAY
99702-03-29 ast.h: drop strerror() prototype -- already in <ast_std.h>
998	 features/stdio: check for _SFIO_H redundant _Sfstd* declarations
99902-03-26 misc/glob.c: fix GLOB_LIST gl_flags values
100002-03-24 port/mnt.c: update bsd fstype name and mount option logic
100102-03-23 Makefile: add ast_wchar.h to the .check.hdr list (for mamake)
100202-03-17 features/stdio: hack around g++ 3.* clashes
1003	 Makefile: add ast_nl_types.h to the .check.hdr list (for mamake)
1004	 string/strtoip4.c: fix validity check bug that only checked last part
100502-03-14 misc/optget.c: fix --keys to not expand inline \f...\f
100602-03-12 port/astlicense.c: add type=free
1007	 path/pathaccess.c: sibling ".." search ignores relative dirs
1008	 sfio/sfvscanf.c: sfstrtof get() must return 0 on eof
100902-03-11 path/pathexists.c: check path by pairs checking {ENOTDIR,ENOENT}
101002-02-14 features/float: copy local min/max macros to avoid printf roundoff
1011	 features/wchar: include <ast_common.h>, not <ast_std.h>
1012	 misc/magic.c: match[]=>matches[] to fix K&R match() macro conflict
1013	 include/vmalloc.h: include <stdlib.h> for !_PACKAGE_ast
1014	 uwin/mini.sym: add sprintf (now required by features/common)
1015	 regex/regnexec.c: truncate wide chars for <ctype.h> functions
1016	 Makefile: fix MAM ast_common.h sequencing bug by making it first
1017	 cdt/dthash.c: fix DT_DELETE memory leak (DT_DETACH typo)
1018	 cdt/dthash.c: fix DT_DELETE double free (dt->data->here typo)
1019	 regex/regcomp.c: fix recomb() to reject RE with backref
1020	 features/iffeio: explicitly generate stdio.lcl
1021	 stdio: add {fcloseall,f(get|put)s_unlocked,fmemopen,getdelim,getline}
1022	 tmmake,tmtime: allow negative time_t if native localtime/gmtime do
1023	 tmdate: allow years before 1969
1024	 fmtfmt: add
1025	 include/ast.h: add { PATH_TOUCH_CREATE PATH_TOUCH_VERBATIM }
1026	 Makefile: add std/*.h for std header iffe overrides
1027	 comp/iconv.c: fix non-C win32 sfreserve() loop
102802-02-11 features/common: separate long long / long double tests
1029	 features/common: verify printf handles long long / long double
103002-02-02 include/ast_std.h,sfio/sfhdr.h: drop _hdr_locale tests -- always on now
1031	 include/ast_std.h: trust _UWIN <unistd.h>
103202-01-31 port/mnt.c: add aix options field
103302-01-30 comp/strstr.c: add for ancient s5
1034	 stdio/_flsbuf.c: only on systems that transfer to native (e.g., uwin)
1035	 string/strtoi.h: cat min/max error return values
103602-01-28 features/tty: add cf[gs]et[io]speed macros for <termio.h>
1037	 comp/rename.c: punt to (ancient) /usr/lib/mv_dir on EISDIR
103802-01-24 sigcrit.c: fix SIGCLD!=SIGCHLD interrupt loop
1039	 sfvprintf.c: convert fast io macros to functions for uts.390 cc
1040	 string/strtoi.h: drop #pragma prototyped for standalone sfio
1041	 sfdcsubstr.c: rename from sfdcsubstream.c for 14 char fs
104202-01-22 execlp,execvp,execvpe,spawnlp,spawnvp,spawnvpe: fix __EXPORT__
1043	 spawnlp,spawnve,spawnvp,spawnvpe: handle ms mode arg -- barf
1044	 sftable.c: ifdef hacks for _WIN32&_ALPHA_ fp exception
1045	 _stdfun.c: add _UWIN&_ALPHA_ iob map
104602-01-18 sfio/sfstrtof.h: drop #pragma prototyped for standalone sfio
104702-01-17 features/hdr: don't include <stddef.h> after it doesn't check out!
104802-01-16 misc/magic.c: add version type for YYYYMMDD or [a.][b.]c.d
1049	 misc/magic.c: recode mime %s parse -- sensible and no buffer overflow
105002-01-15 misc/magic.tab,magicid.h: add generic binary magic number and header
105102-01-12 tm/tmlocale.c: override win32 default date for {C,POSIX,en} locales
1052	 comp/omitted.c: fix cygwin workaround logic bugs
105302-01-09 stdio/fseeko.c,ftello.c: add from UNIX98
105402-01-08 comp/conf.sh: use $cc instead of cc
105502-01-07 string/strlcat.c,string/strlcpy.c: add bsd api
105601-12-18 comp/conf.tab: fix LFS_CFLAGS default for sun _CS_LFS_CFLAGS botch
1057	 features/common: add hdr stdarg test
1058	 tm/tmdate.c: handle YYYY/MM/DD
105901-12-10 misc/magic.tab: add generic 0x00010203 binary magic
106001-12-03 path/pathprobe.c: return HOME relative path if readonly/non-suid fs
106101-11-30 misc/optget.c: add simple cache for repeat offenders (like ksh read)
1062	 sfio/sfhdr.h: preserve errno across SFMMSEQON-SFMMSEQOFF
106301-11-29 magic.tab: fix GIF version number listing
106401-11-28 string/fmtbase.c: p!=0 => base always included in output
106501-11-26 misc/fts.c: empty path is an error
106601-11-14 misc/optget.c: fix --?+SECTION queries to include paragraphs
106701-11-20 regex/regnexec.c: fix REG_MINIMAL character class match bug
106801-11-19 features/lib: retain _lib_confstr for all solaris releases
106901-11-16 comp/setlocale.c: fix !_lib_setlocale typo
107001-10-31 regex/ucs_names.h: add string catenation to keep line length low
1071	 misc/fastfind.c: handle gnu slocate db read
1072	 misc/optget.c: add --?+SECTION queries
1073	 comp/fnmatch.h: add FNM_NOSYS
107401-10-30 tm/tmdate.c: fix cron specs when both wday and mday are specified
107501-10-20 misc/glob.c: fix bug that called \ trim() twice on same path
1076	 misc/glob.c: fix \ trim() bug that restored / to wrong position
1077	 string/fmtre.c: fix { ^ . $ } translations
1078	 misc/optget.c: use original string if translation fails -- duh
1079	 sfio/sfhdr.h: assume <errno.h> assigns proper atttibutes to errno
1080	 comp/regcmp.c: __ia64 workaround fixed by proper CC.DLL probe
1081	 comp/getdate.c: __ia64 workaround fixed by proper CC.DLL probe
1082	 features/lib: add lib getdate
108301-10-18 features/lib: check for strtod static link collision
1084	 features/float: add another signed cast for old bsd cc
1085	 features/wchar: add <stdlib.h> <stdio.h> before <wchar.h> for old bsd
108601-10-17 sfio/sfcvt.c: limit max precision to { FLT_DIG DBL_DIG LDBL_DIG }
1087	 sfio/sfcvt.c: fix %[aA] format to always have leading 0[xX]1.
1088	 sfio/sfvprintf.c: handle %C %lc %S %ls for wchar_t args
1089	 sfio/sfvscanf.c: handle %C %lc %S %ls for wchar_t args
1090	 string/fmtmode.c: fix bug that omitted trailing '\0'
109101-10-12 misc/optget.c: . => \&. for --??nroff
1092	 comp/wc.c: fix mbstate_t initialization typo
1093	 features/float: fix max integer / float loop termiation
1094	 features/float: fix LDBL_UINTMAX_MAX typo that did DBL_UINTMAX_MAX
109501-10-11 include/sfio.h: fix _Sfstd* import/export
1096	 features/common: fix _UWIN __DYNAMIC__() definition
109701-10-06 features/fcntl.c: { O_BINARY O_TEXT } default to 0
1098	 features/omitted: add for comp/omitted.c
1099	 sfio/sfopen.c: O_BINARY default for _WIN32&&!_UWIN
110001-10-05 misc/glob.c: fix `\(x/*' GLOB_NOMATCH bug that returned `(x'
1101	 misc/optget.c: fix localization lookup that didn't drop doubled : ? ]
110201-10-04 comp/setlocale.c: handle sizeof(wchar_t)!=4 in debug locale
1103	 comp/conf.sh: handle sytems where _SC_* is both an enum and a macro
110401-09-25 astconf: add LIBPREFIX
110501-09-20 features/common: add __DYNAMIC__() for dll externs
110601-09-19 cdt: kpv update
1107	 mb*() macros: update for ksh conversion, extend debug locale
110801-09-16 tm/tmlocale.c: add compiled in defaults for C locale
1109	 misc/glob.c: add gl_nextdir callback for GLOB_COMPLETE
111001-08-14 clarify _WIN32 vs. _UWIN vs. __CYGWIN__
1111	 tminit: fix standard & daylight initialization
111201-09-11 pathnative.c: add for native fs representation
1113	 regex.h: fix regerror_t prototype
111401-09-04 regex/regnexec.c: fix REG_ICASE for multi-char collating elements
1115	 tm/tmlocale.c: fix old ascii LC_TIME load
1116	 locale*: add new LC_* categories
1117	 comp/omitted.c: add CYGWIN workarounds
1118	 features/lib: add CYGWIN workarounds
111901-08-11 features/common: some compilers have long long but no LL constants!
1120	 features/lib: add mmap64 implementation test (for linux.s390)
1121	 regex/regcomp.c: fix \ in [...] parse
1122	 setlocale: retain user locale spelling in setlocale() return value
1123	 features/limits.c: don't include ./limits.h -- duh
1124	 fmtesc: don't escape multibyte chars
1125	 tm/tmlocale.c: fix native C locale default
112601-08-08 features/float: some compilers (msdev) forget long long vs. double
112701-07-31 misc/optget.c: handle suboptions
112801-07-27 cdt.h: add DTDISC()
112901-07-17 iffeio.h: move to include for stdio bootstrap iffe workarounds
113001-06-25 regex: perl extensions added and tested
113101-06-21 misc/error: add ERROR_OPTIONS=prefix=string for message processing
113201-06-15 string/chresc: only 2 hex digits max for \xxx
1133	 regex/regsub: handle REG_SHELL ~(nnn) rhs backrefs
113401-06-11 regex: handle embedded \0 in pattern and subject string
1135	 regex: add (?nnn) for backrefs > 9
1136	 comp/fnmatch: add FNM_LEADING_DIR for gnu compatibility
1137	 features/float: _ast_flt_unsigned_max_t for bsd.i386 omission
113801-06-06 misc/optget.c: add o option for old ps,ar,tar with optional leading -
1139	 regex/regcomp.c: REG_LENIENT|REG_DELIMITED \<newline> => <newline>
1140	 regex/regcomp.c: REG_LENIENT \000 => NUL
114101-06-04 features/dirent: replace Makefile hack with iffe semi-hack
1142	 regex/regnexec.c: negation must also check REG_SHELL_DOT
114301-06-03 sprintf.c: change buf size from SF_BUFSIZE to INT_MAX
114401-05-31 glob: fix gl_fignore to ignore leading . by default
1145	 features/lib: add botch_d_ino_dirent64 for linux botch
114601-05-25 port/lc.tab: add a few missing language_territory's
114701-05-23 string/chresc: \C[.collation-element.]
1148	 fmtmatch,fmtre: update for <regex.h> syntax extensions
114901-05-21 regex: add perl extensions, unicode names for collation elements
115001-05-11 string/chresc: \e == \E == escape, \cX == control X, \x{..} == \x..
115101-05-09 path/pathtemp.c: pathtemp(0,0,0,"/private",0) for mode S_IRUSR|S_IWUSR
1152	 port/touch.c: handle utime(2) EPERM to fix bug that truncated
1153	 regex: change REG_MINIMAL to avoid negation -- much faster now
115401-05-08 *.h: add some off_t macro guards for suse linux
115501-05-03 regcomp.c: optimize ((x)!)* to ((x)!)
1156	 wchar: add <wchar.h> and stdio wchar routines
115701-05-02 feaures/wchar: add <wchar.h> intercept, add stdio wchar functions
115801-05-01 string/strtoi.h: signed strtoi accepts qualified unsigned constants
115901-04-30 comp/setlocale.c: fix code that relied on 2 simultaneous getenv()'s
1160	 tm/tmlocale.c: check for UTF-8 encoded LC_TIME files
1161	 misc/magic.tab: add utf-8 and utf-16 U+FEFF magic
116201-04-26 features/common: some cc's have _ast_int8_t but not LL constants
116301-04-24 features/lib: add _std_strtod for mac os X
116401-04-23 ccode: add CC_sub for ms embedded EOF char on ebcdic -- no joke
116501-04-20 iconv: handle ebcdic<=>utf
1166	 mc.h,mc.c: add mcindex()
1167	 ast_std.h: add AST_MESSAGE_SET
116801-04-18 features/libpath.sh: fix mvs probe
1169	 *: sundry mvs fixes
1170	 glob: fix GLOB_NOCHECK to avoid stat() and properly trim patterns
117101-04-01 strtod,strtold: add
1172	 strtol,strtoul,strtoll,strtoull,strton,strtonl: handle locale & ERANGE
1173	 sfvprintf,sfvscanf: handle locale decimal_point,thousands_sep
1174	 sfvprintf,sfvscanf: handle %a,%A
1175	 setlocale: add LC_NUMERIC decimal_point,thousands_sep init
1176	 ast_std.h: __OPTIMIZE_SIZE__==1 to disable non-std __GNUC__ inlines
1177	 pathexists: path cache to cut down pathpath() access(2) calls
1178	 features/stdio: __FILE_TAG == _sfio_s for solaris
117901-03-23 iconv: fix iconv_move buffer boundary bug that stopped at 1 block
118001-03-19 glob: add GLOB_AUGMENTED
1181	 regex: REG_SHELL syntax error implies REG_LITERAL match
1182	 strto[ln][ll]: add overflow checks
118301-03-17 locale: reimplemented to provide canonical locale namespace
1184	 locale: add LC_ALL=local for local system user default
1185	 tm.h: TM_*_3 => TM_*_ABBREV
1186	 tmfmt: handle standard E and O format modifiers
1187	 tmlocale: consult nl_langinfo() if defined
1188	 fmtquote("\"",1) => shell quote
118901-03-08 regex: handle multibyte chars and collation classes
1190	 strmatch,strgrpmatch: now a wrapper on regex
1191	 ast_std.h: add mb*() multibyte and collation support
1192	 sfvscanf: handle locale decimal and thousand
1193	 proc*,system: handle ignored SIGCHLD
1194	 sfkeyprintf: handle %*C
119501-03-06 locale: add locale data cache for efficient multiple locale switching
1196	 optget: fix LC_MESSAGES!=C --man bug
119701-03-01 Makefile: HEADEROPT is not optional for win32.*
1198	 comp/syslog.h: comply with the de factos
1199	 optget(): fix \f...\f stack bug that referenced data after pop
120001-02-27 *locale*: a batch of fixes for native LC_MESSAGE&LC_TIME hooks
120101-02-22 pathprobe: reprobe test now checks probe.ini too
1202	 sfio_s.h: advertize public Sfio_t members with _ prefix
1203	 sfio.h,features/stdio: add <sfio_s.h> reference
1204	 sfhdr.h: map <sfio_s.h> _foo to foo
120601-02-14 comp/conf.sh: probe <unistd.h> for _(CS|PC|SC)_* getconf symbols
1207	 stdio/*: update for uwin stdio.dll binary compatibility
1208	 sfread: finally fixed premature pipe read EOF bug
1209	 fmtscale: format tenths for number > 0 && number < 10
121001-02-09 _sfmode(),_sftype(),_Sfextern: UWIN binary stdio compatibility exports
121101-02-08 sfgetm,sfputm,_sfputm: fix max clash with k&r max() macro
1212	 setlocale: undef valid for sun4 k&r valid() macro
121301-02-07 catopen.c: don't do native catopen for the debug locale
121401-02-06 sfraise.c: add SF_FINAL check to avoid (posibly) freed disciplines
121501-01-01 features/common: fix uwin __DEFINE__
1216	 sftable: initialize decimal and thousand
1217	 magic.tab: add corel wordperfect document
1218	 syslog: add LOG_LEVEL, add '\n' only if needed
1219	 include/tm.h: #undef daylight for _WIN32
1220	 sfio.h: add _SF_APPEND and _SF_CLOSE for native namespace incursion
1221	 ast_std.h: add AST_LC_multibyte for MB_CUR_MAX>1
1222	 setlocale: set AST_LC_multibyte
1223	 strmatch: check AST_LC_multibyte
1224	 features/limits.c: add _BITS_POSIX1_LIM_H guard for linux
1225	 features/libpath.sh: fix for aix LIBPATH
1226	 procopen,procclose: block SIGCHLD if PROC_FOREGROUND (e.g., system(3))
1227	 optget.c: add enumerated option argument values
1228	 optget.c: add <!--INTERNAL--> for private --html
1229	 optget.c: fix memory leak that hit shell builtins hard
1230	 sfio: drop sfread small chunk logic
123100-12-25 mnt.c: handle " and ' quoting for fstab
1232	 sftmp.c: let pathtemp() open the fd O_EXCL
123300-12-15 conf.sh: add -v for verbose trace
1234	 features/(limits|unistd).c: no FEATURE/types because of _POSIX_SOURCE
1235	 features/time: add default for CLOCKS_PER_SEC
1236	 features/lib: std_malloc now handles NeXT
123700-12-13 strton: recognize qualifier only if preceded by a digit
1238	 features/lib: change return in vfork() test to exit() for linux sparc
1239	 fmtquote: fix $'...' quote logic
124000-12-11 tmdate: fix cron format bug that mishandled months
124100-12-01 optget: handle $Id: ... $ in --?-version
1242	 features/fcntl.c: fix _STDPP_ mmap munmap
124300-11-27 magic: drop dup sfclose() in load()
1244	 optget: handle error_info.id==0
124500-11-22 features/stdio: add _FILEDEFED for sol9.sun4
1246	 strton,stronll: handle [u|U][l|L][ll|LL] qualifiers
124700-10-31 tmdate: add TM_DATESTYLE and mmddHHMM[cc]yy
1248	 astlicense.c: #include <hashkey.h> MAM workaround
1249	 astlicense.c: check for non-empty CONTRIBUTORS
125000-10-26 features/stdio: add _FILE and __FILE for gnu
1251	 misc/stk.c: fix stack pointer check off-by-one (dgk does it too!)
125200-10-23 syslog.h: sync with bsd values
125300-10-18 _STUB_* now functions instead of common symbols
1254	 all extern data declared with definition to eliminate common symbols
1255	 fastfind: add mac/bsd /var/db/locate.database
125600-10-17 features/lib: add apple osX (darwin.ppc) workarounds
125700-10-12 add: fmtbuf(), fmtclock(), fmtip4(), strtoip4()
1258	 fmt*() now use fmtbuf() for tmp fmt buf allocation
125900-10-05 regex: add REG_DISCIPLINE and regdisc_t for alloc/error disc
126000-09-29 features/lib: pipe_rw==0 for sgi: boot rw == bin incompatibility
126100-09-21 astlicense: handle \' and \" in license values
126200-09-20 sfwrite: fix write() error in sfprintf() loop
126300-08-11 hdr,vmhdr.h: check/hide { getpagesize sbrk } prototypes
1264	 astlicense: add noncommercial
126500-07-31 fflush: don't seek on pipes
1266	 sfresize: add
1267	 setlocale: fix bad newof() call
126800-06-01 strmatch: initialize match.current.beg[0] to avoid dump at line 670
1269	 sfio/stdio: a few more errno tweaks
1270	 astquery: sfstdin/sfstderr by default
127100-05-26 sfmode: errno=EBADF for invalid stream use
127200-05-22 rewind: fix for xopen test
127300-05-18 mcfind: returns absolute path
127400-05-16 optget: --keys must catch \f...\f too
1275	 translate,mc: errno cleanup
127600-05-09 magic: add netbsd binary magic
1277	 fts: PATH_RESOLVE!=logical => FTS_SEEDOTDIR
1278	 ftwflags: call fts_flags()
1279	 astconf: astconf(0,0,0) re-syncs with _AST_FEATURES
128000-05-08 optget: --usage & --keys for last -catalog group only
128100-05-02 iconv.c: add; use codes[] in ccmapid() and ccmapname(); "" for native
128200-05-01 pathtmp: copy env values (libshell or putenv may change)
128300-04-01 optget: drop bar from [-foo?bar] for --??keys
1284	 sfvscanf: add %X -- duh
1285	 features/common: fix va_listval() for power pc
1286	 findopen: fix FIND_GENERATE codes file search
1287	 magic: add ERROR_translate() and msgcat.key
1288	 tmlocale: add for LC_TIME locale info
1289	 tmlex: check tm_info.format and tm_data.format
1290	 tmfix: fix for tm_wday special case (via nl_langinfo on LC_TIME fields)
1291	 strftime: fix for nl_langinfo special case
1292	 ast_std.h: provide LC_* defauls if not defined
1293	 sfnew: check ${_AST_sfio_bufsize} -- don't tell kpv
1294	 catopen,nl_types.h: add intercept to mc* routines
1295	 magic.tab: add ast message catalog
1296	 strerror: add _ast_strerror intercept with ERROR_translate("errno")
1297	 fmtquote: escapes >0177 only if (flags&2)
129800-03-17 feof: stdio macro functions only for _UWIN
1299	 optget: proper ERROR_translate() calls
1300	 astgetconf: add for thread safe error message control
1301	 astlicense: fix type=special but with non-null notice
1302	 errorx: add for ERROR_translate() support
1303	 ERROR_translate: add locale id args for alternate dictionary
1304	 option.h: move _OPT_PRIVATE_ to pointer to avoid dll size mismatch
1305	 ftwalk: fix FTW_CHILDREN bug that hit top level non-dirs twice
1306	 translate.c: default error_info.translate
1307	 astconf: fix dup loop thrash that never returns, add _AST_VERSION
130800-03-10 ast_std.h: do _LARGEFILE_SOURCE initialization before std headers
1309	 fmtquote: handle $'...' quotes
131000-03-07 optget: fix numeric option support test
1311	 sfkeyprintf: add %q for '...' quoting with ansi escapes
131200-03-06 features/stdio: fix _sfflsbuf prototype (dingold@gte.net)
131300-02-14 pathtmp: fix pid cache bug that sometimes repeated after ~10 attempts
1314	 optget: "..." attribute quote
1315	 pathfind: eliminate *: prefix in lib, not type
1316	 proc: PROC_FOREGROUND for system(3) semantics (wait status return)
1317	 pathtmp: fix mktemp() logic
1318	 fts: fix FTS_NOSEEDOTDIR bug that botched ./* in top list
1319	 include/ast/prototyped.h includes include/prototyped.h
1320	 pathpath: fix strdup(0) bug
1321	 optget: --html <foo@bar> => ...mailto:foo@bar...
1322	 sscanf: fix sfsscanf => sfvsscanf typo
1323	 magic.tab: strengthen tar recognition
132400-02-08 conf.sh: fix ifdef for systems that think sysconf(FOO) is const
132500-02-04 glob: fix globlist_t.gl_flags
132600-02-02 vm*: add NoF() for data only files
132700-01-27 fts: fix top level .==.. statp bug (thanks to dr. ek)
132800-01-25 conf.tab: fix LFS*_*LAGS typo
132900-01-24 astlicense: handle type=verbose, license.notice, author=*
133000-01-11 pathprobe: generate info for first probe script on PATH - duh
1331	 ast.h: add NoF(x) for files that define no functions
1332	 tmpfile: fix implementation
1333	 global change for string ERROR_translate() dictionary names
1334	 optget: fix new way but no long names off by one
1335	 optget: handle [--dictionary?name]
133699-11-19 comp/conf.sh: `expr length XXX` is not universal
1337	 drop sfstdio; stdio via functions everywhere
1338	 drop Makefile conditionals (and follow our own advice for once)
1339	 sfio: new stream after atexit() bug fix
1340	 tm: Tm_zone_t.daylight=0 for standard time within zone
1341	 stdio: fopen => _ast_fopen: only way short of binary compatibility
1342	 Makefile: atmain.C falls back to atmain.c
1343	 optget: add --keys, s<section> option
1344	 stdio: _UWIN check for foreign stdio
134599-11-11 astlicense: add
134699-10-31 glob: fix regexec pattern; add PATH_ATTRIBUTES case check
1347	 pathpath: path==0 means malloc space
134899-10-22 tmfmt: %C=2-digit-century, %k=date(1), %y=2-digit-year-in-century
134999-10-18 fastfind: expanded default db lookup
135099-08-11 magic: fix off by one registry malloc
1351	 features/fs: add __RENAME checks for stat familiy (netbsd)
1352	 features/fs: major()/minor() fixes for s5
1353	 features/libpath.sh: netbsd fix -- ld.so not in std places
1354	 misc/fastfind: fix codes path generation bug
1355	 optget: beef up --?* description, fix <TR>...</TR> nesting
1356	 pathprobe: check for override (writable key file) first
1357	 features/time: int tmtimeofday(struct timeval*);
1358	 optget: fix opt_info.num, even if opt_info.arg!=0
1360	 fastfind: init dir tab with logical and physical name
1361	 glob: add gnu GLOB_ALTDIRFUNC
136299-07-17 sfio: kpv update and sfhdr.h sync!
136399-06-24 stdio: fix fflush() to ignore sfseek(0) return value
136499-06-23 magic: '\r' is text not control to placate m$
136599-06-08 stdio: fix fseek,ftell semantics
1366	 uwin stdio: fflush() => _doflsh() to avoid __cplusplus clash
1367	 getopt: call liberror() to avoid error() conflict
1368	 tmfmt,tmscan: %N zone type (nation code), %z zone minutes west offset
1369	 tmfmt: - no pad _ space pad 0 leading 0 pad
137099-05-28 magic: fix 'x' == '*' for any number, magic.tab tweaks
1371	 features/lib: verify that stat64 really works
137299-05-21 tm*: add TM_WINDOW==69 for consistent century windowing guard year
137399-05-18 tmtime: add century leap year calc anticipating unsigned time_t
137499-05-17 sfkeyprintf: handle %o and %x!!
137599-05-09 pathprobe: $HOME/.probe if not suid and st_uid!=geteuid()
137699-04-28 magic,magic.tab: add registry()
137799-04-24 regcomp: fix ksh pattern +! parse
1378	 regfatalpat: add
1379	 optget: make : ? ] double escape consistent in all contexts
138099-04-01 features: drop iffeio.h and stdio.h when only printf() used
1381	 regex: fix stats() .l and .k count
1382	 fmtquote: added; most general fmtesc() form
138399-03-22 fmtesc.c,ast.h: add fmtnesq()
1384	 optget: --?x works for -x option flag
138599-03-17 features/limits.c: workaround solaris __EXTENSIONS__ _timespec bug
1386	 workaround limits.h circular prereq with ignore stdio.h
1387	 sfvprintf: %04e left-pad zero fixed
138899-03-03 fts: uncle already: add FTS_SEEDOTDIR to retain leading ./
1389	 regex: REG_MULTIPLE, BM for fixed string alternation
1390	 optget: embedded `-' optional in long options, prefix={0,1,2}
139199-02-14 fastfind: fix dir format bug that emitted wrong paths
1392	 astconf: fix redef off by one bug
139399-02-11 pathcanon(): don't cache astconf("PATH_LEADING_SLASHES", NiL, NiL)
139499-01-23 optget: move <old_opt.h> back into <option.h>, no open-close
1395	 optget: add "[index:long-name:description]" for --long-name
1396	 comp/gross: add weak __libc_attr for irix < 6.5 compatibility
1397	 features/limits.c: tweak the guards again
139899-01-11 fastfind: handle old format count byte order
1399	 magic.tab: fix elf to use real phdr offset
1400	 magic.c,magic.tab: fix | to act like switch/case
1401	 comp/fross.c,features/hack: for gross hacks
1402	 features/stdio: avoid sfio namespace pollution
140398-12-25 tmdate: yyyy.mm.dd
1404	 pathprobe: fix procrun() cmd path bug
1405	 fmtesq: add
1406	 features/common: win32.alpha va_list
1407	 magic: add pc alpha object
140898-11-11 strmatch: add STR_ICASE
1409	 pathprobe: punt to $HOME/.probe/<key+HOSTTYPE> if not S_ISUID
1410	 tmzone,tmdate: handle +-minutes, nn/MMM/yyyy
1411	 stropt: fix nested quote pop
1412	 tmfmt: add %K => %Y-%m-%d/%H:%M:%S
1413	 sfio/stdio: fix fseek() SF_PUBLIC omissions
1414	 fmtesc: catch '\\' (duh)
1415	 vmalloc: vmbest round bug fix
141698-11-01 fts.c: no pathcanon() if (fts_flags & FTS_PHYSICAL)
141798-10-01 features/stdio prototype fixes
1418	 optget: strton() instead of strtol() for #
141998-09-22 regcomp: add REG_DELIMITED and REG_ESCAPE delimited re support
142098-09-15 fix _LARGEFILE64_SOURCE stuff
1421	 ast_std.h: provide mmap() prototype
142298-08-11 fix sfpopen() to ignore SIGPIPE by ignoresig() for sfio but not stdio
1423	 fix procopen() to ignore SIGPIPE by ignoresig() for PROC_IGNORE
1424	 sfio sfpopen/popen update
1425	 magic.src: fix ustar entry
142698-07-17 fix ftwalk() short by one malloc()
1427	 add fts_notify()
142898-06-25 sfdcmore,sfdcprefix: add
142998-06-19 tokscan: add %f %g
143098-06-01 disc/sf*.c: memset(0) after disc malloc()
143198-05-11 strelapsed: y==Y
1432	 fts: pathcanon() top list
143398-04-01 error: error_info.time for all msgs, just after cmd id
1434	 error: no sfsync(sfstdin)
1435	 sfio: sfpool, Sffmt_t update
1436	 magic.tab: sgi core dumps -- why aren't these elf?
1437	 stropt: (v+n) for unknown option is option value if n!=0
1438	 procopen: fix setsid() for spawnveg() only
143998-03-19 malloc: add realloc foreign region check
1440	 sfdisc.h: rename to match kpv disciplines
1441	 fastfind: fix strcasecmp/strcmp directory prefix mixup
144298-03-17 features/fcntl.c,pathtmp,sftmp: add O_TEMPORARY
144398-03-01 pathcanon: fix PATH_LEADING_SLASHES to stat() both slashes
1444	 pathcanon: add PATH_VERIFIED
1445	 tmdate: add skip[] to expand separator char set
1446	 fastfind: FIND_OLD for old 7 bit db, FIND_TYPE for new 8 bit typed db
1447	 fastfind: default generates gnu LOCATE02 8 bit db
1448	 magic: handle %s in mime description
1449	 cdt: kpv update
1450	 sfio: kpv update
1451	 stdio: fpos64_t fseek64(), ftell64(), fgetpos64(), fsetpos64()
1452	 stdio: fseek() => sfseek(SF_PUBLIC) to avoid locking
1453	 fts: initialize parent stat[bp] from top level *after* statf done
1454	 astmath: add -lm requirement test
1455	 *: Astlong_t => _ast_*_t
1456	 regex: simplify regcollate() (from doug)
1457	 tmtime: preserve Tm_t*tm when calling tminit()
1458	 astconf: add readonly PATH_ATTRIBUTES=[cirw]
145998-02-14 fastfind: add FIND_ICASE to ignore case
1460	 tmdate,tmgoff: handle (+|-)hh[[:]mm[[:]ss]] absolute timezone
1461	 tmdate: `<n> <part>' now assumes `next <n> <part>' instead of `this'
1462	 tmfix: fix leap year bug that forgot to add 1900
1463	 proc: add PROC_ZOMBIE
146498-02-06 strmatch() char class range bug fix
1465	 regex char class range bug fix
146698-01-23 _WIN32: changed the #if logic again to accomodate _GNUC_
1467	 mnt: grab the mount options too
1468	 ast_std.h: hide getopt,getsubopt from stdlib.h
1469	 features/limits.c: add gnu guard macros to avoid limits.h recursion
1470	 features/mode.c: include "limits.h" instead of "FEATURE/limits.lcl"
147198-01-11 sfio.h: use Astlong_t, move Sfio_t Sfdisc_t typedef to top for stdio.h
1472	 sfhdr.h: #undef SETLOCAL for hpux
1473	 sfvprintf,sfvscanf: %I*x for sizeof(int_arg)
1474	 handle ftruncate64 and truncate64
1475	 dtopen.c: __hppa dll needs Dtset Dtlist Dttree refs here
147697-12-18 fmtnum: add
147797-12-11 magic: handle sgi 64 bit core dumps
147897-12-07 pathtmp: add override for TMPPATH,TMPDIR and cycling
147997-11-11 tm: handle 0 return from gmtime(),localtime() (dos negative time_t)
1480	 features/stdio: fix fflush() macro to do physical sync
148197-10-31 astconf PATH_RESOLVE is logical if 3d&&!std, metaphysical otherwise
1482	 magic: fix #! mime bug
1483	 tm: tmtime() now calls tmfix() and adjusts tm_isdst too=>mtime() works
148497-10-11 dllfind,dlfcn: move to separate -ldll so -last can link static, duh
1485	 Makefile,state.c: move forced header generation state.c => Makefile
1486	 sfio: update including SF_WHOLE
148797-10-01 sfdostext: add \r\n => \n sfio discipline
1488	 stropt: NiL table => p=name for all name=value
148997-08-11 pathtmp: check pid to note forks
1490	 procopen: FD_CLOEXEC rfd && wfd
1491	 fts: fts_close() after fts_children() with no fts_read() now works
149297-07-17 error: sfsync(sfstdin,sfstdout,sfstderr) instead of sfsync(NiL)
1493	 _sfcvinit: add sfio internal interface to base conversion tables
1494	 strton: use _Sfcv* base conversion tables instead of sfsscanf()
1495	 sfvscanf: use _Sfcv* base conversion tables
1496	 mime: x- permutations now matched if exact fails
1497	 mime: original- stripped from content-* headers
1498	 tmdate: add yyyy-jjj, yyyy-mm-dd
1499	 dllfind: add
1500	 ccmapid: fix buf copy loop limit
1501	 ccmapname,ccmapcpy: add
1502	 sfstrtmp: add
150397-05-09 streval: fix up casts for pseudo-ansi cc
1504	 features/types: use _ast_int_8 vars to verify support
1505	 string/modedata: check for mvs.390 S_IFMT
1506	 include/ast(_std).h: add #define __FILE_typedef
1507	 magic: add ccode text check
1508	 include/ftwalk.h: FTW_PATH=>FTS_NOCHDIR to avoid FTS_AGAIN (duh)
1509	 fts: clear status for FTS_AGAIN (fixes rm -r bug)
1510	 mnt: add mvs openedition w_getmntent()
1511	 sfhdr: _hdr_float && <float.h> for correct MAXDOUBLE
1512	 vmalloc/vmbest: if _std_malloc then use malloc()/free() not sbrk()
1513	 remove: check _std_remove
1514	 procopen: handle pio[{0,1}]=={0,1}
1515	 setenviron,features/uinstd: test for mvs.390 dll environ hacks
151696-12-25 <sfio_p.h> -> <ast_common.h>
1517	 __EXTERN__(type,object)
1518	 __DEFINE__(type,object,value)
1519	 magic: check strings in !CC_NATIVE code set too
1520	 system: cmd==0 means check for shell access (xopen)
1521	 sfhdr.h: fix sfrsrv prototype
1522	 add __libc_malloc etc for gnu/linux
1523	 astconf(NiL,path,name) == astconf(name,path,NiL) + no liberror
1524	 fts_open: if toplist() stat fails return 0
1525	 ftwalk: handle fts_open()==0 via one phony userf() call
1526	 sfmode: S_ISFIFO default is SF_SHARE=0
1527	 features/lib: _WIN32 _lib_vfork=1 by default
1528	 unsigned<0 comparison and other fixes via sgi.mips4 cc
1529	 stk.c: use <align.h> ALIGN_BOUND for stkalloc()
1530	 features/lib,vfork: uwin fix
1531	 ast_std.h: fix strto[u]ll prototypes with features/types _ast_int_8
1532	 getsubopt: add for xopen 4.2 compatibility
1533	 drop function __IMPORT__
1534	 magic: more magic
1535	 change #define FILE from Sfio_t to struct _sfio_s
1536	 state.c: add generated includes that may be hit by std for MAM
1537	 bytesex: forgot about sizeof(long)=>7; could we fix the name too?
1538	 vmalloc.h: fix vmnewof() definition
1539	 sfio.h,stdio.h,ast_common.h: pollution cleanup
1540	 magic.c: add | op for switch
1541	 Makefile: stdio.h was on both HEADERSRC and HEADERGEN -- don't do that
1542	 drop pp:notice to get <sfio.h> ... <ast.h> to work
1543	 regex: add [[:<:]]==\< and [[:>:]]==\> for bsd compat
1544	 mime.c: ignore X-* headers while scanning for Content-*
1545	 magic.c: check for negative indirect offsets
1546	 magic.tab: fix dos entry that generated negative indirect offsets
1547	 vmalloc.h: add vmstrdup() prototype
1548	 hash.h: add hashgetbucket() macro
1549	 magic.c: MAGIFILE is now a : file list
1550	 mnt.c: another 4.4 bsd fix -- users must include <sys/crap.h>
1551	 common: fix _WIN32 chicken&egg with va_copy
1552	 sfio: forgot to set f->val along with _Sfi in sfexcept()
1553	 Makefile: add mini target for uwin libmini.a
1554	 sfcvt.c: workaround for flaky long double optimizers
1555	 features/common: fix to work with va_list==void*
1556	 regexec.c: fix REG_STARTEND subexpression offsets
1557	 strmatch.c: don't forget <wctype.h>
1558	 regrexec.c: fix REG_INVERT end boundary bug that missed last record
1559	 astconf.c: notify(0,0,"a=b") called for each setenviron("a=b")
1560	 pathcanon.c: check astconf(PATH_LEADING_SLASHES) to preserve //*
156196-11-28 _LARGEFILE64_SOURCE by default if possible: NOTE: assumes xopen
1562	 regerror: fix for xopen
1563	 getopt: fix for xopen
1564	 magic: add ciao virtual database
1565	 astconf: posix/strict/xopen implies "standard" conformance
1566	 fs3d.h: hide mount prototype
1567	 ast_std.h,mnt.c,features/fs: ncr port tweaks
156896-10-31 version 5.0
1569	 add strtoll() strtoull()
1570	 sfkeyprintf: upgrade to int_max args
1571	 ast.h: add ssizeof() to work around unsigned botch
1572	 conf.sh: add shell actions to conf.tab
1573	 _DLL*: drop for _BLD_<lib> + __EXPORT__ + __IMPORT__
1574	 sfio,cdt,vmalloc: kpv update
157596-10-11 <ccode.h>: add character code map support
1576	 procclose: return shell style exit status
1577	 features/fs: pun statvfs.f_basetype to statvfs.f_reserved7 for mvs
1578	 uwin: add subdir for uwin additions
1579	 ast_std.h: swab() is from <stdlib.h>
1580	 sfio.h: <ast_std.h> if _PACKAGE_ast
1581	 magic.tab: add mips[1-4], 64-bit
1582	 port tweaks for sol.sun4 and sun4
158396-09-06 strerror: add
1584	 fmterror: uses strerror
1585	 str*search: use sfiso646() order
1586	 strpsearch: add
1587	 magic: add Magic_t.mime mime type return for magictype()
1588	 mime.h: add
1589	 strton: use sfsscanf()
1590	 strperm: factor in umask() if no who
1591	 pathtmp: add TMPPATH check
1592	 libevent: add
1593	 magic: add discipline to magicopen()
1594	 mime: add discipline to mimeopen()
159596-08-31 regex: fix BM fail table generator
159696-08-11 mntread: fix mnt.type for SCO variant
1597	 conf.tab: add SCO KERNEL_* sysconf() vars
1598	 fastfind: add findwrite(), fix findread() FF_OFF omission
1599	 ftwalk: reimplement on top of fts
1600	 fnmatch,re_comp,regexp: reimplement on top of regex
1601	 basename,dirname,fmtmsg,fts,ftw,getdate,getsubopt,glob: add
1602	 hsearch,nftw,realpath,strftime,strptime,swab,tempnam: add
1603	 tsearch,wordexp: add
1604	 getcwd: cache last path for easy test
160596-07-17 error: sfsync(NiL) ... write ... sfsync(sfstderr)
1606	 astconf: handle readonly *(DEV|DIR) vars
160796-04-01 swapop: fix stupid return value bug
1608	 features/int.c: fix int_swap generation bug
1609	 regnexec,regrexec: fix unsigned underflow init error
1610	 ls.h: fix iblocks() to be in units of LS_BLOCKSIZE
161196-02-29 magic: space before function is definition with no call
1612	 hash: drop hash_info from public interface
1613	 hash: OBSOLETE hashlast()
1614	 hash: add Hash_root_t.Hash_last_t to public interface
1615	 add strsearch() and strnsearch() to complement strlook()
1616	 add hashkey.h for keyword->long hash
1617	 pathpath: pathpath(0,0,"",0) disables $0 $_ $PWD relative search
1618	 sfio: sfstrtod+sfhdr update
1619	 regex: fix REG_LENIENT to map BRE \[+?|] to ERE [+?|]
1620	 change _std_malloc iffe test so it doesn't hang on alpha
1621	 sfhdr.h: features/sfio generates _lib_cvt instead of _i386_cvt
1622	 ast_hdr.h: add va_copy(a,b) to copy va_list b to a
1623	 getopt: fix stupid getopt() -> optget() bug
1624	 sfvprintf: %h? now downcasts
1625	 regex: handle strto?l() errno in regcomp()
1626	 sfstrtod: _Sfstrtod_already_defined -> _STUB_sfstrtod
1627	 ast_std.h: hide valloc() and ignore <strings.h>
1628	 sfkeyprintf: pass phony va_list for '2'
1629	 regex: change HIT var type from int to size_t in special()
1630	 ast.h: add EXIT_STATUS(x) to convert wait() status to sh exit status
163196-02-14 regex: add _ to \<...\> isalnum test
1632	 regex: fix BM inner loop breakout
1633	 features/types: size_t is signed on some systems! => _ast_size_t
1634	 sfio: sfrd discipline peek optimization
1635	 vmalloc: vmalloc.h malloc family macro upgrade
1636	 tokopen: fix newline bug for non-restore open
1637	 sfio: no inline for gcc until it emits for -g too
163896-02-12 sfio: internal upgrade
163996-02-09 regex: Boyer-Moore boundary fix
1640	 vmalloc: snarf latest
164196-02-06 regex: add regrecord() and regrexec() for Boyer-Moore record filtering
1642	 regex: rearrange regnexec() args to match buffer,count arg style
164396-01-31 stk: add STK_NULL to stk.h and stk.c
1644	 regex: privatize regex.h and fix min re length computation
1645	 workaround lazy strdup() implementations in features/lib _std_malloc
1646	 fix stkclose() to free(stream) -- purify missed because of sfio links
1647	 unused var cleanup
1648	 port/mnt.c must include <ls.h> to get <ast_fs.h>
1649	 add SF_FINAL to sfio and stk
1650	 sfio reads now on natural block boundaries
1651	 add #!!! <level> <message> !!! to tokline()
1652	 add REX_BM pre-filter to regcomp/regnexec
165396-01-22 add regcomp env.paren overflow checks
165496-01-11 add Doug McIlroy's regex (converted to C from C++ by gsf)
1655	 AT&T Research now
1656	 sfgetr optimization
1657	 regex buglets
165896-01-05 tweak magic.tab for win32
165995-12-25 add !(...) -> (...)! to fmtre()
1660	 nt tweaks -- functions with no header proto must be defined extern
166195-11-24 version 4.1
1662	 add mnt.h mntopen mntread mntclose
1663	 convert fmtfs to mnt.h
1665	 gcc inlines must also have global library function instantiation!
1666	 add hashview()
1667	 fix strtape() internal buffer flow
1668	 fix mntread() fs/dir transposition for uts mnttab
166995-10-31 change features/unistd.c includes to break limits-param cycle
1670	 add cdt from kpv
1671	 sfio snarf from kpv
1672	 add [ht]search for _WIN32
167395-10-11 clarify PARANOID pathcheck() warning
1674	 fix procopen() LIB_SPAWN environ bug with setenviron() cache
1675	 fix setenviron() bug that forgot to reset environ if == 0
1676	 add %Z '\0' output format to sfkeyprintf()
1677	 sfio snarf for sfvprintf fix
1678	 allow multiple hashscan() with scope caveat
1679	 add comp/fakelink.h to synthesize a few symlink text patterns
1680	 add !<xxx> magic to misc/magic.tab
1681	 add FTW_TOP to inhibit recursion (for ftw side effects on top level)
1682	 add memfatal() common malloc fatal exception message
1683	 add dos \r\n test to misc/magic.c/cklang()
1684	 sftmp() O_EXCL+random to avoid collisions
1685	 pathtemp() uses sftmp() randomizing
1686	 features/fs uses SF_APPENDWR
1687	 sftmp() uses pathtemp() -- don't worry, its not circular
1688	 a few more _WIN32 compatibility additions
1689	 realloc fixed to use VM_RSCOPY|VM_RSMOVE instead of obsolete 1
1690	 add hashlook(tab, oldname, HASH_RENAME, newname)
1691	 a few more tweaks to satisfy port warnings
1692	 add _SFIO_INLINE_PRIVATE to provide real function too
1693	 fix <dirent.h> installation test
1694	 oops object / shared library compat with _sfgetl2 _sfgetu2
169595-09-11 add getopt() compatibility
1696	 add fstat,lstat,mknod,stat fixes for _x versions in sys/stat.h
1697	 add getconf CONFORMANCE - posix for things that aren't ast default
1698	 sfio_t.h: #ifndef _SFIO_H #include "sfio.h" #endif
1699	 snarf vmalloc from kpv
170095-08-11 fix malloc bug in magic
1701	 update linux and bsd 386 magic entries
1702	 error_info.auxilliary returns new level, |=ERROR_OUTPUT if msg done
1703	 drop fnmatch from strmatch for sparc (solaris) until it collates
170495-07-17 fix port/astconf universe initialization
1705	 fix misc/optget opt_info.nopt initialization
1706	 drop tmset() TZ=... because it only worked when TZ=... was ignored
170795-05-09 mongo <ast.h> namespace cleanup
1708	 drop > 2 year old obsolete interfaces
1709	 sfvprintf.c fix for (char:8 short:16 int:32 long:64) architectures
1710	 TMP_MAX back into conf.tab
1711	 pathbin() and pathshell() now use astconf()
1712	 fix pathtemp() to not cache getenv("TMPDIR")
1713	 fix ftwalk() metaphysical to handle non-dirs too
1714	 initialize *_info = { 0 }; for ancient ld semantics (NeXT)
1715	 fix magic() to do vmfree()
1716	 astconf(X_OK) must prefix lines with "getconf"
1717	 use <wchar.h> and wctype in strmatch() if available
1718	 _lib_utime_now checks utime(path,0)
1719	 _lib_poll_notimer checks poll(x,0,timeout)
1720	 add another _lib_utime_now check to port/touch.c
1721	 fix dd_buf cast in dir/opendir.c
1722	 split getconf.h into conftab.h and conftab.c for :READONLY:
1723	 use mbtowc() only if MB_LEN_MAX>1
1724	 sfio char* -> Void_t* cleanup
1725	 handle old syntax in misc/magic.c
1726	 sigdata.c holds readonly signal strings
1727	 pathcheck() does AT&T checks for tools matching PARANOID - yuk
1728	 unused var cleanup
1729	 deprecate hash_info in favor of hashlast()
1730	 fix bad conf.sh ksh integer interactions
1731	 dll cleanup
1732	 magic.c falls back to malloc for now
1733	 add environ to <ast.h> -- C library global data syms are *RESERVED*
1734	 sfhdr.h memccpy(1,2,3,size_t) prototype
173595-04-01 version 4.0
1736	 convert to vmalloc
1737	 allow sigcritical() nesting mismatch to work around vfork() bug
1738	 add strexpr() primitive for streval() with user handle (like ftwalk)
1739	 add <magic.h> and magic.c file command magic interface
1740	 update magic mail message entry
1741	 fix keyprintf() invisible char count nesting bug
1742	 add sfstrnew(SF_READ|SF_WRITE) for alternate sfstropen() modes
1743	 sfstrnew(SF_READ) but reading requires sfseek(), sfreserve()
1744	 add conf.tab and conf.sh to nail C/POSIX limits/unistd macros
1745	 add getconf() string interface to *conf*
1746	 _DLL_INTERMEDIATE_DATA for systems that require indirect globals
1747	 _DLL for building shared libraries with _DLL_INTERMEDIATE_DATA
1748	 vecfile() restricted to S_ISREG()
1749	 add spawnveg() for job control
1750	 convert procopen() PROC_PGRP(id) to spawnveg()
1751	 fmterror() returns error text given errno (strerror() does same)
1752	 fmtsignal() returns signal text given errno (strsignal() does same)
1753	 {sig_name,sig_text,SIG_MAX} -> sig_info.{name,text,sigmax}
1754	 liberror("",...) omits [%s library] prefix
1755	 update features/signal.c table
1756	 add vmdisc() and change vmnewof() to use vmresize()
1757	 fix conf.sh to allow refs to previously defined limits
1758	 fix undefined entries in getconf()
1759	 magic data in magic.tab
1760	 fix stropt() pointer cast
1761	 vmalloc() exception handler replaces nomalloc()
1762	 merge sigdata.c into fmtsignal.c -- sun link needs function w/ data!
1763	 sftmp() bug fix
1764	 drop local <unistd.h> even with _POSIX_SOURCE
1765	 fix vmstrdup() macro arg miscount
1766	 fix conf.sh to handle enum'd symbolic constants in unistd.h
1767	 drop malloc() et.al. prototypes from vmalloc.h
1768	 fix sfvprintf() %d argument reference
1769	 add OSF/1 AES symbol(s) to conf.tab
1770	 determine standards prefix from conf.tab
1771	 add _CS_SHELL to conf.tab
1772	 getpath() default is confstr(_CS_PATH)
1773	 getshell() default is confstr(_CS_SHELL)
1774	 unify keyprintf user function args (should have learned by now!)
1775	 add quad type to magic
1776	 add astfeature() to unify universe style dynamic features
1777	 add ftwflags() to determine FTW_* flags from astfeature()
177895-03-11 fix stropt() to not modify its *const* arg
1779	 handle "'\ quotes and chresc() in stropt() values
1780	 , treated like :space: between stropt() options
1781	 fix procopen() fd dup to ignore self-dups
1782	 add library id[] to misc/state.c
1783	 add ftwalk(FTW_METAPHYSICAL) for posix -H
1784	 sfvprintf() now handles balanced () in %()
1785	 add tmfmt() with buffer size check to replace tmform()
1786	 add fmttime() calling tmfmt() to fit fmt*() mold
1787	 add <keyprintf.h> and keyprintf() to support %(...)? in commands
1788	 add Hash_table_t for size==0 in stropt()
1789	 add EXTTYPE extended header to tar.h
179095-02-14 sfmove() buffer size overflow fix
1791	 add _SFSTDIO_H to sfio.h
1792	 rename setenv() to setenviron() -- posix finally decided
1793	 rename <option.h> opt_* to opt_info.*
1794	 update features/unistd.c for _SC_* and _PC_* posix additions
179595-01-19 (char*)uchar cast in fmtesc()
1796	 fix hash bucket memory leak in hashlook() [via John Mocenigo]
1797	 update strings/strtape()
1798	 fix optget()/optjoin() to handle leading +
1799	 add ALIGN_ prefix to <align.h> identifiers
180095-01-11 change tm/*.c tmset(0) to tmset(tm_info.zone) to keep user setting
1801	 fix tmform() %Z null pointer dereference
180295-01-01 add this RELEASE file
1803	 fix strperm() to properly handle "644 file"
1804	 fix tokline() to return last '\0' terminated line in string
1805	 fix tokscan() to properly handle \\n splice
1806	 add fmtesc() to complement stresc()
1807	 add LS_NUMBER to fmtls()
1808	 drop spurious optusage() ' '