tools/pristine-tar.git
12 years agoAdd support for gzip --rsyncable output produced by gzip 1.4.
Joey Hess [Sun, 7 Aug 2011 01:02:59 +0000 (21:02 -0400)]
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.

12 years agoClarify man page.
Joey Hess [Thu, 7 Jul 2011 16:17:15 +0000 (12:17 -0400)]
Clarify man page.

13 years agoimprove program name in messages
Joey Hess [Fri, 25 Mar 2011 04:53:43 +0000 (00:53 -0400)]
improve program name in messages

13 years agoalso try with -1 in perl mode 1.13
Joey Hess [Tue, 15 Mar 2011 04:43:26 +0000 (00:43 -0400)]
also try with -1 in perl mode

This really fixes the bug.

13 years agotweak header info for perl quick mode
Joey Hess [Tue, 15 Mar 2011 04:43:06 +0000 (00:43 -0400)]
tweak header info for perl quick mode

avoids small xdelta

13 years agorelease prep
Joey Hess [Tue, 15 Mar 2011 04:36:24 +0000 (00:36 -0400)]
release prep

13 years agopristine-tar: handle properly Perl gzips
Faidon Liambotis [Mon, 14 Mar 2011 23:45:23 +0000 (01:45 +0200)]
pristine-tar: handle properly Perl gzips

Perl's Compress::Raw::Zlib interfaces directly with zlib and
apparently is the only implementation out there which tunes a very
specific parameter of zlib, memLevel, to 9, instead of 8 which is
the default.

The module is used, among others, by Compress::Gzip which in turn is
used by IO::Zlib.

It was found on the real world on tarballs generated by Perl 5.10's
Module::Build (cf. #618284)

13 years agoreleasing version 1.12 1.12
Joey Hess [Sun, 6 Feb 2011 04:02:34 +0000 (00:02 -0400)]
releasing version 1.12

13 years agoDEP5
Joey Hess [Thu, 13 Jan 2011 22:57:34 +0000 (18:57 -0400)]
DEP5

13 years agoFix gzg building with --as-needed. Closes: #604030
Joey Hess [Sat, 20 Nov 2010 20:49:26 +0000 (16:49 -0400)]
Fix gzg building with --as-needed. Closes: #604030

13 years agoMerge branch 'master' of ssh://git.kitenet.net/srv/git/pristine-tar 1.11
Joey Hess [Fri, 12 Nov 2010 14:31:35 +0000 (10:31 -0400)]
Merge branch 'master' of ssh://git.kitenet.net/srv/git/pristine-tar

13 years agoreleasing version 1.11
Joey Hess [Fri, 12 Nov 2010 14:29:35 +0000 (10:29 -0400)]
releasing version 1.11

13 years agobugfix
Joey Hess [Fri, 12 Nov 2010 01:14:25 +0000 (21:14 -0400)]
bugfix

13 years agoAdd workaround for Debian's tar changing its output for tarballs containing filenames...
Joey Hess [Fri, 12 Nov 2010 01:05:45 +0000 (21:05 -0400)]
Add workaround for Debian's tar changing its output for tarballs containing filenames exactly 100 bytes long. Closes: #602907 (Needs a tar with #603231 fixed in order to work.)

13 years agoLintian fixes.
Joey Hess [Thu, 19 Aug 2010 20:41:24 +0000 (16:41 -0400)]
Lintian fixes.

13 years agofound a second bzip2 that cannot be reproduced
Joey Hess [Wed, 18 Aug 2010 16:35:24 +0000 (12:35 -0400)]
found a second bzip2 that cannot be reproduced

13 years agotypo
Joey Hess [Wed, 18 Aug 2010 00:35:03 +0000 (20:35 -0400)]
typo

13 years agostupid makemaker..
Joey Hess [Wed, 18 Aug 2010 00:33:13 +0000 (20:33 -0400)]
stupid makemaker..

13 years agoupdate
Joey Hess [Wed, 18 Aug 2010 00:30:55 +0000 (20:30 -0400)]
update

13 years agoRemove environment variables used by tar, gz, and bzip2, to avoid local environment...
Joey Hess [Tue, 17 Aug 2010 21:30:50 +0000 (17:30 -0400)]
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)

