pkgsrc-Changes-HG archive

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

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



details:   https://anonhg.NetBSD.org/pkgsrc/rev/bc5916a60173
branches:  trunk
changeset: 352767:bc5916a60173
user:      gdt <gdt%pkgsrc.org@localhost>
date:      Sun Sep 18 23:02:48 2016 +0000

description:
Update to 0.28.1

Upstream changes:

* The index format has changed, which will trigger a full index
  rebuild on the next index run, making that run more expensive than
  usual.

* When given `--xdev`, `bup save` should no longer skip directories
  that are explicitly listed on the command line when the directory is
  both on a separate filesystem, and a subtree of another path listed
  on the command line.  Previously `bup save --xdev / /usr` could skip
  "/usr" if it was on a separate filesystem from "/".

* Tags along a branch are no longer shown in the branch's directory in
  the virtual filesystem (VFS).  i.e. given `bup tag special
  /foo/latest`, "/foo/special" will no longer be visible via `bup ls`,
  `bup web`, `bup fuse`, etc., but the tag will still be available as
  "/.tag/special".

* bup now provides experimental `rm` and `gc` subcommands, which
  should allow branches and saves to be deleted, and their storage
  space reclaimed (assuming nothing else refers to the relevant data).
  For the moment, these commands require an `--unsafe` argument and
  should be treated accordingly.  Although if an attempt to `join` or
  `restore` the data you still care about after a `gc` succeeds,
  that's a fairly encouraging sign that the commands worked correctly.
  (The `t/compare-trees` command in the source tree can be used to
  help test before/after results.)

  Note that the current `gc` command is probabilistic, which means it
  may not remove *all* of the obsolete data from the repository, but
  also means that the command should be fairly efficient, even for
  large repositories.

* bup may have less impact on the filesystem cache.  It now attempts
  to leave the cache roughly the way it found it when running a `save`
  or `split`.

* A specific Python can be specified at `./configure` time via PYTHON,
  i.e. `PYTHON=/some/python ./configure`, and that Python will be
  embedded in all of the relevant scripts as an explicit "#!/..." line
  during `make install`.

* The way bup writes the data to disk (the packfiles in particular),
  should be a bit safer now if there is a coincident power failure or
  system crash.

* bup should be more likely to get the data to permanent storage
  safely on OS X, which appears to follow a surprising interpretation
  of the `fsync()` specification.

* The build system now creates and uses cmd/bup-python which refers to
  the `./configure` selected python.

diffstat:

 sysutils/bup/Makefile                       |  32 +++++++++++++++-------------
 sysutils/bup/PLIST                          |   9 ++++++-
 sysutils/bup/distinfo                       |  21 +++++++++---------
 sysutils/bup/patches/patch-Makefile         |  18 ++++++++--------
 sysutils/bup/patches/patch-config_configure |  15 -------------
 5 files changed, 43 insertions(+), 52 deletions(-)

diffs (190 lines):

diff -r 24d554ab7691 -r bc5916a60173 sysutils/bup/Makefile
--- a/sysutils/bup/Makefile     Sun Sep 18 22:56:25 2016 +0000
+++ b/sysutils/bup/Makefile     Sun Sep 18 23:02:48 2016 +0000
@@ -1,13 +1,18 @@
-# $NetBSD: Makefile,v 1.25 2016/07/09 13:04:05 wiz Exp $
+# $NetBSD: Makefile,v 1.26 2016/09/18 23:02:48 gdt Exp $
 
-DISTNAME=      bup-0.27
-PKGREVISION=   2
+DISTNAME=      bup-0.28.1
 CATEGORIES=    sysutils
-MASTER_SITES=  # https://github.com/bup/bup/releases/
-# doc: switch to "man" branch before downloading
-DISTFILES=     ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME:S/bup/bup-man/}.zip
+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.
+DISTFILES=     ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME:S/bup/bup-man/}${EXTRACT_SUFX}
 
-MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+MAINTAINER=    gdt%NetBSD.org@localhost
 HOMEPAGE=      http://github.com/bup/bup
 COMMENT=       Highly efficient file backup system based on the git packfile format
 LICENSE=       gnu-gpl-v2
@@ -29,6 +34,9 @@
 
 USE_TOOLS+=            bash gmake perl
 REPLACE_PERL=          format-subst.pl wvtestrun
+
+# In 0.28.1, there is "bup-python" which calls the python found by
+# configure.  Arguably many of these are no longer necessary.
 REPLACE_PYTHON+=       cmd/bloom-cmd.py
 REPLACE_PYTHON+=       cmd/cat-file-cmd.py
 REPLACE_PYTHON+=       cmd/daemon-cmd.py
