From Fedora Project Wiki
(→‎Gitorious Web Application Gems: add unicorn and just_paginate)
(→‎Open review requests: add capillary review request)
(33 intermediate revisions by 2 users not shown)
Line 5: Line 5:
# Get all Gitorious' dependencies into Fedora.
# Get all Gitorious' dependencies into Fedora.
#* Several Rubygems.
#* Several Rubygems.
#* Several Javascripts.
# Get Gitorious into Fedora.
# Get Gitorious into Fedora.
#* Bundler issues: If we use different Gem versions than upstream, Bundler wants to write to Gemfile and Gemfile.lock. We must patch upstream's Gemfile/Gemfile.lock to make this work.
#* Bundler issues: If we use different Gem versions than upstream, Bundler wants to write to Gemfile and Gemfile.lock. We will use bundler_ext to work around this. This will require the [https://bugzilla.redhat.com/show_bug.cgi?id=878421 bundler_ext gem in Fedora] and a lot of testing.
#* Init scripts: Create equivalent systemd unit files for Fedora & RHEL 7.
#* Init scripts: Create equivalent systemd unit files for Fedora & RHEL 7.
#* Ruby version: Upstream master works with Ruby 1.8; verify Ruby 1.9.x compatability.
#* Ruby version: Upstream "next" branch works with Ruby 1.9.3 and 2.0.0. I'm working with upstream to maintain this compatibility via [https://ci.gitorious.org/jenkins/ Jenkins].
#* Gem versions: Upstream uses different Gem versions than Fedora has. The biggest difference is Rails, but others are documented below. Plan of attack is to ensure that the test suite passes with both.
#* Gem versions: Upstream uses different Gem versions than Fedora has. The biggest difference is Rails, but others are documented below. Plan of attack is to ensure that the test suite passes with both.
#* Javascript libs: There are a couple Git submodules in upstream (bane, capillary-js, raphael, spin.js). We must unbundle these and [[JavaScript libraries packaging guideline draft|package them]] separately.
#* Javascript libs: There are several Git submodules in upstream (bane, capillary-js, raphael, spin.js, others). We must unbundle these and [[JavaScript libraries packaging guideline draft|package them]] separately.
#* GeoIP data: Gitorious bundles GeoIP.dat, which is already available in Fedora as the "GeoIP" package.
#* GeoIP data: Gitorious bundles GeoIP.dat, which is already available in Fedora as the "GeoIP" package.
#* FHS considerations: for the Gitorious web application itself, we need to discover how to split up the package to fit the FHS conventions of /etc/, /usr/, and so on.
#* FHS considerations: for the Gitorious web application itself, we need to discover how to split up the package to fit the FHS conventions of /etc/, /usr/, and so on.
Line 19: Line 20:
#* Various Rubygems must be branched for EPEL.
#* Various Rubygems must be branched for EPEL.
# Get Gitorious into EPEL.
# Get Gitorious into EPEL.
#* Ruby 1.8 may make things easier, since this is what upstream currently uses (although this will change, eventually).
#* Unfortunately upstream has dropped support for Ruby 1.8, so formal EPEL inclusion can only happen after RHEL 7 is released and EPEL 7 is branched.
#* EPEL has RSpec 1, but some gems (eg riddle) require RSpec 2.


== Dependencies ==
== Open review requests ==
 
Please review some of these. I'm willing to trade reviews.
 
{|border="2" cellpadding="2" cellspacing="0"
! Gem !! Package Review Request
|-
| just_paginate || {{bz|1015261}}
|-
| ruby-openid || {{bz|1015778}}
|-
| capillary || {{bz|1016370}}
|-
| unicorn || {{bz|786636}}
|-
|}
 
== Dependency list ==