13 years agoupdate ignores
Joey Hess [Sat, 24 Jul 2010 05:26:11 +0000 (01:26 -0400)]
update ignores

13 years agocopyright update for file move
Joey Hess [Sat, 24 Jul 2010 05:24:36 +0000 (01:24 -0400)]
copyright update for file move

13 years agomove zgz's gzip bits into a subdir
Joey Hess [Sat, 24 Jul 2010 05:23:15 +0000 (01:23 -0400)]
move zgz's gzip bits into a subdir

13 years agominor
Joey Hess [Sat, 24 Jul 2010 05:13:15 +0000 (01:13 -0400)]
minor

13 years agorefactored file format magic numbers code
Joey Hess [Sat, 24 Jul 2010 05:02:51 +0000 (01:02 -0400)]
refactored file format magic numbers code

13 years agosimplify
Joey Hess [Sat, 24 Jul 2010 04:21:30 +0000 (00:21 -0400)]
simplify

13 years agomodularize the delta writing code
Joey Hess [Sat, 24 Jul 2010 00:57:51 +0000 (20:57 -0400)]
modularize the delta writing code

This will make it easy to add support for flat deltas, etc.

13 years agopristine-tar commit takes varying number of parameters, fix checking
Joey Hess [Sat, 24 Jul 2010 00:27:04 +0000 (20:27 -0400)]
pristine-tar commit takes varying number of parameters, fix checking

13 years agoupdates
Joey Hess [Sat, 24 Jul 2010 00:21:45 +0000 (20:21 -0400)]
updates

13 years agonasty MakeMaker conversion for perl library support
Joey Hess [Sat, 24 Jul 2010 00:19:18 +0000 (20:19 -0400)]
nasty MakeMaker conversion for perl library support

Had to move zgz.pod to subdir because MakeMaker insisted in installing it
otherwise.

13 years agoconvert pristine-tar to use Delta library
Joey Hess [Fri, 23 Jul 2010 23:42:40 +0000 (19:42 -0400)]
convert pristine-tar to use Delta library

13 years agopristine-gz gengz: Bugfix: Always remove uncompressed input file.
Joey Hess [Fri, 23 Jul 2010 23:17:09 +0000 (19:17 -0400)]
pristine-gz gengz: Bugfix: Always remove uncompressed input file.

13 years agomake pristine-gz use Delta library
Joey Hess [Fri, 23 Jul 2010 23:13:53 +0000 (19:13 -0400)]
make pristine-gz use Delta library

13 years agofactored out generic delta file reading/writing/checking code
Joey Hess [Fri, 23 Jul 2010 23:01:23 +0000 (19:01 -0400)]
factored out generic delta file reading/writing/checking code

converted pristine-bz2 to use it so far

13 years agomode
Joey Hess [Fri, 23 Jul 2010 22:33:41 +0000 (18:33 -0400)]
mode

13 years agofactor out constants
Joey Hess [Fri, 23 Jul 2010 22:33:22 +0000 (18:33 -0400)]
factor out constants

13 years agofactor out boilerplate common to the commands
Joey Hess [Fri, 23 Jul 2010 21:56:48 +0000 (17:56 -0400)]
factor out boilerplate common to the commands

Should have done this a long time ago.

TODO: installation; delta file handling

13 years agoupdate
Joey Hess [Wed, 14 Jul 2010 17:55:40 +0000 (13:55 -0400)]
update

13 years agoupdates
Joey Hess [Wed, 14 Jul 2010 16:37:02 +0000 (12:37 -0400)]
updates

14 years agouse dpkg-mergechangelog
Joey Hess [Mon, 24 May 2010 15:12:47 +0000 (11:12 -0400)]
use dpkg-mergechangelog

14 years agodelink
Joey Hess [Thu, 13 May 2010 06:50:36 +0000 (02:50 -0400)]
delink

14 years agotweak
Joey Hess [Thu, 13 May 2010 06:48:04 +0000 (02:48 -0400)]
tweak

