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.