pkgsrc-Changes-HG archive

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

[pkgsrc/trunk]: pkgsrc/sysutils/bup sysutils/bup: Update to 0.30



details:   https://anonhg.NetBSD.org/pkgsrc/rev/8907afb663da
branches:  trunk
changeset: 404914:8907afb663da
user:      gdt <gdt%pkgsrc.org@localhost>
date:      Tue Nov 19 15:01:25 2019 +0000

description:
sysutils/bup: Update to 0.30

packaging changes: switch to 0.30 man tarball

Notable changes in 0.30 as compared to 0.29.3
=============================================

May require attention
---------------------

* The minimum `git` version required is now 1.5.6.

* The `prune-older` command now keeps the most recent save in each
  period group (day, week, month, ...) rather than the oldest.

* `bup` now adds a zero-padded suffix to the names of saves with the
  same timestamp (e.g. 1970-01-01-214640-07) in order to avoid
  duplicates.  The sequence number currently represents the save's
  reversed position in default `git rev-list` order, so that given:

      /foo/1970-01-01-214640-09
      /foo/1970-01-01-214640-10

  In the normal case, the -10 save would be the next save made after
  -09 (and the -09 save would be the single parent commit for -10).

* `bup` is not currently compatible with Python 3 and will now refuse
  to run if the Python version is not 2 unless
  `BUP_ALLOW_UNEXPECTED_PYTHON_VERSION=true` is set in the environment
  (which can be useful for development and testing).

* `bup ls -s` now reports the tree hash for commits unless
  `--commit-hash` is also specified.

General
-------

* `bup get` has been added.  This command allows the transfer or
  rewriting of data within and between repositories, local or remote.
  Among other things, it can be used to append remote saves to a local
  branch, which by extension supports merging repositories.  See
  `bup-get(1)` for further information, and please note, this is a new
  *EXPERIMENTAL* command that can (intentionally) modify your data in
  destructive ways.  It is potentially much more dangerous than most
  `bup` commands.  Treat with caution.

* `bup` can now restore directly from a remote repository via `bup
  restore -r host:path ...`.  See `bup-restore(1)` for more
  information.

* `bup ls` can now report information for remote repositories via `bup
  ls -r host:path ...`.  See `bup-ls(1)` for more information.

* `bup` should respect the git pack.packSizeLimit setting when writing
  packfiles, though at the moment it will only affect a remote
  repository when the option is set there directly.

* `bup save` now stores the size for all links and normal files.  For
  directories saved using this new format retrieving file sizes for
  larger files should be notably less expensive.  Among other things
  this may improve the performance of commands like `bup ls -l` or
  `find /some/fuse/dir -ls`.

* The VFS (Virtual File System) that underlies many operations, and
  provides the basis for commands like `restore`, `ls`, etc. has been
  rewritten in a way that makes remote repository access easier,
  should decrease the memory footprint in some cases (e.g. for bup
  fuse), and should make it easier to provide more selective caching.
  At the moment, data is just evicted at random once a threshold is
  reached.

* A `--noop <--blobs|--tree>` option has been added to `bup split`
  which prints the resulting id without storing the data in the
  repository.

Bugs
----

* The way `bup` handles output from subprocesses (diagnostics,
  progress, etc.) has been adjusted in a way that should make it less
  likely that bup might continue running after the main process has
  exited, say via a C-c (SIGINT).

* `bup` should now respect the specified compression level when
  writing to a remote repository.

* `bup restore` now creates FIFOs with mkfifo, not mknod, which is
  more portable.  The previous approach did not work correctly on (at
  least) some versions of NetBSD.

* `bup` should no longer just crash when it encounters a commit with a
  "mergetag" header.  For the moment, it just ignores them, and
  they'll be discarded whenever `bup` rewrites a commit, say via the
  `rm`, `prune-older`, or `get` commands.

* The bloom command should now end progress messages with \r, not \n,
  which avoids leaving spurious output lines behind at exit.

* A missing space has been added to the `bup split --bench` output.

* Various Python version compatibility problems have been fixed,
  including some of the incompatibilities introduced by Python 3.

* Some issues with mincore on WSL have been fixed.

* Some Android build incompatibilities have been fixed.


Build system
------------

* The tests no longer assume pwd is in /bin.

* The tests should be less sensitive to the locale.

* `test-meta` should no longer try to apply chattr +T to files.  'T'
  only works for directories, and newer Linux kernels actually reject
  the attempt (as of at least 4.12, and maybe 4.10).

* `test-rm` should no longer fail when newer versions of git
  automatically create packed-refs.

* `test-sparse-files` should be less likely to fail when run inside a
  container.

* `test-index-check-device` and `test-xdev` now use separate files for
  their loopback mounts.  Previously each was mounting the same image
  twice, which could produce the same device number.

Thanks to (at least)
====================