14 years agoreleasing version 1.03 1.03
Joey Hess [Thu, 13 May 2010 06:44:45 +0000 (02:44 -0400)]
releasing version 1.03

14 years agoAwesome new zgz man page!
Joey Hess [Thu, 13 May 2010 06:39:29 +0000 (02:39 -0400)]
Awesome new zgz man page!

14 years agoreleasing version 1.02 1.02
Joey Hess [Thu, 13 May 2010 06:26:42 +0000 (02:26 -0400)]
releasing version 1.02

14 years agofix paranoia check
Joey Hess [Thu, 13 May 2010 06:17:06 +0000 (02:17 -0400)]
fix paranoia check

14 years agouse zgz
Joey Hess [Thu, 13 May 2010 06:07:37 +0000 (02:07 -0400)]
use zgz

14 years agotweaks
Joey Hess [Thu, 13 May 2010 05:54:37 +0000 (01:54 -0400)]
tweaks

14 years agoWall clean (amazingly!!)
Joey Hess [Thu, 13 May 2010 05:52:05 +0000 (01:52 -0400)]
Wall clean (amazingly!!)

14 years agolegal
Joey Hess [Thu, 13 May 2010 05:51:02 +0000 (01:51 -0400)]
legal

14 years agohacked bzip2 into zgz. it builds..
Joey Hess [Thu, 13 May 2010 05:46:13 +0000 (01:46 -0400)]
hacked bzip2 into zgz. it builds..

14 years agoelided cruft
Joey Hess [Thu, 13 May 2010 05:26:33 +0000 (01:26 -0400)]
elided cruft

14 years agoworking
Joey Hess [Thu, 13 May 2010 05:20:43 +0000 (01:20 -0400)]
working

14 years agomore decompression code
Joey Hess [Thu, 13 May 2010 05:01:04 +0000 (01:01 -0400)]
more decompression code

14 years agohack out decompression code
Joey Hess [Thu, 13 May 2010 04:58:42 +0000 (00:58 -0400)]
hack out decompression code

14 years agoadd bzip2
Joey Hess [Thu, 13 May 2010 04:46:46 +0000 (00:46 -0400)]
add bzip2

not very trimmed down yet

14 years agoremove gnuism
Joey Hess [Thu, 13 May 2010 02:21:32 +0000 (22:21 -0400)]
remove gnuism

though pristine-tar still uses cp -a legitimately

14 years agostub 7z bz2 support
Joey Hess [Thu, 13 May 2010 02:20:12 +0000 (22:20 -0400)]
stub 7z bz2 support

14 years agopristine-bz2 -t can be used to make it try harder to generate a delta. Currently...
Joey Hess [Thu, 13 May 2010 01:38:47 +0000 (21:38 -0400)]
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.

14 years agoFaster generation of bzip2 deltas: Do not repeatedly decompress input file.
Joey Hess [Thu, 13 May 2010 01:13:30 +0000 (21:13 -0400)]
Faster generation of bzip2 deltas: Do not repeatedly decompress input file.

14 years agoupdate
Joey Hess [Thu, 13 May 2010 00:14:09 +0000 (20:14 -0400)]
update

14 years agoreleasing version 1.01 1.01
Joey Hess [Fri, 5 Feb 2010 22:13:41 +0000 (17:13 -0500)]
releasing version 1.01

14 years agoDocument TMPDIR in man pages. Closes: #558266
Joey Hess [Fri, 25 Dec 2009 19:34:56 +0000 (14:34 -0500)]
Document TMPDIR in man pages. Closes: #558266

14 years agoupdate
Joey Hess [Tue, 15 Dec 2009 18:57:55 +0000 (13:57 -0500)]
update

14 years agoupdate
Joey Hess [Tue, 15 Dec 2009 18:51:49 +0000 (13:51 -0500)]
update

14 years agoadd newlines
Joey Hess [Tue, 15 Dec 2009 18:44:57 +0000 (13:44 -0500)]
add newlines

14 years agoAdded an example. Closes: #561016
Joey Hess [Mon, 14 Dec 2009 19:42:49 +0000 (14:42 -0500)]
Added an example. Closes: #561016

