Spec URL: https://mtasaka.fedorapeople.org/Review_request/gem-related/rubygem-rmagick.spec SRPM URL: https://mtasaka.fedorapeople.org/Review_request/gem-related/rubygem-rmagick-2.13.4-1.fc.src.rpm Description: RMagick is an interface between Ruby and ImageMagick. Fedora Account System Username: mtasaka
Interesting package with many tricks, and it looks good (exact launch of the tests, package rename, ...). Issues to consider: 1) %global should be preferred over %define [http://fedoraproject.org/wiki/Packaging:Guidelines#.25global_preferred_over_.25define] - %define is considered less "predictable" than %global (although I don't understand the details) 2) the format security patch should be submitted upstream [http://fedoraproject.org/wiki/Packaging:Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment] 3) permissions of doc/ex/images/logo400x83.gif can be fixed too 4) what is the %{nil} after the rm command good for? (in %install section)
Well, (In reply to František Dvořák from comment #1) > Interesting package with many tricks, and it looks good (exact launch of the > tests, package rename, ...). > > Issues to consider: > > 1) %global should be preferred over %define > [http://fedoraproject.org/wiki/Packaging:Guidelines#. > 25global_preferred_over_.25define] > > - %define is considered less "predictable" than %global (although I don't > understand the details) - For parametrized macro, %define is preferable (there seems some way to use %global even for this case, but it is messy) https://www.redhat.com/archives/fedora-packaging/2009-May/msg00112.html > 2) the format security patch should be submitted upstream > [http://fedoraproject.org/wiki/Packaging: > Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment] - Will do. > 3) permissions of doc/ex/images/logo400x83.gif can be fixed too Oh, rpmlint did not catch this :( Will update, thank you. > 4) what is the %{nil} after the rm command good for? (in %install section) %{nil} is expanded as nothing. No need to write this, however without this, I have to write rm -rf \ .gitignore .travis.yml \ Doxyfile Gemfile Rakefile \ before_*.sh \ doc/.cvsignore \ *.gemspec \ test/ \ ext/ \ <blank line> popd or rm -rf \ .gitignore .travis.yml \ Doxyfile Gemfile Rakefile \ before_*.sh \ doc/.cvsignore \ *.gemspec \ test/ \ ext (no \ here) popd ... which is inconvenient when I want to add some other files after ext/ entry (well, not a big deal anyway)
(In reply to Mamoru TASAKA from comment #2) > > > > - %define is considered less "predictable" than %global (although I don't > > understand the details) > > - For parametrized macro, %define is preferable (there seems some > way to use %global even for this case, but it is messy) > https://www.redhat.com/archives/fedora-packaging/2009-May/msg00112.html > OK, you will know better about this. :-) > > > 4) what is the %{nil} after the rm command good for? (in %install section) > %{nil} is expanded as nothing. No need to write this, however without this, > I have to write > rm -rf \ > .gitignore .travis.yml \ > Doxyfile Gemfile Rakefile \ > before_*.sh \ > doc/.cvsignore \ > *.gemspec \ > test/ \ > ext/ \ > <blank line> > popd > > ... which is inconvenient when I want to add some other files after > ext/ entry (well, not a big deal anyway) I see, nice trick.
https://mtasaka.fedorapeople.org/Review_request/gem-related/rubygem-rmagick-2.13.4-2.fc.src.rpm https://mtasaka.fedorapeople.org/Review_request/gem-related/rubygem-rmagick.spec * Fri Jan 30 2015 Mamoru TASAKA <mtasaka> - 2.13.4-2 - Add some comments for patches - Fix permission
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [-]: Development (unversioned) .so files in -devel subpackage, if present. Note: Unversioned so-files in private %_libdir subdirectory (see attachment). They are not in ld path. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "MIT/X11 (BSD like)", "Unknown or generated". 252 files have unknown license. /home/valtri/fedora2-scm/REVIEWS/rubygem-rmagick/1186572-rubygem- rmagick/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: Package must own all directories that it creates. [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 uses nothing in %doc for runtime. [x]: Package consistently uses macros (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. [x]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [x]: Package complies to the Packaging Guidelines [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). [x]: Package requires other packages for directories it uses. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [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]: 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]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [x]: Packages must not store files under /srv, /opt or /usr/local Ruby: [x]: Platform dependent files must all go under %{gem_extdir_mri}, platform independent under %{gem_dir}. [x]: Gem package must not define a non-gem subpackage [x]: Macro %{gem_extdir} is deprecated. [x]: Gem package is named rubygem-%{gem_name} [x]: Package contains BuildRequires: rubygems-devel. [x]: Gem package must define %{gem_name} macro. [x]: Package does not contain Requires: ruby(abi). ===== SHOULD items ===== Generic: [x]: Avoid bundling fonts in non-fonts packages. Note: Package contains font files. It's in generated docs. [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. [x]: Final provides and requires are sane (see attachments). [x]: Fully versioned dependency in subpackages if applicable. [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Patches link to upstream bugs/comments/lists or are otherwise justified. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Spec use %global instead of %define unless justified. Note: %define requiring justification: %define setIMver() %if 0%{?fedora}%{?rhel} == %1 BuildRequires: ImageMagick-devel = %2Requires: ImageMagick%{?_isa} = %2%endif %{nil} [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [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 (not strictly required in GL). [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: SourceX is a working URL. Ruby: [x]: Specfile should use macros from rubygem-devel package. Note: The specfile doesn't use these macros: %exclude /usr/share/gems/cache/rmagick-2.13.4.gem, /usr/share/gems/specifications/rmagick-2.13.4.gemspec [x]: Gem package should exclude cached Gem. [x]: Gem should use %gem_install macro. [x]: Test suite should not be run by rake. [x]: Test suite of the library should be run. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: rubygem-rmagick-2.13.4-2.fc22.x86_64.rpm rubygem-rmagick-doc-2.13.4-2.fc22.noarch.rpm rubygem-rmagick-2.13.4-2.fc22.src.rpm rubygem-rmagick.x86_64: E: changelog-time-in-future 2015-01-30 rubygem-rmagick.x86_64: E: zero-length /usr/lib64/gems/ruby/rmagick-2.13.4/gem.build_complete rubygem-rmagick-doc.noarch: E: changelog-time-in-future 2015-01-30 rubygem-rmagick-doc.noarch: W: file-not-utf8 /usr/share/gems/gems/rmagick-2.13.4/doc/ex/images/Leaf.miff rubygem-rmagick-doc.noarch: W: file-not-utf8 /usr/share/gems/gems/rmagick-2.13.4/doc/ex/images/Rocks_On_Beach.miff rubygem-rmagick-doc.noarch: W: file-not-utf8 /usr/share/gems/gems/rmagick-2.13.4/doc/ex/images/Apple.miff rubygem-rmagick.src: E: changelog-time-in-future 2015-01-30 3 packages and 0 specfiles checked; 4 errors, 3 warnings. Rpmlint (installed packages) ---------------------------- Cannot parse rpmlint output: Requires -------- rubygem-rmagick (rpmlib, GLIBC filtered): ImageMagick(x86-64) libMagickCore-6.Q16.so.2()(64bit) libc.so.6()(64bit) libcrypt.so.1()(64bit) libdl.so.2()(64bit) libm.so.6()(64bit) libpthread.so.0()(64bit) libruby.so.2.2()(64bit) rtld(GNU_HASH) ruby(rubygems) rubygem-rmagick-doc (rpmlib, GLIBC filtered): rubygem-rmagick Provides -------- rubygem-rmagick: ruby(RMagick) ruby-RMagick ruby-RMagick(x86-64) rubygem(rmagick) rubygem-rmagick rubygem-rmagick(x86-64) rubygem-rmagick-doc: ruby-RMagick-doc rubygem-rmagick-doc Unversioned so-files -------------------- rubygem-rmagick: /usr/lib64/gems/ruby/rmagick-2.13.4/RMagick2.so Source checksums ---------------- https://rubygems.org/gems/rmagick-2.13.4.gem : CHECKSUM(SHA256) this package : 7877ce2fe1b05e51e62b0a4f5d17ecae6223c17bdb61c9b4e1715dd74d541afa CHECKSUM(SHA256) upstream package : 7877ce2fe1b05e51e62b0a4f5d17ecae6223c17bdb61c9b4e1715dd74d541afa Generated by fedora-review 0.5.2 (63c24cb) last change: 2014-07-14 Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 1186572 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Ruby, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG ===== The date in future in the changelog is only by one day, so it's just timezone difference. :-) Btw. I'm using rpmdev-bumpspec utility for bumping versions. It seems there are date changes according to the GMT. Package APPROVED!
Thank you! New Package SCM Request ======================= Package Name: rubygem-rmagick Short Description: Ruby binding to ImageMagick Upstream URL: https://github.com/gemhome/rmagick Owners: mtasaka Branches: f21 f20 InitialCC:
Git done (by process-git-requests).
Rebuilt on all branches, push requested on F-21/20, closing. Thank you for review and git procedure.