Alexander Barton, Artem Leshchev, Ben Kelly, Fabian 'xx4h' Melters,
Greg Troxel, Jamie Wyrick, Julien Goodwin, Mateusz Konieczny,
Nathaniel Filardo, Patrick Rouleau, Paul Kronenwetter, Rob Browning,
Robert Evans, Tim Riemenschneider, and bedhanger

diffstat:

 sysutils/bup/Makefile   |  25 +++++++++++++++----------
 sysutils/bup/PLIST      |   9 ++++++---
 sysutils/bup/distinfo   |  18 +++++++++---------
 sysutils/bup/options.mk |   4 ++--
 4 files changed, 32 insertions(+), 24 deletions(-)

diffs (144 lines):

diff -r da8a623ae642 -r 8907afb663da sysutils/bup/Makefile
--- a/sysutils/bup/Makefile     Tue Nov 19 14:33:17 2019 +0000
+++ b/sysutils/bup/Makefile     Tue Nov 19 15:01:25 2019 +0000
@@ -1,19 +1,22 @@
-# $NetBSD: Makefile,v 1.37 2019/11/04 21:28:42 rillig Exp $
+# $NetBSD: Makefile,v 1.38 2019/11/19 15:01:25 gdt Exp $
 
-DISTNAME=      bup-0.29.3
+DISTNAME=      bup-0.30
 CATEGORIES=    sysutils
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=bup/}
 # bup has two problems that make packaging difficult.  One is that
 # building man pages requires non-portable tools (pandoc).  The other
 # is that it is hosted on github, which makes hosting tarballs
 # difficult.  The combination of this leads to having a branch "man"
-# in bup's git which has autogenerated man pages.  For now, we created
-# a bup-man tarball that contains the built man pages in a bup-man
-# directory, and host it at MASTER_SITES_LOCAL.
+# in bup's git which has autogenerated man pages.
 DISTFILES=     ${DISTNAME}${EXTRACT_SUFX}
-# Upstream has not created bup-man-0.29.3
-#DISTFILES+=   ${DISTNAME:S/bup/bup-man/}${EXTRACT_SUFX}
-DISTFILES+=    bup-man-0.28.1${EXTRACT_SUFX}
+
+# Upstream's 0.30 docs do not have a tag.
+MAN_TARBALL=   28876cde4a3dac518e773860aa7969c106f5390d
+MAN_UNPACK=    bup-${MAN_TARBALL}
+DISTFILES+=    ${MAN_TARBALL}${EXTRACT_SUFX}
+
+# Upstream provides html, but we choose not to include it in the package.
+#HTML_TARBALL= 66eccb7eb49575d006d193276018d9551ac5b4d4
 
 MAINTAINER=    gdt%NetBSD.org@localhost
 HOMEPAGE=      https://github.com/bup/bup
@@ -28,10 +31,12 @@
 # TEST_DEPENDS
 BUILD_DEPENDS+=        rsync-[0-9]*:../../net/rsync
 
-PYTHON_VERSIONS_ACCEPTED=      27 # py-fuse-bindings
+PYTHON_VERSIONS_ACCEPTED=      27      # py-fuse-bindings
 
-DOCDIR=                ${WRKDIR}/bup-man
+DOCDIR=                ${WRKDIR}/${MAN_UNPACK}
 
+# Note that tests 1) will fail on a fs mounted noatime and 2) need a
+# lot of space, perhaps 1 GB.
 TEST_TARGET=   test
 
 MAKE_FLAGS+=   PREFIX=${PREFIX}
diff -r da8a623ae642 -r 8907afb663da sysutils/bup/PLIST
--- a/sysutils/bup/PLIST        Tue Nov 19 14:33:17 2019 +0000
+++ b/sysutils/bup/PLIST        Tue Nov 19 15:01:25 2019 +0000
@@ -1,10 +1,11 @@
-@comment $NetBSD: PLIST,v 1.8 2019/09/12 00:28:47 gdt Exp $
+@comment $NetBSD: PLIST,v 1.9 2019/11/19 15:01:25 gdt Exp $
 bin/bup
 lib/bup/bup/__init__.py
 lib/bup/bup/_helpers.so
 lib/bup/bup/_release.py
 lib/bup/bup/bloom.py
 lib/bup/bup/client.py
+lib/bup/bup/compat.py
 lib/bup/bup/csetup.py
 lib/bup/bup/drecurse.py
 lib/bup/bup/gc.py
@@ -18,6 +19,7 @@
 lib/bup/bup/midx.py
 lib/bup/bup/options.py
 lib/bup/bup/path.py
+lib/bup/bup/repo.py
 lib/bup/bup/rm.py
 lib/bup/bup/shquote.py
 lib/bup/bup/ssh.py
@@ -34,6 +36,7 @@
 lib/bup/cmd/bup-ftp
 lib/bup/cmd/bup-fuse
 lib/bup/cmd/bup-gc
+lib/bup/cmd/bup-get
 lib/bup/cmd/bup-help
 lib/bup/cmd/bup-import-duplicity
 lib/bup/cmd/bup-import-rdiff-backup
