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

Re: VistA packaging : vista-foia : First review



Update report:
===========


Downloaded xdelta3 source code from:

https://code.google.com/p/xdelta/downloads/detail?name=xdelta3-3.0.8.tar.xz&can=2&q=


and build it locally with


unxz xdelta3-3.0.8.tar.xz 
tar xf xdelta3-3.0.8.tar
cd xdelta3-3.0.8/
./configure --prefix=/home/ibanez/local
mkdir ~/local
make -j8
make install



Then rerun the self-comparison test:

 ~/local/bin/xdelta3 -s luisrecreated2.tar luisrecreated2.tar delta3

and got:

                              10189 bytes     delta3


Which is a reasonably small file, for the output of a self-comparison.


Then run the initial comparison of the tar file generated by 
git-buildpackage vs the upstream tar, as

       ~/local/bin/xdelta3 -s luisrecreated2.tar tarball.tar delta4

and got a more reasonable output this time:

                            979838 bytes      delta4


So, it looks like, xdelta version 3 has addressed the problem.


However the syntax of its options have changed.
(see the -s flag instead of the previous "delta" sub-command). 



What do we do ?
=============

I could generated the delta with xdelta3 and populate the
pristine-tar branch, but, it is unclear whether this will do
any good if the other systems that will attempt to build
the package are still  using xdelta 1.1.3.



Suggestion A:
===========

From reading the gbp.conf man page:
http://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.cfgfile.html

It seems that we could put a customized gbp.conf file in this specific
repository, by placing it in:

          debian/gbp.conf    :    per repository/branch configuration

To change the default behavior and exclude the use of pristine-tar
 (and hence the downstream use of xdelta), by using the setting:

[DEFAULT]
pristine-tar = False


The justification would be that:

xdelta 1.1.3 in sid, has limitation to files smaller than 2Gb,

and our tar file is  2.9Gb



Suggestion B:
===========


Another option would be to change "pristine-tar" to not use the line 545:

my $ret=system("$xdelta_program delta -0 --pristine $recreatetarball $tarball $delta{delta}")

but use instead:

my $ret=system("$xdelta_program delta -9 --pristine $recreatetarball $tarball $delta{delta}")

(or something along those lines) to trigger the use of compression, 
and to make it compare tar files in their compressed form, instead 
of their uncompressed one.

This probably would have to be brought to the maintainers of pristine-tar...






   I'm probably missing other good alternatives.


      Will appreciate any guidance and advice on how to move forward,



          Many Thanks



               Luis


Reply to: