README.rdoc in gemsmith-1.5.0 vs README.rdoc in gemsmith-2.0.0

- old
+ new

@@ -1,30 +1,35 @@ = Overview -{<img src="https://secure.travis-ci.org/bkuhlmann/gemsmith.png" />}[http://travis-ci.org/bkuhlmann/gemsmith] +{<img src="https://badge.fury.io/rb/gemsmith.png" alt="Gem Version" />}[http://badge.fury.io/rb/gemsmith] +{<img src="https://codeclimate.com/github/bkuhlmann/gemsmith.png" alt="Code Climate GPA" />}[https://codeclimate.com/github/bkuhlmann/gemsmith] +{<img src="https://secure.travis-ci.org/bkuhlmann/gemsmith.png" alt="Travis CI Status" />}[http://travis-ci.org/bkuhlmann/gemsmith] Gemsmith allows you to easily craft new gems via the command line with custom settings (if desired). If you are a fan of Bundler[https://github.com/carlhuda/bundler], then you'll appreciate the additional capabilities of this gem. Gemsmith is essentially an enhanced version of Bundler's gem building capabilities. = Features * Builds a gem skeleton with Bundler functionality in mind. * Supports common settings that can be applied to new gem creations. * Supports binary skeletons with Thor[https://github.com/wycats/thor] command line functionality. -* Supports {Ruby on Rails}[http://rubyonrails.org] skeletons. -* Supports RSpec[http://rspec.info] skeletons. +* Supports {Ruby on Rails}[http://rubyonrails.org]. +* Supports RSpec[http://rspec.info]. +* Supports Pry[http://pryrepl.org]. +* Supports Guard[https://github.com/guard/guard]. +* Supports {Code Climate}[https://codeclimate.com]. * Supports {Travis CI}[http://travis-ci.org] skeletons. * Adds commonly needed README, CHANGELOG, LICENSE, etc. template files. * Provides the ability to open any installed gem within your favorite editor. = Requirements 1. A UNIX-based system. -2. {Ruby 1.9.x}[http://www.ruby-lang.org] -3. RubyGems[http://rubygems.org] -4. Bundler[https://github.com/carlhuda/bundler] +2. {Ruby 2.0.x}[http://www.ruby-lang.org]. +3. RubyGems[http://rubygems.org]. +4. Bundler[https://github.com/carlhuda/bundler]. = Setup Type the following from the command line to install: @@ -51,11 +56,11 @@ gem_url: <author URL> company_name: <author name> company_url: <author URL> github_user: <github user> year: <current year> - ruby_version: 1.9.0 + ruby_version: 2.0.0 rails_version: 3.2.0 = Usage From the command line, type: gemsmith help @@ -66,16 +71,22 @@ gemsmith -o, [open=NAME] # Opens gem in default editor (assumes $EDITOR environment variable). gemsmith -v, [version] # Show version. For more gem creation options, type: gemsmith help create - -b, [--bin] # Add binary support. - -r, [--rails] # Add Rails support. - -s, [--rspec] # Add RSpec support. - # Default: true - -t, [--travis] # Add Travis CI support. - # Default: true + -b, [--bin] # Add binary support. + -r, [--rails] # Add Rails support. + -p, [--pry] # Add Pry support. + # Default: true + -g, [--guard] # Add Guard support. + # Default: true + -s, [--rspec] # Add RSpec support. + # Default: true + -t, [--travis] # Add Travis CI support. + # Default: true + -c, [--code-climate] # Add Code Climate support. + # Default: true Also, don't forget that once you have created your gem skeleton, the following rake tasks are also available to you via Bundler (i.e. rake -T): rake build # Build <gem>-<version>.gem into the pkg directory @@ -85,22 +96,29 @@ = Best Practices 1. {Best Practices While Cutting Gems}[http://rubysource.com/crafting-rubies-best-practices-while-cutting-gems]. 2. {Ruby on Rails Gem Packaging}[http://weblog.rubyonrails.org/2009/9/1/gem-packaging-best-practices]. 3. {Why You Should Use a BSD Style License}[http://www.freebsd.org/doc/en/articles/bsdl-gpl/article.html]. -4. Ensure the RUBYOPT env variable includes the -w option. {Details}[http://avdi.org/devblog/2011/06/23/how-ruby-helps-you-fix-your-broken-code]. +4. Add -w to the RUBYOPT environment variable when testing. {Details}[http://avdi.org/devblog/2011/06/23/how-ruby-helps-you-fix-your-broken-code]. +== When To Include a Railtie (quoted from {Crafting Rails Applications}[http://pragprog.com/book/jvrails/crafting-rails-applications] - Page 93 by José Valim) + +* "Your gem needs to perform a given task while or after the Rails application is initialized." +* "Your gem needs to change a configuration value, such as setting a generator." +* "Your gem must provide Rake tasks and generators in nondefault locations (the default location for the former is lib/tasks and lib/gen- erators or lib/rails/generators for the latter)." +* "You want your gem to provide configuration options to the appli- cation, such as config.my_gem.key = :value." + = Tests To test, do the following: 1. cd to the gem root. 2. bundle install 3. bundle exec rspec spec = Contributions -Please log all feedback/issues via {GitHub Issues}[https://github.com/bkuhlmann/gemsmith/issues]. Thanks. +Read CONTRIBUTING for details. = Credits Developed by {Brooke Kuhlmann}[http://www.redalchemist.com] at {Red Alchemist}[http://www.redalchemist.com]