Do not load activesupport 3.0, only 2.3
In generated projects:
Added step: I should see “…”
Defined @lib_path in env.rb
allow any recent redcloth version for ruby 1.9 support
Fixed “newgem –help” to not show backtrace summary
support for hoe 2.0+ DSL
‘Given a safe place’ is now in a common Before block; so no longer explicitly required
executable: generated executable includes: require ‘rubygems’
removed hoe-patched.rb since hoe 2.0+ is much more configurable
missing file from manifest.. I hate manifests.
install_shoulda - use “newgem -T shoulda” to use shoulda for testing instead of test_unit or rspec
common_steps.rb - When steps all started with ‘I …’
common.rb - using module instead of creating methods against global namespace; no more kittens killed [thx Ben Mabey]
all +require ‘rubygems’+ are conditional unless ENV [thx David Chelimsky + Ryan Tomayko]
module_name supports hyphens throughout all generators (they are treated as underscores for camelize method)
common_steps.rb - using “(.*)” for placeholders which is now cucumber defacto standard
install_cucumber: using layout like Rails’ cucumber generator: features/support/env.rb + features/step_definitions/common_steps.rb
‘rake features’ uses –format progress now
bump rubigen to 1.5.1
move website to gh-pages branch, and official homepage to drnic.github.com/newgem
Added USAGE file to install_cucumber generator so it shows up in lists of available generators
Some improvements to common.rb
Fixed ‘uninitialized constant NewgemGenerator::Newgem’ bug [#14]
Fixed some cucumber steps after rubigen refactoring
Newgem + RubiGen are Ruby 1.9.1 compliant.
Support for ~/.newgem.yml file for default CLI arguments
Example content: `default: -T rspec -i cucumber`
executable and extconf generators will create specs or tests depending on what you are using in your RubyGems
executable generator: test/spec files give more useful starting point with a StringIO passed into CLI.execute(stdout, args)
‘rake manifest’ instead of ‘rake manifest:refresh’ [was actually released in 1.0.7]
Removed ‘rake local_deploy’ and changed website to reference ‘rake install_gem’ for same purpose [fixed #9]
Fixed –version option (+ added cucumber scenario) [fixed #8]
Cleaned up the common.rb steps
Removed cucumber references in newgem’s Rakefile, hopefully fixing #7
Oops, fixed cucumber dependency from 1.1.8 to 0.1.8
Hard-coded cucumber >= 0.1.8 dependency to avoid accidently requiring unreleased versions that are only in development
local tasks/*.rake are loaded in generated gems
install_cucumber: adds a development.feature to check that gem building can succeed
cleaned up some require statements to explicitly load code from local src not an installed gem
rake default => [:test, :features] - for continuous integration via runcoderun.com
GitHub RubyGem support. `rake gemspec` generates a clean `my_project.gemspec` file that will work with GitHub
update plain theme to a peppermint green colour; updated newgem’s own website to same theme
Lighthouse Project created for tickets/suggestions: drnic.lighthouseapp.com/projects/18881-newgem
newgem no longer generates a website by default; use -w to create one; or -i website; or script/generate install_website
dev dependency on latest cucumber gem
no requirement for cucumber gem to be installed [fixes #1]
hoe is patched and cached within newgem so that README.* is supported [fixes #5]
rake-automated patching of hoe.rb from patches/hoe/*.patch
Fix up readme + post-install notices based on 1.0.0 changes [thx Tomasz Muras]
Remove old rails cucumber generator cruft from env.rb
Clean up some feature/steps
Yay for 1.0.0 of New Gem Generator!
massive overhaul of Hoe definition and rake tasks
config/hoe.rb is gone, a more condensed version is back in Rakefile
config/dependencies.rb is gone, this functionality is now supported by RubyGems 1.2’s dev dependency mechanism
generated gems no longer have generated tasks; rather they reuse those in newgem itself
to override a task, use the help method remove_task
Hoe declaration is more concise and reuses the available defaults by Hoe
No more wacky CONSTANTS in hoe declaration; reusing $hoe to access these values
no more version.rb; the VERSION constant is in lib/gemname.rb
install_website: uses a config/website.yml for username/host/remote_dir (defaults to rubyforge)
Removed install_rspec_stories which was superseded by install_cucumber
execute generator uses a lib/appname/cli.rb file
basic feature descriptions for newgem and executable generators
Cucumber support: install_cucumber generator, and features generator for cucumber scope
Remove License.txt as its contents are in README (newgem + generator)
RedCloth dependency - changed to new 4.0.0 version which is apparently new a shiny + fast
Load RubyForge autoconfig correctly
Integrate twitter search for ‘newgem’ on website
README.rdoc is the name of generated and internal README root files, since github makes them look pretty
RedCloth dependency - changed to =3.0.3 as 3.0.4 is dodgy apparently [Roger Pack]
newgem: added –project option to allow a different Rubyforge [Yossef Mendelssohn]
newgem: README contains generated year + name for license section [Yossef Mendelssohn]
updated copyright in license
Refactored generated tests into install_test_unit, so rspec users don’t get test folder
Cleaned up –simple and added task for generating gemspec file (for github) [Yehuda Katz]
removed :nodoc: from version.rb’s module [Steven Parkes]
upgraded rubigen dependency to 1.3.0
Added explicit instruction to edit ~/.rubyforge/user-config.yml in PostInstall.txt
generated website/index.txt has customised rubyforge/github/gitorious information for git
installing newgem now displays a post-install message (from PostInstall.txt)
uses github_username value from .rubyforge/user-config.yml
moved EXTRA_DEPENDENCIES to top of config/hoe.rb
websites/*.txt are processed as ERB templates
Cleaned up the REV cmd [Sascha Teske]
Replaced hardcoded rspec values done in a hurry at RubyFools with parameterised values [Alsak Hellesoy]
moved the ‘by Daniel Cadenas’ reference to the correct template.rhtml
renamed template.rhtml -> template.html.erb in gem + generators
fixed broken install_rspec_stories test
script/console - irb/console for your gem under development [Orion]
New Generator: install_rspec_stories for rubygems
module.rb - more advanced $:.unshift sequence/cmd
extconf generator
creates test/test_#{name}_extn.rb test file
creates .autotest file for *.c -> test/test_*_extn.rb
failed compilation destroyes *.o/so/bundle/dll files so tests fail too
USAGE has docco on files to ignore in SCM + hoe
requirements.rb no longer loads main lib file; no idea why it did it before
extconf generator - for C-extensions
Hoe instance stored in $hoe so can be accessed from tasks/*.rake
rspec “rake spec” supports spec/**/*_spec.rb search now [Steven Parkes]
Added newgem_theme long_box_theme [Daniel Cadenas]
Upgraded generated/local README.txt for latest hoe
remove options from ‘env ruby’ in newgem bin
Updated generated config/hoe.rb for latest hoe 1.5 requirements
Added #!/usr/bin/env ruby line to bin/newgem
Fixed docco for -T option (was ‘-t’ in docco) [uploaded on 2008-1-3]
Oops, removed .git* from the hoe clean list as that blows away the .git folder…
Added a newgem_simple_generator to support the creation of a skinny gem skeleton [thx wycats]
Added ‘.git*’ to default list of ignored files by hoe
Cleaned the history join string to make proper n instead of \n
Checked in empty_log as empty.log was being ignored by svn
Promoted ‘application_generator’ and ‘component_generator’ to Rubigen
from NewGem project (they are available even if newgem not installed)
Application generator inserts scopes passed in at cmd line, not app name
Generated gems have default testing scope: test_unit
Added manifest:refresh rake task to recreate Manifest.txt with all files
Corrected the generated readme for application generators
application_generator includes the install_rubigen_scripts generator
if website included, no “overwrite tasks/website.rake” questions
Update to docco for rubigen-based output [thx Noah Gibbs]
Fixed website dir location if gem name + project name differ [thx Noah Gibbs]
rake tasks use rubyforge_username instead of RUBYFORGE_USERNAME constant
Running “newgem .” in a trunk, branches, or tags folder will look in parent folder for gem_name
Added missing win_script.cmd for install_website generator [thx sutch]
Upgrade rubigen === 1.0.4
Clean up newgem_gen usage statement
website generated by default, -W to turn off, -w is no longer an option
Upgrade rubigen dependency to 1.0.3 to pushout upgrade
Re-release as there seemed to be an incorrect Rakefile in 0.13.0
Added :newgem as a source for destroy script
application_generator
test.rb passes APP_ROOT as parameter instead of a name, as APP_ROOT is already …/myproject
add BASE_DIRs for a clean list of required folders
plain_theme_generator
Renamed from plain_generator
HIGHLIGHT - RubiGen integration - using a Rails-like generator
Now, each RubyGem has script/generate to access Rails-like generators too!!!
newgem can be run ontop of existing RubyGems and all is not destroyed!
Various included generators (application_generator, component_generator)
Website creation is now a generator, and is optionally included via newgem -w
Rspec support is now a generator, and is optionally included via newgem -t rspec
JRuby support is now a generator, and is optionally included via newgem -j
The Rakefile is now <5 lines - all config is in config/hoe.rb
Generated gems:
Started to add jruby specific features (-j option)
Gems named xxx-1.2.3-jruby.gem
Includes: require ‘java’
Add link to website for Using New Gem on Windows (without cygwin) [thx Jorge Cangas]
index.txt “email me” now refers to forum url as well
NewGem
An error message is shown if Hoe gem isn’t available when running rake on the gem
Lots of tasks refactored into /tasks folder
How To UPGRADE
NOTE: We’ve never had a “How to Upgrade” before! :)
Copy your Rakefile to Rakefile.old (to retain your configuration)
Run: newgem .
Press ‘a’ to allow all changes.
Open config/hoe.rb
Replace this with the equivalent lines/details from Rakefile.old
Test all is well with “rake -T” and “rake check_manifest” (the manifest should have been rebuilt by ‘newgem .’)
2 major enhancement
Using Erb for templates [thx snippets.dzone.com/posts/show/1723]
RubyGem.tmbundle for TextMate - to install go to gem folder and run “rake bundles:tm”
1 minor enhancement
-V option shows current newgem version [thx Gert Goet]
Hoe#extra_deps permanently changes @extra_deps [thx MIYAMUKO Katsuyuki]
Dev improvements
Imports svn_branch for svn rake tasks
Minor website changes
Added link to Topfunky’s tutorial on Hoe
1 major enhancement
Create trunk/branches/tags subfolders using -s/–svn option
6 minor enhancements
Added dependency to activesupport gem
Modified spec.rb template for new rpec syntax (describe “…” { it “…” }) [thx Aslak Hellesøy]
Added ‘email.txt’ to the CLEAN list to be removed on ‘rake clean’
Added –delete-excluded to the rsync command [thx Jeroen Janssen]
On template: “Version” is in <p>‘s
Specified CLEAN is added/or’d with default Hoe clean_globs (via |=)
1 website enhancement
Refreshed the example output as its a big old (CHANGELOG -> History.txt)
Removed the “click anywhere” javascript in version box - it was playing up with the link to the book
2 minor enhancement
website_upload now ignores .svn files [Thx Jeroen Janssen]
website/index.txt includes link to "8 steps to fix other ppls code" and a default svn URL
1 website enhancement
Link to “Beginning Ruby” as it features this gem [Thx Peter Cooper for the plug] - its an affiliate amazon link so I can make $$$ and retire to Fiji
1 major enhancement
rspec test framework now works via ‘spec’ task [Jeroen Janssen]
3 minor improvement
For rspec gems, default task => spec task
Generated rakefile checks for existance of rspec gem else shows how to get it
The require statement in the lib/<gemname>.rb file now uses lowercase project name [Jeroen Janssen]
3 major enhancements
Generated Rakefile only attempts to discover username from ~/.rubyforge/user-config.yml when its required [thx Jeroen Janssen]
Helpful error message produced if ‘rubyforge setup’ never run
Fixed the REV algorithm for subversion [thx Robert Berger]
2 minor enhancement
Copied index.txt into README.txt - it looks crap, but at least there is content
Generated Rakefile was missing a \
4 minor enhancements
Fixed the generation of test files in the manifest
Generated rakefiledeploy prompts user to do svn tag
Renamed README -> README.txt to conform to new hoe change
Changed History.txt markup (+++ => ==; + => *) [Thx Jeroen Janssen]
1 dependency update:
Hoe 1.2.1
Still being worked on:
Gems using rspec include a spec task to run all spec tests; currently tests aren’t working.
3 major enhancements
* can generate rspec default tests (or still test::unit tests) using --with-test=rspec [thx Robby Russell]
fetches your full name and email from ~/.rubyforge/user-config.yml (add keys user_name and email)
2 minor enhancements
Generated lib/#{gem_name}.rb includes an empty module
Generated lib/#{gem_name}.rb does not include “require all”, instead you do it manually for each included file
5 minor enhancements
* Pass your full name into the generator to be inserted into License.txt, index.txt, Rakefile etc
‘Licence’ => ‘License’ (thx Peter Burns)
Generates a blank index.html so that ‘rake package’ works straight away
Includes :local_deploy which does tasks :website_generate and :install_gem
License.txt generated * this gem has a License.txt file (MIT license)
1 minor enhancement
Added ‘deploy’ task that generates website AND release new gem
1 website fix
Fixed download link
1 minor improvement:
Generated apps include a “require ‘rubygems’ line at the top”
1 website fix
Notes that the index.txt file includes Dr Nic details, not their own.
1 bugfix:
I thoughtfully added an extra line (commented out) for sending the website to a subfolder… it caused grief at the 13th hour
3 major enhancements:
Includes a basic website template, with rake tasks for generation and upload to rubyforge
Generates a History.txt file, and automatically uses it in Hoe task
Generated applications include framework for supporting command line options
3 minor enhancements:
Include History.txt in this gem
test files ordered correctly in generated Manifest.txt
no blank line in Manifest.txt if no bin apps
Generated test file’s class name now prefixed with Test, instead of suffixed
Uses hoe itself - less hypocritical
Generated test files use name ‘test_<gemname>.rb’ instead of ‘<gemname>_test.rb’ to support
ZenTest’s autotest expectations of naming. Manifest updated too.
Installed gems now don’t require ‘hoe’ (based on comments at blog.evanweaver.com/articles/2007/01/10/if-you-dont-want-to-hoe-echoe)
Generated with the Darkfish Rdoc Generator 2.