pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/sysutils/bfs (sysutils/bfs) Updated from 1.1.3 to 1.5.1



details:   https://anonhg.NetBSD.org/pkgsrc/rev/e72d29fc7b6a
branches:  trunk
changeset: 419249:e72d29fc7b6a
user:      mef <mef%pkgsrc.org@localhost>
date:      Sun Dec 15 12:29:01 2019 +0000

description:
(sysutils/bfs) Updated from 1.1.3 to 1.5.1

1.5.1
-----
**September 14, 2019**

- Added a warning to `-mount`, since it will change behaviour in the next POSIX revision
- Added a workaround for environments that block `statx()` with `seccomp()`, like older Docker
- Fixed coloring of nonexistent leading directories
- Avoided calling `stat()` on all mount points at startup

1.5
---
**June 27, 2019**

- New `-xattr` predicate to find files with extended attributes
- Fixed the `-acl` implementation on macOS
- Implemented depth-first (`-S dfs`) and iterative deepening search (`-S ids`)
- Piped `-help` output into `$PAGER` by default
- Fixed crashes on some invalid `LS_COLORS` values

1.4.1
-----
**April 5, 2019**

- Added a nicer error message when the tests are run as root
- Fixed detection of comparison expressions with signs, to match GNU find for things like `-uid ++10`
- Added support for https://no-color.org/
- Decreased the number of `stat()` calls necessary in some cases

1.4
---
**April 15, 2019**

