https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Bug ID: 1165620 Summary: Review Request: biber - Command-line bibliographic manager, BibTeX replacement Product: Fedora Version: rawhide Component: Package Review Severity: medium Assignee: nobody@fedoraproject.org Reporter: cbm@m.fsf.org QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org
Spec URL: http://people.maths.ox.ac.uk/macdonald/fedora/biber.spec SRPM URL: http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-3.fc21.src.rpm
Description: Biber is a command-line tool for dealing with bibliographic databases. Biber offers a large superset of legacy BibTeX (texlive-bibtex) functionality. It is often used with the popular BibLaTeX package (texlive-biblatex), where it is required for some features.
Fedora Account System Username: cbm
I maintain copr's for this, e.g., at https://copr.fedoraproject.org/coprs/cbm/f21-biber-1.8/ and https://copr.fedoraproject.org/coprs/cbm/biber-1.8.
I will also submit a set of perl dependencies too.
I would like to co-maintain with Mary Ellen Foster (usename: mef), who wrote the first version of this spec file.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Colin Macdonald cbm@m.fsf.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |177841 (FE-NEEDSPONSOR)
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=177841 [Bug 177841] Tracker: Review requests from new Fedora packagers who need a sponsor
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Colin Macdonald cbm@m.fsf.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends On| |1165625, 1165627, 1165628, | |1165629, 1165631, 1165634
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1165625 [Bug 1165625] Review Request: perl-XML-Writer-String - Capture output from XML::Writer https://bugzilla.redhat.com/show_bug.cgi?id=1165627 [Bug 1165627] Review Request: perl-XML-LibXML-Simple - XML::LibXML clone of XML::Simple::XMLin() https://bugzilla.redhat.com/show_bug.cgi?id=1165628 [Bug 1165628] Review Request: perl-Tie-Cycle - Cycle through a list of values via a scalar https://bugzilla.redhat.com/show_bug.cgi?id=1165629 [Bug 1165629] Review Request: perl-Getopt-Tabular - Table-driven argument parsing for Perl 5 https://bugzilla.redhat.com/show_bug.cgi?id=1165631 [Bug 1165631] Review Request: perl-ExtUtils-LibBuilder - ExtUtils::LibBuilder Perl module https://bugzilla.redhat.com/show_bug.cgi?id=1165634 [Bug 1165634] Review Request: perl-Config-AutoConf - Config::AutoConf Perl module
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Petr Šabata psabata@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends On| |1161126
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1161126 [Bug 1161126] Review Request: perl-Config-AutoConf - A module to implement some of AutoConf macros in pure perl
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165634, which changed state.
Bug 1165634 Summary: Review Request: perl-Config-AutoConf - Config::AutoConf Perl module https://bugzilla.redhat.com/show_bug.cgi?id=1165634
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |CLOSED Resolution|--- |DUPLICATE
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Colin Macdonald cbm@m.fsf.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends On| |1165637, 1165639, 1165641
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1165637 [Bug 1165637] Review Request: perl-Business-ISSN - Perl extension for International Standard Serial Numbers https://bugzilla.redhat.com/show_bug.cgi?id=1165639 [Bug 1165639] Review Request: perl-Business-ISMN - perl extension to work with International Standard Music Numbers https://bugzilla.redhat.com/show_bug.cgi?id=1165641 [Bug 1165641] Review Request: perl-Text-BibTeX - Interface to read and parse BibTeX files
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Petr Šabata psabata@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |psabata@redhat.com Blocks|177841 (FE-NEEDSPONSOR) | Assignee|nobody@fedoraproject.org |psabata@redhat.com Flags| |fedora-review?
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=177841 [Bug 177841] Tracker: Review requests from new Fedora packagers who need a sponsor
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #1 from Colin Macdonald cbm@m.fsf.org --- Question: am I specifying the dependency on texlive-bibtex correctly? The current version in F21 is "4:svn32245.2.8a". I want to specify that biber should not be used with versions less than 2.8. So I put:
Requires: texlive-biblatex >= 4:svn32245.2.8
Is that right? What if it compares based on the epoch or svn numbers intead? Presumably the svn number would not increase while the version number went down :) But still, is there a "proper" way to specify its the 2.8 I care about?
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #2 from Petr Šabata psabata@redhat.com --- Hmm, well, there's no way to guarantee you will always end up with 2.8+, no matter what you put there. If we suddenly ship texlive-biblatex-5:1.0, it will be considered a newer version because that's just how epoch works. That svn part is also more significant than "2.8", so 4:svn32246.1.0 would also be considered newer.
The good thing is it's very unlikely something like that would happen so I would suggest picking the oldest "2.8" release we've had and require that or newer. Which is probably what you're doing :)
Also, check out rpmdev-vercmp. It's a helpful tool when you're not sure how rpm would compare certain version string.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #3 from Colin Macdonald cbm@m.fsf.org --- Updated:
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-4.fc21.src.rpm
1. @psabata: What should I do about this?
- perl Build.PL
Checking prerequisites... requires: ! Unicode::Collate (0.97) is installed, but we need version >= 0.98
It seems to work without. And AFAICT, Unicode::Collate is baked-in to our perl (?) The META.json file also says this.
2. I may need to fix-up Source0. IIRC (months ago) I followed some guide on packaging from git and re-zipped it as "plk-biber-v1.8-0-g848ca84.zip". But surely I can just use "biber-848ca84face08bdba8a6e8d95447b0ec71e56804.zip", as served by "https://github.com/plk/biber/archive/848ca84face08bdba8a6e8d95447b0ec71e5680...
3. Actually, on re-reading that, I should probably just take "http://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/1.8/bibl..." instead. Although this filename is not versioned...
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #4 from Colin Macdonald cbm@m.fsf.org --- Another update, using the upstream tar.gz instead of a git commit
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-5.fc21.src.rpm
This still has the Unicode::Collate issue from Comment #3.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #5 from Petr Šabata psabata@redhat.com --- (In reply to Colin Macdonald from comment #3)
- @psabata: What should I do about this?
- perl Build.PL
Checking prerequisites... requires: ! Unicode::Collate (0.97) is installed, but we need version >= 0.98
It seems to work without. And AFAICT, Unicode::Collate is baked-in to our perl (?) The META.json file also says this.
Unicode::Collate is indeed bundled with perl but also lives on on CPAN as a separate distribution ("dual-lives"). What we can do is to subpackage the module from the perl package and then package the standalone Unicode::Collate module which will update and replace the perl subpackage.
We do this for many modules already and plan to subpackage most or all of them at some point. It's an ongoing work. If you really need the new Unicode::Collate, I can do that for you.
- I may need to fix-up Source0. IIRC (months ago) I followed some guide
on packaging from git and re-zipped it as "plk-biber-v1.8-0-g848ca84.zip". But surely I can just use "biber-848ca84face08bdba8a6e8d95447b0ec71e56804.zip", as served by "https://github.com/plk/biber/archive/ 848ca84face08bdba8a6e8d95447b0ec71e56804.zip"?
Github generates tarballs from tags, you can use these: https://github.com/plk/biber/releases
Also, v1.9 has been available for a while. Any reason to stick with 1.8?
- Actually, on re-reading that, I should probably just take
"http://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/1.8/ biblatex-biber.tar.gz" instead. Although this filename is not versioned...
I would use the abovementioned tarballs.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #6 from Colin Macdonald cbm@m.fsf.org ---
Also, v1.9 has been available for a while. Any reason to stick with 1.8?
Fedora would need a newer texlive-biblatex, I documented this in the spec file. See also bug #1165437.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #7 from Colin Macdonald cbm@m.fsf.org --- I guess (but don't know) that it really needed the a newer Unicode::Collate. Here is a commit for biber 1.9 which increments it to 1.04:
https://github.com/plk/biber/commit/4a49c1a679de30a8834bb79844b08e49ced50058
I could ask upstream? Or ask you to do the subpackage :) If latter, I'll file a bug for that.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #8 from Colin Macdonald cbm@m.fsf.org --- BTW, I've noticed I don't have the BR and Requires quite right here. I will take another pass at it.
But first: if I need something at both build-time and run-time, do I need to list it on both? I.e., does build-time inherit the run-time deps?
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #9 from Petr Šabata psabata@redhat.com --- (In reply to Colin Macdonald from comment #6)
Also, v1.9 has been available for a while. Any reason to stick with 1.8?
Fedora would need a newer texlive-biblatex, I documented this in the spec file. See also bug #1165437.
Aha, I see. I haven't looked at the package yet :)
(In reply to Colin Macdonald from comment #7)
I guess (but don't know) that it really needed the a newer Unicode::Collate. Here is a commit for biber 1.9 which increments it to 1.04:
https://github.com/plk/biber/commit/4a49c1a679de30a8834bb79844b08e49ced50058
I could ask upstream? Or ask you to do the subpackage :) If latter, I'll file a bug for that.
It could be just that the author had that specific version of Unicode::Collate installed. Maybe it's not really required.
Or maybe it is. Maybe biber breaks in some situations if Unicode::Collate is too old :)
You can ask upstream, sure. I'll subpackage it (next week) anyway.
(In reply to Colin Macdonald from comment #8)
BTW, I've noticed I don't have the BR and Requires quite right here. I will take another pass at it.
But first: if I need something at both build-time and run-time, do I need to list it on both? I.e., does build-time inherit the run-time deps?
There's no inheritence. These can differ and they often do (e.g. when not everything is tested). You need to list that twice.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #10 from Colin Macdonald cbm@m.fsf.org --- Update deps:
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-6.fc21.src.rpm
Other than the Unicode::Collate version, I think this is ready for review.
I have asked upstream about Unicode::Collate (https://github.com/plk/biber/issues/54)
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #11 from Colin Macdonald cbm@m.fsf.org --- Upstream thinks we can relax the Unicode::Collate requirement so I'll do that and leave a comment in the spec file on my next revision.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165625, which changed state.
Bug 1165625 Summary: Review Request: perl-XML-Writer-String - Capture output from XML::Writer https://bugzilla.redhat.com/show_bug.cgi?id=1165625
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165627, which changed state.
Bug 1165627 Summary: Review Request: perl-XML-LibXML-Simple - XML::LibXML clone of XML::Simple::XMLin() https://bugzilla.redhat.com/show_bug.cgi?id=1165627
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165628, which changed state.
Bug 1165628 Summary: Review Request: perl-Tie-Cycle - Cycle through a list of values via a scalar https://bugzilla.redhat.com/show_bug.cgi?id=1165628
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165629, which changed state.
Bug 1165629 Summary: Review Request: perl-Getopt-Tabular - Table-driven argument parsing for Perl 5 https://bugzilla.redhat.com/show_bug.cgi?id=1165629
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165631, which changed state.
Bug 1165631 Summary: Review Request: perl-ExtUtils-LibBuilder - ExtUtils::LibBuilder Perl module https://bugzilla.redhat.com/show_bug.cgi?id=1165631
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165637, which changed state.
Bug 1165637 Summary: Review Request: perl-Business-ISSN - Perl extension for International Standard Serial Numbers https://bugzilla.redhat.com/show_bug.cgi?id=1165637
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165639, which changed state.
Bug 1165639 Summary: Review Request: perl-Business-ISMN - perl extension to work with International Standard Music Numbers https://bugzilla.redhat.com/show_bug.cgi?id=1165639
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620 Bug 1165620 depends on bug 1165641, which changed state.
Bug 1165641 Summary: Review Request: perl-Text-BibTeX - Interface to read and parse BibTeX files https://bugzilla.redhat.com/show_bug.cgi?id=1165641
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #12 from Colin Macdonald cbm@m.fsf.org --- Sorry for ignoring this for a long time.
I've made the Unicode::Collate change. Can you review this?
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-7.fc21.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #13 from Petr Šabata psabata@redhat.com --- So, after checking your long dep list:
Missing build-time dependencies: - perl itself - it is called in the spec file - Log::Log4perl::Appender::File - Log::Log4perl::Appender::Screen - Log::Log4perl::Layout::PatternLayout - Log::Log4perl::Layout::SimpleLayout - these are via tests -> Biber -> Biber::Config - re - this is via tests -> Biber -> Biber::Utils - Text::BibTeX::Name - Text::BibTeX::NameFormat - these are via tests -> Biber::Input::file::bibtex
I think you can safely drop the following build-time deps: - Business::ISBN - Business::ISSN - Business::ISMN - this code isn't tested - Config::AutoConf - Encode::EUCJPASCII - Encode::HanExtra - Encode::JIS2K - ExtUtils::LibBuilder - these aren't actually used anywhere - Getopt::Long - only used by the script and it's not tested - List::MoreUtils - again, not used anywhere - LWP::Simple - LWP::Protocol::https - Mozila::CA - this code isn't tested - Pod::Usage - only used by the script, not tested - Readonly - Readonly::XS - not tested; furthermore, the XS variant is only recommended for improved performance - Unicode::Collate - amusing, isn't it? It's not actually used anywhere; some of its submodules are but not this one -- and with the dependency constraint removed, you can just drop this completely - XML::LibXSLT - this code isn't tested - XML::Writer::String - this isn't used anywhere, not even mentioned in META; where did you find it?...
Now, for the runtime dependencies. These can be dropped from the list because rpmbuild's generators will automagically find them for you: - autovivification - Data::Dump - Data::Compare - Data::Simple - File::Slurp - IPC::Cmd - IPC::Run3 - List::AllUtils - Log::Log4perl - Regexp::Common - Unicode::GCString - URI - XML::Writer
And these just aren't needed at all: - Encode::EUCJPASCII - Encode::HanExtra - Encode::JIS2K - List::MoreUtils - Unicode::Collate - XML::Writer::String
Note Text::BibTeX gets autodetected too, however, it's missing the version constraint. Therefore keep your explicit runtime dependency and filter out the autogenerated one, like this, on one line:
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\(Text::BibTeX\)$
You also need to add this to your runtime dep list, the generators won't pick it up: - Unicode::Collate::Locale
That should be all for the deps, next...
The license tag is incorrect. The README file states the distribution is licensed under GPL+ or Artistic 2.0, however, all the code mentions Artistic 2.0 only. I would suggest using `(GPL+ or Artistic 2.0) and Artistic 2.0' here.
And perhaps package TODO.org as %doc, too.
Hopefully that's all there is to this review :)
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #14 from Colin Macdonald cbm@m.fsf.org --- Thank you Petr!
1. Regarding this:
- XML::Writer::String
- this isn't used anywhere, not even mentioned in META; where did you find it?...
I'm not sure. I suspect it was in the original work of @mef and I just kept it. So perhaps a previous biber depended on it.
2. I added that package to Fedora a few months: but no need to retire it over this I assume?
3. Some of the deps we've just dropped are explicitly mentioned in the various meta files: if I get a chance I'll look into fixing those upstream.
4. New version:
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-8.fc22.src.rpm
Thanks again.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #15 from Colin Macdonald cbm@m.fsf.org --- Oh and here is a the diff of my latest change in case that helps:
https://github.com/cbm755/fedora-spec/commit/1197bb3b39655e315a57f9d124594a2...
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Petr Šabata psabata@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-review? |fedora-review+
--- Comment #16 from Petr Šabata psabata@redhat.com --- (In reply to Colin Macdonald from comment #14)
Thank you Petr!
- Regarding this:
- XML::Writer::String
- this isn't used anywhere, not even mentioned in META; where did you find it?...
I'm not sure. I suspect it was in the original work of @mef and I just kept it. So perhaps a previous biber depended on it.
- I added that package to Fedora a few months: but no need to retire it
over this I assume?
Of course not.
- Some of the deps we've just dropped are explicitly mentioned in
the various meta files: if I get a chance I'll look into fixing those upstream.
Upstreams rarely care about this but sure, do try.
- New version:
https://raw.githubusercontent.com/cbm755/fedora-spec/master/biber.spec
http://people.maths.ox.ac.uk/macdonald/fedora/biber-1.8-8.fc22.src.rpm
Thanks again.
I confirm you've done everything I asked and I hereby approve this package :)
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #17 from Colin Macdonald cbm@m.fsf.org --- New Package SCM Request ======================= Package Name: biber Short Description: Command-line bibliographic manager, BibTeX replacement Upstream URL: http://biblatex-biber.sourceforge.net/ Owners: cbm mef jnovy Branches: f22 InitialCC: perl-sig
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Colin Macdonald cbm@m.fsf.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |fedora-cvs?
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Jon Ciesla limburgher@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-cvs? |fedora-cvs+
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #18 from Jon Ciesla limburgher@gmail.com --- Git done (by process-git-requests).
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |MODIFIED
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
--- Comment #19 from Fedora Update System updates@fedoraproject.org --- biber-1.8-8.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/biber-1.8-8.fc22
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ON_QA
--- Comment #20 from Fedora Update System updates@fedoraproject.org --- biber-1.8-8.fc22 has been pushed to the Fedora 22 testing repository.
https://bugzilla.redhat.com/show_bug.cgi?id=1165620
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Fixed In Version| |biber-1.8-8.fc22 Resolution|--- |ERRATA Last Closed| |2015-06-05 19:59:50
--- Comment #21 from Fedora Update System updates@fedoraproject.org --- biber-1.8-8.fc22 has been pushed to the Fedora 22 stable repository.
package-review@lists.fedoraproject.org