Bug 853514 - Review Request: rubygem-clouddb - Ruby interface into the Rackspace Cloud DB service
Review Request: rubygem-clouddb - Ruby interface into the Rackspace Cloud DB ...
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Guillermo Gómez
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-31 15:08 EDT by Alejandro_Perez
Modified: 2012-11-23 22:34 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-11-23 02:47:41 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
guillermo.gomez: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Alejandro_Perez 2012-08-31 15:08:49 EDT
Spec URL: http://aeperezt.fedorapeople.org/rpmdev/rubygem-clouddb.spec
SRPM URL: http://aeperezt.fedorapeople.org/rpmdev/rubygem-clouddb-0.0.1-1.fc17.src.rpm
Description: Ruby API to manage the Rackspace Cloud Databases product
Fedora Account System Username:aeperezt

rpmlint output:
rpmlint SPECS/rubygem-clouddb.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.
 rpmlint SRPMS/rubygem-clouddb-0.0.1-1.fc17.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
rpmlint RPMS/noarch/rubygem-clouddb-0.0.1-1.fc17.noarch.rpm 
rubygem-clouddb.noarch: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
Comment 1 Guillermo Gómez 2012-09-28 19:02:00 EDT
Unneeded macros...

%global gem_dir /usr/share/rubygems
%global gem_instdir %{gem_dir}/gems/%{gem_name}-%{version}
%global gem_docdir %{gem_dir}/doc/%{gem_name}-%{version}
%global gem_libdir %{gem_instdir}/lib

All of them are provided by rubygems-devel.

Source0:        http://rubygems.org/downloads/clouddb-0.0.1.gem 

Please use macros for name and version, sample:

Source0:       http://rubygems.org/downloads/%{gem_name}-%{version}.gem 

The rest looks good to me :) Please fix to go a second round.
Comment 2 Alejandro_Perez 2012-09-28 19:22:28 EDT
Changes done as suggested thanks
rpmlint rubygem-clouddb.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint SRPMS/rubygem-clouddb-0.0.1-2.fc17.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
rpmlint RPMS/noarch/rubygem-clouddb-0.0.1-2.fc17.noarch.rpm 
rubygem-clouddb.noarch: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
Comment 3 Guillermo Gómez 2012-09-29 06:55:48 EDT
links?
Comment 4 Guillermo Gómez 2012-09-29 07:59:57 EDT
I tried to install rubygem-clouddb using gem command in a mock and found it uses ffi. The actual rubygem-clouddb is not listed. Missing BuildRequire from upstream as i see.

gem list does not list clouddb after rpm installation.
Comment 5 Guillermo Gómez 2012-09-29 08:18:19 EDT
Actually the gem not being listed issue is because of wrong location of the files, just remove the unnecesary macros. 

Test if rubygem-ffi is really needed at runtime (it was used during gem install clouddb in my workstation).
Comment 6 Alejandro_Perez 2012-09-30 17:34:17 EDT
Well the dependant of rubygem-ffi is needed by rubygem-typhoeus that is require by rubygem-clouddb, so if that requirement is meet by rubygem-typhoeus it should not be included on clouddb gem at lease that is what I think.
Comment 7 Alejandro_Perez 2012-09-30 18:49:00 EDT
Here is the url http://aeperezt.fedorapeople.org/rpmdev/rubygem-clouddb-0.0.1-2.fc17.src.rpm
Comment 8 Guillermo Gómez 2012-10-21 13:44:22 EDT
Package Review
==============

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


Issues:
=======
[x]: Package contains Requires: ruby(abi).
See: http://fedoraproject.org/wiki/Packaging:Ruby#Ruby_ABI
[!]: 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.

See: http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text

Please fix:

Replace 
%{gem_instdir}/COPYING 

with
%doc %{gem_instdir}/COPYING 

[!]: Specfile should use macros from rubygem-devel package.
     Note: The specfile doesn't use following macro: %doc %{gem_docdir}

Please use %{gem_docdir} in 

%doc %{gem_dir}/doc   << actually wrong, claiming ownership of /usr/share/rubygems/doc

Replace with which points to the right files.

%doc %{gem_docdir}

===== 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]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package contains no bundled libraries.
[x]: Changelog in prescribed format.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install.
[x]: Sources contain only permissible code or content.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Fully versioned dependency in subpackages, if present.
[x]: Package complies to the Packaging Guidelines
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[ ]: Large documentation files are in a -doc subpackage, if required.
[!]: 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]: License field in the package spec file matches the actual license.
[x]: License file installed when any subpackage combination is installed.
[x]: Package consistently uses macro is (instead of hard-coded directory names).
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[x]: Package do not use a name that already exist
     Provides are present.
