Commit Graph

9 Commits

Author SHA256 Message Date
Philipp Thomas
0954d8e70f - Update to 8.24:
** Bug fixes
  * dd supports more robust SIGINFO/SIGUSR1 handling for outputting statistics.
    Previously those signals may have inadvertently terminated the process.
  * df --local no longer hangs with inaccessible remote mounts.
    [bug introduced in coreutils-8.21]
  * du now silently ignores all directory cycles due to bind mounts.
    Previously it would issue a warning and exit with a failure status.
    [bug introduced in coreutils-8.1 and partially fixed in coreutils-8.23]
  * chroot again calls chroot(DIR) and chdir("/"), even if DIR is "/".
    This handles separate bind mounted "/" trees, and environments
    depending on the implicit chdir("/").
    [bugs introduced in coreutils-8.23]
  * cp no longer issues an incorrect warning about directory hardlinks when a
    source directory is specified multiple times.  Now, consistent with other
    file types, a warning is issued for source directories with duplicate names,
    or with -H the directory is copied again using the symlink name.
  * factor avoids writing partial lines, thus supporting parallel operation.
    [the bug dates back to the initial implementation]
  * head, od, split, tac, tail, and wc no longer mishandle input from files in
    /proc and /sys file systems that report somewhat-incorrect file sizes.
  * mkdir --parents -Z now correctly sets the context for the last component,
    even if the parent directory exists and has a different default context.
    [bug introduced with the -Z restorecon functionality in coreutils-8.22]
  * numfmt no longer outputs incorrect overflowed values seen with certain
    large numbers, or with numbers with increased precision.
    [bug introduced when numfmt was added in coreutils-8.21]
  * numfmt now handles leading zeros correctly, not counting them when
    settings processing limits, and making them optional with floating point.
    [bug introduced when numfmt was added in coreutils-8.21]
  * paste no longer truncates output for large input files.  This would happen
    for example with files larger than 4GiB on 32 bit systems with a '\n'
    character at the 4GiB position.
    [the bug dates back to the initial implementation]
  * rm indicates the correct number of arguments in its confirmation prompt,
    on all platforms.  [bug introduced in coreutils-8.22]
  * shuf -i with a single redundant operand, would crash instead of issuing
    a diagnostic.  [bug introduced in coreutils-8.22]
  * tail releases inotify resources when unused.  Previously it could exhaust
    resources with many files, or with -F if files were replaced many times.
    [bug introduced in coreutils-7.5]
  * tail -f again follows changes to a file after it's renamed.
    [bug introduced in coreutils-7.5]
  * tail --follow no longer misses changes to files if those files were
    replaced before inotify watches were created.
    [bug introduced in coreutils-7.5]
  * tail --follow consistently outputs all data for a truncated file.
    [bug introduced in the beginning]
  * tail --follow=name correctly outputs headers for multiple files
    when those files are being created or renamed.
    [bug introduced in coreutils-7.5]
  ** New features
  * chroot accepts the new --skip-chdir option to not change the working directory
    to "/" after changing into the chroot(2) jail, thus retaining the current wor-
    king directory.  The new option is only permitted if the new root directory is
    the old "/", and therefore is useful with the --group and --userspec options.
  * dd accepts a new status=progress level to print data transfer statistics
    on stderr approximately every second.
  * numfmt can now process multiple fields with field range specifications similar
    to cut, and supports setting the output precision with the --format option.
  * split accepts a new --separator option to select a record separator character
    other than the default newline character.
  * stty allows setting the "extproc" option where supported, which is
    a useful setting with high latency links.
  * sync no longer ignores arguments, and syncs each specified file, or with the
    --file-system option, the file systems associated with each specified file.
  * tee accepts a new --output-error option to control operation with pipes
    and output errors in general.
  ** Changes in behavior
  * df no longer suppresses separate exports of the same remote device, as
    these are generally explicitly mounted.  The --total option does still
    suppress duplicate remote file systems.
    [suppression was introduced in coreutils-8.21]
  * mv no longer supports moving a file to a hardlink, instead issuing an error.
    The implementation was susceptible to races in the presence of multiple mv
    instances, which could result in both hardlinks being deleted.  Also on case
    insensitive file systems like HFS, mv would just remove a hardlinked 'file'
    if called like `mv file File`.  The feature was added in coreutils-5.0.1.
  * numfmt --from-unit and --to-unit options now interpret suffixes as SI units,
    and IEC (power of 2) units are now specified by appending 'i'.
  * tee will exit early if there are no more writable outputs.
  * tee does not treat the file operand '-' as meaning standard output any longer,
    for better conformance to POSIX.  This feature was added in coreutils-5.3.0.
  * timeout --foreground no longer sends SIGCONT to the monitored process,
    which was seen to cause intermittent issues with GDB for example.
  ** Improvements
  * cp,install,mv will convert smaller runs of NULs in the input to holes,
    and cp --sparse=always avoids speculative preallocation on XFS for example.
  * cp will read sparse files more efficiently when the destination is a
    non regular file.  For example when copying a disk image to a device node.
  * mv will try a reflink before falling back to a standard copy, which is
    more efficient when moving files across BTRFS subvolume boundaries.
  * stat and tail now know about IBRIX.  stat -f --format=%T now reports the file
    system type, and tail -f uses polling for files on IBRIX file systems.
  * wc -l processes short lines much more efficiently.
  * References from --help and the man pages of utilities have been corrected
    in various cases, and more direct links to the corresponding online
    documentation are provided.
