Dealing with JRuby and jars

Charles Oliver Nutter headius at headius.com
Thu Jan 19 11:03:50 EST 2012


On Wed, Jan 18, 2012 at 10:42 PM, Eric Hodel <drbrain at segment7.net> wrote:
> in master I've unified Gem::Package::TarInput, Gem::Package::TarOutput, Gem::Format and Gem::Builder into Gem::Package which handles all the work of reading and writing .gem files.  There's also Gem::Package::Old for the YAML-ish gems.
>
> While there's no hook to replace Gem::Package with an alternate implementation, the required API is:
>
> #spec= to provide a Gem::Specification for building
> #build to build a .gem file for the spec
>
> #spec to retrieve a Gem::Specification from a .gem file
> #extract_files(dir) to extract the data.tar.gz
>
> Additionally, #verify is called from #spec for Gem::Package and ensures the gem is correctly formatted and complete.

I'll try to have a look soon. Is fetching part of this at all?

What you describe above would be useful for us packaging the maven
gems on the fly, but that's mostly a solved problem right now (we just
do it manually in a tmp dir). The real trouble is hooking how RG
retrieves a spec for a given gem name and how it later fetches the
.gem file. We have to patch both paths.

Compare this with your 1.8.13 tag to see our changes:
https://github.com/jruby/rubygems/tree/jruby-rubygems_1_8_13

- Charlie


More information about the RubyGems-Developers mailing list