Bug 594744
| Summary: | Review Request: zint - A barcode generator and library | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Martin Gieseking <martin.gieseking> |
| Component: | Package Review | Assignee: | Chen Lei <supercyper1> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | fedora-package-review, notting, supercyper1 |
| Target Milestone: | --- | Flags: | supercyper1:
fedora-review+
kevin: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | zint-2.3.2-3.fc12 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2010-07-06 17:12:33 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Martin Gieseking
2010-05-21 13:43:16 UTC
Spec URL: http://mgieseki.fedorapeople.org/zint/zint.spec SRPM URL: http://mgieseki.fedorapeople.org/zint/zint-2.3.1-1.fc12.src.rpm Here's an an updated version of the package. I've added a patch that fixes an export issue. koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2203302 The following spelling errors can be ignored. The call of exit() in libzint has been reported upstream and will be addressed, but this shouldn't be a blocker here. $ rpmlint /home/martin/rpmbuild/RPMS/x86_64/zint-*.rpm zint.x86_64: W: spelling-error Summary(en_US) barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US symbologies -> symbolizes, symbolize, symbolism zint.x86_64: W: shared-lib-calls-exit /usr/lib64/libzint.so.2.3.1 exit.5 zint.x86_64: W: spelling-error Summary(en_US) barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US symbologies -> symbolizes, symbolize, symbolism zint.x86_64: W: shared-lib-calls-exit /usr/lib64/libzint.so.2.3.1 exit.5 zint-devel.x86_64: W: spelling-error %description -l en_US ont -> not, Ont, int zint-devel.x86_64: W: no-documentation zint-devel.x86_64: W: spelling-error %description -l en_US ont -> not, Ont, int zint-devel.x86_64: W: no-documentation zint-qt.x86_64: W: spelling-error %description -l en_US barcodes -> bar codes, bar-codes, barcaroles zint-qt.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint-qt.x86_64: W: no-documentation zint-qt.x86_64: W: spelling-error %description -l en_US barcodes -> bar codes, bar-codes, barcaroles zint-qt.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint-qt.x86_64: W: no-documentation zint-qt-devel.x86_64: W: no-documentation zint-qt-devel.x86_64: W: no-documentation 10 packages and 0 specfiles checked; 0 errors, 20 warnings. Here are the correct URLs: Spec URL: http://mgieseki.fedorapeople.org/zint/zint.spec SRPM URL: http://mgieseki.fedorapeople.org/zint/zint-2.3.1-2.fc12.src.rpm 1.I suggest you to split shlibs into subpackages, e.g. zint-libs zint-qt-libs. Fedora ships multilibs in x86_64 and ppc64. 2.%package -n zint-devel -> %package devel 3. I'll be better to include .desktop as Source1 in spec 4.%cmake CMakeLists.txt -> %cmake . 5.Group: Applications/Engineering is not appropriate 6.For Source field, see http://fedoraproject.org/wiki/Packaging:SourceURL#Sourceforge.net 7. BuildRequires: qt-devel >= 4.4 BuildRequires: desktop-file-utils BR should not be added to subpackages. Thanks for the comments, Chen Lei. I'll update the package in about a week when version 2.3.2 is out. It incorporates the locale patch and fixes the shared-lib-calls-exit issue. (In reply to comment #3) > 1.I suggest you to split shlibs into subpackages, e.g. zint-libs zint-qt-libs. > Fedora ships multilibs in x86_64 and ppc64. Yes, that's a good idea. However, it leads to 6 pretty small packages. If this is not a problem, I'll go with it. > 3. I'll be better to include .desktop as Source1 in spec I prefer keeping the desktop file in the spec. :) It's kind of personal preference, I think. I'll ask upstream to add it to the tarball, though. > 7. > BuildRequires: qt-devel >= 4.4 > BuildRequires: desktop-file-utils > > BR should not be added to subpackages. Is there a hint about this in the guidelines? Technically, there's no difference whether the BRs are placed in the base package or a subpackage. > > 3. I'll be better to include .desktop as Source1 in spec > I prefer keeping the desktop file in the spec. :) It's kind of personal > preference, I think. I'll ask upstream to add it to the tarball, though. Historically, fedora packaging guideline only accepts including desktop file as a source file. But, recently incluing desktop file in spec is also accepted. > > 7. > > BuildRequires: qt-devel >= 4.4 > > BuildRequires: desktop-file-utils > > > > BR should not be added to subpackages. > Is there a hint about this in the guidelines? Technically, there's no > difference whether the BRs are placed in the base package or a subpackage. Adding BR to subpackages make no sense. (In reply to comment #5) > Adding BR to subpackages make no sense. To me, it does make sense to indicate where the BRs are actually needed. As the rpm specification allows it, the question is if the Fedora guidelines want them kept together in the base package. However, it's not that important to me. I'll move them to the base package. Spec URL: http://mgieseki.fedorapeople.org/zint/zint.spec SRPM URL: http://mgieseki.fedorapeople.org/zint/zint-2.3.2-1.fc13.src.rpm Updated to release 2.3.2. koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2218169 $ rpmlint /var/lib/mock/fedora-13-x86_64/result/zint-*.rpm zint.src: W: spelling-error Summary(en_US) barcode -> bar code, bar-code, barcarole zint.src: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint.src: W: spelling-error %description -l en_US symbologies -> symbolizes, symbolize, symbolism zint.x86_64: W: spelling-error Summary(en_US) barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint.x86_64: W: spelling-error %description -l en_US symbologies -> symbolizes, symbolize, symbolism zint.x86_64: W: no-manual-page-for-binary zint zint-devel.x86_64: W: no-documentation zint-libs.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint-libs.x86_64: W: no-documentation zint-qt.x86_64: W: spelling-error %description -l en_US barcodes -> bar codes, bar-codes, barcaroles zint-qt.x86_64: W: no-documentation zint-qt.x86_64: W: no-manual-page-for-binary zint-qt zint-qt-devel.x86_64: W: spelling-error %description -l en_US libs -> lobs, lib, lbs zint-qt-devel.x86_64: W: no-documentation zint-qt-libs.x86_64: W: spelling-error %description -l en_US barcode -> bar code, bar-code, barcarole zint-qt-libs.x86_64: W: no-documentation 8 packages and 0 specfiles checked; 0 errors, 17 warnings. The spec file is fine, except some trival issues:
1.
Explicit requires on shlibs is only needed on -devel subpackage, the mainpackage and -qt subpackage don't need this.
Requires: %{name}-libs = %{version}-%{release}
Requires: %{name}-libs = %{version}-%{release}
2.
Group: Applications/Multimedia seems not properly, I suggest to use Applications/Text.
See http://cvs.fedoraproject.org/viewvc/devel/barcode/barcode.spec?revision=1.13&view=markup
Thanks for taking this review and your comments. Here are the updated files: Spec URL: http://mgieseki.fedorapeople.org/zint/zint.spec SRPM URL: http://mgieseki.fedorapeople.org/zint/zint-2.3.2-2.fc13.src.rpm formal review here:
+:ok, =:needs attention, -:needs fixing
MUST Items:
[+] MUST: rpmlint must be run on every package.
[+] MUST: The package must be named according to the Package Naming Guidelines.
[+] MUST: The spec file name must match the base package %{name}
[+] MUST: The package must meet the Packaging Guidelines. [FIXME?: covers this
list and more]
[+] MUST: The package must be licensed with a Fedora approved license and meet
the Licensing Guidelines.
[+] MUST: The License field in the package spec file must match the actual
license.
[+] MUST: If (and only if) the source package includes the text of the
license(s) in its own file, then that file, containing the text of the
license(s) for the package must be included in %doc.
[+] MUST: The spec file must be written in American English.
[+] MUST: The spec file for the package MUST be legible.
[+] MUST: The sources used to build the package must match the upstream source,
as provided in the spec URL.
<<md5sum checksum>>b4f004198e50db31ab1a96ec8c60ff19
[+] MUST: The package must successfully compile and build into binary rpms on
at least one supported architecture.
[+] MUST: All build dependencies must be listed in BuildRequires
[+] MUST: The spec file MUST handle locales properly. This is done by using the
%find_lang macro.
[+] MUST: Every binary RPM package which stores shared library files (not just
symlinks) in any of the dynamic linker's default paths, must call ldconfig in
%post and %postun.
[+] MUST: A package must own all directories that it creates. If it does not
create a directory that it uses, then it should require a package which does
create that directory.
[+] MUST: A package must not contain any duplicate files in the %files listing.
[+] MUST: Permissions on files must be set properly. Executables should be set
with executable permissions, for example. Every %files section must include a
%defattr(...) line.
[+] MUST: Each package must have a %clean section, which contains rm -rf
%{buildroot} (or $RPM_BUILD_ROOT).
[+] MUST: Each package must consistently use macros, as described in the macros
section of Packaging Guidelines.
[+] MUST: The package must contain code, or permissible content. This is
described in detail in the code vs. content section of Packaging Guidelines.
[+] MUST: If a package includes something as %doc, it must not affect the
runtime of the application.
[+] MUST: Packages must NOT contain any .la libtool archives, these should be
removed in the spec.
[+] MUST: Packages containing GUI applications must include a %{name}.desktop
file, and that file must be properly installed with desktop-file-install in the
%install section.
[+] MUST: Packages must not own files or directories already owned by other
packages.
[+] MUST: All filenames in rpm packages must be valid UTF-8.
This package is approved.
After reconsideration of this package, I agree with you that -libs and -qt-libs subpackages are not necessary, you can merge them back with main package and -qt package.
From decription, I noticed "Zint is an Open Source barcode encoding and image generating library written entirely in C and released under GPLv3 or later
L", maybe the main role of zint is shlibs. So it may be more suitable to put libzint into mainpackage, then put zint program into -utils subpackage. Since zint and zint-libs is quite small, I think it's also acceptable to put them into one package, the same is for -qt and -qt-libs, the final choice is left for you.
Thanks for the review! (In reply to comment #10) > After reconsideration of this package, I agree with you that -libs and -qt-libs > subpackages are not necessary, you can merge them back with main package and > -qt package. Yes, I think it's probably better to reduce the number of tiny subpackages and bundle the programs with their corresponding shlib (as in 2.3.1-1). Thanks again. New Package CVS Request ======================= Package Name: zint Short Description: A barcode generator Owners: mgieseki Branches: F-12 F-13 InitialCC: (In reply to comment #11) > Thanks for the review! > > (In reply to comment #10) > > After reconsideration of this package, I agree with you that -libs and -qt-libs > > subpackages are not necessary, you can merge them back with main package and > > -qt package. > > Yes, I think it's probably better to reduce the number of tiny subpackages and > bundle the programs with their corresponding shlib (as in 2.3.1-1). > > Thanks again. From the manual of Zint, I realized that libzint and zint-qt are the main part of the Zint. zint command line utility and libQzint are not so important, they are pretty tiny. CVS done (by process-cvs-requests.py). zint-2.3.2-3.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/zint-2.3.2-3.fc12 zint-2.3.2-3.fc13 has been submitted as an update for Fedora 13. http://admin.fedoraproject.org/updates/zint-2.3.2-3.fc13 zint-2.3.2-3.fc13 has been pushed to the Fedora 13 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update zint'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/zint-2.3.2-3.fc13 zint-2.3.2-3.fc12 has been pushed to the Fedora 12 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update zint'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/zint-2.3.2-3.fc12 zint-2.3.2-3.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report. zint-2.3.2-3.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report. |