@@ -74,14 +82,6 @@
 REPLACE_PYTHON+=       t/test-ls.sh
 REPLACE_PYTHON+=       t/unknown-owner
 
-SUBST_CLASSES+=                python-c
-SUBST_SED.python-c+=   -e 's,python -c,${PYTHONBIN} -c,'
-SUBST_STAGE.python-c=  pre-configure
-SUBST_FILES.python-c+= t/lib.sh
-SUBST_FILES.python-c+= t/test-ls.sh
-SUBST_FILES.python-c+= t/test-meta.sh
-SUBST_MESSAGE.python-c=        Fixing python executable in tests.
-
 REPLACE_BASH+=         cmd/import-rdiff-backup-cmd.sh
 REPLACE_BASH+=         t/compare-trees
 REPLACE_BASH+=         t/configure-sampledata
@@ -98,6 +98,8 @@
 REPLACE_BASH+=         t/test.sh
 REPLACE_BASH+=         wvtest-bup.sh
 
+INSTALLATION_DIRS+=    ${PKGMANDIR}/man1 share/doc/${PKGBASE}
+
 post-install:
        ${INSTALL_DATA} ${DOCDIR}/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
        ${INSTALL_DATA} ${WRKSRC}/DESIGN ${DESTDIR}${PREFIX}/share/doc/bup
diff -r 24d554ab7691 -r bc5916a60173 sysutils/bup/PLIST
--- a/sysutils/bup/PLIST        Sun Sep 18 22:56:25 2016 +0000
+++ b/sysutils/bup/PLIST        Sun Sep 18 23:02:48 2016 +0000
@@ -1,8 +1,8 @@
-@comment $NetBSD: PLIST,v 1.6 2015/04/27 09:17:17 wiz Exp $
+@comment $NetBSD: PLIST,v 1.7 2016/09/18 23:02:48 gdt Exp $
 bin/bup
 lib/bup/bup/__init__.py
 lib/bup/bup/_helpers.so
-lib/bup/bup/_version.py
+lib/bup/bup/_release.py
 lib/bup/bup/bloom.py
 lib/bup/bup/client.py
 lib/bup/bup/csetup.py
@@ -19,6 +19,7 @@
 lib/bup/bup/path.py
 lib/bup/bup/shquote.py
 lib/bup/bup/ssh.py
+lib/bup/bup/version.py
 lib/bup/bup/vfs.py
 lib/bup/bup/vint.py
 lib/bup/bup/xstat.py
@@ -30,6 +31,7 @@
 lib/bup/cmd/bup-fsck
 lib/bup/cmd/bup-ftp
 lib/bup/cmd/bup-fuse
+lib/bup/cmd/bup-gc
 lib/bup/cmd/bup-help
 lib/bup/cmd/bup-import-duplicity
 lib/bup/cmd/bup-import-rdiff-backup
@@ -49,6 +51,7 @@
 lib/bup/cmd/bup-on--server
 lib/bup/cmd/bup-random
 lib/bup/cmd/bup-restore
+lib/bup/cmd/bup-rm
 lib/bup/cmd/bup-save
 lib/bup/cmd/bup-server
 lib/bup/cmd/bup-split
@@ -67,6 +70,7 @@
 man/man1/bup-fsck.1
 man/man1/bup-ftp.1
 man/man1/bup-fuse.1
+man/man1/bup-gc.1
 man/man1/bup-help.1
 man/man1/bup-import-duplicity.1
 man/man1/bup-import-rdiff-backup.1
@@ -84,6 +88,7 @@
 man/man1/bup-on.1
 man/man1/bup-random.1
 man/man1/bup-restore.1
+man/man1/bup-rm.1
 man/man1/bup-save.1
 man/man1/bup-server.1
 man/man1/bup-split.1
diff -r 24d554ab7691 -r bc5916a60173 sysutils/bup/distinfo
--- a/sysutils/bup/distinfo     Sun Sep 18 22:56:25 2016 +0000
+++ b/sysutils/bup/distinfo     Sun Sep 18 23:02:48 2016 +0000
@@ -1,12 +1,11 @@
-$NetBSD: distinfo,v 1.9 2015/11/04 01:32:07 agc Exp $
+$NetBSD: distinfo,v 1.10 2016/09/18 23:02:48 gdt Exp $
 
