Sha256: fc6e3cdc2ef08ab4e88b5a458c2e80712a50ea58e910d184c6474b1be2e5b9bc
Contents?: true
Size: 1.89 KB
Versions: 36
Compression:
Stored size: 1.89 KB
Contents
== Corundum === Foolproof rubygems With Corudum added as a developement dependancy to your gemspec, and configured (quickly) in your Rakefile you can do: rake release and know that you're publishing something you won't be embarrassed by. === Yet Another Rubygems packager? Why is Corundum different from Jeweler or Hoe? (or...) Corundum isn't built to generate code - it doesn't build gems for you if you don't know how or don't care to. For that, check out {http://rubygems.org/gems/jeweler Jeweler}, and come back once you've understood what a .gemspec is and how it works. Because, really, writing a gem is pretty easy - you can do it in a gist if you want. And releasing Gems isn't all that hard either - rubygems has good tools to package up gems and push them to gem servers. So why Corundum? Because releasing a gem that will actually help the Ruby community at large is actually quite difficult. There are lot of fiddly details to get wrong, and even experienced devs can be {https://github.com/jbarnette/hoe-doofus/blob/master/lib/hoe/doofus.rb#L16 doofuses} sometimes. Corundum serves as a collection of safeguards against common errors in releasing gems - certainly every one that's happened to me. === Using Corundum In your coolgem.gemspec: spec.add_development_dependency "corundum" In you Gemfile: gemspec (But you were doing that anyway, right?) Check out this Rakefile: {include:file:Rakefile.rb} That's the whole thing. Now 'rake release' will push the current version of the gem, but only if we can go through a complete a correct QA process. (Incidentally, that's the Rakefile for Corundum itself.) The other goal with Corundum is to present all of these tools as configurable Tasklibs, so the power of Rake remains available. If you want to do task :default => :release Then 'rake' will do your releases. Digging in, the first thing to look at is {Corundum::Toolkit}
Version data entries
36 entries across 36 versions & 1 rubygems