gemusta

What is this?

A basic and project-agnostic gemspec generator.

Why is this?

Some gemspec files shell out git to find the files that are used by the gem. In some circumstances read more here this can cause performance issues.

But handle a gemspec should be a easy thing, I don't believe that we need add dependencies in our projects just to generate a good gemspec. This gem is only a collection of tasks, we can use this only in development environment. Leaving our project code totally independent of this.

How is this?

You install the gem:

    gem install gemusta

Customizing the gemspec generation

To create a new and shine [your_project].gemspec.erb and use it as base for your gemspec:

    gemusta -e

Edit the generated file and then run gemusta. Every time you run this command it will use your customized .erb file or fallback to the internal one to produce a gemspec file.

Opinionated?

Gemusta make some assumptions:

  • Your project version should be a constant on a your_project/your_poroject.rb
  • You should be using git

But these are just opinions, and they are expressed in some functions on top of the erb file. If you don't follow this conventions, you can just edit the erb and provide change the methods which discover the version for your project, the files that your gem need and so on.

The End

And this is all, period.