-SHA1 (bup-0.27.tar.gz) = f082fcda2d60d9cdb6a788fb85c171925d2a1e28
-RMD160 (bup-0.27.tar.gz) = 52a7893008cfd99fbb7088d4f801cf9c0af27af6
-SHA512 (bup-0.27.tar.gz) = 982ef99d8b8f0518c8edf90375b109ed1bfd75aa689a97ca549acf0d1f939dc795c09fcd89c1a14b8ab2e4836cda1f387b22d07e342bab6ccc2627e1d50301aa
-Size (bup-0.27.tar.gz) = 351733 bytes
-SHA1 (bup-man-0.27.zip) = 278b5ab581043f0a40a35a1eb30ac2200f05ff62
-RMD160 (bup-man-0.27.zip) = b6c25e55dea3f2ae9006a052c3c004e6e5cf3b0e
-SHA512 (bup-man-0.27.zip) = 8b9e9bf11e46a46fd338e34013644d165dad84552a679a0b1337e777ca95b6d955e6a72d5fad85ab67887ee36787e9c957fc9af8bb0c034ba959685d837ae31a
-Size (bup-man-0.27.zip) = 43244 bytes
-SHA1 (patch-Makefile) = 3208d663af3e5e129499282d14e10abd94f56805
-SHA1 (patch-config_configure) = 9360a8be2cef559d93f1a5301f1f397f31da7d72
+SHA1 (bup-0.28.1.tar.gz) = c280255eeb7e7a4fa9b6fbdbf4526ca7c8a40443
+RMD160 (bup-0.28.1.tar.gz) = 0a1c7c605632f9146f34ba4ed12718043e2e3c09
+SHA512 (bup-0.28.1.tar.gz) = b27a94eeee86366f9f97081611d8e0443686ed8c4070d45729ad4efe1d48ee9f528d3257bfd5d37d6243927f5b63d6b613bf5ae2c39117012979ccd5ccecf9d2
+Size (bup-0.28.1.tar.gz) = 377712 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 (patch-Makefile) = ed60fc2bfcd6aeb885895eeee7ae48bf779ca13a
diff -r 24d554ab7691 -r bc5916a60173 sysutils/bup/patches/patch-Makefile
--- a/sysutils/bup/patches/patch-Makefile       Sun Sep 18 22:56:25 2016 +0000
+++ b/sysutils/bup/patches/patch-Makefile       Sun Sep 18 23:02:48 2016 +0000
@@ -1,15 +1,15 @@
-$NetBSD: patch-Makefile,v 1.6 2014/09/06 21:29:45 wiz Exp $
+$NetBSD: patch-Makefile,v 1.7 2016/09/18 23:02:48 gdt Exp $
 
 Pass PYTHON through to configure.
 
---- Makefile.orig      2013-12-20 09:43:15.000000000 +0000
+--- Makefile.orig      2016-06-12 16:19:26.000000000 +0000
 +++ Makefile
-@@ -67,7 +67,7 @@ install: all
+@@ -44,7 +44,7 @@ initial_setup := $(call shout,$(initial_
  
- config/config.h: config/Makefile config/configure config/configure.inc \
-               $(wildcard config/*.in)
--      cd config && $(MAKE) config.h
-+      cd config && $(MAKE) PYTHON=$(PYTHON) config.h
+ config/config.vars: configure config/configure config/configure.inc \
+   $(wildcard config/*.in)
+-      MAKE="$(MAKE)" ./configure
++      MAKE="$(MAKE)" PYTHON=$(PYTHON) ./configure
  
- lib/bup/_helpers$(SOEXT): \
-               config/config.h \
+ bup_cmds := cmd/bup-python\
+   $(patsubst cmd/%-cmd.py,cmd/bup-%,$(wildcard cmd/*-cmd.py)) \
diff -r 24d554ab7691 -r bc5916a60173 sysutils/bup/patches/patch-config_configure
--- a/sysutils/bup/patches/patch-config_configure       Sun Sep 18 22:56:25 2016 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-config_configure,v 1.2 2013/12/31 11:03:12 wiz Exp $
-
-Use PYTHON passed through from Makefile.
-
---- config/configure.orig      2013-11-11 08:52:33.000000000 +0000
-+++ config/configure
-@@ -42,7 +42,7 @@ if [ -z "$MAKE_VERSION" ]; then
- fi
- expr "$MAKE_VERSION" '>=' '3.81' || AC_FAIL "ERROR: $MAKE must be >= version 3.81"
- 
--if test -z "$(bup_find_prog python '')"; then
-+if test -z "$(bup_find_prog python "$PYTHON")"; then
-     AC_FAIL "ERROR: unable to find python"
- fi
- 



Home | Main Index | Thread Index | Old Index