soca icon indicating copy to clipboard operation
soca copied to clipboard

Remove Jeweler

Open timcharper opened this issue 13 years ago • 2 comments

Gems are just as easy to release without Jeweler than it is with it. It usually gets needlessly injected as a runtime dependency (the gemspec it generated for soca did mark itself as a development dependency in one of the conditional branches, but in reality, using rubygems 1.8.7 and ruby 1.9.2, it's getting included as a runtime dependency). Why does this matter? Jeweler has other dependencies, such as bundler. Not only such as bundler, but bundler 1.0! If you are using bundler 1.1, you get needless dependency headaches.

True, this could be fixed upstream in jeweler. But I don't think it's worth it since it is so easy (easier?) to build gems without jeweler.

There was a place for jeweler back when we had servers that built gems automatically. Since now the convention is to build the gem locally and push it to the server, we can write as much ruby code as we like in the gemspec. The gemspec gets expanded and re-serialized without the code, so you can use things like Date.today, etc. (tar xzf the generated gem if you don't believe me)

timcharper avatar Oct 28 '11 04:10 timcharper

To build and push soca after this change:

update the file VERSION gem build soca.gemspec gem push soca-0.2.0.gem

timcharper avatar Oct 28 '11 04:10 timcharper

I have tested this patch by uninstalling soca, building a new soca gem using the new gemspec, installing the new gem, then running the following commands:

soca -v
soca generate test

timcharper avatar Oct 28 '11 04:10 timcharper