- Patches adapted because of changed sources:
  coreutils-disable_tests.patch
  coreutils-i18n.patch
  coreutils-misc.patch
  coreutils-ocfs2_reflinks.patch
  coreutils-remove_hostname_documentation.patch
  coreutils-remove_kill_documentation.patch
  coreutils-skip-gnulib-test-tls.patch
  coreutils-tests-shorten-extreme-factor-tests.patch
  sort-keycompare-mb.patch
- Patches removed because they're included in 8.24:  
  coreutils-chroot-perform-chdir-unless-skip-chdir.patch
  coreutils-df-doc-df-a-includes-duplicate-file-systems.patch
  coreutils-df-improve-mount-point-selection.patch
  coreutils-df-show-all-remote-file-systems.patch
  coreutils-df-total-suppress-separate-remotes.patch
  coreutils-doc-adjust-reference-to-info-nodes-in-man-pages.patch
  coreutils-fix_false_du_failure_on_newer_xfs.patch
  coreutils-fix-man-deps.patch
  coreutils-tests-aarch64-env.patch
  coreutils-tests-make-inotify-rotate-more-robust-and-efficient.patch
  coreutils-tests-rm-ext3-perf-increase-timeout.patch

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=262
2015-07-09 15:40:19 +00:00
Bernhard Voelker
1fe8c32170 Accepting request 243413 from home:bernhard-voelker:branches:Base:System
Upgrade to coreutils-8.23