- New `-unique` option that filters out duplicate files (https://github.com/tavianator/bfs/issues/40)
- Optimized the file coloring implementation
- Fixed the coloring implementation to match GNU ls more closely in many corner cases
  - Implemented escape sequence parsing for `LS_COLORS`
  - Implemented `ln=target` for coloring links like their targets
  - Fixed the order of fallbacks used when some color keys are unset
- Add a workaround for incorrect file types for bind-mounted files on Linux (https://github.com/tavianator/bfs/issues/37)

1.3.3
-----
**February 10, 2019**

- Fixed unpredictable behaviour for empty responses to `-ok`/`-okdir` caused by an uninitialized string
- Writing to standard output now causes `bfs` to fail if the descriptor was closed
- Fixed incomplete file coloring in error messages
- Added some data flow optimizations
- Fixed `-nogroup`/`-nouser` in big directory trees
- Added `-type w` for whiteouts, as supported by FreeBSD `find`
- Re-wrote the `-help` message and manual page

1.3.2
-----
**January 11, 2019**

- Fixed an out-of-bounds read if LS_COLORS doesn't end with a `:`
- Allowed multiple debug flags to be specified like `-D opt,tree`

1.3.1
-----
**January 3, 2019**

- Fixed some portability problems affecting FreeBSD

1.3
---
**January 2, 2019**

New features:

- `-acl` finds files with non-trivial Access Control Lists (from FreeBSD)
- `-capable` finds files with capabilities set
- `-D all` turns on all debugging flags at once

Fixes:

- `LS_COLORS` handling has been improved:
  - Extension colors are now case-insensitive like GNU `ls`
  - `or` (orphan) and `mi` (missing) files are now treated differently
  - Default colors can be unset with `di=00` or similar
  - Specific colors fall back to more general colors when unspecified in more places
  - `LS_COLORS` no longer needs a trailing colon
- `-ls`/`-fls` now prints the major/minor numbers for device nodes
- `-exec ;` is rejected rather than segfaulting
- `bfs` now builds on old Linux versions that require `-lrt` for POSIX timers
- For files whose access/change/modification times can't be read, `bfs` no longer fails unless those times are needed for tests
- The testsuite is now more correct and portable

1.2.4
-----
**September 24, 2018**

- GNU find compatibility fixes for `-printf`:
  - `%Y` now prints `?` if an error occurs resolving the link
  - `%B` is now supported for birth/creation time (as well as `%W`/`%w`)
  - All standard `strftime()` formats are supported, not just the ones from the GNU find manual
- Optimizations are now re-run if any expressions are reordered
- `-exec` and friends no longer leave zombie processes around when `exec()` fails

1.2.3
-----
**July 15, 2018**

- Fixed `test_depth_error` on filesystems that don't fill in `d_type`
- Fixed the build on Linux architectures that don't have the `statx()` syscall (ia64, sh4)
- Fixed use of AT_EMPTY_PATH for fstatat on systems that don't support it (Hurd)
- Fixed `ARG_MAX` accounting on architectures with large pages (ppc64le)
- Fixed the build against the upcoming glibc 2.28 release that includes its own `statx()` wrapper

1.2.2
-----
**June 23, 2018**

- Minor bug fixes:
  - Fixed `-exec ... '{}' +` argument size tracking after recovering from `E2BIG`
  - Fixed `-fstype` if `/proc` is available but `/etc/mtab` is not
  - Fixed an uninitialized variable when given `-perm +rw...`
  - Fixed some potential "error: 'path': Success" messages
- Reduced reliance on GNU coreutils in the testsuite
- Refactored and simplified the internals of `bftw()`

1.2.1
-----
**February 8, 2018**

- Performance optimizations

1.2
---
**January 20, 2018**

- Added support for the `-perm +7777` syntax deprecated by GNU find (equivalent to `-perm /7777`), for compatibility with BSD finds
- Added support for file birth/creation times on platforms that report it
  - `-Bmin`/`-Btime`/`-Bnewer`
  - `B` flag for `-newerXY`
  - `%w` and `%Wk` directives for `-printf`
  - Uses the `statx(2)` system call on new enough Linux kernels
- More robustness to `E2BIG` added to the `-exec` implementation

1.1.4
-----
**October 27, 2017**

- Added a man page
- Fixed cases where multiple actions write to the same file
- Report errors that occur when closing files/flushing streams
- Fixed "argument list too long" errors with `-exec ... '{}' +`

diffstat:

 sysutils/bfs/Makefile             |   8 +++++---
 sysutils/bfs/PLIST                |   3 ++-
 sysutils/bfs/distinfo             |  12 ++++++------
 sysutils/bfs/patches/patch-mtab.c |  21 ++++++++++-----------
 4 files changed, 23 insertions(+), 21 deletions(-)

diffs (92 lines):

diff -r 9c600725e440 -r e72d29fc7b6a sysutils/bfs/Makefile
--- a/sysutils/bfs/Makefile     Sun Dec 15 12:24:25 2019 +0000
+++ b/sysutils/bfs/Makefile     Sun Dec 15 12:29:01 2019 +0000
@@ -1,17 +1,19 @@
-# $NetBSD: Makefile,v 1.1 2017/10/25 14:57:50 fhajny Exp $
+# $NetBSD: Makefile,v 1.2 2019/12/15 12:29:01 mef Exp $
 
-DISTNAME=      bfs-1.1.3
+DISTNAME=      bfs-1.5.1
 CATEGORIES=    sysutils
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=tavianator/}
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
 HOMEPAGE=      https://github.com/tavianator/bfs/
 COMMENT=       Breadth-first version of the UNIX find command
-#LICENSE=      zero-bsd
+LICENSE=       isc-AUTHOR
 
 USE_LANGUAGES= c c99
 USE_TOOLS+=    gmake
 
+MAKE_ENV+=     MANDIR=${PREFIX}/${PKGMANDIR}
+
 INSTALLATION_DIRS+=    bin
 
 .include "../../mk/bsd.pkg.mk"
diff -r 9c600725e440 -r e72d29fc7b6a sysutils/bfs/PLIST
--- a/sysutils/bfs/PLIST        Sun Dec 15 12:24:25 2019 +0000
+++ b/sysutils/bfs/PLIST        Sun Dec 15 12:29:01 2019 +0000
@@ -1,2 +1,3 @@
-@comment $NetBSD: PLIST,v 1.1 2017/10/25 14:57:50 fhajny Exp $
+@comment $NetBSD: PLIST,v 1.2 2019/12/15 12:29:01 mef Exp $
 bin/bfs
+man/man1/bfs.1
diff -r 9c600725e440 -r e72d29fc7b6a sysutils/bfs/distinfo
--- a/sysutils/bfs/distinfo     Sun Dec 15 12:24:25 2019 +0000
+++ b/sysutils/bfs/distinfo     Sun Dec 15 12:29:01 2019 +0000
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.2 2019/09/09 09:32:36 nia Exp $
+$NetBSD: distinfo,v 1.3 2019/12/15 12:29:01 mef Exp $
 
-SHA1 (bfs-1.1.3.tar.gz) = c18273c935241df7d97dbe9430067f88303089a1
-RMD160 (bfs-1.1.3.tar.gz) = aff90ce1031399ae2568c9468dfb3239464a8734
-SHA512 (bfs-1.1.3.tar.gz) = 32a05a312549e53f1f0a4413a5f0d3695a6c9219326518b9c6e89ad3f050cc94666ec2661d84c9ea377718342e7483d1b50caf6a268afa24d1f0fa53e22b10c4
-Size (bfs-1.1.3.tar.gz) = 71109 bytes
-SHA1 (patch-mtab.c) = 17e17af347b4e38b44e8be730c9a4509cc77a4e2
+SHA1 (bfs-1.5.1.tar.gz) = c30b54309acff433f0cd78e9117d0b725d269fcc
+RMD160 (bfs-1.5.1.tar.gz) = 101a5bf416ae81db4b1654c76d6c7ff3293269ce
+SHA512 (bfs-1.5.1.tar.gz) = f501f2acaa19c772a350863539030c60299c3b001ebd3d473add4e8975f4fda3a79a6a524a0d1fbf729a66a943557cb66aa6d65a8aae41ab88b81a7740b17874
+Size (bfs-1.5.1.tar.gz) = 113824 bytes
+SHA1 (patch-mtab.c) = 591269c91adff55bae9c4b9ab7b66a621b11486f
diff -r 9c600725e440 -r e72d29fc7b6a sysutils/bfs/patches/patch-mtab.c
--- a/sysutils/bfs/patches/patch-mtab.c Sun Dec 15 12:24:25 2019 +0000
+++ b/sysutils/bfs/patches/patch-mtab.c Sun Dec 15 12:29:01 2019 +0000
@@ -1,10 +1,10 @@
-$NetBSD: patch-mtab.c,v 1.1 2019/09/09 09:32:37 nia Exp $
+$NetBSD: patch-mtab.c,v 1.2 2019/12/15 12:29:01 mef Exp $
 
 Support NetBSD's spelling of statfs.
 
---- mtab.c.orig        2017-10-05 01:30:02.000000000 +0000
-+++ mtab.c
-@@ -132,7 +132,11 @@ fail:
+--- mtab.c.orig        2019-09-15 03:10:39.000000000 +0900
++++ mtab.c     2019-12-15 21:00:33.122336837 +0900
+@@ -140,14 +140,21 @@ struct bfs_mtab *parse_bfs_mtab() {
  
  #elif BFS_MNTINFO
  
@@ -15,16 +15,15 @@
 +#endif
        int size = getmntinfo(&mntbuf, MNT_WAIT);
        if (size < 0) {
-               return NULL;
-@@ -150,7 +154,11 @@ fail:
+               error = errno;
+               goto fail;
        }
-       mtab->capacity = size;
- 
+-
 +#ifdef __NetBSD__
 +      for (struct statvfs *mnt = mntbuf; mnt < mntbuf + size; ++mnt) {
 +#else
        for (struct statfs *mnt = mntbuf; mnt < mntbuf + size; ++mnt) {
 +#endif
-               struct stat sb;
-               if (stat(mnt->f_mntonname, &sb) != 0) {
-                       continue;
+               if (bfs_mtab_add(mtab, mnt->f_mntonname, mnt->f_fstypename) != 0) {
+                       error = errno;
+                       goto fail;



Home | Main Index | Thread Index | Old Index