Bug 917388

Summary: Review Request: zopfli - Zlib compatible better compressor
Product: [Fedora] Fedora Reporter: Rahul Sundaram <metherid>
Component: Package ReviewAssignee: Orion Poplawski <orion>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: huzaifas, jsmith.fedora, notting, orion, package-review
Target Milestone: ---Flags: orion: fedora-review+
dennis: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: zopfli-1.0.0-1.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-05-24 20:50:12 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 Rahul Sundaram 2013-03-03 20:30:35 UTC
Spec URL: http://sundaram.fedorapeople.org/packages/zopfli.spec
SRPM URL: http://sundaram.fedorapeople.org/packages/zopfli-0-0.20130303gitacc035.fc18.src.rpm
Description: 
Zopfli is a compresssion algorithm bit-stream compatible with compression 
used in gzip, Zip, PNG, HTTP requests, and others. Zopfli compresses more (~5%)
but is slower (~100x) and uses more CPU and hence best suited for applications 
where data is compressed once  and sent over a network many times, for example, 
static content for the web.

Fedora Account System Username:sundaram

Comment 1 Huzaifa S. Sidhpurwala 2013-03-05 06:04:36 UTC
It should usually be preferred to convert this into a library, rather than just shipping a binary which does the compression.

Comment 2 Rahul Sundaram 2013-03-05 06:48:44 UTC
That would be a suggestion for upstream really.

Comment 3 Huzaifa S. Sidhpurwala 2013-03-06 06:56:01 UTC
(In reply to comment #2)
> That would be a suggestion for upstream really.

Thats already done, they are willing convert the source into a library, i have a patch for that, waiting for acceptance

Comment 4 Jared Smith 2013-04-26 22:50:43 UTC
Do you think it's worth waiting on that for doing the package review, or would you like me to do the review now for the binary?

Comment 5 Jared Smith 2013-04-26 23:24:56 UTC
Here's the package review for the current version, while the library situation gets sorted out.  (Please note that I'm considering this an informal review for the time being, so I'm not setting the package review flag yet.)


Package Review
==============

Key:
[x] = Pass
[!] = Fail
[-] = Not applicable
[?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[x]: Macros in Summary, %description expandable at SRPM build time.
     Note: Macros in: zopfli (description)
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[-]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Package complies to the Packaging Guidelines
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "Apache (v2.0)". 1 files have unknown license. Detailed output of
     licensecheck in
     /home/jsmith/Projects/PackageReview/zopfli/917388-zopfli/licensecheck.txt
[x]: Package consistently uses macro is (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[-]: Large documentation must go in a -doc subpackage.
     Note: Documentation size is 20480 bytes in 2 files.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Fully versioned dependency in subpackages, if present.
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[x]: 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 is included in %doc.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define.

===== EXTRA items =====

Generic:
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
     Note: There is a typo for the word "compression" in the spec file
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: zopfli-0-0.20130303gitacc035.fc18.x86_64.rpm
zopfli.x86_64: W: spelling-error Summary(en_US) Zlib -> Zib, Lib, Glib
zopfli.x86_64: W: spelling-error %description -l en_US compresssion -> compression, comprehension, compressible
zopfli.x86_64: W: spelling-error %description -l en_US gzip -> zip, grip, g zip
zopfli.x86_64: W: no-manual-page-for-binary zopfli
1 packages and 0 specfiles checked; 0 errors, 4 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint zopfli
zopfli.x86_64: W: spelling-error Summary(en_US) Zlib -> Zib, Lib, Glib
zopfli.x86_64: W: spelling-error %description -l en_US compresssion -> compression, comprehension, compressible
zopfli.x86_64: W: spelling-error %description -l en_US gzip -> zip, grip, g zip
zopfli.x86_64: W: no-manual-page-for-binary zopfli
1 packages and 0 specfiles checked; 0 errors, 4 warnings.
# echo 'rpmlint-done:'



Requires
--------
zopfli (rpmlib, GLIBC filtered):
    libc.so.6()(64bit)
    libm.so.6()(64bit)
    rtld(GNU_HASH)



Provides
--------
zopfli:
    zopfli
    zopfli(x86-64)



Generated by fedora-review 0.4.0 (660ce56) last change: 2013-01-29
Buildroot used: fedora-18-x86_64
Command line :/usr/bin/fedora-review -b 917388

Comment 6 Orion Poplawski 2013-05-07 20:57:52 UTC
I'm going to go ahead and approve this despite the lack of feedback from Rahul.  While having a library version and perhaps getting it into zlib would be good, it has more of an impact on zlib and its consumers.  I don't see any reason not to approve this as it as long a Rahul understands that he may need to do a second package review if the library version implies a rename -> libzopfli (although I suspect just adding sub-packages would be sufficient since we'd probably want to keep a zopfli binary).

Comment 7 Rahul Sundaram 2013-05-14 23:34:11 UTC
I don't think there is any need to rename and converting into a library is tracked upstream and I have no sway in that process one way or the other.  Thanks for approving

New Package SCM Request
=======================
Package Name: zopfli
Short Description: Zlib compatible better compressor
Owners: sundaram
Branches: f19
InitialCC:

Comment 8 Dennis Gilmore 2013-05-15 11:25:45 UTC
Git done (by process-git-requests).

Comment 9 Huzaifa S. Sidhpurwala 2013-05-15 11:31:14 UTC
(In reply to comment #7)
> I don't think there is any need to rename and converting into a library is
> tracked upstream and I have no sway in that process one way or the other. 
> Thanks for approving
> 
> New Package SCM Request
> =======================
> Package Name: zopfli
> Short Description: Zlib compatible better compressor
> Owners: sundaram
> Branches: f19
> InitialCC:

Upstream already converted it into a library and the binary zopfli uses it.

Comment 10 Rahul Sundaram 2013-05-15 15:19:57 UTC
yep, noticed that after the comment. I will pull in the latest version before building.

Comment 11 Fedora Update System 2013-05-16 07:28:51 UTC
zopfli-1.0.0-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/zopfli-1.0.0-1.fc19

Comment 12 Fedora Update System 2013-05-16 17:21:19 UTC
Package zopfli-1.0.0-1.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing zopfli-1.0.0-1.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-8327/zopfli-1.0.0-1.fc19
then log in and leave karma (feedback).

Comment 13 Fedora Update System 2013-05-24 20:50:12 UTC
zopfli-1.0.0-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.