Bug 207472 - Review Request: ruby-activesupport - Utility classes and extension to Ruby's standard library
Review Request: ruby-activesupport - Utility classes and extension to Ruby's ...
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Jason Tibbitts
Fedora Package Reviews List
Depends On:
Blocks: FE-ACCEPT 207473
  Show dependency treegraph
Reported: 2006-09-21 06:56 EDT by David Lutterkort
Modified: 2013-04-30 19:40 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-11-13 22:44:19 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description David Lutterkort 2006-09-21 06:56:48 EDT
Spec URL: http://people.redhat.com/dlutter/yum/spec/ruby-activesupport.spec
SRPM URL: http://people.redhat.com/dlutter/yum/SRPMS/ruby-activesupport-1.3.1-1.src.rpm
Utility classes and extension to the standard library that were
required by Rails, but found of general use.
Comment 1 David Lutterkort 2006-09-21 06:59:59 EDT
Output from rpmlint:

E: ruby-activesupport non-executable-script
/usr/lib/ruby/site_ruby/1.8/active_support/vendor/builder/xmlbase.rb 0644
E: ruby-activesupport non-executable-script
/usr/lib/ruby/site_ruby/1.8/active_support/vendor/builder/blankslate.rb 0644
E: ruby-activesupport non-executable-script
/usr/lib/ruby/site_ruby/1.8/active_support/vendor/builder/xmlmarkup.rb 0644
E: ruby-activesupport non-executable-script
/usr/lib/ruby/site_ruby/1.8/active_support/vendor/builder/xmlevents.rb 0644
E: ruby-activesupport non-executable-script
/usr/lib/ruby/site_ruby/1.8/active_support/vendor/builder.rb 0644

While these files all start with #!/usr/bin/ruby, they are mainly used as a
library, and included by the toplevel active_support.rb, so I think this warning
should be ignored
Comment 2 Jason Tibbitts 2006-10-04 00:19:28 EDT
One additional rpmlint issue:

W: ruby-activesupport unversioned-explicit-provides ruby(active_support)

I wonder if this provide shouldn't be versioned.  (I know the guidelines don't
say so, but perhaps we missed something when we wrote them.)

As for the non-executable-script "error", this often happens in Python packages.
 There, the standard that we have used for deciding whether the complaint is
bogus or not is whether the file has any code that would be executed if you did
pass it through the interpreter.  If the file has only class and function
definitions, it needs to have the shebang line removed.  It seems that these
five files fall into the latter category.  However, we're basically making up
some of the rules for Ruby as we go along, so we should probably talk about it a
bit.  Personally I don't understand why the shebang lines are there, but I can't
imagine that it hurts anything.  It's a comment, nothing more.

* source files match upstream:
   4e3fce3bb07e1f66e6f40406291e3266  activesupport-1.3.1.tgz
* package meets naming and packaging guidelines.
* specfile is properly named, is cleanly written and uses macros consistently.
* dist tag is present.
* build root is correct.
* license field matches the actual license.
* license is open source-compatible.  License text included in package (in
* latest version is being packaged.
* BuildRequires are proper.
* %clean is present.
* package builds in mock (development, x86_64).
* package installs properly
X rpmlint is silent.
? final provides and requires are sane:
?  ruby(active_support)
   ruby-activesupport = 1.3.1-1.fc6
   ruby(abi) = 1.8
* %check is not present; no test suite upstream.
* owns the directories it creates.
* doesn't own any directories it shouldn't.
* no duplicates in %files.
* file permissions are appropriate.
* no scriptlets present.
* code, not content.
* documentation is small, so no -docs subpackage is necessary.
* %docs are not necessary for the proper functioning of the package.
Comment 3 David Lutterkort 2006-10-06 09:37:50 EDT
Seems like I need to install a newer version of rpmlint ;)

Not versioning the ruby(LIB) provides is definitely an oversight; we should just
version it with %version, most ruby packages seem to follow an extremely sane
versioning scheme. I added a corresponding blurb to the packaging Todo.

I'll change the provides to 'ruby(active_support) = 1.3.1' and add a comment
when I have a new spec
Comment 4 Jason Tibbitts 2006-10-29 01:01:46 EST
Were you going to send along a new version?
Comment 5 David Lutterkort 2006-11-06 19:15:10 EST
Sorry, that somehow slipped through the cracks; thanks for reminding me.

- Updated the spec file with a versioned provides for ruby(active_support):

Spec URL: http://people.redhat.com/dlutter/yum/spec/ruby-activesupport.spec

- For the shebang lines, I haven't chanegd anything; I can't see any harm with
that, either, especially since those files are not executable (and shouldn't be)
Comment 6 Jason Tibbitts 2006-11-12 01:13:27 EST
Sorry for taking so long to get back; I'm just getting back up to speed.

I admit to not understanding fully why rpmlint complains so stridently about
files with shebang lines that aren't executable.  I can understanding a warning
so that you double check that you haven't installed a script and forgotten to
make it executable, but these aren't supposed to be executable, and patching
them out just seems like needless specfile complexity and diversion from
upstream for absolutely no gain.

In the past such things have been fixed up by the packager, but I've never felt
good about that and frankly I'm ready to stop asking folks to change it.  I
don't think it's ever been considered an absolute blocker in any case.

The changes yoou made look good to me, and the package builds fine.

Comment 7 Jason Tibbitts 2006-11-13 01:09:02 EST
I believe that while reviewing ruby-activerecord I've found that this package
needs a runtime dependency on ruby-irb, or else inclusion of breakpoint.rb fails.

Comment 8 David Lutterkort 2006-11-13 22:44:19 EST
Thanks for the review. Nice catch with the irb dependency, I added it to the
specfile (though it kinda irks me that that is needed for essentially a dev
tool, but I don't feel that separating that into another package is really worth it)

Imported and built.

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