OBS-URL: https://build.opensuse.org/request/show/243413
OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=234
2014-08-01 16:10:23 +00:00
Philipp Thomas
baceaa89e2 - Add three patches from SLE12 that aren't upstream:
coreutils-misc.patch (fixes for tests)
  coreutils-getaddrinfo.patch (fake success as there's no network
                               in the build system)
  coreutils-ocfs2_reflinks.patch (support ocfs2 reflinks in cp)

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=225
2014-02-24 14:21:36 +00:00
Bernhard Voelker
767847bef8 Accepting request 163146 from home:bernhard-voelker
- Update to 8.21 (2013-02-14) [stable]
- Port su(1) deleted upstreams from previous OS package
- Fix multibyte issue in unexpand (rh#821262)

OBS-URL: https://build.opensuse.org/request/show/163146
OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=183
2013-04-08 12:07:25 +00:00
Bernhard Voelker
26558dd009 - Avoid segmentation fault in "uniq" with long line input (bnc#796243, VUL-1)
* src/cut.c: Instead of usig unreliable alloca() stack allocation,
    use heap allocation via xmalloc()+free().
    (coreutils-i18n.patch)
- Fix test-suite errors (bnc#798261).
  * tests/cp/fiemap-FMR: Fix path to src directory and declare
    require_valgrind_ function.
    (coreutils-cp-corrupt-fragmented-sparse.patch)
  * tests/misc/cut:
    Fix src/cut.c to properly pass output-delimiter tests.
    Synchronize cut.c related part of the i18n patch with Fedora's.
    Merge coreutils-i18n-infloop.patch into coreutils-i18n.patch.
    Merge coreutils-i18n-uninit.patch into coreutils-i18n.patch.
    In tests/misc/cut, do not replace the non-i18n error messages.
    (coreutils-i18n.patch)
  * tests/rm/ext3-perf:
    This test failed due to heavy parallel CPU and/or disk load because it
    is based on timeouts. Do not run the test-suite with 'make -jN.
    (coreutils.spec, coreutils-testsuite.spec)
  * Further spec changes:
    Run more tests: also run "very expensive" tests; add acl, python-pyinotify,
    strace and valgrind to the build requirements.
    Remove patch5 and patch6 as they are now merged into coreutils-i18n.patch
    (see above).
    (coreutils.spec, coreutils-testsuite.spec)
- Maintenance changes:
  (coreutils.spec, coreutils-testsuite.spec)
  * Add perl and texinfo to the build requirements as they are needed to
    re-generate the man pages and the texinfo documentation.
  * Remove already-active "-Wall" compiler option from CFLAGS variable.
  * Install the compressed test-suite.log into the documentation directory
    of the coreutils-testsuite package (section %check and %files).
  * Properly guard the spec sections for the coreutils and the
    coreutils-testsuite package.
  * Update patches to reflect new line numbers.

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=172
2013-01-16 19:09:57 +00:00
Philipp Thomas
49b16878b2 - Update to 8.16:
- Improvements:
  * As a GNU extension, 'chmod', 'mkdir', and 'install' now accept
    operators '-', '+', '=' followed by octal modes;
  * Also, ordinary numeric modes with five or more digits no longer
    preserve setuid and setgid bits, so that 'chmod 00755 FOO' now
    clears FOO's setuid and setgid bits.
  * dd now accepts the count_bytes, skip_bytes iflags and the
    seek_bytes oflag, to more easily allow processing portions of a
    file.
  * dd now accepts the conv=sparse flag to attempt to create sparse
    output, by seeking rather than writing to the output file.
  * ln now accepts the --relative option, to generate a relative
    symbolic link to a target, irrespective of how the target is
    specified.
  * split now accepts an optional "from" argument to
    --numeric-suffixes, which changes the start number from the
    default of 0.
  * split now accepts the --additional-suffix option, to append an
    additional static suffix to output file names.
  * basename now supports the -a and -s options, which allow
    processing of more than one argument at a time.  Also the
    complementary -z option was added to delimit output items with
    the NUL character.
  * dirname now supports more than one argument. Also the complementary
    z option was added to delimit output items with the NUL character.
  - Bug fixes
  * du --one-file-system (-x) would ignore any non-directory
    specified on the command line. For example, "touch f; du -x f"
    would print nothing. [bug introduced in coreutils-8.15]
  * mv now lets you move a symlink onto a same-inode destination
    file that has two or more hard links.
  * "mv A B" could succeed, yet A would remain.
  * realpath no longer mishandles a root directory.
  - Improvements
  * ls can be much more efficient, especially with large directories
    on file systems for which getfilecon-, ACL-check- and XATTR-
    check-induced syscalls fail with ENOTSUP or similar.
 * 'realpath --relative-base=dir' in isolation now implies
    '--relative-to=dir' instead of causing a usage failure.
 * split now supports an unlimited number of split files as default
   behavior.
 For a detaild list se NEWS in the documentation.
- Add up-to-date german translation.

- Add two upstream patches that speed up ls (bnc#752943):
  * Cache (l)getfilecon calls to avoid the vast majority of the failing
    underlying getxattr syscalls.
  * Avoids always-failing queries for whether a file has a nontrivial
    ACL and for whether a file has certain "capabilities".

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=147
2012-04-16 15:12:46 +00:00
Philipp Thomas
51dadaabd0 - Update to 8.14. Changes since 8.12:
Bug fixes:

  - ls --dereference no longer outputs erroneous "argetm" strings for
    dangling symlinks when an 'ln=target' entry is in $LS_COLORS.
    [bug introduced in fileutils-4.0]

  - ls -lL symlink once again properly prints "+" when the referent has
    an ACL.  [bug introduced in coreutils-8.13]

  - sort -g no longer infloops for certain inputs containing NaNs [bug
    introduced in coreutils-8.5]

  - chown and chgrp with the -v --from= options, now output the correct
    owner.  I.E.  for skipped files, the original ownership is output,
    not the new one.  [bug introduced in sh-utils-2.0g]

  - cp -r could mistakenly change the permissions of an existing
    destination directory.  [bug introduced in coreutils-6.8]

  - cp -u -p would fail to preserve one hard link for each up-to-date
    copy of a src-hard-linked name in the destination tree.  I.e., if
    s/a and s/b are hard-linked and dst/s/a is up to date, "cp -up s
    dst" would copy s/b to dst/s/b rather than simply linking dst/s/b
    to dst/s/a.  [This bug appears to have been present in "the
    beginning".]

  - fts-using tools (rm, du, chmod, chgrp, chown, chcon) no longer use
    memory proportional to the number of entries in each directory they
    process.  Before, rm -rf 4-million-entry-directory would consume
    about 1GiB of memory.  Now, it uses less than 30MB, no matter how
    many entries there are.  [this bug was inherent in the use of fts:
    thus, for rm the bug was introduced in coreutils-8.0.  The prior
    implementation of rm did not use as much memory.  du, chmod, chgrp
    and chown started using fts in 6.0.  chcon was added in
    coreutils-6.9.91 with fts support.  ]

  - pr -T no longer ignores a specified LAST_PAGE to stop at.  [bug
    introduced in textutils-1.19q]

  - printf '%d' '"' no longer accesses out-of-bounds memory in the
    diagnostic.  [bug introduced in sh-utils-1.16]

  - split --number l/... no longer creates extraneous files in certain
    cases.  [bug introduced in coreutils-8.8]

  - timeout now sends signals to commands that create their own process
    group.  timeout is no longer confused when starting off with a
    child process.  [bugs introduced in coreutils-7.0]

  - unexpand -a now aligns correctly when there are spaces spanning a
    tabstop, followed by a tab.  In that case a space was dropped,
    causing misalignment.  We also now ensure that a space never
    precedes a tab.  [bug introduced in coreutils-5.3.0]
  
  New features:

  - date now accepts ISO 8601 date-time strings with "T" as the
    separator.  It has long parsed dates like "2004-02-29 16:21:42"
    with a space between the date and time strings.  Now it also parses
    "2004-02-29T16:21:42" and fractional-second and time-zone-annotated
    variants like "2004-02-29T16:21:42.333-07:00"
  - md5sum accepts the new --strict option.  With --check, it makes the
    tool exit non-zero for any invalid input line, rather than just warning.
    This also affects sha1sum, sha224sum, sha384sum and sha512sum.

  - split accepts a new --filter=CMD option.  With it, split filters
    output through CMD.  CMD may use the $FILE environment variable,
    which is set to the nominal output file name for each invocation of
    CMD.  For example, to split a file into 3 approximately equal
    parts, which are then compressed:

    split -n3 --filter='xz > $FILE.xz' big

    Note the use of single quotes, not double quotes.  That creates
    files named xaa.xz, xab.xz and xac.xz.

  - timeout accepts a new --foreground option, to support commands not
    started directly from a shell prompt, where the command is
    interactive or needs to receive signals initiated from the
    terminal.

  Improvements:

  - md5sum --check now supports the -r format from the corresponding
    BSD tool.  This also affects sha1sum, sha224sum, sha384sum and
    sha512sum.

  - pwd now works also on systems without openat.  On such systems, pwd
    would fail when run from a directory whose absolute name contained
    more than PATH_MAX / 3 components.  The df, stat and readlink
    programs are also affected due to their use of the canonicalize_*
    functions.

  - join --check-order now prints "join: FILE:LINE_NUMBER: bad_line"
    for an unsorted input, rather than e.g., "join: file 1 is not in
    sorted order".

  - shuf outputs small subsets of large permutations much more
    efficiently.  For example `shuf -i1-$((2**32-1)) -n2` no longer
    exhausts memory.

  - stat -f now recognizes the GPFS, MQUEUE and PSTOREFS file system
    types.

  - timeout now supports sub-second timeouts.

  Changes in behavior:

  - chmod, chown and chgrp now output the original attributes in
    messages, when -v or -c specified.

  - cp -au (where --preserve=links is implicit) may now replace newer
    files in the destination, to mirror hard links from the source.

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=128
2011-10-14 10:07:06 +00:00
Philipp Thomas
c09ae1bc93 - Update to 8.8. Changes since 8.6:
** Bug fixes
  cp -u no longer does unnecessary copying merely because the source
  has finer-grained time stamps than the destination.
  od now prints floating-point numbers without losing information, and
  it no longer omits spaces between floating-point columns in some cases.
  sort -u with at least two threads could attempt to read through a
  corrupted pointer. [bug introduced in coreutils-8.6]
  sort with at least two threads and with blocked output would busy-loop
  (spinlock) all threads, often using 100% of available CPU cycles to
  do no work.  I.e., "sort < big-file | less" could waste a lot of power.
  [bug introduced in coreutils-8.6]
  sort with at least two threads no longer segfaults due to use of pointers
  into the stack of an expired thread. [bug introduced in coreutils-8.6]
  sort --compress no longer mishandles subprocesses' exit statuses,
  no longer hangs indefinitely due to a bug in waiting for subprocesses,
  and no longer generates many more than NMERGE subprocesses.
  sort -m -o f f ... f no longer dumps core when file descriptors are limited.
  csplit no longer corrupts heap when writing more than 999 files,
  nor does it leak memory for every chunk of input processed
  [the bugs were present in the initial implementation]
  tail -F once again notices changes in a currently unavailable
  remote directory [bug introduced in coreutils-7.5]
** Changes in behavior
  sort will not create more than 8 threads by default due to diminishing
  performance gains.  Also the --parallel option is no longer restricted
  to the number of available processors.
  cp --attributes-only now completely overrides --reflink.
  Previously a reflink was needlessly attempted.

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=77
2011-01-03 19:39:07 +00:00
Philipp Thomas
3fbfe64e60 - Don't use version specific patches as it breaks automatic
updates.

OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=75
2010-12-22 15:54:18 +00:00