@@ -48,7 +51,6 @@
 lib/bup/cmd/bup-meta
 lib/bup/cmd/bup-midx
 lib/bup/cmd/bup-mux
-lib/bup/cmd/bup-newliner
 lib/bup/cmd/bup-on
 lib/bup/cmd/bup-on--server
 lib/bup/cmd/bup-prune-older
@@ -74,6 +76,7 @@
 man/man1/bup-ftp.1
 man/man1/bup-fuse.1
 man/man1/bup-gc.1
+man/man1/bup-get.1
 man/man1/bup-help.1
 man/man1/bup-import-duplicity.1
 man/man1/bup-import-rdiff-backup.1
@@ -87,8 +90,8 @@
 man/man1/bup-meta.1
 man/man1/bup-midx.1
 man/man1/bup-mux.1
-man/man1/bup-newliner.1
 man/man1/bup-on.1
+man/man1/bup-prune-older.1
 man/man1/bup-random.1
 man/man1/bup-restore.1
 man/man1/bup-rm.1
diff -r da8a623ae642 -r 8907afb663da sysutils/bup/distinfo
--- a/sysutils/bup/distinfo     Tue Nov 19 14:33:17 2019 +0000
+++ b/sysutils/bup/distinfo     Tue Nov 19 15:01:25 2019 +0000
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.12 2019/09/12 00:28:47 gdt Exp $
+$NetBSD: distinfo,v 1.13 2019/11/19 15:01:25 gdt Exp $
 
-SHA1 (bup-0.29.3.tar.gz) = 5c44613777369b298fe9c8fdbf603acca52c744d
-RMD160 (bup-0.29.3.tar.gz) = 328bcef51e1efd2aee64116107456342b5f6fb13
-SHA512 (bup-0.29.3.tar.gz) = 4f500c214a37f781daf064de3a4de27a40be890aadb1d5102b94ca9dc1d52e01ca3884a79412beaac0f4007287df24aef225aedb65f1afb60d4119e4b467f789
-Size (bup-0.29.3.tar.gz) = 390868 bytes
-SHA1 (bup-man-0.28.1.tar.gz) = a85ea1976862f8a0478db283a2c25898b0ec5a08
-RMD160 (bup-man-0.28.1.tar.gz) = cd165ec0c71bdafc6f536db5a40a67893fc53dcc
-SHA512 (bup-man-0.28.1.tar.gz) = ba1eb2e8392ddc685c9fbec33c2342cd21105479834bc056f485fae422a1c5eaae662dbe684e4d3ff72c0f6a2c3ab73723c895cba00b22c4156dceca39502c3c
-Size (bup-man-0.28.1.tar.gz) = 29545 bytes
+SHA1 (28876cde4a3dac518e773860aa7969c106f5390d.tar.gz) = 7621c8db2a6dc58ab3cc38e92f360f6de50b3eca
+RMD160 (28876cde4a3dac518e773860aa7969c106f5390d.tar.gz) = 463b18875c27b70ad0777456797f647eda7712a9
+SHA512 (28876cde4a3dac518e773860aa7969c106f5390d.tar.gz) = 56d424c11992c9e46d059e617b8979fe7f73bbe2496604524e52d2ab9c9af9f0d305ef99df3fa1b826f091ef78f4f938020c8f7b11080c3060a5c004ed421960
+Size (28876cde4a3dac518e773860aa7969c106f5390d.tar.gz) = 32954 bytes
+SHA1 (bup-0.30.tar.gz) = 1ac664d49844d8a11a4b3ab01d581f57e163dc80
+RMD160 (bup-0.30.tar.gz) = b716d4972990c0b2cda82b2cc2866123a8b6ef04
+SHA512 (bup-0.30.tar.gz) = 8c500568ca2609e6b437b3a67c08976bbdb6fbad39c77eb7e74e503b5ffdc1cbe1e51b5e834e7db0481a3cfc38a55aeae49a8e53657994524b612e54136e7af1
+Size (bup-0.30.tar.gz) = 431253 bytes
diff -r da8a623ae642 -r 8907afb663da sysutils/bup/options.mk
--- a/sysutils/bup/options.mk   Tue Nov 19 14:33:17 2019 +0000
+++ b/sysutils/bup/options.mk   Tue Nov 19 15:01:25 2019 +0000
@@ -1,8 +1,8 @@
-# $NetBSD: options.mk,v 1.1 2014/03/19 12:54:02 gdt Exp $
+# $NetBSD: options.mk,v 1.2 2019/11/19 15:01:25 gdt Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.bup
 PKG_SUPPORTED_OPTIONS= fuse
-# fuse is disabled by default because it doesn't build on Mac, ad
+# fuse is disabled by default because it doesn't build on Mac, and
 # because the fuse implementation in bup doesn't work on NetBSD.
 # After it's fixed upstream, an OS-specific default is probably
 # appropriate.



Home | Main Index | Thread Index | Old Index