12-06-06 yes.sh: use echo instead of print if no $KSH_VERSION 12-04-20 ls.c: FTW_META default 12-02-14 yes.sh: add 12-01-23 du.c: the rightmost of { -b -h -k -K -m } overrides the others 11-12-13 features/procfs, pss-procfs.c: check _PS_task for { st_uid st_gid } 11-08-24 ls.c: fix { linkop linktext } to check for FTS_SLNONE too 11-08-01 file.c: add -b, --brief | --no-filename 11-06-10 ls.c: add %(view)d for 3d fs view level (iview(struct stat*)) 11-05-09 ps,pss: handle pr_npid in /proc/<pid>/stat 11-04-26 ps.c: increase COMMAND width from 16 => 24 11-04-26 features/procfs: fix uwin /proc probes 11-04-21 dd.c: turn stdin O_NONBLOCK off 11-04-21 dd.c: fix SI vs US numeric suffix docs 11-04-15 ls.c: add KEY_dev for all file types 11-03-10 ps.c: use %0<width>s for string fields to retain last <width> chars of long strings 11-03-03 dd.c: fix writes beyond count for piped input across partial input blocks (thanks ggreen) 11-02-11 mount.c: fix umount operand verification 11-01-28 file.c: add -a, --all to list all magic table matches 11-01-11 dd.c,iconv.c: convert Iconv_disc_t* for iconv_move() and iconv_write() 11-01-11 iconv.c: add posix { -c,--omit -l,--list -s,--silent } 10-12-01 ps*: update freebsd procfs logic 10-08-11 df.c: use conformance("standard",0) test 10-06-01 sync with ast api 20100601 10-05-25 ls.c: back off 09-07-02 logical|(meta)physical change 10-02-09 ps.c: fix --tree --format=... => \\_ instead of \_ 10-02-09 ps.c: ntpid not hex by default 10-01-01 ps.c: fix { -T -C -P } child detection logic 09-12-09 du.c: add -h, --binary-scale|human-readable; -K, --decimal-scale 09-11-11 features/procfs: handle linux /proc pr_tgrp == pr_tpgid 09-10-21 locale.c: use fmtquote() to print key values 09-07-02 ls.c: ftwflags() default only if not --recursive 09-05-15 ps.c: fix format field alias logic 09-04-15 ls.c: add --sort=version 09-01-30 mount.c: hide mount prototype too (for mvs.390) 09-01-20 dd.c: fix state.in.special counting logic 08-12-08 ls.c: at least one space before link count for -l 08-12-07 ls.c: use %[_][EO]K for [space pad] [full|long] iso 08-10-28 pss-procfs.c: use hz = getconf("CLK_TCK") 08-09-10 features/procfs,pss-kvm.c: netbsd 4.0 kvm tweaks 08-01-31 features/procfs,pss-kvm.c: freebsd6 kvm tweaks -- stop already 08-01-26 df.c: belay some of that delay (automounts foiled it) 07-11-19 df.c: delay stat()/statfs() until necessary 07-11-15 pss-procfs.c: handle pr_pgrp and (...) with embedded space 07-08-03 ls.c: use return from main() instead of exit() 07-06-27 seq.sh: error messages to the standard error -- oops 07-06-01 Makefiles: add $(PACKAGE_LOCALE)umount link 07-05-05 seq.sh,seq.rt: new 07-04-25 locale.c: defer unknown keywords to /usr/bin/locale 07-03-19 du.c: fix 0 pointer deref 07-03-19 pss.c: initialize not found process placeholders 07-02-07 sum.c: move to libcmd & builtin 06-12-11 ls.c: disable LS_PRINTABLE for utf-8 06-12-04 du.c: handle > 2Ti in local.pointer 06-11-23 ps.c: --escape now the default: -E => --noescape 06-10-11 add sfstruse() error checks 06-10-11 ls.c: header/trailer must honor state.scale too 06-09-19 split.c: pathconf() => astconf() 06-05-23 ps.c: add but ignore -w, --wide 06-01-11 pss-kvm.c: handle struct eproc.e_xsize 06-01-03 ls.c: add --show-control-characters, handle --no* 05-07-25 touch.c: eith => either 05-07-17 dd.c: fix ccode conversion diagnostic 05-06-16 ps.c: fix parent chain lookup infinit loop 05-06-14 ls.c: fix divide by 0 in col() 05-06-11 ls.c: sharpen the optimal row/col search ls.tst: normalize 02 test sizes 05-04-22 ps.c: add --branch --escape 05-04-06 df.c: fix -k F_FRSIZE() to always return > 0 05-03-29 ps.c: check /bin/ps punt recursion when ast_ps is /bin/ps 05-03-11 features/procfs: cygwin tweaks 05-03-10 ls.c: fix -s arithmetic and column output 05-02-14 sum.tst: add SHA { 256 384 512 } tests 05-02-11 pss-info.c: add lynxos info(2) proc table 04-12-25 ls: -e == --time-style=long-iso, -E == --time-style=full-iso ls: fix --quote-style=literal to bet literal -- doh 04-12-15 ls: --time-style=long-iso 04-12-12 touch.c: add high resolution time support 04-10-28 ls.c: add space between group/size so they won't run together 04-10-01 dd.c: drop ancient unused map code 04-09-14 ls.c: add -w[linesX]cols, last col must be visible in window 04-07-17 ls.c: rename -f => -Z, add x/open -f 04-03-28 ls.c: add variable column widths for minimal { -C -x } footprint 04-02-29 pss-getprocs.c: fix readf/partf semantic mixup 04-02-26 ls.c: handle solaris S_ISDOOR for -F 04-02-11 df.c: rescan mount table to avoid more expensive stat()/statvfs() 04-01-14 split.c: fix csplit {*} EOF detection 03-12-17 sum.c: update docs for new -lsum interface 03-12-09 df.c: don't stat() mount table fs paths that don't start with / 03-11-17 ps.c: fix --children bug that lost lower level ancestor links 03-10-12 dd.c: add ast iconv identity check 03-10-08 dd.c: fix count=n short-read when bs > underlying read size 03-10-07 df.c: fix -Pi to do "portable" -i 03-09-23 ls.c: call fmtmode() with internal mode ls.c: -L => ~FTS_SEEDOTDIR 03-09-18 dd.c: numeric option arg values are now intmax split.c: -b -C -l are now intmax 03-09-11 ls.c: add --testdate=date for testing 03-08-21 split.c: fix csplit pattern matching -- did it ever work? csplit.tst: add regression tests 03-06-21 pss-procfs.c: fix PR_TIME(),PR_CTIME() normalization 03-06-11 mount.c: reorder includes for mvs.390 03-05-26 dd.tst: add 03-04-28 sum.tst: add sha1 tests 03-03-21 ls.c: add -z,--time-style ls.c: if only -t is set then set FTW_SEEDOTDIR to keep configure happy 03-03-11 pss.c: pid <= 1 => ppid == 0 to avoid ancestor loop 03-03-06 ps.c: add pgid alias for pgrp 03-02-28 pss*.[ch]: add Pss_dev_t and Pss_id_t ps.c: don't warn about unsupported fields for [cfjl] 03-02-21 pss-*.c: initf errors except no space now warnings for ps fallback Makefile: hosttype workaround to avoid botched -lkvm 03-02-11 ps.c: flags width 2 => 3 since posix says its octal 03-02-07 ps.c: add --children and --parents, --tree == --children --parents 03-02-06 locale.c,ls.c: fmtquote() FMT_ALWAYS update 03-02-01 ps*.[ch]: convert to independent Pssmeth_t methods pss-ps.c: export _PSS_ps=1 to force for testing 03-01-31 pss.c: add darwin.ppc kvm_getprocs() -- still needs work 03-01-29 ps.c: check for obvious invalid pids 03-01-10 locale.c: don't list default after unknown category/keyword 02-12-04 du.c: add -H -L -P(default) symlink options 02-11-22 file.c: add version type description 02-10-10 pss.c: redefine only if not defined -- duh 02-10-02 pss.c: move <ast_windows.h> to first #if __CYGWIN__ 02-09-30 dd.c: honor both count*bs *and* count 02-09-24 dd.c: fix partial record computations and printf format 02-09-11 pss.c: _WIN32 SF_ERROR <windows.h> workaround touch.c: drop TM_DATESTYLE (snarfed too much from date.c) 02-09-09 ls.c: really ignore -T<n> 02-08-13 touch.tst: fix 10 digit ambiguity test 02-08-05 ls.c: add %(perm)[os] 02-07-31 file.c: add -[cdiM] and swap (old ast) -m and -M semantics for posix 02-06-25 ps.c: handle %s vs. %d --format inconsistencies 02-02-14 touch.c: explicit epoch dates (0) are different from now (also 0) locale.c: don't output on unknown keyword 02-02-11 ps.c: validate input pid strings 02-02-04 ps.c: --format subformat => heading 02-02-02 pss.c: handle __CYGWIN__ bug where sizeof(TTY_CONSOLE)>sizeof(dev_t) 02-01-31 pss.c: add aix getprocs() ps.c: ntpid=>npid, ntpid now a deprecated alias 02-01-28 ls: fix devmajor/devminor to use st_rdev where appropriate 02-01-22 ps: fix `not available' warning to attempt subsequent fields 02-01-21 ps: recode to use pss.[ch] process status stream interface 02-01-06 touch: clarify --time doc 01-10-31 df: increase the fs stat timeout from 2 to 4 sec 01-09-04 locale: add new catagories 01-08-11 ls: fix nonprintable test for mb locales 01-08-01 features/procfs: note that synthesized psinfo doesn't have pr_psargs 01-06-27 dd: fix conv=[lu]case|x2y logic botch 01-06-08 ps: option `-' is optional for ancient compatibility 01-06-06 ls: drop octets for bytes -- yay 01-05-25 locale: -m runs local locale until the standard comes to its senses locale: add --element to list collation element weights 01-04-20 df: --man now says --scale is the CONFORMANCE!=standard default 01-04-17 date,rm: move to -lcmd 01-04-01 locale: fix LC_ALL listing 01-03-23 tsort: fix typo that goofed up $'b c\na c\na b' 01-03-22 ps: %(ntpid)d takes precedence over hex attribute 01-03-17 date: update --man for tmfmt() changes locale: add with regression test 01-03-09 df: fix cannot stat filesystem typo 01-03-05 ls: add --dump to dump generated --format string 01-03-01 ps: fix iffe logic that disabled too much for /proc synthesis ps: fix -T -p that missed some children ps: fix -x to include session leaders 01-02-14 ps: disable some iffe results for synthesized /proc structs ps: use sfstrbase() and sfstrsize() instead of member names mount: define NGROUPS for freebsd -- how does <sys/ucred.h> make it? df: add scaled sizes, no sync(2) unless -s,--sync df: add statvfs() timeout for good ol NFS 01-01-31 ls: handle --sort=size 01-01-01 ps: change (-x,--hex)=>(-X,--hex), add (-x,--detached) ls: really ignore --tabs, add --quote-style --scale, --thousands rm: -i and -f cancel each other 00-12-13 df: change type default width to 10 for linux ps: fix --format '%(time)d' 00-12-11 ps: fix --tree graph 00-12-08 ps: no -e for pid args ps: add --heading 00-10-31 date: mmddHHMMccyy doc and code fixes, test touch: ccyymmddHHMM doc and code fixes, --time=mtime common sense, test 00-10-23 ps: -Tp pid gets pid and all children 00-10-06 du: fix roundup error by delaying until the totals 00-09-21 touch: fix to handle obsolete MMDDhhmm[YY] 00-08-11 ps: fix man typo 00-06-10 dd: add swap=op 00-05-24 ls: fix --kilobytes, add --block-size 00-05-11 df,ls,ps: unknown format id is fatal error 00-05-02 dd: use iconv() for from=x to=y conversions 00-04-01 ls.tst: export TZ=EST5EDT; new tests should be UCT 00-03-17 rm: add PATH_ATTRIBUTES 'l' check (no hard links to directories) date: --elapsed accepts odd arg count catmerge: add 00-03-09 df: add --format date: add --elapsed 00-02-07 ls: -a and -A now mutually exclusive shar: add $USAGE_LICENSE 00-01-25 touch: add invalid st_mtime value CAVEAT ls.tst: limit max st_mtime to 0x7fffffe to avoid stat(2) EOVERFLOW 00-01-11 tsort: fix 99-12-25 ps: fix linux -o args 99-11-19 mount,umount: fix umount usage[] ls: fix --format doc 99-11-18 ls: -H + cmd link non-dir symlink => lstat() (H == hairbrained) 99-10-31 sum: change --check, add --header --permissions for verifcation 99-10-22 date: fix %C %k %y doc 99-08-11 ps: netbsd + unixware fixes ls: fix SEE ALSO 99-07-17 ps: fix cancel logic to eliminate (null) header 99-06-23 rm: fix -f exit status to be !=0 on errors, even if no diagnostic 99-06-17 expand/unexpand: long options 99-06-14 rm: dir arg requires -r, diagnostic even with -f 99-06-11 df: minimize mntread calls when args given ps: all key.cancel format mods on rhs sum: binary mode by default, local text mode implementation 99-06-01 dd: fix conv=* bitmasks 99-05-20 df: F_BASETYPE() for redhat 6.0 linux statvfs incompatibility 99-05-18 date: add settimeofday() and stime() checks/calls date: use %Y in /bin/date punt 99-05-11 ps: use pr_sid for session leader checks 99-05-09 sum: sfopen(sfstdin,0,"rt") file lists 99-05-06 date: fix inconsistency between date(1) touch(1) tmdate(3) shar: add 99-05-05 sum: add md5sum options 99-05-01 touch,tsort: long options 99-04-28 banner,df,du,file,mesg,mount,ps,sum: long options 99-04-01 ls: long options, gnu compatibility date: fix +format for new optget() 99-03-11 dd: convert to optget() ls: (time_t) cast fmttime() arg 99-03-01 ps: fix static key table inititialization 99-02-04 ps: add maxval to determine default width 99-01-23 testdate: check date output format too move sfio,date,opt tests to src/cmd/tests move pax tests to src/cmd/pax 99-01-11 sfio/t*.c: make a few tests more portable 98-11-21 touch: add obsolete mmddhh & mmddhhyy 98-10-20 dd: fix in/out partial block reports sum: add ast4|32x4|tw checksum 98-08-11 ps: implement -G 98-07-17 ps: fix -t dump 98-06-26 rm: tighten hard link to directory test 98-04-01 sfio: fix ttmpfile by intercepting open64() and creat64() 98-03-11 dd: fix conv=* check du: list all command line args 98-02-18 date: modify tests for tmfix() 1900+tm_year leap year fix 98-01-23 df: add -O for mnt.options date: add y2k date tests 97-12-20 ps: add (but name ast_ps until it's broken in) 97-12-11 rm: fix -r bug that looped when remove() silently failed 97-07-17 rm: `rm -rf' just prints usage; it used to do `rm -rf .' du: change -kblocksize to -bblocksize, -k => -b1024 date: a few more tests 97-05-09 rm: fix FTW_AGAIN code for multi-getdents() dirs df: add ERROR_SYSTEM to -v output 96-12-25 dd: add from=<ccode> to=<ccode> tsort: fix empty list bug df: fix sync() prototype date: add -p input-format to supplement DATEMSK ls: fix boundary problem with %(path) by using %(name) ls: add -A rm: add -F to clear and sync data before remove() 96-10-11 file: update for magic discipline dd: update for <ccode.h> *: change opt_arg to opt_info.arg mesg: add df: "UNKNOWN" fs type -> "local" 96-08-11 dd: set error_info.exit after options 96-06-19 fix ftwalk() top level children anomalies (fts is underneath now) 96-05-09 date: Xopen DATEMSK tests df: Xopen update du: Xopen update ls: Xopen update find: move to tw rm: add 96-02-29 df: list some stat errors -- well, maybe not sum: add cksum link and att,bsd,posix,zip,md5 algorithms 96-02-07 df: (long) cast to handle (unsigned long) vs. (long) header diffs 96-01-30 banner: unused var cleanup 96-01-01 AT&T Research now banner: add split: add 95-12-25 find: add -nouser, -nogroup POSIX unary ops 95-12-08 df: cap = use / (use + avail) expand: new unexpand: new 95-11-18 file: ignore empty file list lines df: add Mnt_t.options and Mnt_t.flags 95-11-16 this is the place for single file standard commands 95-11-11 df: new tsort: new file: fix aix shared library 95-07-17 date: add gnu -d string ls: fix "total..." aggressive output 95-05-09 file: switch to <magic.h> and libast/magic() file: add posix -h == -P ls: sfkeyprintf lookup string arg is now the format conversion char ls: #ifdef check S_ISSOCK 95-04-01 ls: fix -c botch that treated it like -u 95-03-19 ls: add -H for posix FTW_META|FTW_PHYSICAL ls: add -f format to match pax -o listformat ls: add -D key=value to match pax -o listmacro ls: dir.sh to mimic dos -- ouch ls: don't stresc() possibly readonly string literals 95-03-11 find: add -metaphysical (posix -H) for FTW_META|FTW_PHYSICAL 95-02-14 file: add -p pattern to select types that match pattern 95-01-19 file: add linux kernel and minix as,ld 95-01-01 file: start RELEASE file file: add JPEG, dot file: fix GIF file: stresc() match strings too file: add pax compressed and delta formats ls: add -n for LS_NUMBER ls: -C if argv[0] base is lc