On Mon, 18 Aug 2014, Don Armstrong wrote:
> On Mon, 18 Aug 2014, Thorsten Glaser wrote:
> > This does not work in Debian: you always need the .orig.tar.* file,
> > at least for the upload, for non-native packages.
> 
> You need it from somewhere, but the whole point of pristine-tar is that
> you can generate the orig.tar.* from information in the git repository.

pristine-tar information bitrots.

As long as you *know* this and prepare for it, that's not a problem.

Arguably, pristine-tar needs to do a much better job of disclosing its
shortcomings in the documentation and of marketing itself as a simple
convenience tool: you must not depend on it being able to re-create the orig
tarballs at some unspecified time in the future.

The information pristine-tar stores bitrots when tar/gzip/xz/bzip2 changes
output even slightly, because the stored deltas become useless.  To work
around this, you need to add a way for pristine-tar/gz/xz/bzip2... to
duplicate the exact behaviour of past versions of these tools.

It also bitrots when the user does any sort of edition to the tarball-base
branch it uses to generate the approximate tarbal: pristine-tar stores
references to the git commits it needs inside a ".id" file, instead of using
something git actually knows about.

This can be fixed by storing the "base tarball commit" information needed by
pristine-tar in a way git itself is aware of.  Since it needs to be
push/fetch-safe, it will have to be done either as visible special branch
(e.g. as done by stgit) or by abusing multi-parent (merge) commits.  private
refs won't work well for this.

It is easy to deal with the two failure scenarios above, as long as you are
aware they could happen.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20140818173013.ga27...@khazad-dum.debian.net

Reply via email to