Bug 676414

Summary: rubygem-activesupport-3.0.3 lacks of rubygem-i18n require
Product: [Fedora] Fedora Reporter: Marek Goldmann <mgoldman>
Component: rubygem-activesupportAssignee: Mo Morsi <mmorsi>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: mastahnke, mfojtik, mmorsi, sseago, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: rubygem-activesupport-3.0.3-4.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-03-03 02:43:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Koji build log none

Description Marek Goldmann 2011-02-09 19:13:02 UTC
Created attachment 477887 [details]
Koji build log

Description of problem:

Requiring aws gem fails because activesupport gem cannot find i18n gem.

Version-Release number of selected component (if applicable):

rubygem-activesupport, 1:3.0.3-1.fc15

How reproducible:

Always.

Steps to Reproduce:
1. install aws gem
2. require 'aws'
  
Actual results:

You don't have i18n installed in your application. Please add it to your Gemfile and run bundle install
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- i18n (LoadError)

Expected results:

No error.

Comment 1 Mo Morsi 2011-02-10 23:59:18 UTC
Technically i18n isn't an activesupport dependency since i18n support in activesupport is marked as 'autoload', eg it won't be pulled in until its actually used. activesupport itself provides for this, eg see lib/active_support/i18n.rb:5

$stderr.puts "You don't have i18n installed in your application. Please add it to your Gemfile and run bundle install"

So I believe the 'right' solution to this would be to include i18n as a dependency in the aws gem rpm would it not?

Now that being said i18n support seems to be a pretty big activesupport use case (it is required by the activesupport inflector for example) so I suppose it would make sense to include the i18n dependency in activesupport if activesupport would be useless without it. Thoughts?

Comment 2 Marek Goldmann 2011-02-11 12:32:38 UTC
(In reply to comment #1)
> Technically i18n isn't an activesupport dependency since i18n support in
> activesupport is marked as 'autoload', eg it won't be pulled in until its
> actually used. activesupport itself provides for this, eg see
> lib/active_support/i18n.rb:5
> 
> $stderr.puts "You don't have i18n installed in your application. Please add it
> to your Gemfile and run bundle install"
> 
> So I believe the 'right' solution to this would be to include i18n as a
> dependency in the aws gem rpm would it not?

Yes and no :) This will fix the problem for aws gem, but not for other gems which may relay on activesupport.

> Now that being said i18n support seems to be a pretty big activesupport use
> case (it is required by the activesupport inflector for example) so I suppose
> it would make sense to include the i18n dependency in activesupport if
> activesupport would be useless without it. Thoughts?

Yes, this was my thought after which I filled this bug report against activesupport, not aws gem.

I would add the dependency to activesupport gem and file a bug report upstream to see what developers have to say. If there is no direct requirement – the code should not fail at least (print a warning for example). Currently it fails, which is a bug IMHO.

--Marek

Comment 3 Fedora Update System 2011-02-14 21:26:02 UTC
rubygem-activesupport-3.0.3-4.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/rubygem-activesupport-3.0.3-4.fc15

Comment 4 Mo Morsi 2011-02-14 21:29:22 UTC
OK. Added a rubygem(i18n) runtime dependency and pushed to rawhide and F15. If
a use case for activesupport without i18n is requested, we can change this to
just print an error if i18n is not found.

Submitted update to bodhi.

Comment 5 Fedora Update System 2011-02-15 17:28:27 UTC
rubygem-activesupport-3.0.3-4.fc15 has been pushed to the Fedora 15 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update rubygem-activesupport'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/rubygem-activesupport-3.0.3-4.fc15

Comment 6 Marek Goldmann 2011-02-15 18:12:27 UTC
(In reply to comment #4)
> OK. Added a rubygem(i18n) runtime dependency and pushed to rawhide and F15. If
> a use case for activesupport without i18n is requested, we can change this to
> just print an error if i18n is not found.
> 
> Submitted update to bodhi.

I can confirm that this update solved my issue, bumped karma. Thank you!

--Marek

Comment 7 Fedora Update System 2011-03-03 02:43:40 UTC
rubygem-activesupport-3.0.3-4.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.