Bug 652616
| Summary: | Review Request: erlang-ebloom - A NIF wrapper around a basic bloom filter | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Peter Lemenkov <lemenkov> |
| Component: | Package Review | Assignee: | Martin Gieseking <martin.gieseking> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | fedora-package-review, martin.gieseking, notting |
| Target Milestone: | --- | Flags: | martin.gieseking:
fedora-review+
j: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | erlang-ebloom-1.0.2-2.fc14 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-01-12 06:19:03 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: | |||
| Bug Depends On: | 639263 | ||
| Bug Blocks: | 652623, 652629 | ||
|
Description
Peter Lemenkov
2010-11-12 11:01:12 UTC
koji scratchbuild for Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=2621314 rpmlint: sulaco ~/rpmbuild/SPECS: rpmlint ../RPMS/ppc/erlang-ebloom-* erlang-ebloom.ppc: E: explicit-lib-dependency erlang-stdlib erlang-ebloom.ppc: W: no-documentation 2 packages and 0 specfiles checked; 1 errors, 1 warnings. sulaco ~/rpmbuild/SPECS: I take this one. If you like, I'd appreciate a review of the tiny xqc package (bug #655866) :) Some initial comments: - The binary package provides the erlang extension library ebloom_nifs.so. Is this library supposed to be accessible by other external applications too? If not, I suggest to filter it from the provides list as described in http://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering - you can simplify the %files section by replacing all file/dir lines with the single line %{_libdir}/erlang/lib/%{realname}-%{version}/ But that's optional and a matter of personal preference (In reply to comment #2) > I take this one. If you like, I'd appreciate a review of the tiny xqc package > (bug #655866) :) > > Some initial comments: > > - The binary package provides the erlang extension library ebloom_nifs.so. > Is this library supposed to be accessible by other external applications too? > If not, I suggest to filter it from the provides list as described in > http://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering Yes, indeed - this should be filtered out. http://peter.fedorapeople.org/erlang-ebloom.spec http://peter.fedorapeople.org/erlang-ebloom-1.0.2-2.fc12.src.rpm I added only filtering of internal dynamic library - no other changes. > - you can simplify the %files section by replacing all file/dir lines with the > single line > %{_libdir}/erlang/lib/%{realname}-%{version}/ > But that's optional and a matter of personal preference Actually, I personally prefer to list them in this way :). I plan to write a checking tool which would analyze %files sections for my internal needs, so I would need full enumeration of packaged files and directories. (In reply to comment #3) > Actually, I personally prefer to list them in this way :). That's OK. The package looks fine to me now. Just two minor notes (no blockers though): - You can drop Requires: erlang-stdlib as it's a dependency of erlang-erts. This would also remove the rpmlint error below. - it would be nice if upstream could add the texts of the involved licenses (CPL, ASL 2.0) $ rpmlint /var/lib/mock/fedora-14-i386/result/*.rpm erlang-ebloom.i686: E: explicit-lib-dependency erlang-stdlib erlang-ebloom.i686: W: no-documentation erlang-ebloom.src: W: invalid-url Source0: basho-ebloom-ebloom-1.0.2-0-g0d070d8.tar.gz 3 packages and 0 specfiles checked; 1 errors, 2 warnings. - the error "explicit-lib-dependency" is false positive but can be avoided by dropping Requires: erlang-stdlib - the missing doc warning is expected and no blocker --------------------------------- key: [+] OK [.] OK, not applicable [X] needs work --------------------------------- [+] 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. [+] MUST: The package must be licensed with a Fedora approved license. - C sources of filter algorithm: CPL - NIF wrapper code: ASL 2.0 [+] MUST: The License field in the package spec file must match the actual license. [.] MUST: The file containing the text of the license(s) for the package must be included in %doc. - no license files present [+] 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. $ md5sum basho-ebloom-ebloom-1.0.2-0-g0d070d8.tar.gz* cf6f766679ce10ad9d42e78090979f27 basho-ebloom-ebloom-1.0.2-0-g0d070d8.tar.gz cf6f766679ce10ad9d42e78090979f27 basho-ebloom-ebloom-1.0.2-0-g0d070d8.tar.gz.1 [+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. koji scratch build (f14): http://koji.fedoraproject.org/koji/taskinfo?taskID=2714702 [.] MUST: If the package does not successfully compile, build or work ... [+] MUST: All build dependencies must be listed in BuildRequires. [.] MUST: The spec file MUST handle locales properly. [.] MUST: Packages storing shared library files (not just symlinks) must call ldconfig in %post and %postun. [+] MUST: Packages must NOT bundle copies of system libraries. [.] MUST: If the package is designed to be relocatable, ... [+] MUST: A package must own all directories that it creates. [+] MUST: A Fedora package must not list a file more than once in %files. [+] MUST: Permissions on files must be set properly. [+] MUST: Each package must consistently use macros. [+] MUST: The package must contain code, or permissable content. [.] MUST: Large documentation files must go in a -doc subpackage. [.] MUST: Files in %doc must not affect the runtime of the application. [.] MUST: Header files must be in a -devel package. [.] MUST: Static libraries must be in a -static package. [.] MUST: If a package contains library files with a suffix ... [.] MUST: devel packages must require the base package [+] MUST: Packages must NOT contain any .la libtool archives. [.] MUST: Packages containing GUI applications must include a %{name}.desktop file. [+] MUST: Packages must not own files or directories already owned by other packages. [+] MUST: All filenames in rpm packages must be valid UTF-8. [X] SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [+] SHOULD: The reviewer should test that the package builds in mock. [+] SHOULD: The package should compile and build into binary rpms on all supported architectures. [+] SHOULD: The reviewer should test that the package functions as described. - seems to work properly [.] SHOULD: If scriptlets are used, those scriptlets must be sane. [.] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency. [.] SHOULD: pkgconfig(.pc) should be placed in a -devel pkg. [+] SHOULD: 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: your package should contain man pages for binaries/scripts. ---------------- Package APPROVED ---------------- Thanks! I'll contact upstream regarding adding explicit licensing information. As for erlang-stdlib - all these dependencies are automatically added, and I'll try to improve the scripts used for dependency resolution in the future. New Package SCM Request ======================= Package Name: erlang-ebloom Short Description: A NIF wrapper around a basic bloom filter Owners: peter Branches: f14 el6 InitialCC: Git done (by process-git-requests). erlang-ebloom-1.0.2-2.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/erlang-ebloom-1.0.2-2.fc14 erlang-ebloom-1.0.2-2.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report. |