Bug 772217

Summary: Review Request: libyuv - YUV conversion and scaling functionality library
Product: [Fedora] Fedora Reporter: Peter Lemenkov <lemenkov>
Component: Package ReviewAssignee: Brendan Jones <brendan.jones.it>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: brendan.jones.it, notting, package-review
Target Milestone: ---Flags: brendan.jones.it: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libyuv-0-0.22.20121221svn522.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-01-23 21:59:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Peter Lemenkov 2012-01-06 14:00:31 UTC
Spec URL: http://peter.fedorapeople.org/WebRTC/libyuv.spec
SRPM URL: http://peter.fedorapeople.org/WebRTC/libyuv-0-0.1.20120105svn127.fc16.src.rpm
Description: libyuv is an open source project that includes YUV conversion and scaling functionality. Converts all webcam formats to YUV (I420). Convert YUV to formats for rendering/effects. Rotate by 90 degrees to adjust for mobile devices in portrait mode. Scale YUV to prepare content for compression, with point,  bilinear or box filter.

This is one of the requirements for WebRTC.

Koji scratchbuild for Rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3624661

Comment 1 Brendan Jones 2012-01-08 13:09:52 UTC
I will take this review

Comment 2 Brendan Jones 2012-01-08 13:37:33 UTC
Formal review still pending, but here's a few comments for your review:

- %defattr(-, root, root) no longer required rpmbuild >= 4.4 See http://fedoraproject.org/wiki/Packaging:Guidelines#File_Permissions

- BuildRoot tag and clean sections only required for EPEL 5 and under See http://fedoraproject.org/wiki/Packaging:Guidelines#BuildRoot_tag

- Mixed use of macros $RPM_BUILD_ROOT and %buildroot

- Also to to provide explicit requires on the devel package to the base package. See http://fedoraproject.org/wiki/Packaging:Guidelines#Requiring_Base_Package


rpmlint output mostly OK, just the W: spelling-error %description, W: unused-direct-shlib-dependency and W: summary-not-capitalized need reviewing

bsjones@f15laptop SPECS$rpmlint /home/bsjones/rpmbuild/RPMS/x86_64/libyuv-*
libyuv.x86_64: W: spelling-error %description -l en_US webcam -> web cam, web-cam, became
libyuv.x86_64: W: spelling-error %description -l en_US bilinear -> bi linear, bi-linear, linear
libyuv-devel.x86_64: W: summary-not-capitalized C development files for libyuv
libyuv-devel.x86_64: W: spelling-error %description -l en_US Asdditional -> Additional, Traditional, Conditional
libyuv-devel.x86_64: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 5 warnings.

bsjones@f15laptop SPECS$rpmlint libyuv
libyuv.x86_64: W: spelling-error %description -l en_US webcam -> web cam, web-cam, became
libyuv.x86_64: W: spelling-error %description -l en_US bilinear -> bi linear, bi-linear, linear
libyuv.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libyuv.so.0.0.0 linux-vdso.so.1
libyuv.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libyuv.so.0.0.0 /usr/lib64/libstdc++.so.6
1 packages and 0 specfiles checked; 0 errors, 4 warnings.
bsjones@f15laptop SPECS$rpmlint libyuv-devel
libyuv-devel.x86_64: W: summary-not-capitalized C development files for libyuv
libyuv-devel.x86_64: W: spelling-error %description -l en_US Asdditional -> Additional, Traditional, Conditional
libyuv-devel.x86_64: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 3 warnings.

Comment 3 Peter Lemenkov 2012-01-10 09:42:55 UTC
Brendan, thanks for starting reviewing this. Your notes clearly highlight the importance of review process - Although I had tried to do my best, I missed a lot of issues which you pointed in your comment.

I'll update srpm in a couple of hours.

Comment 4 Brendan Jones 2012-01-10 10:16:03 UTC
No problem. Just a note, ignore the linux-vdso.so.1 rpmlint warning. See bug 738082.

Comment 6 Brendan Jones 2012-01-12 05:34:24 UTC
This package is APPROVED

+ OK
- N/A
X Needs attention

Required
========

