From 70e9163c9c18e995515598085cb824e554eb7ae7 Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Wed, 20 Jan 2016 10:55:18 +0000 Subject: coreutils-8.25 --- TODO | 136 ++++++++++++++++++++++++++----------------------------------------- 1 file changed, 52 insertions(+), 84 deletions(-) (limited to 'TODO') diff --git a/TODO b/TODO index 0e62630..de95e5a 100644 --- a/TODO +++ b/TODO @@ -1,14 +1,41 @@ -stty.c: - use xstrtoul, not sscanf +If you're interested in helping, here are some tasks that we've considered +over the years. Beware: some are quite old and no longer valid. To avoid +wasting your time by duplicating work or by working on a task that is no +longer pertinent, please search the mailing list and post your intent +before embarking on a big project. + +================================================== +Modify chmod so that it does not change an inode's st_ctime + when the selected operation would have no other effect. + First suggested by Hans Ecke in + http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/2920 + Discussed more recently on . + +document the following in coreutils.texi: + [ + pinky + +Suggestion from Paul Eggert: + More generally, there's not that much use for imaxtostr nowadays, + since the inttypes module and newer versions of gettext allow things + like _("truncating %s at %" PRIdMAX " bytes") to work portably. + I suspect that (if someone cares to take the time) we can remove + all instances of imaxtostr and umaxtostr in coreutils and gnulib. + +cp --recursive: use fts and *at functions to perform directory traversals + in source and destination hierarchy rather than forming full file names. + The latter (current) approach fails unnecessarily when the names + become very long, and requires space and time that is quadratic in the + depth of the hierarchy. [Bo Borgerson is working on this] printf: Now that gnulib supports *printf("%a"), import one of the *printf-posix modules so that printf(1) will support %a even on platforms where the native *printf(3) is deficient. - Suggestion form Eric Blake. + Suggestion from Eric Blake. -strip: add an option to specify the program used to strip binaries. - suggestion from Karl Berry +consider adding some implementation of the "col" utility + Suggested by Karl Berry. doc/coreutils.texi: Address this comment: FIXME: mv's behavior in this case is system-dependent @@ -16,21 +43,11 @@ doc/coreutils.texi: ls: add --format=FORMAT option that controls how each line is printed. -cp --no-preserve=X should not attempt to preserve attribute X - reported by Andreas Schwab - copy.c: Address the FIXME-maybe comment in copy_internal. -And once that's done, add an exclusion so that `cp --link' +And once that's done, add an exclusion so that 'cp --link' no longer incurs the overhead of saving src. dev/ino and dest. filename in the hash table. -See if we can be consistent about where --verbose sends its output: - These all send --verbose output to stdout: - head, tail, rm, cp, mv, ln, chmod, chown, chgrp, install, ln - These send it to stderr: - shred mkdir split - readlink is different - Write an autoconf test to work around build failure in HPUX's 64-bit mode. See notes in README -- and remove them once there's a work-around. @@ -38,25 +55,11 @@ Integrate use of sendfile, suggested here: http://mail.gnu.org/archive/html/bug-fileutils/2003-03/msg00030.html I don't plan to do that, since a few tests demonstrate no significant benefit. -Should printf '\0123' print "\n3"? - per report from TAKAI Kousuke on Mar 27 - http://mail.gnu.org/archive/html/bug-coreutils/2003-03/index.html - printf: consider adapting builtins/printf.def from bash -df: add `--total' option, suggested here http://bugs.debian.org/186007 - -seq: give better diagnostics for invalid formats: - e.g. no or too many % directives -seq: consider allowing format string to contain no %-directives - -resolve RH report on cp -a forwarded by Tim Waugh - tail: don't use xlseek; it *exits*. Instead, maybe use a macro and return nonzero. -add mktemp? Suggested by Nelson Beebe - tr: support nontrivial equivalence classes, e.g. [=e=] with LC_COLLATE=fr_FR lib/strftime.c: Since %N is the only format that we need but that @@ -64,18 +67,10 @@ lib/strftime.c: Since %N is the only format that we need but that would expand /%(-_)?\d*N/ to the desired string and then pass the resulting string to glibc's strftime. -sort: Compress temporary files when doing large external sort/merges. - This improves performance when you can compress/uncompress faster than - you can read/write, which is common in these days of fast CPUs. - suggestion from Charles Randall on 2001-08-10 - unexpand: [http://www.opengroup.org/onlinepubs/007908799/xcu/unexpand.html] printf 'x\t \t y\n'|unexpand -t 8,9 should print its input, unmodified. printf 'x\t \t y\n'|unexpand -t 5,8 should print "x\ty\n" -Let GNU su use the `wheel' group if appropriate. - (there are a couple patches, already) - sort: Investigate better sorting algorithms; see Knuth vol. 3. We tried list merge sort, but it was about 50% slower than the @@ -94,9 +89,8 @@ sort: Investigate better sorting algorithms; see Knuth vol. 3. 5.3.1, who credits Lester Ford, Jr. and Selmer Johnson, American Mathematical Monthly 66 (1959), 387-389. -cp --recursive: perform dir traversals in source and dest hierarchy rather - than forming full file names. The latter (current) approach fails - unnecessarily when the names become very long. +shred: Update shred as described here to conform to DoD 5220 rules: +http://lists.gnu.org/archive/html/bug-coreutils/2007-05/msg00075.html Remove suspicious uses of alloca (ones that may allocate more than about 4k) @@ -104,16 +98,15 @@ Remove suspicious uses of alloca (ones that may allocate more than Adapt these contribution guidelines for coreutils: http://sources.redhat.com/automake/contribute.html +Improve test coverage. + See HACKING for instructions on generating an html test coverage report. + Find a program that has poor coverage and improve. Changes expected to go in, someday. ====================================== dd patch from Olivier Delhomme - Andreas Gruenbacher's xattr changes - - Apply Bruno Haible's hostname changes - test/mv/*: clean up $other_partition_tmpdir in all cases ls: when both -l and --dereference-command-line-symlink-to-dir are @@ -122,71 +115,47 @@ Changes expected to go in, someday. an implicit --NO-dereference-command-line-symlink-to-dir meaning. Pointed out by Karl Berry. - A more efficient version of factor, and possibly one that - accepts inputs of size 2^64 and larger. - - dd: consider adding an option to suppress `bytes/block read/written' - output to stderr. Suggested here: - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=165045 - Pending copyright papers: ------------------------ - ls --color: Ed Avis' patch to suppress escape sequences for - non-highlighted files - getpwnam from Bruce Korb pb (progress bar) from Miika Pekkarinen ------------------------------ -Have euidaccess.m4 check for eaccess as well as euidaccess -If found, then do `#define euidaccess eaccess'. - Remove long-deprecated options. Search case-insensitive for -`deprecated' and `remove in '. Automate this. +'deprecated' and 'remove in '. Automate this. Add a distcheck-time test to ensure that every distributed file is either read-only(indicating generated) or is version-controlled and up to date. -Implement Ulrich Drepper's suggestion to use getgrouplist rather - than getugroups. This affects only `id', but makes a big difference - on systems with many users and/or groups, and makes id usable once - again on systems where access restrictions make getugroups fail. - But first we'll need a run-test (either in an autoconf macro or at - run time) to avoid the segfault bug in libc-2.3.2's getgrouplist. - In that case, we'd revert to using a new (to-be-written) getgrouplist - module that does most of what `id' already does. Or just avoid the - buggy use of getgrouplist by never passing it a buffer of length zero. - See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=200327 - -remove `%s' notation: - grep -E "\`%.{,4}s'" src/*.c +remove all uses of the 'register' keyword: Done. add a maint.mk rule + for this, too. remove or adjust chown's --changes option, since it can't always do what it currently says it does. +Support arbitrary-precision arithmetic in those tools for which it +makes sense. Factor and expr already support this via libgmp. +The "test" program is covered via its string-based comparison of +integers. To be converted: seq. + Adapt tools like wc, tr, fmt, etc. (most of the textutils) to be multibyte aware. The problem is that I want to avoid duplicating significant blocks of logic, yet I also want to incur only minimal - (preferably `no') cost when operating in single-byte mode. - -Remove all uses of the `register' keyword + (preferably 'no') cost when operating in single-byte mode. pr's use of nstrftime can make it malloc a very large (up to SIZE_MAX) buffer -ls.c: use gettime rather than clock_gettime, gettimeofday, time - ----- -Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, -Inc. +Copyright (C) 2002-2016 Free Software Foundation, Inc. -This program is free software; you can redistribute it and/or modify +This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -194,5 +163,4 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software Foundation, -Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +along with this program. If not, see . -- cgit v1.2.1