* [[File:Test-result-fail.png|alt=Fail|link=]] - The package is not in Fedora/EPEL
* [[File:Test-result-fail.png|alt=Fail|link=]] - The package is not in Fedora/EPEL
Line 34: Line 51:
=== Gitorious Web Application Gems ===
=== Gitorious Web Application Gems ===
{|border="2" cellpadding="2" cellspacing="0"
{|border="2" cellpadding="2" cellspacing="0"
! Gem !! Upstream Gemfile !! Fedora 17 !! EPEL 6
! Gem !! Upstream Gemfile !! Fedora !! EPEL 6
|-
|-
| rails || 2.3.17 || {{result|warn}} 3.0/3.2 in F18  || {{result|inprogress}} 2.3.17, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-rails.git git]
| rails || 2.3.17 || {{result|warn}} 3.0/3.2 in F18  || {{result|inprogress}} 2.3.17, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-rails.git git]
|-
| activeresource || 2.3.17 || {{result|warn}} 3.0/3.2 in F18 || {{result|inprogress}} 2.3.17, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-activeresource.git git]
|-
| actionmailer || 2.3.17 || {{result|warn}} 3.0/3.2 in F18  || {{result|inprogress}} 2.3.17, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-actionmailer.git git]
|-
|-
| chronic        || 0.3.0<ref name="GoneInRails3">Gone in Gitorious's upstream/feature/rails3 branch</ref>  || {{result|warn}} 0.6.6  || {{result|inprogress}} 0.3.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-chronic.git git]
| chronic        || 0.3.0<ref name="GoneInRails3">Gone in Gitorious's upstream/feature/rails3 branch</ref>  || {{result|warn}} 0.6.6  || {{result|inprogress}} 0.3.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-chronic.git git]
Line 108: Line 129:
| will_paginate  || 2.3.15 || {{result|warn}} 3.0.2 || {{result|inprogress}} 2.3.15, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-will_paginate.git git]
| will_paginate  || 2.3.15 || {{result|warn}} 3.0.2 || {{result|inprogress}} 2.3.15, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-will_paginate.git git]
|-
|-
| just_paginate  || 0.0.6 || {{result|fail}} || {{result|fail}}
| just_paginate  || 0.0.6 || {{result|fail}} || {{result|inprogress}} 0.0.6, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-just_paginate.git git]
|-
|-
| hodel_3000_compliant_logger || 0.1.0 || {{result|inprogress}} 0.1.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-hodel_3000_compliant_logger.git git] || {{result|inprogress}} 0.1.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-hodel_3000_compliant_logger.git git]
| shoulda-context || BR for just_paginate || {{result|fail}} || {{result|inprogress}} 1.0.2, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-shoulda-context.git git]
|-
| hodel_3000_compliant_logger || 0.1.0, gone in rails3 || {{result|inprogress}} 0.1.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-hodel_3000_compliant_logger.git git] || {{result|inprogress}} 0.1.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-hodel_3000_compliant_logger.git git]
|-
|-
| net-ldap  || 0.3.1 || {{result|pass}} 0.3.1 in F18 || {{result|inprogress}} 0.3.1, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-net-ldap.git git]  
| net-ldap  || 0.3.1 || {{result|pass}} 0.3.1 in F18 || {{result|inprogress}} 0.3.1, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-net-ldap.git git]  
Line 120: Line 143:
| nokogiri        || 1.5.0  || {{result|warn}} 1.5.5  || {{result|warn}} 1.4.3.1, <br /> 1.5.0 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-nokogiri.git git]
| nokogiri        || 1.5.0  || {{result|warn}} 1.5.5  || {{result|warn}} 1.4.3.1, <br /> 1.5.0 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-nokogiri.git git]
|-
|-
| unicorn        || 4.3.1  || {{result|fail}} || {{result|fail}}
| unicorn        || 4.3.1  || {{result|fail}}<ref>Unicorn package review request at https://bugzilla.redhat.com/786636</ref> || {{result|inprogress}} 4.3.1 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-unicorn.git git]
|-
|-
| kgio          || Dep for unicorn (2.7.4)  || {{result|fail}} || {{result|inprogress}} 2.7.4, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-kgio.git git]  
| kgio          || Dep for unicorn (2.7.4)  || {{result|warn}} 2.8.0 || {{result|warn}} 2.8.0 in epel-testing,<br /> 2.7.4 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-kgio.git git]  
|-
|-
| raindrops      || Dep for unicorn (0.10.0) || {{result|fail}} || {{result|fail}}
| raindrops      || Dep for unicorn (0.10.0) || {{result|pass}} 0.10.0 || {{result|warn}} 0.10.0 in epel-testing
|-
|-
| exception_notification || 1.0.20090728 || {{result|inprogress}} 2.6.1, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-exception_notification.git git] || {{result|inprogress}} 1.0.20090728, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-exception_notification.git git]
| exception_notification || 1.0.20090728 || {{result|inprogress}} 2.6.1, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-exception_notification.git git] || {{result|inprogress}} 1.0.20090728, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-exception_notification.git git]
Line 133: Line 156:
|-
|-
| json            || 1.7.7  || {{result|warn}} 1.7.5 || {{result|warn}} 1.4.6, <br /> 1.7.7 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-json.git git]
| json            || 1.7.7  || {{result|warn}} 1.7.5 || {{result|warn}} 1.4.6, <br /> 1.7.7 in [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-json.git git]
|}
=== Queue Manager Gem dependencies ===
{|border="2" cellpadding="2" cellspacing="0"
! Gem !! Upstream Gemfile !! Fedora !! EPEL 6
|-
| resque || 1.9.8  || {{result|fail}} || {{result|fail}}
|-
| redis || 2.2.2  || {{result|fail}} || {{result|fail}}
|-
| redis-namespace  || 0.7.0  || {{result|fail}} || {{result|fail}}
|-
| sinatra        || Dep for resque 1.2.8    || {{result|warn}} 1.3.2 in F19 || {{result|warn}} 1.0
|-
| vegas || Dep for resque 0.1.11 || {{result|fail}} || {{result|fail}}
|-
| SystemTimer || Dep for resque 1.2.3  || {{result|warn}}(gone from Ruby<ref name="SystemTimer">does not build on Fedora 17</ref>) || {{result|fail}}
|}
|}


