# Rubyforge RubyGem propagation delay

**URL:** <https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334>\
**Category:** Ruby\
**Created:** [April 21, 2008, 9:48am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334 "2008-04-21T09:48:40Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [April 21, 2008, 9:48am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/1 "2008-04-21T09:48:40Z")

</div>

Hi,

I noticed that when I upload a new gem to Rubyforge, it takes several  
hours until I can install it via “gem”. If you try within that period  
you are getting a 404 error (at least here in Germany, maybe the mirror  
is very slow), which is annoying and leads to all kind of bug reports,  
and that you have to delay the announcement of a new version for hours.

I understand that mirrors are neccessary in this growing Ruby community,  
but if the index list (the list of available gems) would be fetched from  
the mirror, the 404 wouldn’t happen.

Alternatively, a message other than 404 would be helpful to the user  
that he or she should retry later. Or what about the idea to  
contact the master rubyforge server, in case of 404?

Any other solutions?

Thanks!

Michael

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [April 24, 2008, 3:48am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/2 "2008-04-24T03:48:19Z")

</div>

On Mon, 2008-04-21 at 16:47 +0900, Michael N. wrote:

> the mirror, the 404 wouldn’t happen.
> 
> Alternatively, a message other than 404 would be helpful to the user  
> that he or she should retry later. Or what about the idea to  
> contact the master rubyforge server, in case of 404?

Hi Michael -

Another option is for RubyForge to just serve up gems for the first 24  
hours or so after they’re released. Jeremy K. did some nice rewrite  
rules for this:

[http://rubyforge.org/tracker/index.php?func=detail&aid=14803&group\_id=5&atid=104](http://rubyforge.org/tracker/index.php?func=detail&aid=14803&group_id=5&atid=104)

Just need to get that into place…

Yours,

Tom

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [April 25, 2008, 1:08am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/3 "2008-04-25T01:08:16Z")

</div>

On Apr 23, 2008, at 18:47 , Tom C. wrote:

> Another option is for RubyForge to just serve up gems for the first 24  
> hours or so after they’re released. Jeremy K. did some nice  
> rewrite  
> rules for this:
> 
> [http://rubyforge.org/tracker/index.php?func=detail&aid=14803&group\_id=5&atid=104](http://rubyforge.org/tracker/index.php?func=detail&aid=14803&group_id=5&atid=104)

I have a clean and simple 404 handler written in ruby that allows for  
pattern matching and redirection. Such a thing could easily be used by  
the mirrors to throw back at rubyforge.

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [June 27, 2008, 5:37am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/4 "2008-06-27T05:37:47Z")

</div>

On Jun 26, 2008, at 11:26 PM, Tom C. wrote:

> some PHP code

excuse me?

what would it take to rewrite the site to be in ruby? How long do you  
think it would take one to do it?

-------------------------------------------------------|  
~ Ari

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [June 27, 2008, 5:29am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/5 "2008-06-27T05:29:36Z")

</div>

On Fri, 2008-04-25 at 08:07 +0900, Ryan D. wrote:

> pattern matching and redirection. Such a thing could easily be used by  
> the mirrors to throw back at rubyforge.

I just added these rewrite rules and wrote some PHP code to populate the  
file that the RewriteMap reads… that should cut the deploy time down  
to the gem index rebuild interval (currently 30 minutes)…

Yours,

tom

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [June 27, 2008, 6:06pm UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/6 "2008-06-27T18:06:09Z")

</div>

On Fri, Jun 27, 2008, fedzor wrote:

> excuse me?
> 
> what would it take to rewrite the site to be in ruby? How long do you think  
> it would take one to do it?

It’s a fork of the code that originally ran SourceForge. It’s not a  
small app.

[http://gforge.org/](http://gforge.org/)

It works well enough. The fact that it’s not in Ruby doesn’t seem like  
a compelling enough reason to change.

Ben

---

<div class="post-metadata">

**Author:** ![michaeln](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b19c9b/32.png) [@michaeln](https://www.ruby-forum.com/u/michaeln)\
**Post date:** [June 27, 2008, 5:44am UTC](https://www.ruby-forum.com/t/rubyforge-rubygem-propagation-delay/135334/7 "2008-06-27T05:44:49Z")

</div>

On Fri, 2008-06-27 at 12:34 +0900, fedzor wrote:

> On Jun 26, 2008, at 11:26 PM, Tom C. wrote:
> 
> > some PHP code
> 
> excuse me?
> 
> what would it take to rewrite the site to be in ruby? How long do you  
> think it would take one to do it?

Hard to say… it’s a decent-size PHP app:

# ============ $ wc -l `find . -name "*.class"` | grep total 36384 total $ wc -l `find . -name "*.php"` | grep total 50944 total

But a nicely-done Rails app would probably be 1/10th the size…

Yours,

tom