14 years agoUse italics in man pages to highlight which parts of command lines are file names...
Joey Hess [Mon, 14 Dec 2009 19:08:26 +0000 (14:08 -0500)]
Use italics in man pages to highlight which parts of command lines are file names. Closes: #561015

14 years agobrace style
Joey Hess [Sat, 12 Dec 2009 19:06:51 +0000 (14:06 -0500)]
brace style

14 years agoadd GZIP_OS_VFAT to list
Joey Hess [Sat, 12 Dec 2009 19:02:47 +0000 (14:02 -0500)]
add GZIP_OS_VFAT to list

Note that most of the stuff in this list is not used; the raw
os flag value is passed to zgz. So this is just for completness/
future expansion.

15 years agoupdate
Joey Hess [Wed, 15 Apr 2009 02:05:49 +0000 (22:05 -0400)]
update

15 years agoreleasing version 1.00 1.00
Joey Hess [Wed, 15 Apr 2009 01:28:33 +0000 (21:28 -0400)]
releasing version 1.00

15 years agodoc updates
Joey Hess [Wed, 15 Apr 2009 01:22:17 +0000 (21:22 -0400)]
doc updates

15 years agopristine-tar: Fix behavior in the corner case where the tarball puts all files in...
Joey Hess [Wed, 15 Apr 2009 01:11:59 +0000 (21:11 -0400)]
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.

I think that this block of code has always been buggy. It attempts to
see if all files listed in the manifest are present inside the subdir.
Usually, though, the manifest *includes* the subdir, and so the code
checked to see if $subdir/$subdir existed, and concluded everything was not
in the subdir.

Turns out there is one tar file that lists files inside a subdir, but
does not include the subdir. In that case, the code concludes correctly
that all files are in a subdir. But, the result of that turns out to be
bad; unsettting $subdir breaks the build since it then tries to move the
wrong path.

15 years agostats
Joey Hess [Wed, 15 Apr 2009 01:06:58 +0000 (21:06 -0400)]
stats

15 years agoMerge branch 'master' of ssh://joey@git.kitenet.net/srv/git/pristine-tar
Joey Hess [Tue, 14 Apr 2009 01:04:05 +0000 (21:04 -0400)]
Merge branch 'master' of ssh://joey@git.kitenet.net/srv/git/pristine-tar

15 years agopristine-gz: Fix generation of gz files that have a null filename field.
Joey Hess [Tue, 14 Apr 2009 01:03:43 +0000 (21:03 -0400)]
pristine-gz: Fix generation of gz files that have a null filename field.

15 years agofix bug if input filename contains a path
Joey Hess [Mon, 13 Apr 2009 23:28:24 +0000 (19:28 -0400)]
fix bug if input filename contains a path

15 years agoAdd aliases ci and co for commit and checkout. Closes: #500388
Joey Hess [Mon, 13 Apr 2009 23:14:04 +0000 (19:14 -0400)]
Add aliases ci and co for commit and checkout. Closes: #500388

15 years agopristine-gz: Avoid passing -F to zgz if --original-name is passed. This bug prevented...
Joey Hess [Mon, 13 Apr 2009 22:45:18 +0000 (18:45 -0400)]
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.

15 years agopristine-tar: Avoid dying if tar tv exits nonzero.
Joey Hess [Mon, 13 Apr 2009 22:36:00 +0000 (18:36 -0400)]
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.

(If the manifest is truncated, the delta just gets bigger..)

15 years agoupdates
Joey Hess [Mon, 13 Apr 2009 22:34:17 +0000 (18:34 -0400)]
updates

15 years agoavoid failure if file doesn't exist
Joey Hess [Mon, 13 Apr 2009 22:09:22 +0000 (18:09 -0400)]
avoid failure if file doesn't exist

This can happen if the filename is weird anf tar has encoded it.
In this case we're going to do a full sweep of the tree anyway,
so there's no need to worry.

15 years agopristine-gz binary deltas
Joey Hess [Mon, 13 Apr 2009 20:36:51 +0000 (16:36 -0400)]
pristine-gz binary deltas

