Bug 946862 - Review Request: rubygem-git-up - git command to fetch and rebase all branches
Summary: Review Request: rubygem-git-up - git command to fetch and rebase all branches
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jan Včelák
QA Contact: Ken Dreyer
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-03-31 13:31 UTC by Jan Včelák
Modified: 2013-09-22 23:54 UTC (History)
4 users (show)

Fixed In Version: rubygem-git-up-0.5.12-3.fc19
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-09-13 13:41:30 UTC
Type: ---
Embargoed:
ktdreyer: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Comment 1 Ken Dreyer 2013-09-10 04:50:07 UTC
It looks like git-up has had a couple new releases since the time of this review request submission. Could you please update to the latest version (0.5.12)?

Comment 2 Jan Včelák 2013-09-11 18:43:12 UTC
I will update the package in a few moments.

Comment 4 Ken Dreyer 2013-09-11 19:32:40 UTC
Package Review
==============

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


Issues:
=======

Please fix the following issues, and then I will approve the package.

- In %install, please change "cp -a" to "cp -pa" in order to preserve the
  timestamps of the files.

- Please %exclude the %{gem_cache} file.

- I know this is pendandic, and it's relatively obvious when reading the patch
  itself, but would you mind adding a comment above Patch1 to indicate at a
  glace what this patch does?

- fedora-review caught a trivial whitespace difference between the .spec and
  .srpm. I'm sure this will be fixed in the next version :)


===== 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]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses.
[x]: License file installed when any subpackage combination is installed.
[x]: Package must own all directories that it creates.
[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.
[-]: 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]: 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]: 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]: 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]: 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]: 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.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of 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]: Pure Ruby package must be built as noarch
[x]: Package does not contain Requires: ruby(abi).
[x]: Package contains Requires: ruby(release).

===== SHOULD items =====

Generic:
[-]: 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).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[!]: Patches link to upstream bugs/comments/lists or are otherwise justified.
     Patch1 is not commented. Please see note above in "Issues".
[x]: 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.
[-]: %check is present and all tests pass.
     The gem has no tests, either in the gem file, or in Git. There is nothing
     to run in %check.
[!]: Packages should try to preserve timestamps of original installed files.
     Please use "cp -pa" during %install. See note above in "Issues"
[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]: Fully versioned dependency in subpackages if applicable.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

Ruby:
[!]: Gem package should exclude cached Gem.
     Please exclude this file. See the note under "Issues" above.
[-]: Test suite of the library should be run.
     See above about %check. The gem has not tests to run.
[x]: Specfile should use macros from rubygem-devel package.
     Note: The specfile doesn't use these macros: %exclude %{gem_cache}
[x]: Gem should use %gem_install macro.

===== EXTRA items =====

Generic:
[!]: 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).
     See: (this test has no URL)
[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.


Rpmlint
-------
Checking: rubygem-git-up-0.5.12-1.fc19.noarch.rpm
          rubygem-git-up-doc-0.5.12-1.fc19.noarch.rpm
          rubygem-git-up-0.5.12-1.fc19.src.rpm
rubygem-git-up.noarch: W: spelling-error Summary(en_US) rebase -> rebate, debase, re base
rubygem-git-up.noarch: W: summary-not-capitalized C git command to fetch and rebase all branches
rubygem-git-up.noarch: W: spelling-error %description -l en_US rebase -> rebate, debase, re base
rubygem-git-up.src: W: spelling-error Summary(en_US) rebase -> rebate, debase, re base
rubygem-git-up.src: W: summary-not-capitalized C git command to fetch and rebase all branches
rubygem-git-up.src: W: spelling-error %description -l en_US rebase -> rebate, debase, re base
3 packages and 0 specfiles checked; 0 errors, 6 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint rubygem-git-up rubygem-git-up-doc
rubygem-git-up.noarch: W: spelling-error Summary(en_US) rebase -> rebate, debase, re base
rubygem-git-up.noarch: W: summary-not-capitalized C git command to fetch and rebase all branches
rubygem-git-up.noarch: W: spelling-error %description -l en_US rebase -> rebate, debase, re base
2 packages and 0 specfiles checked; 0 errors, 3 warnings.
# echo 'rpmlint-done:'



Requires
--------
rubygem-git-up (rpmlib, GLIBC filtered):
    /usr/bin/ruby
    git
    ruby(release)
    rubygem-colored
    rubygem-grit
    rubygems

rubygem-git-up-doc (rpmlib, GLIBC filtered):
    rubygem-git-up



Provides
--------
rubygem-git-up:
    rubygem-git-up

rubygem-git-up-doc:
    rubygem-git-up-doc



Diff spec file in url and in SRPM
---------------------------------
--- /home/ktdreyer/fedora-scm/rubygem-git-up/946862-rubygem-git-up/srpm/rubygem-git-up.spec	2013-09-11 13:09:54.686270800 -0600
+++ /home/ktdreyer/fedora-scm/rubygem-git-up/946862-rubygem-git-up/srpm-unpacked/rubygem-git-up.spec	2013-09-11 12:38:59.000000000 -0600
@@ -89,2 +89,3 @@
 * Sun Mar 31 2013 Jan Vcelak <jvcelak> 0.5.8-1
 - initial package
+


Source checksums
----------------
http://rubygems.org/downloads/git-up-0.5.12.gem :
  CHECKSUM(SHA256) this package     : ba8a3d4422895299b7a8cd50efb47bcec0e93b64a28a96518da3fbe03a113698
  CHECKSUM(SHA256) upstream package : ba8a3d4422895299b7a8cd50efb47bcec0e93b64a28a96518da3fbe03a113698


Generated by fedora-review 0.5.0 (920221d) last change: 2013-08-30
Command line :/usr/bin/fedora-review -b 946862
Buildroot used: fedora-19-i386
Active plugins: Generic, Ruby, Shell-api
Disabled plugins: Java, C/C++, Python, SugarActivity, Perl, R, PHP
Disabled flags: EPEL5, EXARCH, DISTTAG

Comment 5 Jan Včelák 2013-09-12 17:05:14 UTC
Thank you for the review. Here is my response. ;-)

