pristine-tar (1.38) unstable; urgency=medium * Automatic refactor of the code to make it more modern * d/control: use debhelper 10 * Handle files prefixed with '-' in tarballs (Closes: #851286) * Document --verify (Closes: #851955) -- Tomasz Buchert Wed, 25 Jan 2017 20:29:42 +0100 pristine-tar (1.37) unstable; urgency=medium * Fix another regression for 2.0 xdelta version in pristine-tar -- Tomasz Buchert Sat, 27 Aug 2016 17:39:00 +0200 pristine-tar (1.36) unstable; urgency=medium * Fix regression by passing --pristine to xdelta (Closes: #835586) -- Tomasz Buchert Sat, 27 Aug 2016 13:26:58 +0200 pristine-tar (1.35) unstable; urgency=medium [ Antonio Terceiro ] * Add `pristine-tar verify` to the usage message * pristine-tar.spec: RPM packaging improvements to make pristine-tar easily buildable in openSUSE, Fedora and CentOS. Patch by Markus Lehtonen (Closes: #807597) * Add bash completion script - I had this local bash completing script laying around in my $HOME for years, but I have no idea whether I wrote it or if I got it from the internet. If you wrote it, please get in touch with me so that I can add the proper credits to the source code. * autopkgtest: run all tests with both PRISTINE_ALL_XDELTA=xdelta and PRISTINE_ALL_XDELTA=xdelta3. [ Tomasz Buchert ] * pristine-tar is now able to reproduce xz files compressed with multithreading; however, this requires xz >= 5.2.0 (Closes: #829248) * Minor bugfixes (Closes: #798641) * Add support for using xdelta3 (Closes: #737499) -- Antonio Terceiro Thu, 25 Aug 2016 14:45:27 -0300 pristine-tar (1.35~0) experimental; urgency=medium * pristine-tar now stores a tarball hash in the delta file (Closes: #608406) - added a new command (`pristine-tar verify`) to verify whether existing tarballs match the one that was committed. this is also backwards compatible with previously-existing delta files; if the hash is missing, the existing tarball will be compared to one actually committed to version control by first extracting to a temporary directory. - `pristine-tar checkout` will now not overwrite exiting tarballs that match the stored hash. -- Antonio Terceiro Fri, 08 Jul 2016 14:06:52 +0200 pristine-tar (1.34) unstable; urgency=medium * New maintainer (Closes: #737871) * pristine-tar.spec: bump version number * Add tests for very basic usage. These can be run during the build and under autopkgtest - Added build dependencies on shunit2, git, and xdelta * Makefile.PL: make build idempotent * debian/control: - Remove duplicated Section field in binary package - Switch Vcs-* fields to collab-maint repository - Bump Standard-Version to 3.9.8; no changes needed * Add missing debian/source/format * debian/copyright: fix wildcard for pit/suse-bzip2/ * Build with hardening flags * zgz/zgz.pod: fix typo -- Antonio Terceiro Sat, 21 May 2016 13:49:53 -0300 pristine-tar (1.33) unstable; urgency=medium * QA upload. * Fix "depend on perl instead of perl-modules": debian/control: update Depends to use ${perl:Depends} which gets expanded to 'perl' by dh_perl. (Closes: #779116) -- gregor herrmann Wed, 25 Feb 2015 20:50:23 +0100 pristine-tar (1.32) unstable; urgency=medium * Orphaned the package. -- Joey Hess Tue, 27 May 2014 16:00:42 -0400 pristine-tar (1.31) unstable; urgency=medium * Build on Hurd without needing PATH_MAX defined. Closes: #738670 Thanks, Svante Signell -- Joey Hess Wed, 23 Apr 2014 14:01:03 -0400 pristine-tar (1.30) unstable; urgency=low * Set GIT_WORK_TREE when committing to make it work when inside a git submodule. Thanks, Victor Vasiliev. Closes: #726007 * Work around change in longlink fields in tar 1.27, and depend on version -3 which adds PRISTINE_TAR_COMPAT. Closes: #726963 -- Joey Hess Sun, 03 Nov 2013 13:33:22 -0400 pristine-tar (1.29) unstable; urgency=low * Fix display of unsupported param when paranoia check fails. Closes: #707820 * pristine-tar: If recreating the tarball fails, try telling tar to generate a gnu or posix format tarball. This may have been the default format used by tar when the delta file was originally generated. Thanks, Markus Lehtonen. * Improve handling of escaped characters in filenames listed by tar -t. Closes: #719078 Thanks, Chow Loong Jin -- Joey Hess Mon, 26 Aug 2013 11:54:08 -0400 pristine-tar (1.28) unstable; urgency=low * Update lintian overrides. -- Joey Hess Sun, 05 May 2013 01:45:27 -0400 pristine-tar (1.27) unstable; urgency=low * Now ported to Mac OS X. - MakeFile.PL fixes - zgz: Use DYLD_LIBRARY_PATH on OSX instead of LD_LIBRARY_PATH - suse-bzip2/Makefile: compile shared library appropriately on OSX - INSTALL: Added some options useful when installing on OSX Thanks, Torsten Maehne and Philipp A. Hartmann. * zgz: Don't hardcode /lib, avoid segfaulting when installed in a > 128 character path. Thanks, Colin Walters * Fix typo that led to incorrect error message when pristine-tar branch does not exist. Closes: #700448 Thanks, paul cannon -- Joey Hess Sat, 04 May 2013 23:50:40 -0400 pristine-tar (1.26) unstable; urgency=low * pristine-xz: Use xz --robot to extract information from xz files, avoiding the need to do more expensive guessing. Support --block-list when available to reproduce multi block files. Closes: #677250 Thanks, Vincent Ladeuil -- Joey Hess Sat, 25 Aug 2012 11:54:46 -0400 pristine-tar (1.25) unstable; urgency=low * Remove unused fts.h include. Closes: #675367 * pristine-xz: Add --check=sha256 and compression levels 0 and 0e. Closes: #677241 Thanks, Vincent Ladeuil -- Joey Hess Tue, 12 Jun 2012 11:45:33 -0400 pristine-tar (1.24) unstable; urgency=low * pristine-xz: Add --check=crc32 to list of allowed parameters. -- Joey Hess Sun, 01 Apr 2012 12:21:24 -0400 pristine-tar (1.23) unstable; urgency=low * Detect git submodules procuded by recent git, where .git is a file, not a directory. Closes: #666033 * pristine-xz: Handle CRC32 files made with PylibLZMA. Thanks, Mike Miller Closes: #662129, #660783 -- Joey Hess Sat, 31 Mar 2012 19:00:49 -0400 pristine-tar (1.22) unstable; urgency=low * Store the sha1 of the tree that is being committed, rather than a sha1 of a commit or other object that points to the tree. This makes committed tarballs more resilient against git filter-branch when it's only used to change commit metadata. Closes: #467288 -- Joey Hess Sun, 11 Mar 2012 18:49:12 -0400 pristine-tar (1.21) unstable; urgency=low * Fix bug in mtime resetting code, which caused delta files to be created that failed to regenerate the original tarball. Closes: #661902 -- Joey Hess Fri, 02 Mar 2012 14:57:11 -0400 pristine-tar (1.20) unstable; urgency=low * pristine-xz: Try --extreme too. While my corpus has no such xz files, Darren Salt points out that automake 1.11.2 has started using extreme mode. Closes: #658666 -- Joey Hess Sun, 12 Feb 2012 14:23:48 -0400 pristine-tar (1.19) unstable; urgency=low * Fix duplicate function oops. -- Joey Hess Wed, 01 Feb 2012 11:00:43 -0400 pristine-tar (1.18) unstable; urgency=low * pristine-xz: A simplistic xz recreator. Current success rate on the Debian corpus: 70%. Closes: #499489 -- Joey Hess Tue, 31 Jan 2012 16:13:35 -0400 pristine-tar (1.17) unstable; urgency=low * pristine-tar: Fail when the delta is excessively large, probably due to the tarball being compressed with something that tar x can auto-extract, but that pristine-tar does not support. -- Joey Hess Mon, 09 Jan 2012 11:44:44 -0400 pristine-tar (1.16) unstable; urgency=low * pristine-bz2: Can recreate bz2 files greated by Suse's patched bzip2. Closes: #641019 -- Joey Hess Wed, 04 Jan 2012 21:44:23 -0400 pristine-tar (1.15) unstable; urgency=low * Fix Vcs-Browser url. Closes: #636926 * Propigate nonzero exit status from doit_redir. Closes: #600724 * 'pristine-tar list' displays a list of tarballs that are available for checkout. -- Joey Hess Sat, 08 Oct 2011 17:53:03 -0400 pristine-tar (1.14) unstable; urgency=low * Add support for gzip --rsyncable output produced by gzip 1.4. This differs from prior --rsyncable output, which was made by a Debian specific patch and used a different rsync window size, and reset huffman encodings less often. * Clarify man page. -- Joey Hess Sat, 06 Aug 2011 21:05:15 -0400 pristine-tar (1.13) unstable; urgency=low [ Faidon Liambotis ] * Add a Perl quirks mode for tarballs generated by Perl's IO::Zlib, which is used among other things by Module::Build. Closes: #618284 -- Joey Hess Tue, 15 Mar 2011 00:11:24 -0400 pristine-tar (1.12) unstable; urgency=low * Fix gzg building with --as-needed. Closes: #604030 -- Joey Hess Sun, 06 Feb 2011 00:01:18 -0400 pristine-tar (1.11) unstable; urgency=low * Add workaround for Debian's tar changing its output for tarballs containing filenames exactly 100 bytes long. Closes: #602907 (Needs tar 1.25-2 with #603231 fixed in order for that to work.) -- Joey Hess Fri, 12 Nov 2010 10:25:46 -0400 pristine-tar (1.10) unstable; urgency=low * pristine-gz gengz: Bugfix: Always remove uncompressed input file. * Large refactoring and modularization. (Thanks Gabriel de Perthuis for inspiration for this.)) * Remove environment variables used by tar, gz, and bzip2, to avoid local environment settings possibly breaking things. Closes: #498760 (probably; thanks Ralph Lange for analysis) * Lintian fixes. -- Joey Hess Thu, 19 Aug 2010 16:36:25 -0400 pristine-tar (1.03) unstable; urgency=low * zgz now includes a trimmed down copy of the compressor from bzip2 0.9.5d. That old version of bzip2 generated different compression results, and is the overwhelming reason for failures to reproduce bz2 files in the Debian archive. Closes: #560170, #579657, #525128, #576119 (Special thanks to Laszlo Ersek for tracking this down.) * Awesome new zgz man page! * Faster generation of bzip2 deltas: Do not repeatedly decompress input file. * pristine-bz2 -t can be used to make it try harder to generate a delta. Currently, this tries pbzip2 -b with various numbers. Not the default because it's slow and I don't have any bzip2 files from the wild that were built that way. -- Joey Hess Thu, 13 May 2010 02:19:32 -0400 pristine-tar (1.01) unstable; urgency=low * Use italics in man pages to highlight which parts of command lines are file names. Closes: #561015 * Added an example. Closes: #561016 * Document TMPDIR in man pages. Closes: #558266 -- Joey Hess Fri, 05 Feb 2010 16:41:07 -0500 pristine-tar (1.00) unstable; urgency=low * pristine-gz: Fall back to storing a binary delta, in the rare cases where the file cannot be 100% reproduced. A warning message is printed if the binary delta is not relatively small. * Allows generating quite small deltas for php-geoip, xsupplicant, libgraphics-colornames-perl, Ricoh-Aficio_2020D-Postscript.ppd.gz, and dozens on others that zgz can closely replicate. Closes: #518972, #506874 * For other things the deltas are not as small. This seems an accepable tradeoff to be able to reliably use it on anything. Closes: #475778, #509703, #509707, #515256, #515331 * Increase gz delta version number to 3.0 if a binary delta file is included. * pristine-tar: Avoid dying in corner case involving tar's filename encoding. Fixes several failures. * pristine-tar: Avoid dying if tar tv exits nonzero. This makes reproducing star's tarball work, even though tar gets upset while listing it and decides to die at the end. * pristine-gz: Avoid passing -F to zgz if --original-name is passed. This bug prevented pristine-gz gengz from recreating the gz in some cases. * Add aliases ci and co for commit and checkout. Closes: #500388 * pristine-gz: Fix generation of gz files that have a null filename field. * pristine-tar: Fix behavior in the corner case where the tarball puts all files in a subdir, but does not contain the subdir's directory entry. Stats: Successfully generates deltas for all 14446 tarballs in the Debian archive. Mean delta size: 19K Median: 2.6K Mode: 1.5K -- Joey Hess Tue, 14 Apr 2009 21:23:22 -0400 pristine-tar (0.22) unstable; urgency=low * Fix syntax mistake that could cause pristine-tar to in some cases fail on tarballs containing files named "0". Closes: #523773 -- Joey Hess Sun, 12 Apr 2009 13:20:04 -0400 pristine-tar (0.21) unstable; urgency=low * Add support for GIT_DIR. Closes: #512619 -- Joey Hess Thu, 22 Jan 2009 15:07:33 -0500 pristine-tar (0.20) unstable; urgency=low * Avoid littering .orig.tar.gz.tmp files around by building intermediate tarball in the temp dir. Closes: #508965 -- Joey Hess Mon, 29 Dec 2008 15:34:12 -0500 pristine-tar (0.19) unstable; urgency=low [ Josh Triplett ] * Add a .gitignore file * Various cleanups to zgz. * Remove the unnecessary -l, -S, -t, and -v flags from zgz. * Allow the empty string as an original filename in zgz, rather than treating the empty string as a flag to not store an original filename. * Fix zgz's usage message to stop identifying the program as gzip. * Add a new -T,--timestamp flag to zgz, to explicitly set the timestamp stored in the gzip file, rather than taking the timestamp of the input file. Closes: #507110 [ Joey Hess ] * zgz: Avoid using uninitialized data as timestamp in -c mode. Closes: #507095 * Document existing long options. Closes: #499488 * Avoid exposing tar file names to the shell. Closes: #500499 * Clarify bit in man page about what file formats are supported. Closes: #507322 [ Josh Triplett ] * zgz: Incorporate a cut-down version of GNU gzip to support the --gnu option. The cut-down gzip includes support for explicitly setting the timestamp and original filename. Closes: #506627 * pristine-gz: Now that zgz supports explicitly setting the timestamp and original filename with both --zlib and --gnu, use that support to do all compression using -c with standard input and standard output. This removes the need to create a temporary file with the original filename and set its timestamp, as well as the need to continuously recreate the file when compressed and removed. Closes: #506627 * zgz: Remove support for files, making -c the default. This removes a lot of complexity and code duplication. -- Joey Hess Fri, 12 Dec 2008 16:12:27 -0500 pristine-tar (0.18) unstable; urgency=low * pristine-gz: Avoid uncompressing the original file more than once. Closes: #506490 -- Joey Hess Sat, 22 Nov 2008 18:22:40 -0500 pristine-tar (0.17) unstable; urgency=low * Correct -f order to come after --gnu. -- Joey Hess Fri, 04 Jul 2008 14:46:30 -0400 pristine-tar (0.16) unstable; urgency=low * pristine-gz: Always pass -f to zgz, to support cases where the gzip header claims that the original input file had an extension that suggests it was itself already compressed. (Although it can't really be.) Not doing the same for gzip because -f doesn't cause it to ignore extensions. See #475778 -- Joey Hess Fri, 04 Jul 2008 14:29:54 -0400 pristine-tar (0.15) unstable; urgency=low * Fix POD issues. Closes: #484165 * zgz: Remove support for a GZIP env variable. We don't need this in pristine-tar, and if could screw things up if a user set it. Closes: #488986 -- Joey Hess Wed, 02 Jul 2008 12:46:41 -0400 pristine-tar (0.14) unstable; urgency=low * Use debhelper v7; rules file minimisation. * Add build and install targets to Makefile. * Put in a workaround for bug #479317, an incompatability in perl 5.10 that causes nonzero exit if a program exits while chdired into a subdirectory of a File::Temp temp directory. -- Joey Hess Sun, 04 May 2008 14:47:06 -0400 pristine-tar (0.13) unstable; urgency=low * Man page typo fix. Closes: #475698 -- Joey Hess Sat, 19 Apr 2008 16:51:09 -0400 pristine-tar (0.12) unstable; urgency=low * pristine-tar: Fix some bugs when run on an uncompressed tarball. -- Joey Hess Wed, 02 Apr 2008 13:14:45 -0400 pristine-tar (0.11) unstable; urgency=low * Unset $keep, don't keep temp dirs. Oops. -- Joey Hess Fri, 21 Mar 2008 14:50:21 -0400 pristine-tar (0.10) unstable; urgency=low * pristine-tar: Add -m option to specify a commit message. Closes: #465231 -- Joey Hess Mon, 10 Mar 2008 15:56:05 -0400 pristine-tar (0.9) unstable; urgency=low * Add smart branching for commits. (Cyril Brulebois) * Prefer to commit to the ref that exactly matches what is specified at the command line. * Send all debug and verbose prints to stderr, reserving stdout for outputting deltas etc. * pristine-tar commit was not generating deltas against the specified upstream branch, but against the unpacked contents of the source tarball. Fix it to use the upstream branch, ensuring that no matter what branch is given, the delta that is created can always recreate the source tarball. -- Joey Hess Wed, 06 Feb 2008 14:31:29 -0500 pristine-tar (0.8) unstable; urgency=low * If a tarball contains files all in one subdirectory, and the source tree it's being generated from already has that subdirectory, don't try to create the subdir, which would fail. OTOH, if the subdirectory isn't there, proceed with creating it as before. * Add support for bz2 files (Cyril Brulebois) * Recommends bzip2 and pbzip2, which both might be needed when dealing with bz2 files due to differences in their output. -- Joey Hess Sat, 02 Feb 2008 17:28:17 -0500 pristine-tar (0.7) unstable; urgency=low * Improve/fix handling when there is no local pristine-tar branch. * Add a newline to the .id files committed to git. -- Joey Hess Fri, 01 Feb 2008 22:13:06 -0500 pristine-tar (0.6) unstable; urgency=low * Improve search for upstream branch. Default to looking for first refs/heads/upstream, and failing that, anything with "upstream" in its name. This way if there is a local upstream branch and a remote one, it will use the local one. If there's only a remote one, it'll use that. Closes: #463566 * Handle the case where there is no local pristine-tar branch. If there is exactly one remote branch, use it for checkout. If more than one or none, show a nice error message. (Cyril Brulebois) -- Joey Hess Fri, 01 Feb 2008 21:35:37 -0500 pristine-tar (0.5) unstable; urgency=low * Moved to git, and added a Vcs-Browser field. * pristine-tar can now "commit" deltas for a tarball directly to a git branch, and then "checkout" the original tarball again. Git users are recommended to use these new subcommands because they're easier, store the deltas in a consistent location, and avoid problems with recreating things like empty directories that git doesn't track. Closes: #463352 * Thanks to madcoder for help with manipulating git branches without touching the working copy. * Fix paranoia check in pristine-gz to correctly handle parameters that take an option. -- Joey Hess Thu, 31 Jan 2008 21:52:45 -0500 pristine-tar (0.4) unstable; urgency=low * Allow the delta file to be read or written from stdio. * Fix man page synopses formatting. -- Joey Hess Sat, 24 Nov 2007 16:45:04 -0500 pristine-tar (0.3) unstable; urgency=low * pristine-tar sometimes got confused about tarballs that did not unpack all files into a subdir. Fixes sear-media and 30 others. * tar was confused by files starting with ./ or / in the manifest, so strip it out. Fixes erlang-doc-html and 19 others, including doc-fdc, which is the only package to have files in / in its tarball. * Some tarballs put files in a subdir, but don't show a "/" after the subdir name in a manifest. Stop relying on that. (example: streamtuner) Current stats: Out of the whole debian archive, pristine-gz fails on 132 files, and pristine-tar fails on 0. Success with 98.97% of files. -- Joey Hess Wed, 03 Oct 2007 00:07:54 -0400 pristine-tar (0.2) unstable; urgency=low * Added pristine-gz, thanks to paravoid for making this possible! * Added zgz, which is derived from a BSD gzip program that uses libz. Modified by paravoid to support many options needed to reproduce gz files. * Renamed the subcommands extract => gentar , stash => gendelta * Quite a lot of testing (ie, on the entire Debian archive) and bugfixes. * Put files in the generated tarball mode 0644 pre-delta, this is a much more likely file mode than the previous 0000 and thus makes the delta smaller. * File format version is up to 2.0 due to misc incompatible changes. * Fix a bug related to tar's handling of unicode filenames. * Work around a strange tar behavior: When run with --mode 644, tar preserves the sgid bit on subdirectories. Current stats: Out of the whole debian archive, pristine-gz fails on 131 files, and pristine-tar fails on 45. Success with 98.63% of files. -- Joey Hess Tue, 02 Oct 2007 21:51:03 -0400 pristine-tar (0.1) unstable; urgency=low * First release. -- Joey Hess Sun, 30 Sep 2007 20:06:00 -0400