Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1235404 - Review Request: pristine-tar - Regenerate pristine tarballs from version control systems
Summary: Review Request: pristine-tar - Regenerate pristine tarballs from version cont...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Orion Poplawski
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: FE-NEEDSPONSOR
TreeView+ depends on / blocked
 
Reported: 2015-06-24 17:34 UTC by Evgeni Golov
Modified: 2017-09-25 11:35 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-09-25 11:35:10 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Evgeni Golov 2015-06-24 17:34:51 UTC
Spec URL: http://pinky.die-welt.net/~evgeni/rpm/pristine-tar.spec
SRPM URL: http://pinky.die-welt.net/~evgeni/rpm/pristine-tar-1.33-1.fc21.src.rpm
Description:
pristine-tar can regenerate a pristine upstream tarball using only a small
binary delta file and a revision control checkout of the upstream branch.

The package also includes a pristine-gz command, which can regenerate a
pristine .gz file, a pristine-bz2 for .bz2 files, and a pristine-xz for .xz
files.

The delta file is designed to be checked into revision control along-side
the upstream branch, thus allowing Debian packages to be built entirely
using sources in revision control, without the need to keep copies of
upstream tarballs.

Fedora Account System Username: evgeni

Koji builds for f21 and f22:
 http://koji.fedoraproject.org/koji/taskinfo?taskID=10199183
 http://koji.fedoraproject.org/koji/taskinfo?taskID=10199187

rpmlint:
pristine-tar.src: W: spelling-error %description -l en_US gz -> g, z, gs
pristine-tar.src: W: spelling-error %description -l en_US xz -> xx, x, z
pristine-tar.x86_64: W: spelling-error %description -l en_US gz -> g, z, gs
pristine-tar.x86_64: W: spelling-error %description -l en_US xz -> xx, x, z
(yeah, I do want to spell gz like that ;))

I am a newbie at packaging (for Fedora), so I need a sponsor and a patient one ;-)

Comment 1 Orion Poplawski 2015-07-13 17:25:11 UTC
This seems like fairly old code.  Is it of particular use to you or something else?  I'm also concerned that it appears to bundle gzip and bzip2 code.

Comment 2 Evgeni Golov 2015-07-14 07:35:19 UTC
Yes, it is quite old code, but it is heavily used for maintaining Debian packages in Git. I am currently discussing with a few Debian people to revive the upstream maintaineship inside of Debian.

It is of use for me (and hopefully others) who want to be able to maintain Debian packages on a Fedora system (crude setup, I know).

As for the bundled code, yes it is used. I can dig up the exact reason for using it (instead of bzip2-libs) later, if you want to.

Reminds me to upload a slightly refreshed version with xdelta3 compatibility.

Comment 3 Orion Poplawski 2015-09-20 16:05:55 UTC
Yes, I would need to know the bundling reasons.

Comment 4 Orion Poplawski 2015-10-28 04:16:46 UTC
Bundling has been relaxed substantially in Fedora.  Do you still want to pursue this review?

Comment 5 Evgeni Golov 2015-12-22 15:14:36 UTC
Hi Orion,

sorry for the long delay -- work has been keeping me busy and a working pristine-tar was not top of the priorities :)

The bundled bzip2 and gzip code is needed to be able to recreate byte-identical archives created with some (old) versions of these tools. Would this be OK for bundling in Fedora?

If I read https://fedoraproject.org/wiki/Bundled_Software_policy correctly, I'd "just" have to add proper provides, right?

Regards
Evgeni

Comment 6 Orion Poplawski 2015-12-22 15:45:23 UTC
Yes, now you just need to add the provides.

Comment 7 Evgeni Golov 2015-12-23 09:47:44 UTC
Ok, cool.

I have now added the following to the spec:
# zgz/gzip/*
Provides:       bundled(gzip)  = 1.3.12
# zgz/old-bzip2/*
Provides:       bundled(bzip2) = 0.9.5
# pit/suse-bzip2/*
Provides:       bundled(bzip2) = 1.0.6

Is it correct to list bzip2 as bzip2, and not as bzip2-libs or libbz2? https://fedoraproject.org/wiki/Bundled_Software_policy only says "<libname>" which is not really exact :)

Comment 8 Evgeni Golov 2015-12-23 09:49:46 UTC
rpmlint says it's an error to have the same provides twice, though:
pristine-tar.x86_64: E: useless-provides bundled(bzip2)
This package provides 2 times the same capacity. It should only provide it
once.

Comment 9 Orion Poplawski 2016-11-24 04:57:38 UTC
Sorry for the delay here.  Do you want to continue?

For bzip2 I would do:

Provides:       bundled(bzip2-old) = 0.9.5
Provides:       bundled(bzip2) = 1.0.6

Comment 10 Evgeni Golov 2017-09-25 11:35:10 UTC
I must admit I lost time and interest in pristine-tar in Fedora, so I am closing this as WONTFIX.

Thanks Orion for the reviews!


Note You need to log in before you can comment on or make changes to this bug.