Echoe is a simple tool for working with Rubygems. It generates Rake tasks for documentation, extension compiling, testing, packaging, and deployment. == License Copyright 2007 Cloudburst, LLC. See the included LICENSE file. Portions copyright 2006 Ryan Davis/Zen Spider Software and used with permission. See the included MIT-LICENSE file. The public certificate for this gem is at http://rubyforge.org/frs/download.php/25331/evan_weaver-original-public_cert.pem. == Features * simple configuration * comprehensive gem deployment * signed gem support * automatic changeset parsing * documentation upload to any host = Usage == Installation sudo gem install echoe == Project configuration Organize your gem according to the usual structure: lib/ README LICENSE CHANGELOG Rakefile You can add the bin/ or ext/ folders if you have executables or extensions, respectively. Your CHANGELOG should be formatted as follows (including newlines): v2.1. newest change v2. older change v1.9. oldest change This way Echoe can parse the latest version and changeset message automatically. Your Rakefile needs the following minimal contents: require 'echoe' Echoe.new('gem_name') More advanced configuration is described in the Echoe class. == Deploying your gem First, run rubyforge setup and rubyforge config if you haven't already. Make sure your Rubyforge password is correctly set. Now, to deploy the gem and documentation: rake manifest rake release rake publish_docs Once you've built your manifest, you only need to rebuild it if you add or remove files from the package structure. = Extras == All Rake tasks The following tasks are made available to your gem. Packaging: * manifest - Build a manifest list. * docs - Build the documentation. * package - Build all the packages. Testing: * test - Run the test suite. * compile - Compile C extensions, if available. * clean - Clean up generated documentation, packaging, and build files. * install - Install the gem locally. * uninstall - Uninstall the gem. Upload: * publish_docs - Publish documentation to the web. * release - Package and upload the latest release to Rubyforge. * announce - Generate a release announcement, edit it, and post it to Rubyforge. Cleaning: * clean - Delete all the generated documentation and packages. * redocs - Force a rebuild of the Rdoc files. * repackage - Force a rebuild of the package files. == Reporting problems * http://rubyforge.org/forum/forum.php?forum_id=13986 Patches and contributions are very welcome. Please note that contributors are required to assign copyright for their additions to Cloudburst, LLC. == Further resources * http://blog.evanweaver.com/articles/2007/01/10/if-you-dont-want-to-hoe-echoe