* 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, and
  Ricoh-Aficio_2020D-Postscript.ppd.gz -- zgz gets very close to the
  originals for all of these.
  Closes: #518972, #506874
* For other things the deltas are not small, but only a few hundred
  known tarballs fail that badly, and the total space wasted by all
  of the oversized deltas for them would only be 100 mb. 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.

15 years agoquell warnigns from xdelta
Joey Hess [Mon, 13 Apr 2009 19:19:16 +0000 (15:19 -0400)]
quell warnigns from xdelta

It will often find there are no simularities and print a warning.

15 years agopristine-gz: use xdelta to check if a file was closely, but not completly, reproduced...
Joey Hess [Mon, 13 Apr 2009 19:14:18 +0000 (15:14 -0400)]
pristine-gz: use xdelta to check if a file was closely, but not completly, reproduced. This is not yet used except as a debugging aid when no variants succeed.

15 years agoavoid redundancies in pristine-gz
Joey Hess [Mon, 13 Apr 2009 18:52:42 +0000 (14:52 -0400)]
avoid redundancies in pristine-gz

Refactoring to avoid need to explicitly return the same args that were just
tested.

15 years agoreleasing version 0.22 0.22
Joey Hess [Sun, 12 Apr 2009 17:20:40 +0000 (13:20 -0400)]
releasing version 0.22

15 years agoFix syntax mistake that could cause pristine-tar to in some cases fail on tarballs...
Joey Hess [Sun, 12 Apr 2009 17:20:07 +0000 (13:20 -0400)]
Fix syntax mistake that could cause pristine-tar to in some cases fail on tarballs containing files named "0". Closes: #523773

15 years agoauto-update spec file version number
Joey Hess [Thu, 26 Feb 2009 19:03:00 +0000 (14:03 -0500)]
auto-update spec file version number

15 years agoadded spec file
Jimmy Tang [Wed, 25 Feb 2009 12:21:07 +0000 (12:21 +0000)]
added spec file

15 years agoreleasing version 0.21 0.21
Joey Hess [Thu, 22 Jan 2009 20:08:41 +0000 (15:08 -0500)]
releasing version 0.21

15 years agoAdd support for GIT_DIR. Closes: #512619
Joey Hess [Thu, 22 Jan 2009 19:18:37 +0000 (14:18 -0500)]
Add support for GIT_DIR. Closes: #512619

15 years agoreleasing version 0.20 0.20
Joey Hess [Mon, 29 Dec 2008 20:36:14 +0000 (15:36 -0500)]
releasing version 0.20

15 years agoAvoid littering .orig.tar.gz.tmp files around by building intermediate tarball in...
Joey Hess [Mon, 29 Dec 2008 20:33:21 +0000 (15:33 -0500)]
Avoid littering .orig.tar.gz.tmp files around by building intermediate tarball in the temp dir. Closes: #508965

15 years agoreleasing version 0.19 0.19
Joey Hess [Fri, 12 Dec 2008 21:17:06 +0000 (16:17 -0500)]
releasing version 0.19

15 years agomove zgz source into subdir
Joey Hess [Fri, 12 Dec 2008 00:13:08 +0000 (19:13 -0500)]
move zgz source into subdir

15 years agoadd bug closure
Joey Hess [Fri, 12 Dec 2008 00:12:07 +0000 (19:12 -0500)]
add bug closure

and todo item for the way-cool idea mentioned in the bug

15 years agolet's toss in a copy of the GPL
Joey Hess [Fri, 12 Dec 2008 00:04:12 +0000 (19:04 -0500)]
let's toss in a copy of the GPL

15 years agoRemove file support from zgz, leaving only standard input and standard output
Josh Triplett [Thu, 11 Dec 2008 13:57:45 +0000 (05:57 -0800)]
Remove file support from zgz, leaving only standard input and standard output

Now that pristine-gz no longer runs (and fights against) zgz
on files specified by name, remove support for compressing files,
allowing only standard input and standard output.  This removes large
quantities of complex code from zgz.c.

In the process, move several global variables to local variables in
main.