> - In %install, please change "cp -a" to "cp -pa" in order to preserve the
>   timestamps of the files.

Fixed.

> - Please %exclude the %{gem_cache} file.

Interesting. I haven't found this in packaging guidelines. Some gem packages include the cache file, some do not. But it makes a little sense to keep it in the package. Fixed.

> - I know this is pendandic, and it's relatively obvious when reading the
> patch
>   itself, but would you mind adding a comment above Patch1 to indicate at a
>   glace what this patch does?

Fixed.

> - fedora-review caught a trivial whitespace difference between the .spec and
>   .srpm. I'm sure this will be fixed in the next version :)

Fixed. :-)

Spec URL:
http://jvcelak.fedorapeople.org/review/rubygem-git-up/0.5.12-2/rubygem-git-up.spec

SRPM URL:
http://jvcelak.fedorapeople.org/review/rubygem-git-up/rubygem-git-up-0.5.12-2.fc20.src.rpm

F20 scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=5928713
http://jvcelak.fedorapeople.org/review/rubygem-git-up/noarch/rubygem-git-up-0.5.12-2.fc20.noarch.rpm
http://jvcelak.fedorapeople.org/review/rubygem-git-up/noarch/rubygem-git-up-doc-0.5.12-2.fc20.noarch.rpm

Changes in spec:
diff --git a/rubygem-git-up.spec b/rubygem-git-up.spec
index bc46207..1bb1577 100644
--- a/rubygem-git-up.spec
+++ b/rubygem-git-up.spec
@@ -3,13 +3,15 @@
 
 Name: rubygem-%{gem_name}
 Version: 0.5.12
-Release: 1%{?dist}
+Release: 2%{?dist}
 Summary: git command to fetch and rebase all branches
 
 Group: Development/Languages
 License: MIT
 URL: http://github.com/aanand/%{gem_name}
 Source1: http://rubygems.org/downloads/%{gem_name}-%{version}.gem
+
+# use system ruby instead of ruby from environment
 Patch1: 0001-bin-use-system-ruby.patch
 
 BuildArch: noarch
@@ -60,18 +62,19 @@ gem build %{gem_name}.gemspec
 
 %install
 mkdir -p %{buildroot}%{gem_dir}
-cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/
+cp -pa ./%{gem_dir}/* %{buildroot}%{gem_dir}/
 
 mkdir -p %{buildroot}%{git_bindir}/git-core
 ln -s ../../..%{gem_instdir}/bin/git-up %{buildroot}%{git_bindir}/git-up
 
+rm -f %{buildroot}%{gem_cache}
+
 
 %files
 %dir %{gem_instdir}
 %doc %{gem_instdir}/LICENSE
 %doc %{gem_instdir}/README.md
 %{gem_libdir}
-%{gem_cache}
 %{gem_spec}
 %{gem_instdir}/bin
 %{gem_instdir}/man
@@ -83,6 +86,11 @@ ln -s ../../..%{gem_instdir}/bin/git-up %{buildroot}%{git_bindir}/git-up
 
 
 %changelog
+* Thu Sep 12 2013 Jan Vcelak <jvcelak> 0.5.12-2
+- add comments to patches
+- install (cp) with preserved attributes
+- remove cached Gem from the package
+
 * Wed Sep 11 2013 Jan Vcelak <jvcelak> 0.5.12-1
 - update to newer version

Comment 6 Ken Dreyer 2013-09-12 23:17:24 UTC
Looks good! All concerns are addressed in  0.5.12-2. Thank you. Package approved.

Comment 7 Jan Včelák 2013-09-13 06:24:44 UTC
New Package SCM Request
=======================
Package Name: rubygem-git-up
Short Description: git command to fetch and rebase all branches
Owners: jvcelak
Branches: f19 f20
InitialCC:

Comment 8 Gwyn Ciesla 2013-09-13 13:13:49 UTC
Git done (by process-git-requests).

Comment 9 Fedora Update System 2013-09-13 13:40:00 UTC
rubygem-git-up-0.5.12-3.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/rubygem-git-up-0.5.12-3.fc19

Comment 10 Fedora Update System 2013-09-13 13:40:56 UTC
rubygem-git-up-0.5.12-3.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/rubygem-git-up-0.5.12-3.fc20

Comment 11 Fedora Update System 2013-09-22 04:27:26 UTC
rubygem-git-up-0.5.12-3.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 12 Fedora Update System 2013-09-22 23:54:42 UTC
rubygem-git-up-0.5.12-3.fc20 has been pushed to the Fedora 20 stable repository.


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