Hello,

On Mon 28 Jul 2025 at 09:21pm +02, Andrea Pappacoda wrote:

> It's likely that I didn't explain myself correctly. I meant the existing
> upstream= and upstream-tag= metadata fields which git-debpush already
> uses. The pristine-tar tool does not need those to generate a tarball,
> but I believe it's still useful to include them alongside the
> pristine-tar= metadata field to compare the pristine-tar tree to the
> tree of the git commit contained in the upstream= metadata field.

Thanks.  We don't want to depend on the pristine-tar field for anything
other than obtaining the orig.tar, so we would definitely want to keep
the upstream= and upstream-tag= fields no matter what.

>> Trying to read your patch, I think the fact I don't use pristine-tar is
>> really showing.  Is the .id file defined somewhere?  Is your knowledge
>> of the pristine-tar branch contents from reading a spec, or empirical?
>
> Kind of both. The pristine-tar(1) manpage says, under the `pristine-tar
> commit _tarball_ _upstream_` section:
>
>> The upstream parameter specifies the tag or branch [or commit, Ed.]
>> that contains the same content that is present in the tarball. The
>> name of the tree it points to will be recorded for later use by
>> pristine-tar checkout.
>
> So yes, pristine-tar specifies that it stores the tree id somewhere. It
> does not explicitly say where (well, not in the manpages), but it does
> store that tree id inside a file named as the input tarball with ".id"
> appended (as shown in its source code). This is not configurable, and
> pristine-tar also looks for such file when running `pristine-tar
> checkout`, so it cannot change really, otherwise new pristine-tar
> versions would be unable to extract old tarballs, which defeats the
> purpose of the tool.
>
> The ".delta" file is explicitly mentioned in the manpage, just below the
> paragraph I quoted before.

Thanks, I understand now.

-- 
Sean Whitton

Attachment: signature.asc
Description: PGP signature

Reply via email to