Line 138: Line 179:


{|border="2" cellpadding="2" cellspacing="0"
{|border="2" cellpadding="2" cellspacing="0"
! Gem !! Upstream Gemfile !! Fedora 17 !! EPEL 6
! Gem !! Upstream Gemfile !! Fedora !! EPEL 6
|-
|-
| mocha            || 0.9.10 || {{result|warn}} 0.11.0 || {{result|warn}} 0.9.8
| mocha            || 0.9.10 || {{result|warn}} 0.11.0 || {{result|warn}} 0.9.8
|-
|-
| factory_girl    || 1.3.3  || {{result|warn}} 2.3.2 || {{result|fail}}
| factory_girl    || 1.3.3, 2.6.4 in rails3 || {{result|warn}} 2.3.2 || {{result|inprogress}} 1.3.3, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-factory_girl.git git]
|-
|-
| shoulda          || 2.9.2  || {{result|warn}} 2.11.3 || {{result|warn}} 2.11.3
| shoulda          || 2.9.2, 3.3.2 in rails3 || {{result|warn}} 2.11.3 || {{result|warn}} 2.11.3
|-
|-
| tuxml            || 0.0.1  || {{result|pass}}unneeded<ref>tuxml is apparently only needed for automated builds inside Hudson. In F17, Gitorious tests crash with "uninitialized constant Test::Unit::AutoRunner::RUNNERS", which comes from tuxml. Remove it and the tests succeed.</ref> || {{result|pass}}
| tuxml            || 0.0.1, gone in rails3 || {{result|pass}}unneeded<ref>tuxml is apparently only needed for automated builds inside Hudson. In F17, Gitorious tests crash with "uninitialized constant Test::Unit::AutoRunner::RUNNERS", which comes from tuxml. Remove it and the tests succeed.</ref> || {{result|pass}}
|-
|-
| rots            || git clone (!)  || {{result|fail}} || {{result|fail}}
| rots            || git clone (babb555)  || {{result|fail}} || {{result|inprogress}} babb555, [http://fedorapeople.org/cgit/ktdreyer/public_git/rubygem-rots.git git]
|-
|-
| capybara        || 1.0.1  || {{result|warn}} 1.1.2  || {{result|fail}}
| capybara        || 1.0.1  || {{result|warn}} 1.1.2  || {{result|fail}}
Line 158: Line 199:
| childprocess    || Dep for selenium-webdriver (0.3.6) || {{result|warn}} 0.2.0  || {{result|fail}}
| childprocess    || Dep for selenium-webdriver (0.3.6) || {{result|warn}} 0.2.0  || {{result|fail}}
|-
|-
| ffi              || Dep for selenium-webdriver (1.0.11) || {{result|pass}} 1.0.9 || {{result|fail}}
| ffi              || Dep for selenium-webdriver (1.0.11) || {{result|warn}} 1.0.9 || {{result|warn}} 1.0.9
|-
|-
| multi_json      || Dep for selenium-webdriver (1.3.6) || {{result|warn}} 1.0.3 || {{result|fail}}
| multi_json      || Dep for selenium-webdriver (1.3.6) || {{result|warn}} 1.0.3 || {{result|fail}}
Line 174: Line 215:


{|border="2" cellpadding="2" cellspacing="0"
{|border="2" cellpadding="2" cellspacing="0"
! Gem !! Upstream Gemfile !! Fedora 17 !! EPEL 6
! Gem !! Upstream Gemfile !! Fedora !! EPEL 6
|-
|-
| foreman (for dev) || 0.60.2 || {{result|fail}}  || {{result|fail}}
| foreman (only needed for Procfile tasks) || 0.60.2 || {{result|fail}}  || {{result|fail}}
|-
|-
| thor (for dev)   || Dep for foreman (0.14.6) || {{result|pass}} 0.14.6 || {{result|fail}}
| thor (Rails dep that we may not need) || Dep for foreman and Rails (0.14.6) || {{result|pass}} 0.14.6 || {{result|fail}}
|-
|-
| stompserver      || 0.9.9 || {{result|fail}}<ref>We just need a stomp-compatible server. [https://olezfdtd.wordpress.com/2010/04/22/install-gitorious-on-your-own-fedora-11-server/#section2 ActiveMQ Messaging Server] would work equally well. The stompserver gem needs [https://github.com/drizztbsd/stompserver/commit/b2dd714f9bc6d7b831767cc0d45d7f00cae2bde5 this patch] to not crash on Ruby 1.9. TBD: investigate the "stompserver_ng" fork.</ref>  || {{result|fail}}
| stompserver      || 0.9.9<ref name="GoneInRails3" /> || {{result|fail}}<ref>We just need a stomp-compatible server. [https://olezfdtd.wordpress.com/2010/04/22/install-gitorious-on-your-own-fedora-11-server/#section2 ActiveMQ Messaging Server] would work equally well. The stompserver gem needs [https://github.com/drizztbsd/stompserver/commit/b2dd714f9bc6d7b831767cc0d45d7f00cae2bde5 this patch] to not crash on Ruby 1.9. TBD: investigate the "stompserver_ng" fork.</ref>  || {{result|fail}}
|-
|-
| thin (for dev)  || 1.5.0 || {{result|warn}} 1.3.1<ref>See https://bugzilla.redhat.com/837568. Emailed maintainer January 2013.</ref> || {{result|warn}} 1.2.8
| thin (for dev)  || 1.5.0 || {{result|warn}} 1.3.1<ref>See https://bugzilla.redhat.com/837568. Emailed maintainer January 2013.</ref> || {{result|warn}} 1.2.8
Line 190: Line 231:
| rake  (for git proxy) || 0.8.7  || {{result|warn}} 0.9.6 in F18<br>10.0.3 in F19 || {{result|pass}} 0.8.7
| rake  (for git proxy) || 0.8.7  || {{result|warn}} 0.9.6 in F18<br>10.0.3 in F19 || {{result|pass}} 0.8.7
|-
|-
| resque (for resque) || 1.9.8  || {{result|fail}} || {{result|fail}}
| stomp (for stomp) || 1.1<ref name="GoneInRails3" />  || {{result|warn}} 1.2.2 || {{result|warn}} 1.1.8
|-
| redis (for resque) || 2.2.2  || {{result|fail}} || {{result|fail}}
|-
| redis-namespace (for resque) || 0.7.0  || {{result|fail}} || {{result|fail}}
|-
| sinatra        || 1.0    || {{result|warn}} 1.3.2 in F19 || {{result|pass}}
|-
| vegas (for resque) || 0.1.11 || {{result|fail}} || {{result|fail}}
|-
| SystemTimer (for resque) || 1.2.3  || {{result|warn}}(gone from Ruby<ref name="SystemTimer">does not build on Fedora 17</ref>) || {{result|fail}}
|-
| stomp (for stomp) || 1.1 || {{result|warn}} 1.2.2 || {{result|warn}} 1.1.8
|-
|-
| activemessaging (for active messaging) || 0.7.1  || (gone from rails?) || {{result|fail}}
| activemessaging (for active messaging) || 0.7.1<ref name="GoneInRails3" /> || (gone from rails?) || {{result|fail}}
|}
|}


Line 211: Line 240:


{|border="2" cellpadding="2" cellspacing="0"
{|border="2" cellpadding="2" cellspacing="0"
! Name !! Bundled version !! Fedora 17 !! EPEL 6
! Name !! Bundled version !! Fedora !! EPEL 6
|-
|-
| [https://gitorious.org/diff-display diff-display] || ??? || {{result|fail}}  || {{result|fail}}
| [https://gitorious.org/diff-display diff-display] || ??? || {{result|fail}}  || {{result|fail}}
Line 231: Line 260:


{|border="2" cellpadding="2" cellspacing="0"
{|border="2" cellpadding="2" cellspacing="0"
! Name !! Bundled version !! Fedora 17 !! EPEL 6
! Name !! Bundled version !! Fedora !! EPEL 6
|-
|-
| [https://gitorious.org/buster/bane bane] || 0.4.0 || {{result|inprogress}} 0.4.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/bane.git git] || {{result|inprogress}} 0.4.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/bane.git git]
| [https://gitorious.org/buster/bane bane] || 0.4.0 || {{result|inprogress}} 0.4.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/bane.git git] || {{result|inprogress}} 0.4.0, [http://fedorapeople.org/cgit/ktdreyer/public_git/bane.git git]

Revision as of 04:13, 8 October 2013

This document outlines the steps to get Gitorious into Fedora and EPEL.

High Level Steps and Issues

Fedora

  1. Get all Gitorious' dependencies into Fedora.
    • Several Rubygems.
    • Several Javascripts.
  2. Get Gitorious into Fedora.
    • Bundler issues: If we use different Gem versions than upstream, Bundler wants to write to Gemfile and Gemfile.lock. We will use bundler_ext to work around this. This will require the bundler_ext gem in Fedora and a lot of testing.
    • Init scripts: Create equivalent systemd unit files for Fedora & RHEL 7.
    • Ruby version: Upstream "next" branch works with Ruby 1.9.3 and 2.0.0. I'm working with upstream to maintain this compatibility via Jenkins.
    • Gem versions: Upstream uses different Gem versions than Fedora has. The biggest difference is Rails, but others are documented below. Plan of attack is to ensure that the test suite passes with both.
    • Javascript libs: There are several Git submodules in upstream (bane, capillary-js, raphael, spin.js, others). We must unbundle these and package them separately.
    • GeoIP data: Gitorious bundles GeoIP.dat, which is already available in Fedora as the "GeoIP" package.
    • FHS considerations: for the Gitorious web application itself, we need to discover how to split up the package to fit the FHS conventions of /etc/, /usr/, and so on.

EPEL

  1. Get all Gitorious's dependencies into EPEL.
    • Rails. I don't have experience packaging Rails, and there's been questions about which version to put into EPEL.
    • Various Rubygems must be branched for EPEL.
  2. Get Gitorious into EPEL.
    • Unfortunately upstream has dropped support for Ruby 1.8, so formal EPEL inclusion can only happen after RHEL 7 is released and EPEL 7 is branched.

Open review requests

Please review some of these. I'm willing to trade reviews.

Gem Package Review Request
just_paginate RHBZ #1015261
ruby-openid RHBZ #1015778
capillary RHBZ #1016370
unicorn RHBZ #786636

Dependency list

  • Fail - The package is not in Fedora/EPEL
  • File:Artwork EchoDevelopment dialog-question16.png - The package is not in Fedora/EPEL, and I'm unsure how to proceed (lib might be deprecated, etc.)
  • Inprogress - The package spec is written, but not yet accepted into Fedora/EPEL
  • Pass - The package is present in Fedora/EPEL and versions differ from upstream
  • Pass - The package is present in Fedora/EPEL and versions match upstream

(FYI, the ordering in these tables matches upstream's Gemfile.)

Gitorious Web Application Gems

Gem Upstream Gemfile Fedora EPEL 6
rails 2.3.17
Warning warn
3.0/3.2 in F18
Inprogress inprogress
2.3.17, git
activeresource 2.3.17
Warning warn
3.0/3.2 in F18
Inprogress inprogress
2.3.17, git
actionmailer 2.3.17
Warning warn
3.0/3.2 in F18
Inprogress inprogress
2.3.17, git
chronic 0.3.0[1]
Warning warn
0.6.6
Inprogress inprogress
0.3.0, git
geoip 0.8.9
Inprogress inprogress
1.2.1, git
Inprogress inprogress
1.2.1, git
daemons 1.1.0
Warning warn
1.0.10[2]
Inprogress inprogress
1.1.0, git
hoe 2.8.0[1]
Warning warn
2.12.5
Inprogress inprogress
2.8.0, git
echoe 4.3.1[1]
Pass pass
4.3.1
Inprogress inprogress
4.3.1, git
ruby-yadis 0.3.4
Inprogress inprogress
0.3.4, git
Inprogress inprogress
0.3.4, git
ruby-openid 2.2.2
Warning warn
2.1.7[3]
Inprogress inprogress
2.2.2, git
rdiscount 1.3.1.1
Warning warn
1.6.3.2
Inprogress inprogress
1.3.1.1, git
mime-types 1.16
Pass pass
1.16
Pass pass
1.16
diff-lcs 1.1.2
Pass pass
1.1.2
Pass pass
1.1.2
oauth 0.4.4
Warning warn
0.4.7 in F19
Inprogress inprogress
0.4.4, git
typhoeus Buildreq for oauth
Pass pass
Inprogress inprogress
git
curb Buildreq for oauth
Pass pass
Inprogress inprogress
git
actionpack Buildreq for oauth
Warning warn
3.2
Inprogress inprogress
2.3.17 git
paperclip 2.7.4
Inprogress inprogress
3.1.4, git
Inprogress inprogress
2.7.4, git
activesupport Dep for paperclip (2.3.17)
Warning warn
3.2.11 in F18
Inprogress inprogress
2.3.17, git
activerecord Dep for paperclip (2.3.17)
Warning warn
3.2.11 in F18
Inprogress inprogress
2.3.17, git
cocaine Dep for paperclip
Inprogress inprogress
0.2.1, git
Inprogress inprogress
0.3.0, git
bourne Dep for cocaine
Inprogress inprogress
1.1.2, git
Inprogress inprogress
1.0, git
state_machine 0.9.4
Warning warn
1.1.2
Warning warn
1.1.2
rack 1.0.1
Warning warn
1.4.0
Warning warn
1.1.0
thinking-sphinx 1.4.13
Inprogress inprogress
1.4.13, git
Inprogress inprogress
1.4.13, git
after_commit Dep for thinking-sphinx
Inprogress inprogress
1.5.3, git
Inprogress inprogress
1.5.3, git
activerecord-mysql2-adapter BuildReq for thinking-sphinx
Inprogress inprogress
1.0.10 git
Inprogress inprogress
1.0.10 git
riddle Dep for thinking-sphinx (1.5.3)
Inprogress inprogress
1.5.3, git
Inprogress inprogress
1.5.3, git
mysql2 Dep for riddle
Inprogress inprogress
0.3.11, git
Inprogress inprogress
0.3.11, git
yard Dep for riddle
Pass pass
0.8.2.1 in F19
Inprogress inprogress
0.8.2.1, git
rspec-core Dep for yard
Pass pass
Pass pass
rspec-expectations Dep for rspec-core
Pass pass
Pass pass
rspec-mocks Dep for rspec-core
Pass pass
Pass pass
builder 3.0.0
Warning warn
3.1.4 in F19
Inprogress inprogress
3.0.0, git [4]
mysql 2.8.1
Warning warn
2.8.2?
Warning warn
2.8.2?
validates_url_format_of 0.1.1
Inprogress inprogress
0.3.0, git
Inprogress inprogress
0.1.1, git
acts-as-taggable-on 2.0.6
Inprogress inprogress
2.3.3, git
Inprogress inprogress
2.0.6, git
will_paginate 2.3.15
Warning warn
3.0.2
Inprogress inprogress
2.3.15, git
just_paginate 0.0.6
Fail fail
Inprogress inprogress
0.0.6, git
shoulda-context BR for just_paginate
Fail fail
Inprogress inprogress
1.0.2, git
hodel_3000_compliant_logger 0.1.0, gone in rails3
Inprogress inprogress
0.1.0, git
Inprogress inprogress
0.1.0, git
net-ldap 0.3.1
Pass pass
0.3.1 in F18
Inprogress inprogress
0.3.1, git
capillary 1.0.2
Inprogress inprogress
1.0.2, git
Inprogress inprogress
1.0.2, git
mini_shoulda BR for capillary
Inprogress inprogress
0.5.0, git
N/A[5]
nokogiri 1.5.0
Warning warn
1.5.5
Warning warn
1.4.3.1,
1.5.0 in git
unicorn 4.3.1
Fail fail
[6]
Inprogress inprogress
4.3.1 in git
kgio Dep for unicorn (2.7.4)
Warning warn
2.8.0
Warning warn
2.8.0 in epel-testing,
2.7.4 in git
raindrops Dep for unicorn (0.10.0)
Pass pass
0.10.0
Warning warn
0.10.0 in epel-testing
exception_notification 1.0.20090728
Inprogress inprogress
2.6.1, git
Inprogress inprogress
1.0.20090728, git
revo-ssl_requirement 1.1.0
Warning warn
unneeded?[7]
Inprogress inprogress
1.1.0, git
ruby-hmac 0.4.0
Warning warn
unneeded[8]
Inprogress inprogress
0.4.0 in git
json 1.7.7
Warning warn
1.7.5
Warning warn
1.4.6,
1.7.7 in git

Queue Manager Gem dependencies

Gem Upstream Gemfile Fedora EPEL 6
resque 1.9.8
Fail fail
Fail fail
redis 2.2.2
Fail fail
Fail fail
redis-namespace 0.7.0
Fail fail
Fail fail
sinatra Dep for resque 1.2.8
Warning warn
1.3.2 in F19
Warning warn
1.0
vegas Dep for resque 0.1.11
Fail fail
Fail fail
SystemTimer Dep for resque 1.2.3
Warning warn
(gone from Ruby[9])
Fail fail

Test suite Gem dependencies

Gem Upstream Gemfile Fedora EPEL 6
mocha 0.9.10
Warning warn
0.11.0
Warning warn
0.9.8
factory_girl 1.3.3, 2.6.4 in rails3
Warning warn
2.3.2
Inprogress inprogress
1.3.3, git
shoulda 2.9.2, 3.3.2 in rails3
Warning warn
2.11.3
Warning warn
2.11.3
tuxml 0.0.1, gone in rails3
Pass pass
unneeded[10]
Pass pass
rots git clone (babb555)
Fail fail
Inprogress inprogress
babb555, git
capybara 1.0.1
Warning warn
1.1.2
Fail fail
rack-test Dep for capybara (0.6.2)
Warning warn
0.6.0
Warning warn
0.5.4
selenium-webdriver Dep for capybara (2.25.0)
Warning warn
2.3.2
Fail fail
childprocess Dep for selenium-webdriver (0.3.6)
Warning warn
0.2.0
Fail fail
ffi Dep for selenium-webdriver (1.0.11)
Warning warn
1.0.9
Warning warn
1.0.9
multi_json Dep for selenium-webdriver (1.3.6)
Warning warn
1.0.3
Fail fail
rubyzip Dep for selenium-webdriver (0.9.9)
Pass pass
0.9.4
Fail fail
xpath Dep for capybara (0.1.4)
Pass pass
0.1.4
Fail fail
launchy 2.0.5
Warning warn
0.4.0
Warning warn
0.3.7
addressable Dep for launchy (2.2.8)
Pass pass
2.2.6 in F17/F18
2.3.2 in F19
Fail fail
(unneeded?)

Possibly optional Gem dependencies

Gem Upstream Gemfile Fedora EPEL 6
foreman (only needed for Procfile tasks) 0.60.2
Fail fail
Fail fail
thor (Rails dep that we may not need) Dep for foreman and Rails (0.14.6)
Pass pass
0.14.6
Fail fail
stompserver 0.9.9[1]
Fail fail
[11]
Fail fail
thin (for dev) 1.5.0
Warning warn
1.3.1[12]
Warning warn
1.2.8
proxymachine (for dev, and git proxy) 1.2.4
Fail fail
Fail fail
eventmachine Dep for proxymachine (0.12.10)
Pass pass
0.12.10
Pass pass
0.12.10
rake (for git proxy) 0.8.7
Warning warn
0.9.6 in F18
10.0.3 in F19
Pass pass
0.8.7
stomp (for stomp) 1.1[1]
Warning warn
1.2.2
Warning warn
1.1.8
activemessaging (for active messaging) 0.7.1[1] (gone from rails?)
Fail fail

Bundled (vendored) dependencies

These deps are bundled in /vendor:

Name Bundled version Fedora EPEL 6
diff-display ???
Fail fail
Fail fail
grit ???
Warning warn
2.4.1
Fail fail
ruby-git ???
Warning warn
1.2.5[13]
Fail fail
plugins/localized_dates ???
Fail fail
plugins/open_id_authentication ???
Fail fail
plugins/restful_authentication ???
Fail fail
plugins/routing-filter ???
Fail fail

These deps are git submodules under public/javascripts/lib/:

Name Bundled version Fedora EPEL 6
bane 0.4.0
Inprogress inprogress
0.4.0, git
Inprogress inprogress
0.4.0, git
capillary-js 0.1.0
Inprogress inprogress
0.1.0, git
Inprogress inprogress
0.1.0, git
raphael 2.1.0
Inprogress inprogress
2.1.0, git
Inprogress inprogress
2.1.0, git
spin.js 1.2.7
Inprogress inprogress
1.2.7, git
Inprogress inprogress
1.2.7, git


  1. 1.0 1.1 1.2 1.3 1.4 1.5 Gone in Gitorious's upstream/feature/rails3 branch
  2. RFE filed at https://bugzilla.redhat.com/906159
  3. RFE filed at https://bugzilla.redhat.com/903854
  4. Request for EPEL 6 branch: https://bugzilla.redhat.com/723145
  5. EPEL 6's minitest 1.6.0 is too old for mini_shoulda, so we cannot run the test suite for mini_shoulda (and by extension, capillary).
  6. Unicorn package review request at https://bugzilla.redhat.com/786636
  7. SSL requirement is built into Rails 3
  8. https://groups.google.com/d/topic/gitorious/yNDA9ipKe8I/discussion
  9. does not build on Fedora 17
  10. tuxml is apparently only needed for automated builds inside Hudson. In F17, Gitorious tests crash with "uninitialized constant Test::Unit::AutoRunner::RUNNERS", which comes from tuxml. Remove it and the tests succeed.
  11. We just need a stomp-compatible server. ActiveMQ Messaging Server would work equally well. The stompserver gem needs this patch to not crash on Ruby 1.9. TBD: investigate the "stompserver_ng" fork.
  12. See https://bugzilla.redhat.com/837568. Emailed maintainer January 2013.
  13. Called "rubygem-git" in Fedora