public
Description: A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment
Homepage: http://blog.evanweaver.com/files/doc/fauna/echoe/
Clone URL: git://github.com/fauna/echoe.git
echoe / README
100644 115 lines (70 sloc) 3.302 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
 
Echoe
 
A Rubygems packaging tool that provides Rake tasks for documentation, extension compiling, testing, and deployment.
 
== License
 
Copyright 2007, 2008 Cloudburst, LLC. Licensed under the AFL 3. 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 the gem is here[http://rubyforge.org/frs/download.php/25331/evan_weaver-original-public_cert.pem].
 
If you use this software, please {make a donation}[http://blog.evanweaver.com/donate/], or {recommend Evan}[http://www.workingwithrails.com/person/7739-evan-weaver] at Working with Rails.
 
== Features
 
* simple configuration
* comprehensive gem deployment
* cross-packaging
* signed gem support
* automatic changeset parsing
* documentation upload to any host
 
= Usage
 
== Installation
 
Install the gem:
  sudo gem install echoe
  
If you haven't already, make sure Rubyforge is configured locally and your password is correctly set:
  rubyforge setup
  rubyforge config
 
== Project configuration
 
Organize your gem according to the usual structure:
 
  lib/
  README
  LICENSE
  CHANGELOG
  Rakefile
 
You can add the <tt>bin/</tt> or <tt>ext/</tt> folders if you have executables or extensions, respectively.
 
Your <tt>CHANGELOG</tt> 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 <tt>Rakefile</tt> needs the following minimal contents:
 
  require 'echoe'
  Echoe.new('gem_name')
  
More advanced configuration is described in the Echoe class.
 
== Deploying your gem
 
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:
 
* <tt>manifest</tt> - Build a manifest list. Shows added and removed files.
* <tt>docs</tt> - Build the documentation.
* <tt>package</tt> - Build all the packages.
 
Testing:
 
* <tt>test</tt> - Run the test suite.
* <tt>coverage</tt> - Generate a coverage report.
* <tt>compile</tt> - Compile C extensions, if available.
* <tt>clean</tt> - Clean up generated documentation, packaging, and build files.
* <tt>install</tt> - Install the gem locally.
* <tt>uninstall</tt> - Uninstall the gem.
 
Upload:
 
* <tt>publish_docs</tt> - Publish documentation to the web.
* <tt>release</tt> - Package and upload the latest release to Rubyforge.
* <tt>announce</tt> - Generate a release announcement, edit it, and post it to Rubyforge.
 
Cleaning:
 
* <tt>clean</tt> - Delete all the generated documentation and packages.
* <tt>redocs</tt> - Force a rebuild of the Rdoc files.
* <tt>repackage</tt> - Force a rebuild of the package files.
 
== Reporting problems
 
The support forum is here[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