On Jul 23, 2008, at 03:17 AM, James Tucker wrote:
Quite some time ago I wrote a blog post about the number of temporary strings that are loaded when rubygems starts up. (The largest culprit is the file list for the gems).

I've been trying to think how to overcome this for some time, without breaking the gems api, but a slightly more lightweight idea came to me today, which may be workable prior to an architecture change.

Add another field for 'non-runtime files', for covering docs, examples, rakefiles, tests, etc.

This would enable gem authors to maintain the ability to scan the gemspec for important files (often under lib/), but unimportant files would be missed out.

Initial saving on a development machine (averaging what we use in the office), would seem to be around 30-40% of the instanced objects in a `ruby -rubygems -e ""`

On a related note, I was considering a more architectural changeset to gems, which I was going to stab case in a more external 'mini- gems' package (may be quite some time away).

I discussed using gem_prelude.rb with Yehuda Katz, and I think something like a 'rubygems-small.rb' would work:

module Gem; end
require 'gem_prelude'

This uses the gem_prelude.rb that gets compiled into ruby 1.9, and I think is workable in 1.8 as well. I've not made any experiments with it, though.
_______________________________________________
Rubygems-developers mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rubygems-developers

Reply via email to