https://bugzilla.redhat.com/show_bug.cgi?id=847504
Bug ID: 847504 QA Contact: extras-qa@fedoraproject.org Severity: medium Version: rawhide Priority: medium CC: notting@redhat.com, package-review@lists.fedoraproject.org Assignee: nobody@fedoraproject.org Summary: Review Request: rubygem-scoped_search - Easily search you ActiveRecord models Regression: --- Story Points: --- Classification: Fedora OS: Linux Reporter: msuchy@redhat.com Type: --- Documentation: --- Hardware: All Mount Type: --- Status: NEW Component: Package Review Product: Fedora
Spec URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search.... SRPM URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search-... Description: Scoped search makes it easy to search your ActiveRecord-based models. It will create a named scope :search_for that can be called with a query string. It will build an SQL query using the provided query string and a definition that specifies on what fields to search. Because the functionality is built on named_scope, the result of the search_for call can be used like any other named_scope, so it can be chained with another scope or combined with will_paginate. Because it uses standard SQL, it does not require any setup, indexers or daemons. This makes scoped_search suitable to quickly add basic search functionality to your application with little hassle. On the other hand, it may not be the best choice if it is going to be used on very large datasets or by a large user base.
Fedora Account System Username: msuchy
$ rpmlint /tmp/tito-build/rubygem-scoped_search-2.3.7-6.fc17.src.rpm /tmp/tito-build/noarch/rubygem-scoped_search-2.3.7-6.fc17.noarch.rpm /tmp/tito-build/noarch/rubygem-scoped_search-doc-2.3.7-6.fc17.noarch.rpm rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.ri %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.ri %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.ri %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/Object/register_complete_for%21-i.ri %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.ri %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/share/gems/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.ri %3f 3 packages and 0 specfiles checked; 0 errors, 14 warnings.
Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4380408
https://bugzilla.redhat.com/show_bug.cgi?id=847504
Brenton Leanhardt bleanhar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bleanhar@redhat.com
--- Comment #1 from Brenton Leanhardt bleanhar@redhat.com --- Hi Miroslav,
I would like to perform an informal review as part of my sponsorship process.
The main issue fedora-review found was:
[!]: EXTRA Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff).
It just looks like the specfile in the SRPM is missing your latest chmod fix. On a related not it would be great to create a bug upstream about the executable bit being set on scoped_search.rb and add a link in this specfile. That way it can be removed when it's finally fixed.
[!]: MUST Gem package must exclude cached Gem. See: http://fedoraproject.org/wiki/Packaging:Ruby
Other suggestions are:
[!]: SHOULD Test suite of the library should be run.
For what it's worth I'm running fedora-review-0.2.2-1 from the fedora testing repo (there was a bugfix I needed). Here's the full output:
Package Review ==============
Key: - = N/A x = Pass ! = Fail ? = Not evaluated
==== Generic ==== [x]: EXTRA Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [!]: EXTRA Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff). [ ]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [ ]: MUST %build honors applicable compiler flags or justifies otherwise. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [ ]: MUST Package contains no bundled libraries. [ ]: MUST Changelog in prescribed format. [ ]: MUST Sources contain only permissible code or content. [x]: MUST Each %files section contains %defattr if rpm < 4.4 Note: Note: defattr macros not found. They would be needed for EPEL5 [ ]: MUST Macros in Summary, %description expandable at SRPM build time. [ ]: MUST Package contains desktop file if it is a GUI application. [ ]: MUST Development files must be in a -devel package [ ]: MUST Package requires other packages for directories it uses. [ ]: MUST Package uses nothing in %doc for runtime. [ ]: MUST Package is not known to require ExcludeArch. [x]: MUST Permissions on files are set properly. [x]: MUST Package does not contain duplicates in %files. [x]: MUST Fully versioned dependency in subpackages, if present. [ ]: MUST Package complies to the Packaging Guidelines [x]: MUST Spec file lacks Packager, Vendor, PreReq tags. [x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf would be needed if support for EPEL5 is required [ ]: MUST Large documentation files are in a -doc subpackage, if required. [x]: 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 is included in %doc. [!]: MUST 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. [ ]: MUST License file installed when any subpackage combination is installed. [ ]: MUST Package consistently uses macro is (instead of hard-coded directory names). [x]: MUST Package is named using only allowed ascii characters. [ ]: MUST Package is named according to the Package Naming Guidelines. [ ]: MUST Package does not generate any conflict. Note: Package contains no Conflicts: tag(s) [ ]: MUST Package obeys FHS, except libexecdir and /usr/target. [ ]: MUST If the package is a rename of another package, proper Obsoletes and Provides are present. [ ]: MUST Package must own all directories that it creates. [ ]: MUST Package does not own files or directories owned by other packages. [x]: MUST Package installs properly. [ ]: MUST Package is not relocatable. [ ]: MUST Requires correct, justified where necessary. [x]: MUST Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: MUST Sources used to build the package match the upstream source, as provided in the spec URL. [ ]: MUST Spec file is legible and written in American English. [x]: MUST Spec file name must match the spec package %{name}, in the format %{name}.spec. [ ]: MUST Package contains systemd file(s) if in need. [x]: MUST File names are valid UTF-8. [x]: SHOULD Reviewer should test that the package builds in mock. [x]: SHOULD Buildroot is not present Note: Unless packager wants to package for EPEL5 this is fine [x]: SHOULD Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean would be needed if support for EPEL5 is required [ ]: 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 Dist tag is present. [x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [ ]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [ ]: SHOULD Package functions as described. [ ]: SHOULD Latest version is packaged. [ ]: SHOULD Package does not include license text files separate from upstream. [x]: SHOULD SourceX tarball generation or download is documented. [!]: SHOULD SourceX / PatchY prefixed with %{name}. Note: Source0 (scoped_search-2.3.7.gem) [x]: SHOULD SourceX is a working URL. [ ]: SHOULD Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [ ]: SHOULD Package should compile and build into binary rpms on all supported architectures. [ ]: SHOULD %check is present and all tests pass. [ ]: SHOULD Packages should try to preserve timestamps of original installed files. [x]: SHOULD Spec use %global instead of %define.
==== Language ==== [x]: MUST Gem package must not define a non-gem subpackage [!]: MUST Gem package must exclude cached Gem. [ ]: MUST Platform dependent files must all go under %{gem_extdir}, platform independent under %{gem_dir}. [x]: MUST Gem package is named rubygem-%{gem_name} [x]: MUST Package contains BuildRequires: rubygems-devel. [x]: MUST Gem package must define %{gem_name} macro. [x]: MUST Pure Ruby package must be built as noarch [x]: MUST Package contains Requires: ruby(abi). [!]: SHOULD Specfile should utilize macros from rubygem-devel package. Note: The specfile doesn't use these macros: %exclude %{gem_cache}, %{gem_libdir} [x]: SHOULD Test suite should not be run by rake. [!]: SHOULD Test suite of the library should be run.
Issues: [!]: MUST 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#ValidLicenseShor... [!]: MUST Gem package must exclude cached Gem. See: http://fedoraproject.org/wiki/Packaging:Ruby
Rpmlint ------- Checking: rubygem-scoped_search-2.3.7-5.fc16.noarch.rpm rubygem-scoped_search-2.3.7-5.fc16.src.rpm rubygem-scoped_search-doc-2.3.7-5.fc16.noarch.rpm rubygem-scoped_search.noarch: W: spelling-error %description -l en_US datasets -> data sets, data-sets, databases rubygem-scoped_search.noarch: E: script-without-shebang /usr/lib/ruby/gems/1.8/gems/scoped_search-2.3.7/lib/scoped_search.rb rubygem-scoped_search.src: W: spelling-error %description -l en_US datasets -> data sets, data-sets, databases rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.yaml %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.yaml %3f 3 packages and 0 specfiles checked; 1 errors, 15 warnings.
Rpmlint (installed packages) ---------------------------- # rpmlint rubygem-scoped_search-doc rubygem-scoped_search-doc.noarch: I: enchant-dictionary-not-found en_US rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.yaml %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.yaml %3f 1 packages and 0 specfiles checked; 0 errors, 13 warnings. # echo 'rpmlint-done:'
Diff spec file in url and in SRPM --------------------------------- --- /home/rpmbuild/rpmbuild/SPECS/rubygem-scoped_search.spec 2012-08-12 07:45:51.000000000 -0400 +++ /home/rpmbuild/rpmbuild/SPECS/rubygem-scoped_search/srpm-unpacked/rubygem-scoped_search.spec 2012-08-14 09:40:13.589053075 -0400 @@ -12,5 +12,5 @@
Version: 2.3.7 -Release: 6%{dist} +Release: 5%{dist} Group: Development/Languages License: MIT @@ -46,5 +46,5 @@ suitable to quickly add basic search functionality to your application with little hassle. On the other hand, -it may not be the best choice if it is going to be used on very large data sets +it may not be the best choice if it is going to be used on very large datasets or by a large user base.
@@ -81,5 +81,4 @@ cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/ mv %{buildroot}%{gem_instdir}/{LICENSE,README.rdoc} ./ -chmod a-x %{buildroot}%{gem_instdir}/lib/scoped_search.rb
%files @@ -101,8 +100,4 @@
%changelog -* Sun Aug 12 2012 Miroslav Suchý msuchy@redhat.com 2.3.7-6 -- fix spelling error (msuchy@redhat.com) -- module scoped_search.rb should not be executable (msuchy@redhat.com) - * Sun Aug 12 2012 Miroslav Suchý msuchy@redhat.com 2.3.7-5 - buildroot is not needed (msuchy@redhat.com) Requires -------- rubygem-scoped_search-2.3.7-5.fc16.noarch.rpm (rpmlib, GLIBC filtered):
ruby(abi) = 1.8 rubygem-activerecord >= 2.1.0 rubygems
rubygem-scoped_search-doc-2.3.7-5.fc16.noarch.rpm (rpmlib, GLIBC filtered):
rubygem-scoped_search = 2.3.7-5.fc16
Provides -------- rubygem-scoped_search-2.3.7-5.fc16.noarch.rpm:
rubygem(scoped_search) = 2.3.7 rubygem-scoped_search = 2.3.7-5.fc16
rubygem-scoped_search-doc-2.3.7-5.fc16.noarch.rpm:
rubygem-scoped_search-doc = 2.3.7-5.fc16
MD5-sum check ------------- https://rubygems.org/downloads/scoped_search-2.3.7.gem : CHECKSUM(SHA256) this package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4 CHECKSUM(SHA256) upstream package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4
Generated by fedora-review 0.2.2 (9f8c0e5) last change: 2012-08-09 Command line :/usr/bin/fedora-review -n rubygem-scoped_search External plugins:
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #2 from Brenton Leanhardt bleanhar@redhat.com --- Also, it's not a blocker but if you could format the %description properly it would make it a little easier to read.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #3 from Brenton Leanhardt bleanhar@redhat.com --- Also, it's technically more correct to use the dist tag like this:
Release: 6%{?dist}
See https://fedoraproject.org/wiki/Packaging/DistTag for more details. That will also make the fedora-review check pass.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #4 from Miroslav Suchý msuchy@redhat.com --- Spec URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search.... SRPM URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search-...
The problems with diff was caused by me. I updated to -6, but forgot to updte this BZ. So while spec was from -6, the src.rpm was still -5. Mea culpa.
Thanks for noticing that issue with dist tag, I did not catch it.
I rewraped that %description.
And I removed that gemcache. I disagree with that. But guidelines really say MUST, so I will start discussion on fedora-devel about. Removed for now.
I do not run test suite, because I was unable to run it on Fedora. The gem itself is working (we use it every day), but the tests are borked. I may address it later, but for now I'm putting it on back burner.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #5 from Brenton Leanhardt bleanhar@redhat.com --- The specfile looks great. I understand the issue with the tests and I don't consider it a blocker. It would be nice to add a link to the chmod line though. That really helps people in the future know when that line is no longer needed and simplifies maintenance in the future. For my packages I had similar issues and I just linked to a github pull request.
The fedora-review output looks pretty flawless so hopefully when you can find someone in the packaging group this will move along quickly.
Package Review ==============
Key: - = N/A x = Pass ! = Fail ? = Not evaluated
==== Generic ==== [x]: EXTRA Rpmlint is run on all installed packages. Note: No rpmlint messages. [x]: EXTRA Spec file according to URL is the same as in SRPM. [ ]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [ ]: MUST %build honors applicable compiler flags or justifies otherwise. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [ ]: MUST Package contains no bundled libraries. [ ]: MUST Changelog in prescribed format. [ ]: MUST Sources contain only permissible code or content. [x]: MUST Each %files section contains %defattr if rpm < 4.4 Note: Note: defattr macros not found. They would be needed for EPEL5 [ ]: MUST Macros in Summary, %description expandable at SRPM build time. [ ]: MUST Package contains desktop file if it is a GUI application. [ ]: MUST Development files must be in a -devel package [ ]: MUST Package requires other packages for directories it uses. [ ]: MUST Package uses nothing in %doc for runtime. [ ]: MUST Package is not known to require ExcludeArch. [x]: MUST Permissions on files are set properly. [x]: MUST Package does not contain duplicates in %files. [x]: MUST Fully versioned dependency in subpackages, if present. [ ]: MUST Package complies to the Packaging Guidelines [x]: MUST Spec file lacks Packager, Vendor, PreReq tags. [x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf would be needed if support for EPEL5 is required [ ]: MUST Large documentation files are in a -doc subpackage, if required. [x]: 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 is included in %doc. [!]: MUST 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. [ ]: MUST License file installed when any subpackage combination is installed. [ ]: MUST Package consistently uses macro is (instead of hard-coded directory names). [x]: MUST Package is named using only allowed ascii characters. [ ]: MUST Package is named according to the Package Naming Guidelines. [ ]: MUST Package does not generate any conflict. Note: Package contains no Conflicts: tag(s) [ ]: MUST Package obeys FHS, except libexecdir and /usr/target. [ ]: MUST If the package is a rename of another package, proper Obsoletes and Provides are present. [ ]: MUST Package must own all directories that it creates. [ ]: MUST Package does not own files or directories owned by other packages. [x]: MUST Package installs properly. [ ]: MUST Package is not relocatable. [ ]: MUST Requires correct, justified where necessary. [x]: MUST Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: MUST Sources used to build the package match the upstream source, as provided in the spec URL. [ ]: MUST Spec file is legible and written in American English. [x]: MUST Spec file name must match the spec package %{name}, in the format %{name}.spec. [ ]: MUST Package contains systemd file(s) if in need. [x]: MUST File names are valid UTF-8. [x]: SHOULD Reviewer should test that the package builds in mock. [x]: SHOULD Buildroot is not present Note: Unless packager wants to package for EPEL5 this is fine [x]: SHOULD Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean would be needed if support for EPEL5 is required [ ]: 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. [x]: SHOULD Dist tag is present. [x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [ ]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [ ]: SHOULD Package functions as described. [ ]: SHOULD Latest version is packaged. [ ]: SHOULD Package does not include license text files separate from upstream. [x]: SHOULD SourceX tarball generation or download is documented. [!]: SHOULD SourceX / PatchY prefixed with %{name}. Note: Source0 (scoped_search-2.3.7.gem) [x]: SHOULD SourceX is a working URL. [ ]: SHOULD Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [ ]: SHOULD Package should compile and build into binary rpms on all supported architectures. [ ]: SHOULD %check is present and all tests pass. [ ]: SHOULD Packages should try to preserve timestamps of original installed files. [x]: SHOULD Spec use %global instead of %define.
==== Language ==== [x]: MUST Gem package must not define a non-gem subpackage [x]: MUST Gem package must exclude cached Gem. [ ]: MUST Platform dependent files must all go under %{gem_extdir}, platform independent under %{gem_dir}. [x]: MUST Gem package is named rubygem-%{gem_name} [x]: MUST Package contains BuildRequires: rubygems-devel. [x]: MUST Gem package must define %{gem_name} macro. [x]: MUST Pure Ruby package must be built as noarch [x]: MUST Package contains Requires: ruby(abi). [!]: SHOULD Specfile should utilize macros from rubygem-devel package. Note: The specfile doesn't use these macros: %{gem_libdir}, %exclude %{gem_cache} [x]: SHOULD Test suite should not be run by rake. [!]: SHOULD Test suite of the library should be run.
Issues: [!]: MUST 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#ValidLicenseShor...
Rpmlint ------- Checking: rubygem-scoped_search-doc-2.3.7-7.fc16.noarch.rpm rubygem-scoped_search-2.3.7-7.fc16.noarch.rpm rubygem-scoped_search-2.3.7-7.fc16.src.rpm rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.yaml %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.yaml %3f 3 packages and 0 specfiles checked; 0 errors, 13 warnings.
Rpmlint (installed packages) ---------------------------- # rpmlint rubygem-scoped_search rubygem-scoped_search.noarch: I: enchant-dictionary-not-found en_US 1 packages and 0 specfiles checked; 0 errors, 0 warnings. # echo 'rpmlint-done:'
Requires -------- rubygem-scoped_search-doc-2.3.7-7.fc16.noarch.rpm (rpmlib, GLIBC filtered):
rubygem-scoped_search = 2.3.7-7.fc16
rubygem-scoped_search-2.3.7-7.fc16.noarch.rpm (rpmlib, GLIBC filtered):
ruby(abi) = 1.8 rubygem-activerecord >= 2.1.0 rubygems
Provides -------- rubygem-scoped_search-doc-2.3.7-7.fc16.noarch.rpm:
rubygem-scoped_search-doc = 2.3.7-7.fc16
rubygem-scoped_search-2.3.7-7.fc16.noarch.rpm:
rubygem(scoped_search) = 2.3.7 rubygem-scoped_search = 2.3.7-7.fc16
MD5-sum check ------------- https://rubygems.org/downloads/scoped_search-2.3.7.gem : CHECKSUM(SHA256) this package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4 CHECKSUM(SHA256) upstream package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4
Generated by fedora-review 0.2.2 (9f8c0e5) last change: 2012-08-09 Command line :/usr/bin/fedora-review -n rubygem-scoped_search External plugins:
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #6 from Brenton Leanhardt bleanhar@redhat.com --- I actually just noticed a typo. "Easily search you ActiveRecord models" should be "Easily search your ActiveRecord models". It needs to be fixed in the spec too.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #7 from Miroslav Suchý msuchy@redhat.com --- I fixed that typo.
And I add comment pointing to github issue.
Spec URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search.... SRPM URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search-...
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #8 from Brenton Leanhardt bleanhar@redhat.com --- Looks great. Thanks for the prompt fixes!
I manually verified the License is indeed correct. Here's the fedora-review output:
==== Generic ==== [x]: EXTRA Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: EXTRA Spec file according to URL is the same as in SRPM. [ ]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [ ]: MUST %build honors applicable compiler flags or justifies otherwise. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [ ]: MUST Package contains no bundled libraries. [ ]: MUST Changelog in prescribed format. [ ]: MUST Sources contain only permissible code or content. [x]: MUST Each %files section contains %defattr if rpm < 4.4 Note: Note: defattr macros not found. They would be needed for EPEL5 [ ]: MUST Macros in Summary, %description expandable at SRPM build time. [ ]: MUST Package contains desktop file if it is a GUI application. [ ]: MUST Development files must be in a -devel package [ ]: MUST Package requires other packages for directories it uses. [ ]: MUST Package uses nothing in %doc for runtime. [ ]: MUST Package is not known to require ExcludeArch. [x]: MUST Permissions on files are set properly. [x]: MUST Package does not contain duplicates in %files. [x]: MUST Fully versioned dependency in subpackages, if present. [ ]: MUST Package complies to the Packaging Guidelines [x]: MUST Spec file lacks Packager, Vendor, PreReq tags. [x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf would be needed if support for EPEL5 is required [ ]: MUST Large documentation files are in a -doc subpackage, if required. [x]: 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 is included in %doc. [!]: MUST 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. [ ]: MUST License file installed when any subpackage combination is installed. [ ]: MUST Package consistently uses macro is (instead of hard-coded directory names). [x]: MUST Package is named using only allowed ascii characters. [ ]: MUST Package is named according to the Package Naming Guidelines. [ ]: MUST Package does not generate any conflict. Note: Package contains no Conflicts: tag(s) [ ]: MUST Package obeys FHS, except libexecdir and /usr/target. [ ]: MUST If the package is a rename of another package, proper Obsoletes and Provides are present. [ ]: MUST Package must own all directories that it creates. [ ]: MUST Package does not own files or directories owned by other packages. [x]: MUST Package installs properly. [ ]: MUST Package is not relocatable. [ ]: MUST Requires correct, justified where necessary. [x]: MUST Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: MUST Sources used to build the package match the upstream source, as provided in the spec URL. [ ]: MUST Spec file is legible and written in American English. [x]: MUST Spec file name must match the spec package %{name}, in the format %{name}.spec. [ ]: MUST Package contains systemd file(s) if in need. [x]: MUST File names are valid UTF-8. [x]: SHOULD Reviewer should test that the package builds in mock. [x]: SHOULD Buildroot is not present Note: Unless packager wants to package for EPEL5 this is fine [x]: SHOULD Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean would be needed if support for EPEL5 is required [ ]: 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. [x]: SHOULD Dist tag is present. [x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [ ]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [ ]: SHOULD Package functions as described. [ ]: SHOULD Latest version is packaged. [ ]: SHOULD Package does not include license text files separate from upstream. [x]: SHOULD SourceX tarball generation or download is documented. [!]: SHOULD SourceX / PatchY prefixed with %{name}. Note: Source0 (scoped_search-2.3.7.gem) [x]: SHOULD SourceX is a working URL. [ ]: SHOULD Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [ ]: SHOULD Package should compile and build into binary rpms on all supported architectures. [ ]: SHOULD %check is present and all tests pass. [ ]: SHOULD Packages should try to preserve timestamps of original installed files. [x]: SHOULD Spec use %global instead of %define.
==== Language ==== [x]: MUST Gem package must not define a non-gem subpackage [x]: MUST Gem package must exclude cached Gem. [ ]: MUST Platform dependent files must all go under %{gem_extdir}, platform independent under %{gem_dir}. [x]: MUST Gem package is named rubygem-%{gem_name} [x]: MUST Package contains BuildRequires: rubygems-devel. [x]: MUST Gem package must define %{gem_name} macro. [x]: MUST Pure Ruby package must be built as noarch [x]: MUST Package contains Requires: ruby(abi). [!]: SHOULD Specfile should utilize macros from rubygem-devel package. Note: The specfile doesn't use these macros: %exclude %{gem_cache}, %{gem_libdir} [x]: SHOULD Test suite should not be run by rake. [!]: SHOULD Test suite of the library should be run.
Issues: [!]: MUST 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#ValidLicenseShor...
Rpmlint ------- Checking: rubygem-scoped_search-2.3.7-8.fc16.noarch.rpm rubygem-scoped_search-2.3.7-8.fc16.src.rpm rubygem-scoped_search-doc-2.3.7-8.fc16.noarch.rpm rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.yaml %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.yaml %3f 3 packages and 0 specfiles checked; 0 errors, 13 warnings.
Rpmlint (installed packages) ---------------------------- # rpmlint rubygem-scoped_search-doc rubygem-scoped_search-doc.noarch: I: enchant-dictionary-not-found en_US rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/textual%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/infix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/datetime%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/prefix%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/register_named_scope%21-i.yaml %21 rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/date%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/numerical%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/temporal%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/eql%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/Definition/Field/set%3f-i.yaml %3f rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5b rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/OperatorNode/%5b%5d-i.yaml %5d rubygem-scoped_search-doc.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/scoped_search-2.3.7/ri/ScopedSearch/QueryLanguage/AST/LeafNode/eql%3f-i.yaml %3f 1 packages and 0 specfiles checked; 0 errors, 13 warnings. # echo 'rpmlint-done:'
Requires -------- rubygem-scoped_search-2.3.7-8.fc16.noarch.rpm (rpmlib, GLIBC filtered):
ruby(abi) = 1.8 rubygem-activerecord >= 2.1.0 rubygems
rubygem-scoped_search-doc-2.3.7-8.fc16.noarch.rpm (rpmlib, GLIBC filtered):
rubygem-scoped_search = 2.3.7-8.fc16
Provides -------- rubygem-scoped_search-2.3.7-8.fc16.noarch.rpm:
rubygem(scoped_search) = 2.3.7 rubygem-scoped_search = 2.3.7-8.fc16
rubygem-scoped_search-doc-2.3.7-8.fc16.noarch.rpm:
rubygem-scoped_search-doc = 2.3.7-8.fc16
MD5-sum check ------------- https://rubygems.org/downloads/scoped_search-2.3.7.gem : CHECKSUM(SHA256) this package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4 CHECKSUM(SHA256) upstream package : aa90bdb48c2a33321b90368a5634ed9a35f0cf385b147557a2bce77eb35e04c4
Generated by fedora-review 0.2.2 (9f8c0e5) last change: 2012-08-09 Command line :/usr/bin/fedora-review -vvv -n rubygem-scoped_search External plugins:
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #9 from Brenton Leanhardt bleanhar@redhat.com --- My sponsor reminded me that I needed to manually verify all remaining items. I found 0 blocking issues. My recommendations are below. I would approve this package.
==== Generic ==== [x]: EXTRA Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: EXTRA Spec file according to URL is the same as in SRPM. [x]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [-]: MUST %build honors applicable compiler flags or justifies otherwise. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: MUST Package contains no bundled libraries. [x]: MUST Changelog in prescribed format. [x]: MUST Sources contain only permissible code or content. [x]: MUST Each %files section contains %defattr if rpm < 4.4 Note: Note: defattr macros not found. They would be needed for EPEL5 [-]: MUST Macros in Summary, %description expandable at SRPM build time. [-]: MUST Package contains desktop file if it is a GUI application. [-]: MUST Development files must be in a -devel package [x]: MUST Package requires other packages for directories it uses. [x]: MUST Package uses nothing in %doc for runtime. [x]: MUST Package is not known to require ExcludeArch. [x]: MUST Permissions on files are set properly. [x]: MUST Package does not contain duplicates in %files. [x]: MUST Fully versioned dependency in subpackages, if present. [x]: MUST Package complies to the Packaging Guidelines [x]: MUST Spec file lacks Packager, Vendor, PreReq tags. [x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf would be needed if support for EPEL5 is required [x]: MUST Large documentation files are in a -doc subpackage, if required. [x]: 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 is included in %doc. [x]: MUST 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.
Checked manually
[x]: MUST License file installed when any subpackage combination is installed. [x]: MUST Package consistently uses macro is (instead of hard-coded directory names). [x]: MUST Package is named using only allowed ascii characters. [x]: MUST Package is named according to the Package Naming Guidelines.
Upstream uses the underscore so my interpretation of this is that rubygem-scoped_search is OK.
[x]: MUST Package does not generate any conflict. Note: Package contains no Conflicts: tag(s) [x]: MUST Package obeys FHS, except libexecdir and /usr/target. [-]: MUST If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: MUST Package must own all directories that it creates. [x]: MUST Package does not own files or directories owned by other packages. [x]: MUST Package installs properly. [x]: MUST Package is not relocatable. [x]: MUST Requires correct, justified where necessary. [x]: MUST Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: MUST Sources used to build the package match the upstream source, as provided in the spec URL. [x]: MUST Spec file is legible and written in American English. [x]: MUST Spec file name must match the spec package %{name}, in the format %{name}.spec. [-]: MUST Package contains systemd file(s) if in need. [x]: MUST File names are valid UTF-8. [x]: SHOULD Reviewer should test that the package builds in mock. [x]: SHOULD Buildroot is not present Note: Unless packager wants to package for EPEL5 this is fine [x]: SHOULD Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) Note: Clean would be needed if support for EPEL5 is required [-]: 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. [x]: SHOULD Dist tag is present. [x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [x]: SHOULD Package functions as described. [x]: SHOULD Latest version is packaged. [x]: SHOULD Package does not include license text files separate from upstream. [x]: SHOULD SourceX tarball generation or download is documented. [!]: SHOULD SourceX / PatchY prefixed with %{name}. Note: Source0 (scoped_search-2.3.7.gem)
This is not the custom for rubygems.
[x]: SHOULD SourceX is a working URL. [-]: SHOULD Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [-]: SHOULD Package should compile and build into binary rpms on all supported architectures. [-]: SHOULD %check is present and all tests pass. [x]: SHOULD Packages should try to preserve timestamps of original installed files. [x]: SHOULD Spec use %global instead of %define.
==== Language ==== [x]: MUST Gem package must not define a non-gem subpackage [x]: MUST Gem package must exclude cached Gem. [-]: MUST Platform dependent files must all go under %{gem_extdir}, platform independent under %{gem_dir}. [x]: MUST Gem package is named rubygem-%{gem_name} [x]: MUST Package contains BuildRequires: rubygems-devel. [x]: MUST Gem package must define %{gem_name} macro. [x]: MUST Pure Ruby package must be built as noarch [x]: MUST Package contains Requires: ruby(abi). [!]: SHOULD Specfile should utilize macros from rubygem-devel package. Note: The specfile doesn't use these macros: %exclude %{gem_cache}, %{gem_libdir}
You can use these at your discretion. "%exclude %{gem_cache}" was actually new to me.
[x]: SHOULD Test suite should not be run by rake. [!]: SHOULD Test suite of the library should be run.
We already discussed this.
Issues: [!]: MUST 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#ValidLicenseShor...
Verified manually
https://bugzilla.redhat.com/show_bug.cgi?id=847504
Vít Ondruch vondruch@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |vondruch@redhat.com Assignee|nobody@fedoraproject.org |vondruch@redhat.com Flags| |fedora-review?
--- Comment #10 from Vít Ondruch vondruch@redhat.com --- I'll take it for a review.
Brenton, thanks for your preliminary input.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #11 from Vít Ondruch vondruch@redhat.com --- * Source0 should use version macro - We are typically using
"Source0: http://rubygems.org/gems/%%7Bgem_name%7D-%%7Bversion%7D.gem"
This will ease future updates.
* The dot files should be removed on different place IMO - This is minor nit, but you remove the dot files in %build section, while they should be removed in install section IMO or I personally prefer to %exclude them in %files section. Please consider change
* Exclude gem_cache - Again, this is matter of style, but I prefer to %exclude the gem_cache in %files section. - BTW it is not mandated by guidelines, just Fedora Review is too strict about it (see Bug 848283).
* Licence and Readme - I would keep the LICENSE and the README.rdoc on its original place, i.e. they would be referenced in %files section as a %{gem_instdir}/LICENSE and %{gem_instdir}/README.rdoc. This will save you the "mv" in install section and will keep your gem more aligned with other gems.
* Move files into -doc subpackage - the .gemspec is definitely not used in runtime and should be move into -doc subpackage - What about the init.rb? This is used when the gem would be somehow used as a Rails plugin. Not sure if that is somehow achievable. - Is there chance to call the tasks from the application which uses the library? If not, I would suggest to move tasks into -doc subpackage as well.
* Test suite - Please consider execution of test suite. It works, however there are several tweaks needed:
BuildRequires: %{_bindir}/rspec BuildRequires: rubygem(activerecord) BuildRequires: rubygem(sqlite3)
%check pushd .%{gem_instdir} # Get rid of Bundler, not needed on Fedora. sed -i "/require 'bundler/setup'/ d" spec/spec_helper.rb # sqlite3-ruby and sqlite3 are identical rubygems, where the former is # older name for the gem. Would be nice if upstream support both # reincarnations. sed -i "s/sqlite3-ruby/sqlite3/" spec/database.yml rspec spec popd
- Unfortunately, there remains one test failure. It seems to me that it might be change in API? Please discuss with upstream.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #12 from Miroslav Suchý msuchy@redhat.com --- Spec URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search.... SRPM URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search-...
I fixed that SOURCE0
I moved deletion of dot files to %install section
I excluded that gem for now, I started discussion about it on ruby-sig mailing list
I prefere to have LICENSE and README in /usr/share/doc/* as they are not need for runtime and all other package put these files in /usr/share/doc/*. I know it one more line in %install, but I can live it. If it is blocker, I will remove it.
.gemspec to -doc - done
init.rb to -doc - I hesitate. "init.rb: Runs everytime the Rails app is started. Useful for mixing-in a helper module so all your views can use it." I think this is runtime thing.
ad test suite. I added your code there, but commented for now. It fails misserably with 13 failures and lots deprecated warning on F17. I may later test it on rawhide. But I would prefer to skip it for now.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #13 from Vít Ondruch vondruch@redhat.com --- (In reply to comment #12)
I prefere to have LICENSE and README in /usr/share/doc/* as they are not need for runtime and all other package put these files in /usr/share/doc/*. I know it one more line in %install, but I can live it. If it is blocker, I will remove it.
Well, there is no other gem to my knowledge, which would move the files outside of their original locations, so if your package should be exceptional, so be it. It is up to you.
.gemspec to -doc - done
init.rb to -doc - I hesitate. "init.rb: Runs everytime the Rails app is started. Useful for mixing-in a helper module so all your views can use it." I think this is runtime thing.
Well, init.rb runs when you are using it as a Rails plugin, i.e. you will take the original code and place it into your applications vendor directory. If you are using the code as a gem, it has no meaning IMO. It even cannot get on load path, so there is no way how to use it. Moreover, if it would be possible to place it in the load path, it would be dangerous, because there would be more than one init.rb file and you could never know which one will be used.
But since it does not harm anybody or anything, I'll keep it up to you.
ad test suite. I added your code there, but commented for now. It fails misserably with 13 failures and lots deprecated warning on F17. I may later test it on rawhide. But I would prefer to skip it for now.
Testing it right now in F17 [1], I got only one error, pretty same as in Rawhide. So I would suggest to enable the test suite and consult the error with upstream.
[1] http://koji.fedoraproject.org/koji/taskinfo?taskID=4391927
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #14 from Miroslav Suchý msuchy@redhat.com ---
Well, there is no other gem to my knowledge, which would move the files outside of their original locations, so if your package should be exceptional, so be it. It is up to you.
Just few statistics from my machine: $ rpm -qal |grep LICENSE |grep -v /usr/share/doc|wc -l 145 $ rpm -qal |grep LICENSE |grep /usr/share/doc|wc -l 631 $ rpm -qal |grep LICENSE |grep -v /usr/share/doc |grep /gems/|wc -l 57
So I would say rubygems are the exception. Anyway - I will ask FESCO to standardize this.
Well, init.rb ...
You convinced me. Moving to -doc package
ad test suite
Indeed. But that is only because in minimal Koji environment is run test against only one database. If you have more librearies installed, more test fails. Anyway, will investigate it.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #15 from Vít Ondruch vondruch@redhat.com --- (In reply to comment #14)
Well, there is no other gem to my knowledge, which would move the files outside of their original locations, so if your package should be exceptional, so be it. It is up to you.
Just few statistics from my machine: $ rpm -qal |grep LICENSE |grep -v /usr/share/doc|wc -l 145 $ rpm -qal |grep LICENSE |grep /usr/share/doc|wc -l 631 $ rpm -qal |grep LICENSE |grep -v /usr/share/doc |grep /gems/|wc -l 57
So I would say rubygems are the exception. Anyway - I will ask FESCO to standardize this.
I was always referring just to RubyGems. Other packages spread their files all over the place while gems keeps their files in one location. No problem to involve FESCo.
ad test suite
Indeed. But that is only because in minimal Koji environment is run test against only one database. If you have more librearies installed, more test fails. Anyway, will investigate it.
Yes, minimal buildroot, that is what matters. More libraries means more DB adapters and that is not easy. I doubt that you will be successful to run the test suite against other databases, since their setup is typically a magnitude harder then setup sqlite3 DB.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |MODIFIED
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #16 from Fedora Update System updates@fedoraproject.org --- rubygem-transaction-simple-1.4.0.2-3.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/rubygem-transaction-simple-1.4.0.2-3...
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #17 from Fedora Update System updates@fedoraproject.org --- rubygem-transaction-simple-1.4.0.2-3.el6 has been submitted as an update for Fedora EPEL 6. https://admin.fedoraproject.org/updates/rubygem-transaction-simple-1.4.0.2-3...
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #18 from Fedora Update System updates@fedoraproject.org --- rubygem-transaction-simple-1.4.0.2-3.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/rubygem-transaction-simple-1.4.0.2-3...
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #19 from Fedora Update System updates@fedoraproject.org --- rubygem-transaction-simple-1.4.0.2-3.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/rubygem-transaction-simple-1.4.0.2-3...
https://bugzilla.redhat.com/show_bug.cgi?id=847504
Miroslav Suchý msuchy@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ASSIGNED
--- Comment #20 from Miroslav Suchý msuchy@redhat.com --- Sorry for this spam, I accidentaly used in bodhi this BZ number. It is now edited to correct number 847457.
https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #21 from Miroslav Suchý msuchy@redhat.com --- Spec URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search.... SRPM URL: http://miroslav.suchy.cz/fedora/rubygem-scoped_search/rubygem-scoped_search-...
I rebased to new version. But even there is test failing. I reported it to upstream and disabled test with comment pointing to upstream issue tracker.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
Vít Ondruch vondruch@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-review? | Flags| |fedora-review+
--- Comment #22 from Vít Ondruch vondruch@redhat.com --- Hi Miroslav,
* Test suite Could you please enable the test suite? I see no test error in Rawhide (except fixing BR: %{_bindir}/rspec to BR: rubygem(rspec)
* Move files not needed for runtime into -doc - I would say that the following items might go into -doc subpackage:
%{gem_instdir}/init.rb %{gem_instdir}/tasks
BTW the RHEL macros, it seems that you are missing %{gem_libdir} definition.
I APPROVE the package, however, please fix the two issues mentioned above prior importing the package.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #23 from Miroslav Suchý msuchy@redhat.com --- Those test does not work on F16 and F17. It pass on F18 and F19. Changed spec accordingly. BR fixed as well. Thanks for review.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
Miroslav Suchý msuchy@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |fedora-cvs?
--- Comment #24 from Miroslav Suchý msuchy@redhat.com --- New Package SCM Request ======================= Package Name: rubygem-scoped_search Short Description: Easily search your ActiveRecord models Owners: msuchy Branches: f18 f17 f16 InitialCC:
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #25 from Jon Ciesla limburgher@gmail.com --- Git done (by process-git-requests).
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |MODIFIED
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #26 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/rubygem-scoped_search-2.4.0-5.fc18
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #27 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/rubygem-scoped_search-2.4.0-5.fc17
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #28 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/rubygem-scoped_search-2.4.0-5.fc16
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ON_QA
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #29 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc18 has been pushed to the Fedora 18 testing repository.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |CURRENTRELEASE Last Closed| |2012-12-11 19:14:25
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #30 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc18 has been pushed to the Fedora 18 stable repository.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #31 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc17 has been pushed to the Fedora 17 stable repository.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=847504
--- Comment #32 from Fedora Update System updates@fedoraproject.org --- rubygem-scoped_search-2.4.0-5.fc16 has been pushed to the Fedora 16 stable repository.
package-review@lists.fedoraproject.org