summaryrefslogtreecommitdiff
path: root/THANKS.in
Commit message (Collapse)AuthorAgeFilesLines
* tail: improve --follow=name with single non regular filesPádraig Brady2023-02-061-0/+1
| | | | | | | | * src/tail (tail_forever): Attempt to read() from non blocking single non regular file, which shouldn't block, but also read data even when the mtime doesn't change. * NEWS: Mention the improvement. * THANKS.in: Thanks for detailed testing.
* wc: add --total={auto,never,always,only} optionPádraig Brady2022-09-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | without this option, control of when the total is output is quite awkward. Consider trying to suppress the total line, which could be achieved with something like: wc-no-total() { wc "$@" /dev/null | head -n-2; } As well as being non obvious, it's also non general. It would give a non failure, but zero count if passed a file on stdin. Also it doesn't work in conjunction with the --files0-from option, which would need to be handled differently with something like: { find files -print0; printf '%s\0' /dev/null; } | wc --files0-from=- | head -n2 Also getting just the total can be awkward as file names are only suppressed when processing stdin, and also a total line is only printed if processing more than one file. For completness this might be achieved currently with: wc-only-total() { wc "$@" | tail -n1 | sed 's/^ *//; s/ [^ 0-9]*$//' } * src/wc.c: Add new --total option. * tests/misc/wc-total.sh: New test suite for the new option. * tests/local.mk: Reference the new test. * doc/coreutils.texi (wc invocation): Document the new option. * THANKS.in: Add suggestor. * NEWS: Mention the new feature.
* all: prefer HTTPS to HTTPStefan Kangas2022-09-181-1/+1
| | | | | | | | | | | | | | | * README-hacking: * README-prereq: * THANKS.in: * doc/sort-version.texi (Other version/natural sort implementations): * gl/lib/rand-isaac.c: * gl/tests/test-rand-isaac.c: * src/operand2sig.c (operand2sig): * src/remove.c (nonexistent_file_errno): * tests/misc/env-signal-handler.sh: * tests/misc/sort-debug-warn.sh (LC_ALL): Prefer HTTPS to HTTP. Addresses https://bugs.gnu.org/56512 Copyright-paperwork-exempt: yes
* factor: --exponents: new option for printing in p^e formatRasmus Villemoes2022-05-091-0/+1
| | | | | | | | | | | | | | | When factoring numbers that have a large 2^n factor, it can be hard to eyeball just how many 2's there are. Add an option to print each prime power factor in the p^e format (omitting the exponent when it is 1). * src/factor.c: Add -h, --exponents option for printing in p^e format. * doc/coreutils.texi (factor invocation): Document the new option. * tests/misc/factor.pl: Add test case. * THANKS.in: Add previous suggester (https://lists.gnu.org/r/coreutils/2017-11/msg00015.html). Suggested-by: Emanuel Landeholm <emanuel.landeholm@gmail.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* dircolors: colorize backup files with bright blackVille Skyttä2022-04-031-1/+0
| | | | | | | | * src/dircolors.hin: Add patterns for suffixes for "backup files". The color used is so they stand out less than non-backup files, and bright black works well on both light and dark backgrounds. * THANKS.in: Remove duplicate. Fixes https://bugs.gnu.org/54521
* maint: remove duplicate from THANKS.inPádraig Brady2021-09-171-1/+0
| | | | * THANKS.in: Now that Tianjia Zhang has a commit in the repo.
* digest: add support for sm3Pádraig Brady2021-09-151-0/+1
| | | | | | | | | | | | | | Add message digest sm3, which uses the OSCCA SM3 secure hash (OSCCA GM/T 0004-2012 SM3) generic hash transformation. * bootstrap.conf: Add the sm3 module. * doc/coreutils.texi: Mention the cksum -a option. * src/digest.c: Provide support for --algorithm='sm3'. * tests/misc/sm3sum.pl: Add a new test (from Tianjia Zhang) * tests/local.mk: Reference the new test. * NEWS: Mention the new feature. Tested-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
* build: once again distribute .tar.gz filesJan Nieuwenhuizen2020-02-271-1/+0
| | | | | | | | * configure.ac: Reenable distribution of gzip-compressed tarballs, for Guix bootstrapping reasons as discussed at: https://lists.gnu.org/r/coreutils/2020-02/msg00042.html * THANKS.in: Remove me, as now a committer. * NEWS (Build-related): Mention this.
* rmdir: fix --ignore-fail-on-non-empty with permissions errorsPádraig Brady2020-02-041-0/+1
| | | | | | | | | | | | | | | | | | | | Since v6.10-21-ged5c4e7 `rmdir --ignore-fail-on-non-empty` had reversed the failure status for directories that failed to be removed for permissions reasons. I.E. it would have returned a failure status for such non empty dirs, and vice versa. * src/rmdir.c (errno_may_be_non_empty): Rename from the more confusing errno_may_be_empty(), and remove the EEXIST case (specific to Solaris), which is moot here since handled in errno_rmdir_non_empty(). (ignorable_failure): Fix the logic error so that _non_ empty dirs are deemed to have ignorable failures. (main): Fix clobbering of errno by is_empty_dir(). (remove_parents): Likewise. * tests/rmdir/ignore.sh: Add a test case. * THANKS.in: Add reporter who fixed the errno handling. * NEWS: Mention the bug fix. Fixes https://bugs.gnu.org/39364
* maint: fix issues in syntax-checkAkim Demaille2019-08-041-1/+0
| | | | | | | | | | | | | | | | | | * cfg.mk (sc_prohibit_colon_redirection): Don't expect `|` to denote the pipe character in git grep. (sc_tests_executable) (sc_case_insensitive_file_names) (sc_some_programs_must_avoid_exit_failure) (sc_prohibit_test_background_without_cleanup_) (sc_prohibit_test_calls_print_ver_with_irrelevant_argument) (sc_prohibit_test_ulimit_without_require_) (sc_prohibit_test_background_without_cleanup_) (sc_THANKS_in_duplicates) *sc_prohibit_test_calls_print_ver_with_irrelevant_argument): Don't expect builddir to be a descendant of srcdir. (sc_strftime_check): Don't check file size against 0 when "N\nq\n" was already put in the file. * THANKS.in: Remove me.
* split: fix failure for certain number of specified filesPádraig Brady2019-06-081-0/+1
| | | | | | | | | * src/split.c (set_suffix_length): Use a more standard zero based logN calculation for the number of units. * tests/split/suffix-auto-length.sh: Add a test case. * THANKS.in: Mention the reporter. * NEWS: Mention the fix. Fixes https://bugs.gnu.org/35291
* cp: fix symlink checks when overwriting filesPádraig Brady2018-05-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Ensure this _does_ recreate the symlink Given "path1" and "path2" are on different devices. $ touch "path1/file" $ cd path2/; ln -s path1/file $ cp -dsf path1/file . Ensure this does _not_ overwrite file $ touch file $ ln -s file l1 $ cp -sf l1 file * src/copy.c (same_file_ok): Remove device ids from consideration, instead deferring to future EXDEV with --link or allowing the first case above to work. Also ensure that we do not exist this function too early, when the destination file is not a symlink, which protects against the second case. * tests/cp/cross-dev-symlink.sh: Add a test for the first case. * tests/cp/same-file.sh: Add a test for the second case above. * NEWS: Mention the bug fixes. * THANKS.in: Mention the reporters who also analyzed the code. Fixes https://bugs.gnu.org/31364
* maint: adjust email address of Keith Thompson in THANKS.inBernhard Voelker2018-03-041-1/+1
| | | | | * THANKS.in (Keith Thompson): Update email address as requested by himself at https://lists.gnu.org/r/coreutils/2018-03/msg00004.html
* dd: fix nocache regions passed to posix_fadvise()Pádraig Brady2017-10-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously with oflag=direct the call to invalidate_cache() was not passed to the kernel, as it was less than a page size, and a subsequent call was not made to invalidate the pending space. Similarly with oflag=nocache the pending space at EOF was not invalidated. Even though these amount to only a single page in the page cache it can be significant. For example on XFS before kernel patch v4.9-rc1-4-g0ee7a3f, O_DIRECT files would have been read inefficiently if any pages were cached, even if they were already synced to storage. * src/dd.c (i_nocache_eof, o_nocache_eof): New bools used to control when we want invalidate_cache(,0) to clear to EOF. (cache_round): Use IO_BUFSIZE (currently 132KiB) to minimize calls to the relatively expensive advise function, rather than page_size. This also makes it clear that while the kernel function operates on pages, this size is chosen for performance reasons. (invalidate_cache): Refactor to share more code between input and output paths. Use i_nocache_eof and o_nocache_eof rather than proxying off max_records. Ensure we invalidate full pages when clearing to EOF as the kernel will ignore any non complete pages. Fix the offset used for the output path. (dd_copy): Invalidate the cache of the input after the offset is updated, for consistency and so we don't try to invalidate before the start of the file. When we read EOF on input, set flags so that we invalidate to EOF. (main): Invalidate to EOF in more cases, by depending on the i_nocache_eof and o_nocache_eof flags. * doc/coreutils.texi (dd invocation): Clarify the alignment and persisted caveats on the example applying "nocache" to part of a file. * tests/dd/nocache_eof.sh: A new test. * tests/local.mk: Reference the new test. * NEWS: Mention the bug fix. Issue reported by Eric Bergen.
* tests: fix test hang on case insenitive file systemsPádraig Brady2017-09-241-0/+1
| | | | | | | | | | | | * tests/split/filter.sh: Due to an invalid 'FILE = zero.in' construct trying to initialize a FILE variable, it would instead try to run the FILE command which is present on macOS 10.13 with APFS. We also remove a redundant duplicate test clause introduced during a rebase, and simplify the piped timeout command, to avoid requiring a subshell and associated quoting. * THANKS.in: Add the reporter Jack Howarth. Fixes https://bugs.gnu.org/28506
* all: prefer HTTPS in URLsPaul Eggert2017-09-191-3/+3
|
* df: avoid stat() for dummy file systems with -lJosef Cejka2017-08-281-1/+0
| | | | | | | | | | | | | | | | | | | | | When systemd is configured to automount a remote file system - see 'man systemd.automount(5)', then the mount point is initially mounted by systemd with the file system type "autofs". When the resource is used later on, then the wanted file system is mounted over that mount point on demand. 'df -l' triggered systemd to mount the file system because it called stat() on the mount point. Instead of single-casing "autofs" targets, we can avoid stat()ing all dummy file systems (which includes "autofs"), because those are skipped later on in get_dev() anyway. *src/df.c (filter_mount_list): Also skip dummy file systems unless the -a option or a specific target are given. * NEWS: Mention the fix. Co-authored-by: Bernhard Voelker <mail@bernhard-voelker.de> Fixes http://bugzilla.suse.com/show_bug.cgi?id=1043059
* b2sum: a new checksum utility with md5sum like interfacePádraig Brady2016-11-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note we don't support the --algorithm option of the b2sum command in the external BLAKE2 project, as that was deemed too confusing for users. "BLAKE2b" was chosen as the default algorithm to use, which is single threaded but performs well on 64 bit. * src/blake2: CC0 source copied from external project. * cfg.mk[VC_LIST_ALWAYS_EXCLUDE_REGEX]: Exclude blake2/ from syntax checks, make update-copyright, etc. * src/local.mk: Reference the sources for b2sum, and set the compilation flags. * doc/coreutils.texi (b2sum invocation): Reference the md5sum invocation node, and add descriptions of -l. * tests/misc/b2sum.sh: Add new test. * tests/local.mk: Reference new test. * AUTHORS: Add new binary. * README: Likewise. * build-aux/gen-lists-of-programs.sh: Likewise. * man/.gitignore: Likewise. * scripts/git-hooks/commit-msg: Likewise. * man/b2sum.x: New man page template. * man/local.mk: Reference new template. * src/.gitignore: Ignore new binaries. * src/blake2/.gitignore: Ignore new build atrifacts. * src/md5sum.c (usage): Describe the new -l option. * NEWS: Mention the new program.
* tail: -F now always processes initially untailable filesPádraig Brady2016-09-281-0/+1
| | | | | | | | | | | | | | | | | | | which was not the case when inotify was not available. * src/tail.c (any_live_files): Simplify, since the IGNORE flag is now only set when a file should be ignored indefinitely. (recheck): Only output the "giving up on name" message when that's actually the case. Only set the IGNORE flag when ignoring a file indefinitely. (tail_file): Likewise. * tests/tail-2/retry.sh: Add a test case. Also run all existing test cases with and without inotify. NEWS: Mention the fix. THANKS.in: Add the reporter. Fixes http://bugs.gnu.org/24495 which was detected using Symbolic Execution techniques developed in the course of the SYMBIOSYS research project at COMSYS, RWTH Aachen University.
* df: improve performance with many mount pointsPhilipp Thomas2016-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Use hash table for seaching in filter_mount_list() and get_dev() This improves performance for 20K mount entries from: real 0m1.731s user 0m0.532s sys 0m1.188s to: real 0m1.066s user 0m0.028s sys 0m1.032s * src/df.c (devlist_table): Define hash table. (devlist_hash): Add hash function. (devlist_compare): Add hash comparison function. (devlist_for_dev): Add lookup function. (devlist_free): Add cleanup function. (filter_mount_list): Use the above hash table. While at it, rename the variable 'devlist' to 'seen_dev' for better readability. (me_for_dev): Use the above lookup function. NEWS: Mention the improvement. THANKS.in: Remove the committer; add original submitter Josef Cejka.
* stty: fix translated --help so the gettext header is not printedGöran Uddeborg2016-02-151-1/+0
| | | | | | | | * src/stty.c (usage): Remove an erroneous call to translate an empty string, added in commit v8.23-112-g564f84a, which results in the gettext header being printed for translated languages. * THANKS.in: Remove the now committer. * NEWS: Mention the bug fix.
* doc: fix the --iso-8601 example in date --helpVincent Lefevre2016-01-291-1/+0
| | | | | | | * src/date.c (usage): The colon is used in the timezone offset since commit v8.24-64-g17bbf6c. * THANKS.in: Remove committer. Fixes http://bugs.gnu.org/22491
* doc: suggest dd "sync" flag to maximize "nocache" effectivenessPádraig Brady2016-01-131-0/+1
| | | | | | | | | doc/coreutils.texi (dd invocation): Add oflag=sync to the streaming example. Also reference the "direct" flag. Mention this is only a request to the system. * src/dd.c (usage): Mention the "sync" flag along with "nocache". Also mention that it's only a request to drop the cache. * THANKS.in: Add reporter Francois Rigault.
* doc: give a tee example for combining process substitution outputsPádraig Brady2015-11-211-0/+1
| | | | | | | | | | | This can be useful if you want to further process data from process substitutions. For example: datagen | tee >(md5sum --tag) > >(sha256sum --tag) | sort * doc/coreutils.texi (tee invocation): Mention that -p is useful with pipes that may not consume all data. Add an example, similar to the one above. * THANKS.in: Add Jirka Hladky.
* base32: A new program similar to base64Pádraig Brady2015-09-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Suggested in https://bugzilla.redhat.com/1250113 * AUTHORS: Add base32. * THANKS.in: Add suggester. * README: Reference the new program. * NEWS: Mention the new program. * src/.gitignore: Ignore the new binary. * bootstrap.conf: Reference the gnulib base32 module. * build-aux/gen-lists-of-programs.sh: Add base32. * man/base32.x: A new template. * man/.gitignore: Ignore the new man page. * man/local.mk: Reference the new man page. * doc/coreutils.texi (base32 invocation): Document the new command. * src/local.mk: Adjust to build base32 based on base64.c. * src/base64.c: Parameterize to use the correct headers, functions and buffer sizes, depending on which binary is being built. * tests/misc/base64.pl: Adjust to test both base32 and base64. * tests/misc/tty-eof.pl: Add base32 as a program that accepts input on stdin without any options specified. * scripts/git-hooks/commit-msg: Add base32 to the template.
* doc: clarify how cp behaves with default ACLsAndreas Gruenbacher2015-04-131-1/+0
| | | | | | | | * doc/coreutils.texi (cp invocation): Mention that when copying files without preserving permissions, the umask or a default ACL affect the mode of new files. * THANKS.in: Remove committer. Related to http://bugs.gnu.org/8527
* maint: sort contributors in THANKS.inBernhard Voelker2015-02-091-22/+25
| | | | | | | | * THANKS.in: Document the preferred sort order as a comment at the top of the file. Change "Марк Коренберг" to latin1 ("Mark Korenberg"). Sort all entries. * cfg.mk (sc_THANKS_in_sorted): Add rule to ensure that 'THANKS.in' remains sorted.
* tail: return inotify resources where possiblePádraig Brady2015-02-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | Each user has a maximum number of inotify watches, so handle the cases where we exhaust these resources. * src/tail.c (tail_forever_inotify): Ensure we inotify_rm_watch() the watch for an inode, when replacing with a new watch for a name. Return all used inotify resources when reverting to polling. Revert to polling upon first indication of inotify resource exhaustion. Revert to polling on any inotify resource exhaustion. Diagnose resource exhaustion correctly in all cases. Avoid redundant reinsertion in the hash for unchanged watches (where only attributes of the file are changed). * tests/tail-2/retry.sh: Avoid false failure when reverting to polling. * tests/tail-2/inotify-rotate.sh: Likewise. * tests/tail-2/symlink.sh: Likewise. * tests/tail-2/inotify-rotate-resources.sh: New test to check that we're calling inotify_rm_watch() for replaced files. * tests/local.mk: Reference the new test. * NEWS: Mention the bug fix. * THANKS.in: Thanks for reporting and problem identification.
* maint: fix typo in THANKS.in in previous commitPádraig Brady2015-01-191-1/+1
| | | | * THANKS.in: s/Stehpen/Stephen/
* doc: clarify that du operands are interdependentPádraig Brady2015-01-191-0/+1
| | | | | | | | | | | | | | | | Following on from http://bugs.gnu.org/17546 make it more obvious that du may elide specified operands to avoid double counting in the set. * src/du.c (usage): Specify that du operates on the set of operands, rather than each independently. * doc/coreutils.texi (du invocation): Likewise. Also state that the number of entries printed may change due to the order specified. Currently, deeper items specified earlier will result in them being displayed, but don't mention that implementation detail in the documentation. * THANKS.in: Add reporter. Reported by Stephen Shirley
* maint: fix how to request changes for THANKS.inBernhard Voelker2014-12-161-1/+1
| | | | | | | * THANKS.in: Change the comment at the top to send change requests regarding this file to the main mailing list rather than referring to cp's --help output for the mailing list's address - which does not include that information anymore.
* cp: remove redundant possibly expensive heap deallocationRasmus Borup Hansen2014-08-111-1/+0
| | | | | | | | | | | If the hash structures grow sufficiently large so that the system is actively swapping, then the deallocation can take a significant amount of time. Details at: http://lists.gnu.org/archive/html/coreutils/2014-08/msg00012.html * src/cp.c (main): Only call hash deallocation routines when in lint checking mode. * THANKS.in: Remove as now in the git author list.
* maint: avoid compiler warnings with some assert() implementationsBen Walton2014-06-021-1/+0
| | | | | | | * src/df.c (get_dev): asssert() on Solaris 10 is not marked as __noreturn__ and thus the compiler may think V is uninitialized later on in the function. * THANKS.in: Remove the now committer.
* tests: fix false dd conv=sparse failure on newer XFSPádraig Brady2014-04-111-0/+1
| | | | | | | | | * tests/dd/sparse.sh: When testing that a hole is created, use an existing sparse destination file, so that we're not write extending the file size, and thus avoiding speculative preallocation which can result in smaller holes than requested. Workaround suggested by Brian Foster
* head: port to Darwin and use simpler seeksPaul Eggert2014-04-021-1/+1
| | | | | | | | | | | | | | | | | This removes an unportable assumption that if lseek succeeds, the file is capable of seeking. See: http://bugs.gnu.org/17145 * src/head.c (elseek): New function, for consistency in reporting lseek failures. (elide_tail_bytes_file, elide_tail_lines_seekable) (elide_tail_lines_file, head_lines, head): Use it. (elide_tail_bytes_file, elide_tail_lines_file): New args CURRENT_POS and SIZE. All uses changed. Don't bother invoking lseek, since we know the file's pos and size now. (elide_tail_bytes_file): Change a local from uintmax_t to off_t, since it fits. (head): Use lseek only on regular files, since its behavior on unseekable devices is implementation-defined. * NEWS: Document this.
* split: avoid unnecessary input bufferingPádraig Brady2014-03-241-0/+1
| | | | | | | | | | | | | | | | | | Input buffering is best avoided because it introduces delayed processing of output for intermittent input, especially when the output size is less than that of the input buffer. This is significant when output is being further processed which could happen if split is writing to precreated fifos, or through --filter. If input is arriving quickly from a pipe then this will already be buffered before we read it, so fast arriving input shouldn't be a performance issue. * src/split.c (lines_split, lines_bytes_split, bytes_split, lines_chunk_split, bytes_chunk_extract): s/full_read/safe_read/. * THANKS.in: Mention the reporter. * NEWS: Mention the improvement.
* doc: avoid regex ambiguity in chmod mode descriptionEdward Welbourne2014-03-191-1/+0
| | | | | | | * man/chmod.x: s/[+-=]/[-+=]/ * doc/perm.texi (Symbolic Modes): Likewise. * THANKS.in: Remove patch owner. Fixes http://bugs.gnu.org/17041
* ln: with -sr, don't segfault for a TARGET of ''Jim Meyering2014-03-131-0/+1
| | | | | | | | | | | | | | Prior to this change, "ln -sr '' F" would segfault, attempting to read path2[1] in relpath.c's path_common_prefix function. This problem arises whenever canonicalize_filename_mode returns NULL. * src/ln.c (convert_abs_rel): Call relpath only when both canonicalize_filename_mode calls return non-NULL. * tests/ln/relative.sh: Add a test to trigger this failure. * THANKS.in: List reporter's name/address. * NEWS (Bug fixes): Mention it. Reported by Erik Bernstein in 739752@bugs.debian.org. Fixes http://bugs.gnu.org/17010.
* chroot: improve --userspec and --groups look-upPádraig Brady2014-03-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | - Support arbitrary numbers in --groups, consistent with what is already done for --userspec - Avoid look-ups entirely for --groups items with a leading '+' - Support names that are actually numbers in --groups - Ignore an empty --groups="" option for consistency with --userspec - Look up both inside and outside the chroot with inside taking precedence. The look-up outside may load required libraries to complete the look-up inside the chroot. This can happen for example with a 32 bit chroot on a 64 bit system, where the 32 bit NSS plugins within the chroot fail to load. * src/chroot.c (parse_additional_groups): A new function refactored from set_addition_groups(), to just do the parsing. The actual setgroups() call is separated out for calling from the chroot later. (main): Call parse_user_spec() and parse_additional_groups() both outside and inside the chroot for the reasons outlined above. * tests/misc/chroot-credentials.sh: Ensure arbitrary numeric IDs can be specified without causing look-up errors. * NEWS: Mention the improvements. * THANKS.in: Add Norihiro Kamae who initially reported the issue with a proposed patch. Also thanks to Dmitry V. Levin for his diagnosis and sample patch.
* ln: fix replacing symbolic links whose targets can't existPádraig Brady2014-01-171-0/+1
| | | | | | | | | | * src/ln.c (errno_nonexisting): A new function to determine if the errno implies that a file doesn't or can't (currently) exist. (target_directory_operand): Use the new function to expand the set of errors we handle. * tests/ln/sf-1.sh: Add test cases for the newly handled errors. * THANKS.in: Mention the reporter. * NEWS: Mention the bug fix.
* copy: fix SELinux context preservation for existing directoriesPádraig Brady2014-01-131-0/+1
| | | | | | | | | | | | * src/copy.c (copy_internal): Use the global process context to set the context of existing directories before they're populated. This is more consistent with the new directory case, and fixes a bug for existing directories where we erroneously set the context to the last copied descendent, rather than to that of the source directory itself. * tests/cp/cp-a-selinux.sh: Add a test for this case. * NEWS: Mention the fix. * THANKS.in: Add reporter Michal Trunecka.
* shred: provide --remove methods to avoid excessive syncingPádraig Brady2013-11-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A sync operation is very often expensive. For illustration I timed the following python script which indicated that each ext4 dir sync was taking about 2ms and 12ms, on an SSD and traditional disk respectively. import os d=os.open(".", os.O_DIRECTORY|os.O_RDONLY) for i in range(1000): os.fdatasync(d) So syncing for each character for each file can result in significant delays. Often this overhead is redundant, as only the data is sensitive and not the file name. Even if the names are sensitive, your file system may employ synchronous metadata updates, which also makes explicit syncing redundant. * tests/misc/shred-remove.sh: Ensure all the new parameters actually unlink the file. * doc/coreutils.texi (shred invocation): Describe the new parameters to the --remove option. * src/shred.c (Usage): Likewise. (main): Parse the new options. (wipename): Inspect the new enum to see which of the now optional tasks to perform. * NEWS: Mention the new feature. * THANKS.in: Add reporter Joseph D. Wagner
* md5sum, sha*sum: improve help for --check related optionsPádraig Brady2013-11-011-0/+1
| | | | | | | | | * src/md5sum.c (usage): s/three/four/ in the message pertaining to the --check related options. Also clarify that --strict is just significant for the formatting of the checksum lines. Also since we're changing both strings, move the --strict description in with the description of the other options and order alphabetically. * THANKS.in: Added reporter: Daniel Mach
* doc: fix typo in description of dfFilipus Klutiero2013-08-071-1/+0
| | | | | | | * doc/coreutils.texi (df invocation): s/pseude/pseudo/ * THANKS.in (Filipus Klutiero): Remove entry, now that it will be automatically included in the generated THANKS file. Fixes http://bugs.gnu.org/15041
* od: -wN, N>64K, avoid misbehavior on systems with 32-bit size_tJim Meyering2013-06-021-0/+1
| | | | | | | | | | | * src/od.c (PRINT_FIELDS): Declare "i" to be of type uintmax_t, so that the numerator in the expression for "next_pad" does not overflow. (print_named_ascii): Likewise. (print_ascii): Likewise. Bug introduced via commit v6.12-42-g20c0b87. * tests/misc/od.pl: Exercise each of the three affected code paths. * NEWS (Bug fixes): Mention it. Reported by Rich Burridge.
* seq: fix newline output when -s specifiedPádraig Brady2012-12-211-0/+1
| | | | | | | | | | | This regression was introduced in commit v8.19-132-g3786fb6. * src/seq.c (seq_fast): Don't use puts() to output the first number, and instead insert it into the buffer as for other numbers. Also output the terminator unconditionally. * tests/misc/seq.pl: Add some basic tests for the -s option. * NEWS: Mention the fix. * THANKS.in: Reported by Philipp Gortan.
* readlink: support multiple command line argumentsPádraig Brady2012-12-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | This allows efficient processing of multiple files, while also increasing compatibility with BSD's readlink(1). We also add the -z, --zero option to delimit output items with the NUL character which disambiguates output in the presence of '\n' characters. * src/readlink.c (usage): Add the --zero description, and also adjust the description of --no-newline accordingly. (main): Handle the -z option and iterate over multiple arguments. Also as in commit v8.15-24-g9d46b25 we use fputs() and putchar() rather than printf() for performance reasons. * doc/coreutils.texi (readlink invocation): Document the new --zero option, adjust the --no-newline description, and tweak the general info to indicate multiple files are supported. * tests/readlink/multi.sh: A new test for the new functionality. * tests/local.mk: Reference the new test. * man/readlink.x: Adjust the summary and also reference realpath. * NEWS: Mention the improvement. * THANKS.in: Suggested by Aaron Davies.
* tail,stat: improve support for the ceph file systemBernhard Voelker2012-12-151-0/+1
| | | | | | | | | | | Teach tail -f that it must use polling on ceph file systems, and let stat -f --format=%T report the file system type name, "ceph". Website: http://ceph.com/ * src/stat.c (human_fstype): Add a case: ceph, 0x00C36400, remote. * NEWS (Improvements): Mention it. * THANKS.in: Update. Reported by Konrad Wróblewski in http://bugs.gnu.org/13172.
* maint: remove now auto-added entry from THANKS.inBernhard Voelker2012-12-051-1/+0
| | | | | | | | The syntax-check sc_THANKS_in_duplicates complained about that excess entry. * THANKS.in (Colin Watson): Remove entry, now that it will be automatically included in the generated THANKS file.
* seq: ensure correct output width for scientific notation inputPádraig Brady2012-11-241-0/+1
| | | | | | | | | * src/seq.c (scan_arg): Calculate the width more accurately for numbers specified using scientific notation. * tests/misc/seq.pl: Add tests for cases that were mishandled. * NEWS: Mention the fix. * THANKS.in: Reported by Marcel Böhme. Fixes http://bugs.gnu.org/12959