Bug 906482 - Review Request: erlang-mimetypes - Erlang MIME types library
Summary: Review Request: erlang-mimetypes - Erlang MIME types library
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michel Lind
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 918587
TreeView+ depends on / blocked
 
Reported: 2013-01-31 17:19 UTC by Peter Lemenkov
Modified: 2013-03-24 17:59 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2013-03-08 18:15:11 UTC
Type: ---
Embargoed:
michel: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Peter Lemenkov 2013-01-31 17:19:03 UTC
Spec URL: http://peter.fedorapeople.org/erlyvideo/erlang-mimetypes.spec
SRPM URL: http://peter.fedorapeople.org/erlyvideo/erlang-mimetypes-1.0-1.fc19.src.rpm
Description: Erlang MIME types library
Fedora Account System Username: peter

THis is one of the requirements for Erlyvideo.

Koji scratchbuild for Rawhide:

* http://koji.fedoraproject.org/koji/taskinfo?taskID=4917988

Unit-tests are unavailable for now - sorry.

Comment 1 Jos de Kloe 2013-03-07 14:04:09 UTC
Hi,

the main issue here is with the license I think.
On the upstream github pages there is no clear info what license applies (at least I could not find it).
There is an open pull request to add the BSD license, but this has not been merged into the main branch, so it is not obvious to me that this applies. Could you verify with upstream what the license status is?

A few other small issues here:
-the rebar executable is part of the source package. To make sure the proper fedora copy in /usr/bin/rebar from the erlang-rebar package is used, I think it is best to delete the rebar copy delivered in this package before starting the build.
-the install command probably should get the '-p' option to ensure modification times of the files are preserved.
(see https://fedoraproject.org/wiki/Packaging:Guidelines
in the Timestamps section)

Comment 2 Peter Lemenkov 2013-03-07 14:35:21 UTC
Hello!

(In reply to comment #1)
> Hi,
> 
> the main issue here is with the license I think.
> On the upstream github pages there is no clear info what license applies (at
> least I could not find it).
> There is an open pull request to add the BSD license, but this has not been
> merged into the main branch, so it is not obvious to me that this applies.
> Could you verify with upstream what the license status is?

Yes, I'm working on it. I've just contacted upstream developer directly - let's wait for his answer.

> A few other small issues here:
> -the rebar executable is part of the source package. To make sure the proper
> fedora copy in /usr/bin/rebar from the erlang-rebar package is used, I think
> it is best to delete the rebar copy delivered in this package before
> starting the build.

Good point. I'll add this with the licensing.

> -the install command probably should get the '-p' option to ensure
> modification times of the files are preserved.
> (see https://fedoraproject.org/wiki/Packaging:Guidelines
> in the Timestamps section)

Likewise - that's for the pointing me out on this. I'll add this as soon as the licensing issue will be resolved.

Comment 3 Peter Lemenkov 2013-03-07 17:27:02 UTC
Licensing status clarified:

* https://github.com/spawngrid/mimetypes/issues/11
* https://github.com/spawngrid/mimetypes/pull/12

Also ensured that we're using system-wide rebar, and preserved timestamps while installing. New package:

* http://peter.fedorapeople.org/erlyvideo/erlang-mimetypes.spec
* http://peter.fedorapeople.org/erlyvideo/erlang-mimetypes-1.0-2.fc19.src.rpm

Comment 4 Michel Lind 2013-03-08 11:04:35 UTC
Taking this review

Comment 5 Michel Lind 2013-03-08 11:35:24 UTC
Package looks good; remember to include the license text when the next stable version comes out, and turn on the unit tests once PropEr is packaged

Package is APPROVED


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

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


Issues:
=======
- License field in the package spec file matches the actual license.
  Note: Checking patched sources after %prep for licenses. No licenses found.
  Please check the source files for licenses manually.
  See: http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#ValidLicenseShortNames


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

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.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: 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
[-]: 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.
     
     (please add license text with next upstream release)

[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.
[-]: Useful -debuginfo package or justification otherwise.
[-]: Large documentation must go in a -doc subpackage.
     Note: Documentation size is 40960 bytes in 15 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]: Macros in Summary, %description expandable at SRPM build time.
[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]: 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:
[x]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
     Already done by third party
[x]: Final provides and requires are sane (see attachments).
[?]: 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.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[!]: %check is present and all tests pass.

     Should be turned on once PropEr is packaged

[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).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: erlang-mimetypes-1.0-2.fc18.x86_64.rpm
erlang-mimetypes.x86_64: E: no-binary
erlang-mimetypes.x86_64: W: only-non-binary-in-usr-lib
1 packages and 0 specfiles checked; 1 errors, 1 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint erlang-mimetypes
erlang-mimetypes.x86_64: E: no-binary
erlang-mimetypes.x86_64: W: only-non-binary-in-usr-lib
1 packages and 0 specfiles checked; 1 errors, 1 warnings.
# echo 'rpmlint-done:'



Requires
--------
erlang-mimetypes (rpmlib, GLIBC filtered):
    erlang-compiler(x86-64)
    erlang-erts(x86-64)
    erlang-kernel(x86-64)
    erlang-stdlib(x86-64)
    erlang-syntax_tools(x86-64)



Provides
--------
erlang-mimetypes:
    erlang-mimetypes
    erlang-mimetypes(x86-64)



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

Comment 6 Peter Lemenkov 2013-03-08 16:16:02 UTC
Thanks!

New Package SCM Request
=======================
Package Name: erlang-mimetypes
Short Description: Erlang MIME types library
Owners: peter
Branches: f18 el6
InitialCC:

Comment 7 Gwyn Ciesla 2013-03-08 16:57:51 UTC
Git done (by process-git-requests).

Comment 8 Fedora Update System 2013-03-08 18:13:44 UTC
erlang-mimetypes-1.0-2.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/erlang-mimetypes-1.0-2.el6

Comment 9 Fedora Update System 2013-03-08 18:13:54 UTC
erlang-mimetypes-1.0-2.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/erlang-mimetypes-1.0-2.fc18

Comment 10 Fedora Update System 2013-03-18 02:32:18 UTC
erlang-mimetypes-1.0-2.fc18 has been pushed to the Fedora 18 stable repository.

Comment 11 Fedora Update System 2013-03-24 17:59:09 UTC
erlang-mimetypes-1.0-2.el6 has been pushed to the Fedora EPEL 6 stable repository.


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