[x]: Package must own all directories that it creates.
[!]: Package does not own files or directories owned by other packages.
[x]: Package installs properly.
[x]: Package is not relocatable.
[x]: CheckResultdir
[x]: Rpmlint is run on all rpms the build produces.
[x]: Sources used to build the package match the upstream source, as provided in the spec URL.
[x]: Spec file is legible and written in American English.
[x]: Spec file name must match the spec package %{name}, in the format %{name}.spec.
[x]: File names are valid UTF-8.

Ruby:
[x]: Gem package must not define a non-gem subpackage
[ ]: Platform dependent files must all go under %{gem_extdir}, platform independent under %{gem_dir}.
[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 contains Requires: ruby(abi).

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

Generic:
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Final provides and requires are sane (rpm -q --provides and rpm -q --requires).
[x]: Latest version is packaged.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX is a working URL.
[x]: Package should compile and build into binary rpms on all supported architectures.
[x]: Spec use %global instead of %define.

Ruby:
[x]: Gem package should exclude cached Gem.
[!]: Specfile should use macros from rubygem-devel package.
     Note: The specfile doesn't use these macros: %doc %{gem_docdir}

Please use %{gem_docdir} in 

%doc %{gem_dir}/doc   << actually wrong, claiming ownership of /usr/share/rubygems/doc

%doc %{gem_docdir}

[x]: Test suite should not be run by rake.
[!]: 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).

Rpmlint
-------
Checking: rubygem-clouddb-doc-0.0.1-2.fc17.noarch.rpm
          rubygem-clouddb-0.0.1-2.fc17.src.rpm
          rubygem-clouddb-0.0.1-2.fc17.noarch.rpm
rubygem-clouddb.noarch: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 1 warnings.

No documentation waring should go away after tagging COPYING file as %doc.

Rpmlint (installed packages)
----------------------------
# rpmlint rubygem-clouddb rubygem-clouddb-doc
rubygem-clouddb.noarch: W: no-documentation
2 packages and 0 specfiles checked; 0 errors, 1 warnings.
# echo 'rpmlint-done:'
Comment 9 Alejandro_Perez 2012-10-21 14:37:50 EDT
Details noted and fixed. Thanks for the advice.

http://aeperezt.fedorapeople.org/rpmdev/rubygem-clouddb-0.0.1-3.fc17.src.rpm

rpmlint SPECS/rubygem-clouddb.spec 
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

 rpmlint SRPMS/rubygem-clouddb-0.0.1-3.fc17.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

 rpmlint RPMS/noarch/rubygem-clouddb-0.0.1-3.fc17.noarch.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
 
 rpmlint RPMS/noarch/rubygem-clouddb-doc-0.0.1-3.fc17.noarch.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
Comment 10 Guillermo Gómez 2012-10-22 10:20:45 EDT
:) Issues fixed

APPROVED
Comment 11 Gwyn Ciesla 2012-10-23 07:48:06 EDT
No SCM request present.
Comment 12 Alejandro_Perez 2012-10-23 11:52:06 EDT
New Package SCM Request
=======================
Package Name: Rubygem-clouddb
Short Description: Ruby interface into the Rackspace Cloud DB service
Owners: aeperezt
Branches: f18 f17 el6
InitialCC: Ruby-SIG
Comment 13 Gwyn Ciesla 2012-10-23 12:13:55 EDT
WARNING: "Ruby-SIG" is not a valid FAS account.
WARNING: Requested package name Rubygem-clouddb doesn't match bug summary rubygem-clouddb
Comment 14 Alejandro_Perez 2012-10-23 12:43:18 EDT
Sorry about that Jon

New Package SCM Request
=======================
Package Name: rubygem-clouddb
Short Description: Ruby interface into the Rackspace Cloud DB service
Owners: aeperezt
Branches: f18 f17 el6
InitialCC:
Comment 15 Alejandro_Perez 2012-10-23 13:03:33 EDT
I think the right request

New Package SCM Request
=======================
Package Name: rubygem-clouddb
Short Description: Ruby interface into the Rackspace Cloud DB service
Owners: aeperezt
Branches: f18 f17 el6
InitialCC:
Comment 16 Gwyn Ciesla 2012-10-23 13:42:39 EDT
Git done (by process-git-requests).
Comment 17 Fedora Update System 2012-11-06 11:57:33 EST
rubygem-clouddb-0.0.1-3.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/rubygem-clouddb-0.0.1-3.fc18
Comment 18 Fedora Update System 2012-11-06 11:57:45 EST
rubygem-clouddb-0.0.1-3.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/rubygem-clouddb-0.0.1-3.fc17
Comment 19 Fedora Update System 2012-11-07 13:50:06 EST
Package rubygem-clouddb-0.0.1-3.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing rubygem-clouddb-0.0.1-3.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-17719/rubygem-clouddb-0.0.1-3.fc18
then log in and leave karma (feedback).
Comment 20 Fedora Update System 2012-11-23 02:47:43 EST
rubygem-clouddb-0.0.1-3.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 21 Fedora Update System 2012-11-23 22:34:03 EST
rubygem-clouddb-0.0.1-3.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.

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