tools/pristine-tar.git
14 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

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

14 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.

14 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

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

14 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.

14 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

14 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.

14 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

14 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

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

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

14 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

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

14 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.

15 years agoIncorporate my cut-down GNU gzip into zgz and use it in pristine-gz
Josh Triplett [Thu, 11 Dec 2008 12:48:04 +0000 (04:48 -0800)]
Incorporate my cut-down GNU gzip into zgz and use it in pristine-gz

With this change, zgz now provides support for explicitly setting the
timestamp and original filename in both GNU gzip and zlib gzip.  Use
this support in pristine-gz to do all compression with -c, eliminating
the complexity caused by gzip removing files after compressing them.

The new pristine-gz requires the new zgz and vice-versa, but deltas
generated with the new pristine-gz do not depend on the new zgz.

15 years agoClarify bit in man page about what file formats are supported. Closes: #507322
Joey Hess [Wed, 3 Dec 2008 21:39:08 +0000 (16:39 -0500)]
Clarify bit in man page about what file formats are supported. Closes: #507322

15 years agoAvoid exposing tar file names to the shell. Closes: #500499
Joey Hess [Wed, 3 Dec 2008 20:26:55 +0000 (15:26 -0500)]
Avoid exposing tar file names to the shell. Closes: #500499

15 years agoDocument existing long options. Closes: #499488
Joey Hess [Wed, 3 Dec 2008 20:13:22 +0000 (15:13 -0500)]
Document existing long options. Closes: #499488

15 years agozgz: Avoid using uninitialized data as timestamp in -c mode. Closes: #507095
Joey Hess [Wed, 3 Dec 2008 19:56:45 +0000 (14:56 -0500)]
zgz: Avoid using uninitialized data as timestamp in -c mode. Closes: #507095

15 years agobug closure
Joey Hess [Wed, 3 Dec 2008 19:46:18 +0000 (14:46 -0500)]
bug closure

Assuming #507110 doesn't have wider scope than adding the flag (ie, it's
still not used..)

15 years agozgz: Add -T,--timestamp flag to explicitly set timestamp
Josh Triplett [Fri, 28 Nov 2008 03:09:16 +0000 (19:09 -0800)]
zgz: Add -T,--timestamp flag to explicitly set timestamp

15 years agozgz: Remove support for -S,--suffix flag
Josh Triplett [Fri, 28 Nov 2008 03:36:58 +0000 (19:36 -0800)]
zgz: Remove support for -S,--suffix flag

15 years agozgz: Fix usage message to stop identifying the program as gzip
Josh Triplett [Fri, 28 Nov 2008 03:10:56 +0000 (19:10 -0800)]
zgz: Fix usage message to stop identifying the program as gzip

15 years agozgz: Allow empty string as original name
Josh Triplett [Fri, 28 Nov 2008 02:26:33 +0000 (18:26 -0800)]
zgz: Allow empty string as original name

zgz treated an empty original name as no original name, but the gzip
format could potentially have the original name flag set with an
original name of "".  With this change, zgz -o "" will produce such a
file.

15 years agozgz: Remove support for -t,--test flag
Josh Triplett [Fri, 28 Nov 2008 00:42:43 +0000 (16:42 -0800)]
zgz: Remove support for -t,--test flag

15 years agozgz: Remove more decompression-only code
Josh Triplett [Fri, 28 Nov 2008 00:40:36 +0000 (16:40 -0800)]
zgz: Remove more decompression-only code

15 years agozgz: Remove support for the -v,--verbose flag
Josh Triplett [Fri, 28 Nov 2008 00:25:46 +0000 (16:25 -0800)]
zgz: Remove support for the -v,--verbose flag

15 years agozgz: Remove support for the -l,--list flag
Josh Triplett [Fri, 28 Nov 2008 00:22:19 +0000 (16:22 -0800)]
zgz: Remove support for the -l,--list flag

15 years agozgz: Fix printf format string warnings
Josh Triplett [Fri, 28 Nov 2008 00:15:25 +0000 (16:15 -0800)]
zgz: Fix printf format string warnings

Tested on both x86 and x86-64.

15 years agozgz: remove unused variable "gzip", fixing a warning
Josh Triplett [Fri, 28 Nov 2008 00:01:14 +0000 (16:01 -0800)]
zgz: remove unused variable "gzip", fixing a warning

15 years agoAdd a .gitignore file
Josh Triplett [Fri, 28 Nov 2008 00:00:13 +0000 (16:00 -0800)]
Add a .gitignore file

15 years agoreleasing version 0.18 0.18
Joey Hess [Sat, 22 Nov 2008 23:26:09 +0000 (18:26 -0500)]
releasing version 0.18

15 years agopristine-gz: Avoid uncompressing the original file more than once. Closes: #506490
Joey Hess [Sat, 22 Nov 2008 01:31:32 +0000 (20:31 -0500)]
pristine-gz: Avoid uncompressing the original file more than once. Closes: #506490

16 years agoCorrect -f order to come after --gnu. 0.17
Joey Hess [Fri, 4 Jul 2008 18:47:30 +0000 (14:47 -0400)]
Correct -f order to come after --gnu.

16 years agoreleasing version 0.16 0.16
Joey Hess [Fri, 4 Jul 2008 18:44:09 +0000 (14:44 -0400)]
releasing version 0.16

16 years agopristine-gz: Always pass -f to zgz
Joey Hess [Fri, 4 Jul 2008 18:29:47 +0000 (14:29 -0400)]
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

16 years agoreleasing version 0.15 0.15
Joey Hess [Wed, 2 Jul 2008 16:50:10 +0000 (12:50 -0400)]
releasing version 0.15

16 years agozgz: Remove support for a GZIP env variable. We don't need this in pristine-tar,...
Joey Hess [Wed, 2 Jul 2008 16:40:22 +0000 (12:40 -0400)]
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