[+] named according to the Package Naming Guidelines 
[+] The spec file name must match the base package %{name}, in the format
%{name}.spec 
[+] Meet the Packaging Guidelines
unless building for F12 and below  or EPEL   
[+] Be licensed with a Fedora approved license and meet the Licensing
Guidelines 
[+] The License field in the package spec file must match the actual license 
[+] License file must be included in %doc
[+] The spec file must be written in American English
[+] The spec file for the package MUST be legible
[+] The sources used to build the package must match the upstream source
[+] Successfully compile and build into binary rpms on at least one primary
architecture
[+] Proper use of ExcludeArch 
[+] All build dependencies must be listed in BuildRequires
[+] The spec file MUST handle locales properly
[+] Shared library files (not just symlinks) in any of the dynamic linker's
default paths, must call ldconfig in %post and %postun
[+] Packages must NOT bundle copies of system libraries
[-] If the package is designed to be relocatable, the packager must state this
fact in the request for review, along with the rationalization for relocation
of that specific package
[+] A package must own all directories that it creates
directories under this
[+] A Fedora package must not list a file more than once in the spec file's
%files listings
[+] Permissions on files must be set properly
[+] Each package must consistently use macros
[+] The package must contain code, or permissable content
[-] Large documentation files must go in a -doc subpackage
[+] If a package includes something as %doc, it must not affect the runtime of
the application
[+] Header files must be in a -devel package
[-] Static libraries must be in a -static package
[+] library files that end in .so (without suffix) must go in a -devel package
[+] devel packages must require the base package using a fully versioned
dependency
[+] Packages must NOT contain any .la libtool archives
[-] GUI apps must include a %{name}.desktop file, properly installed with
desktop-file-install in the %install section 
[+] Packages must not own files or directories already owned by other packages
[+] All filenames in rpm packages must be valid UTF-8

Should Items
============
[+] the packager SHOULD query upstream for any missing license text files to
include it
[-] Non-English language support for description and summary sections in the
package spec if available
[+] The reviewer should test that the package builds in mock
[+] The package should compile and build into binary rpms on all supported
architectures
[+] The reviewer should test that the package functions as described
[+] If scriptlets are used, those scriptlets must be sane
[+] Usually, subpackages other than devel should require the base package using
a fully versioned dependency
[+] The placement of pkgconfig(.pc) should usually be placed in a -devel pkg
[-] If the package has file dependencies outside of /etc, /bin, /sbin,
/usr/bin, or /usr/sbin consider requiring the package which provides the file
instead of the file itself
[-] Should contain man pages for binaries/scripts

Comment 7 Peter Lemenkov 2012-01-12 06:28:09 UTC
Thanks!

New Package SCM Request
=======================
Package Name: libyuv
Short Description: YUV conversion and scaling functionality library
Owners: peter
Branches: el5 el6 f16
InitialCC:

Comment 8 Gwyn Ciesla 2012-01-12 11:18:29 UTC
Git done (by process-git-requests).

Comment 9 Fedora Update System 2012-01-12 13:19:33 UTC
libyuv-0-0.3.20120109svn128.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/libyuv-0-0.3.20120109svn128.el5

Comment 10 Fedora Update System 2012-01-12 13:19:43 UTC
libyuv-0-0.3.20120109svn128.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/libyuv-0-0.3.20120109svn128.el6

Comment 11 Fedora Update System 2012-01-12 13:19:51 UTC
libyuv-0-0.3.20120109svn128.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/libyuv-0-0.3.20120109svn128.fc16

Comment 12 Fedora Update System 2012-01-15 20:11:02 UTC
libyuv-0-0.3.20120109svn128.fc16 has been pushed to the Fedora 16 testing repository.

Comment 13 Fedora Update System 2012-01-23 21:59:20 UTC
libyuv-0-0.3.20120109svn128.fc16 has been pushed to the Fedora 16 stable repository.

Comment 14 Fedora Update System 2012-01-30 17:35:55 UTC
libyuv-0-0.3.20120109svn128.el5 has been pushed to the Fedora EPEL 5 stable repository.

Comment 15 Fedora Update System 2012-01-30 17:36:03 UTC
libyuv-0-0.3.20120109svn128.el6 has been pushed to the Fedora EPEL 6 stable repository.

Comment 16 Peter Lemenkov 2015-03-26 11:37:02 UTC
Package Change Request
======================
Package Name: libyuv
New Branches: epel7
Owners: peter
InitialCC:

Comment 17 Gwyn Ciesla 2015-03-26 14:28:45 UTC
Git done (by process-git-requests).

Comment 18 Fedora Update System 2015-03-26 14:47:13 UTC
libyuv-0-0.22.20121221svn522.el7 has been submitted as an update for Fedora EPEL 7.
https://admin.fedoraproject.org/updates/libyuv-0-0.22.20121221svn522.el7

Comment 19 Fedora Update System 2015-05-03 00:47:19 UTC
libyuv-0-0.22.20121221svn522.el7 has been pushed to the Fedora EPEL 7 stable repository.