Monday, February 26, 2007

RubyGems

A recent JavaPosse podcast compared RubyGems to CPAN, which aroused my interest.

Gems are units of packaging and deployment for Ruby code with a reasonable versioning scheme. Dependencies can be specified only at the level of whole gems, e.g.:

    require_gem 'activesupport', '<= 1.3.1'
which is analogous to OSGi's require-bundle or JSR 277's import.

Dependency versions may be hard-coded, i.e. included in the using code, or can be separated out into a YAML config file which is presumably analogous to OSGi's bundle manifest.

There were some hints in the documentation that multiple versions of a gem could be used "side by side", but I'd like to understand how types are dereferenced in Ruby and whether a gem provides a proper name space of types.

No comments:

Projects

OSGi (130) Virgo (59) Eclipse (10) Equinox (9) dm Server (8) Felix (4) WebSphere (3) Aries (2) GlassFish (2) JBoss (1) Newton (1) WebLogic (1)

Blog Archive