capistrano 2.0.0 → 2.15.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.travis.yml +7 -0
  4. data/CHANGELOG +737 -18
  5. data/Gemfile +13 -0
  6. data/README.md +94 -0
  7. data/Rakefile +11 -0
  8. data/bin/cap +0 -0
  9. data/bin/capify +37 -22
  10. data/capistrano.gemspec +40 -0
  11. data/lib/capistrano/callback.rb +5 -1
  12. data/lib/capistrano/cli/execute.rb +10 -7
  13. data/lib/capistrano/cli/help.rb +39 -16
  14. data/lib/capistrano/cli/help.txt +44 -16
  15. data/lib/capistrano/cli/options.rb +71 -11
  16. data/lib/capistrano/cli/ui.rb +13 -1
  17. data/lib/capistrano/cli.rb +5 -5
  18. data/lib/capistrano/command.rb +215 -58
  19. data/lib/capistrano/configuration/actions/file_transfer.rb +29 -14
  20. data/lib/capistrano/configuration/actions/inspect.rb +3 -3
  21. data/lib/capistrano/configuration/actions/invocation.rb +224 -22
  22. data/lib/capistrano/configuration/alias_task.rb +26 -0
  23. data/lib/capistrano/configuration/callbacks.rb +26 -27
  24. data/lib/capistrano/configuration/connections.rb +130 -52
  25. data/lib/capistrano/configuration/execution.rb +34 -18
  26. data/lib/capistrano/configuration/loading.rb +99 -6
  27. data/lib/capistrano/configuration/log_formatters.rb +75 -0
  28. data/lib/capistrano/configuration/namespaces.rb +45 -12
  29. data/lib/capistrano/configuration/roles.rb +28 -2
  30. data/lib/capistrano/configuration/servers.rb +51 -10
  31. data/lib/capistrano/configuration/variables.rb +3 -3
  32. data/lib/capistrano/configuration.rb +20 -4
  33. data/lib/capistrano/errors.rb +12 -8
  34. data/lib/capistrano/ext/multistage.rb +67 -0
  35. data/lib/capistrano/ext/string.rb +5 -0
  36. data/lib/capistrano/extensions.rb +1 -1
  37. data/lib/capistrano/fix_rake_deprecated_dsl.rb +8 -0
  38. data/lib/capistrano/logger.rb +112 -5
  39. data/lib/capistrano/processable.rb +55 -0
  40. data/lib/capistrano/recipes/compat.rb +2 -2
  41. data/lib/capistrano/recipes/deploy/assets.rb +201 -0
  42. data/lib/capistrano/recipes/deploy/dependencies.rb +2 -2
  43. data/lib/capistrano/recipes/deploy/local_dependency.rb +10 -2
  44. data/lib/capistrano/recipes/deploy/remote_dependency.rb +54 -2
  45. data/lib/capistrano/recipes/deploy/scm/accurev.rb +169 -0
  46. data/lib/capistrano/recipes/deploy/scm/base.rb +31 -11
  47. data/lib/capistrano/recipes/deploy/scm/bzr.rb +14 -14
  48. data/lib/capistrano/recipes/deploy/scm/cvs.rb +11 -9
  49. data/lib/capistrano/recipes/deploy/scm/darcs.rb +12 -1
  50. data/lib/capistrano/recipes/deploy/scm/git.rb +293 -0
  51. data/lib/capistrano/recipes/deploy/scm/mercurial.rb +23 -15
  52. data/lib/capistrano/recipes/deploy/scm/none.rb +55 -0
  53. data/lib/capistrano/recipes/deploy/scm/perforce.rb +54 -28
  54. data/lib/capistrano/recipes/deploy/scm/subversion.rb +36 -18
  55. data/lib/capistrano/recipes/deploy/scm.rb +1 -1
  56. data/lib/capistrano/recipes/deploy/strategy/base.rb +32 -4
  57. data/lib/capistrano/recipes/deploy/strategy/copy.rb +238 -43
  58. data/lib/capistrano/recipes/deploy/strategy/remote.rb +1 -1
  59. data/lib/capistrano/recipes/deploy/strategy/remote_cache.rb +11 -1
  60. data/lib/capistrano/recipes/deploy/strategy/unshared_remote_cache.rb +21 -0
  61. data/lib/capistrano/recipes/deploy/strategy.rb +1 -1
  62. data/lib/capistrano/recipes/deploy.rb +265 -123
  63. data/lib/capistrano/recipes/standard.rb +1 -1
  64. data/lib/capistrano/role.rb +102 -0
  65. data/lib/capistrano/server_definition.rb +6 -1
  66. data/lib/capistrano/shell.rb +30 -33
  67. data/lib/capistrano/ssh.rb +46 -60
  68. data/lib/capistrano/task_definition.rb +16 -8
  69. data/lib/capistrano/transfer.rb +218 -0
  70. data/lib/capistrano/version.rb +6 -17
  71. data/lib/capistrano.rb +4 -1
  72. data/test/cli/execute_test.rb +3 -3
  73. data/test/cli/help_test.rb +33 -7
  74. data/test/cli/options_test.rb +109 -6
  75. data/test/cli/ui_test.rb +2 -2
  76. data/test/cli_test.rb +3 -3
  77. data/test/command_test.rb +144 -124
  78. data/test/configuration/actions/file_transfer_test.rb +41 -20
  79. data/test/configuration/actions/inspect_test.rb +21 -7
  80. data/test/configuration/actions/invocation_test.rb +123 -30
  81. data/test/configuration/alias_task_test.rb +118 -0
  82. data/test/configuration/callbacks_test.rb +41 -46
  83. data/test/configuration/connections_test.rb +187 -36
  84. data/test/configuration/execution_test.rb +18 -2
  85. data/test/configuration/loading_test.rb +33 -4
  86. data/test/configuration/namespace_dsl_test.rb +54 -5
  87. data/test/configuration/roles_test.rb +114 -4
  88. data/test/configuration/servers_test.rb +97 -4
  89. data/test/configuration/variables_test.rb +12 -2
  90. data/test/configuration_test.rb +9 -13
  91. data/test/deploy/local_dependency_test.rb +76 -0
  92. data/test/deploy/remote_dependency_test.rb +146 -0
  93. data/test/deploy/scm/accurev_test.rb +23 -0
  94. data/test/deploy/scm/base_test.rb +1 -1
  95. data/test/deploy/scm/bzr_test.rb +51 -0
  96. data/test/deploy/scm/darcs_test.rb +37 -0
  97. data/test/deploy/scm/git_test.rb +274 -0
  98. data/test/deploy/scm/mercurial_test.rb +134 -0
  99. data/test/deploy/scm/none_test.rb +35 -0
  100. data/test/deploy/scm/perforce_test.rb +23 -0
  101. data/test/deploy/scm/subversion_test.rb +68 -0
  102. data/test/deploy/strategy/copy_test.rb +240 -26
  103. data/test/extensions_test.rb +2 -2
  104. data/test/logger_formatting_test.rb +149 -0
  105. data/test/logger_test.rb +13 -2
  106. data/test/recipes_test.rb +25 -0
  107. data/test/role_test.rb +11 -0
  108. data/test/server_definition_test.rb +15 -2
  109. data/test/shell_test.rb +33 -1
  110. data/test/ssh_test.rb +40 -24
  111. data/test/task_definition_test.rb +18 -2
  112. data/test/transfer_test.rb +168 -0
  113. data/test/utils.rb +28 -33
  114. metadata +215 -101
  115. data/MIT-LICENSE +0 -20
  116. data/README +0 -43
  117. data/examples/sample.rb +0 -14
  118. data/lib/capistrano/gateway.rb +0 -131
  119. data/lib/capistrano/recipes/deploy/templates/maintenance.rhtml +0 -53
  120. data/lib/capistrano/recipes/upgrade.rb +0 -33
  121. data/lib/capistrano/upload.rb +0 -146
  122. data/test/gateway_test.rb +0 -167
  123. data/test/upload_test.rb +0 -131
  124. data/test/version_test.rb +0 -24
data/CHANGELOG CHANGED
@@ -1,4 +1,723 @@
1
- *2.0.0* July 21, 2007
1
+ ## 2.15.5 / July 4 2013
2
+
3
+ * Fix multistage argument parsing when using the `-s` option. (@jmazzi)
4
+ * Tweaks to the asset recipes. (@curtislinden)
5
+ * Use quotes around SCM usernames and passwords (@carloslopes)
6
+ * Avoid git warning when cloning Git repository using sha1 (@bpaquet)
7
+
8
+ ## 2.15.4 / April 29 2013
9
+
10
+ * Fix parallel command logging (@gnufied)
11
+ * Fix a double-asset manifest problem on Rails upgrades. (@jimryan)
12
+
13
+ ## 2.15.3 / April 25 2012
14
+
15
+ * For deploy:cleanup, use try_sudo with rm command. (@joshstaiger)
16
+ * Restore maintenance.rhtml (@chulkilee)
17
+ * Fixes GH-434, If branches is an array of array, iterate them separately. (@gnufied)
18
+
19
+ A big "thank you" to the people who've pushed really amazing patches to the
20
+ 2.15.x branch so soon after it's release. 2.15.0 was just too huge to go out
21
+ bug free.
22
+
23
+ ## 2.15.2 / April 24 2013
24
+
25
+ * Fixed a bug with asset_paths (String vs. Array). (@joeycarmello)
26
+
27
+ ## 2.15.1 / April 23 2013
28
+
29
+ * Support for Rails 4 (and other) randomised asset manifest names. (@jimryan)
30
+
31
+ ## 2.15.0 / April 23 2013
32
+
33
+ * New varaible :shared_assets_prefix to allow people to host somewhere other
34
+ than `/assets/`. Default is `assets`.
35
+ * Bring back web:enable and web:disable tasks. Sincerely apologies to all affected
36
+ removing these was one of the most glaring mistakes we've made on this project
37
+ and I feel personally responsible.
38
+ * Makes :git_shallow_clone work with branches (@cannikin)
39
+ * Avoid removing required assets (@bosko)
40
+ * Fix escaping of asset_paths when calling `deploy:finalize_update` (@mcary)
41
+ * Improve parallel command logging (@mpapis)
42
+ * Allow updating variables in the cap shell `cap> set :some_setting new_value`
43
+ (@jpfuentes2)
44
+ * Add the option to configure `Capistrano::Logger.default_formatters=` this
45
+ relates to the previous merging of the capistrano-colors gem. (@kellyredding)
46
+ * Don't attempt to connect to a nil `:gateway` (@mattheath)
47
+ * Simplify our .gemspec dependency list (@timoschilling)
48
+ * Make the existece of `config/deploy/{stage}.rb` optional, it'll be loaded if
49
+ it exists, otherwise we continue without it (@ymainier)
50
+ * Misc spelling/typo fixes. (@mv)
51
+ * Update mtime and atime with touch when fixing asset timestamps (@wildoats)
52
+ * Change call of `rake {env} precompile:all` to drop the errornous `{env}` (@zxiest)
53
+ * Evaluate assets_role at runtime using a lambda (@nlenepveu)
54
+ * Handle when hosts (for example by joining/leaving the no_release meta group)
55
+ have different old releases for `deploy:cleanup` (@oggy)
56
+ * Check for nil when tearing down connections (@yyuu)
57
+ * Go back to using SCP for uploads as against SFTP (@pjungwir)
58
+ * Added an option to dereference symlinks when using the :copy strategy
59
+ (`set :copy_dereference_symlink, true`) useful when your working directory
60
+ contains files symlinked in from outside your project root (@mehmetc)
61
+ * Small typo fix in README (@yule)
62
+ * Add Ruby 2.0.0-p0 to the TravisCI build (@jarrettmeyer)
63
+ * Add the option to set the shared asset prefix for Rails,
64
+ (`set :shared_assets_prefix, "my_shared_assets"`) corresponds with it's
65
+ namesake in Rails. By default is set to `assets`. (@spectator)
66
+ * Improved error messages for `cap {stage} deploy:check` (@petems)
67
+ * Make `run_locally` work with the `--dry-run` flag. (@flagthisiskun)
68
+ * Fix a link in the README to writing a good commit message. (@mhutchin)
69
+ * Code style fixes (@mv)
70
+ * Report differently if the command was killed by a signal (for example the
71
+ oom killer on Ubuntu/Debian). (@tanob)
72
+
73
+
74
+ ## 2.14.0 / January 9 2013
75
+
76
+ * Removed ui.output_cols limit of 80 chars (@aussielunix)
77
+ * Added :p4charset variable for Perforce command line (@randyinla)
78
+ * Added support for rolling back assets, and removing expired assets (@ndbroadbent)
79
+ * Merged in `capistrano_colors` gem, and renamed to 'log_formatters', since it does much more than just colors
80
+ (@ndbroadbent)
81
+ * Use more intelligence in setting the :scm variable based on known version control directory names (@czarneckid)
82
+ * Remove the deploy:web:{disable, enable} tasks (@carsomyr)
83
+ * Group finalize_update shell commands into one command, harden shell calls with #shellescape, and separate arguments
84
+ with -- (@ndbroadbent)
85
+
86
+ ## 2.13.0 / August 21 2012
87
+
88
+ This release contains multiple bugfixes and handling of exotic situations. The
89
+ `Configuration#capture` method should now work in spite of `ActiveSupport`
90
+ shenanigans. Thank you, the community, for all of your contributions:
91
+
92
+ * Close input streams when sending commands that don't read input. Dylan Smith
93
+ (dylanahsmith)
94
+ * Listen for method definition on `Kernel` and undefine on `Namespace`. Chris
95
+ Griego (cgriego)
96
+ * Fixed shell `Thread.abort_on_exception` bug. George Malamidis (nutrun)
97
+ * Adding a log method to `Capistrano::Deploy::SCM::None` to maintain
98
+ consistency with other SCM classes. Kevin Lawver (kplawver)
99
+ * Add deprecation warning if someone uses old `deploy:symlink` syntax on
100
+ callbacks. Ken Mazaika (kenmazaika)
101
+ * Simplify the `finalize_update` code by respecting the `:shared_children`
102
+ variable during removal and recreation of the parent. John Knight
103
+ (knightlabs)
104
+
105
+ ## 2.12.0 / April 13 2012
106
+
107
+ This release reverts the very verbose logging introduced in the previous version, it also
108
+ enables a handful of power-user features which are largely un-documented, but shouldn't be
109
+ important unless you are looking for them. Undocumented code shouldn't scare you, simply
110
+ read through deploy.rb in the Gem if you want to know how a new feature works!
111
+
112
+ * Update mapped commands to remove symlink deprecation warning. Despo Pentara (despo)
113
+ * Add the "rpm" remote dependency. Nick Hoffman (nickhoffman)
114
+ * Add commented deploy:cleanup task to default recipe. Jean-Philippe Doyle (j15e)
115
+ * Teach deploy:web:enable to fail gracefully. Lee Marlow (lmarlow)
116
+ * Ticket 193 alias task show wrong name when it is not overridden. Rafa García (rgo)
117
+ * Allow configuration of which roles assets are precompiled on. Frederick Cheung (fcheung)
118
+ * Fix transfer action to honor dry-run flag. Serg Podtynnyi (shtirlic)
119
+ * Changed single to double quotes for Windows, fixes a Windows bug in the HG module. Matthew J Morrison (mattjmorrison)
120
+ * Add UnsharedRemoteCache (copied from eycap gem). Ben Symonds (bensymonds)
121
+
122
+ As ever, a sincere thanks to all contributors, and do not hesitate to contact me if this
123
+ release causes problems for you.
124
+
125
+ ## 2.11.0 / Febuary 20 2012
126
+
127
+ This release replaces and fixes a broken 2.10.0 release (see below for
128
+ information)
129
+
130
+ This release includes all fixes as documented for 2.10.0, plus additional code
131
+ cleanup (SHA: 3eecac2), as well as changing the public API from
132
+ `deploy:symlink`, to `deploy:create_symlink`
133
+
134
+ * Remove a testing dependency on `ruby-debug` (Lee Hambley, reported by Serg
135
+ Podtynnyi)
136
+
137
+ * Formerly deprecate `deploy:symlink`, this move was prompted by the Rake
138
+ namespace fiasco of their 0.9.0 release, and is replaced by
139
+ `deploy:create_symlink`. If you are looking for a place to hook asset related
140
+ tasks, please consider `deploy:finalize_update`. Replaced by
141
+ `deploy:create_symlink`, `deploy:symlink` now raises a deprecation warning,
142
+ and defers to `deploy:symlink`. (Lee Hambley)
143
+
144
+ * Update the 2.10.0 changelog. (Lee Hambley, reported by Jérémy Lecour)
145
+
146
+ ## 2.10.0 / Febuary 19 2012
147
+
148
+ If you are reading this after Febuary 20th 2012, do not be surprised when you
149
+ cannot find 2.10.0 on Rubygems.org, it has been removed because of a breaking
150
+ API change. It is replaced logically enough by 2.11.0 where the API is still
151
+ changed, but now issues a warning and falls back to the expected behaviour.
152
+
153
+ The CHANGELOG for this release was updated retrospectively, I'm sorry I missed
154
+ that when releasing the gem, 2.10.0 apparently not my finest hour as a
155
+ maintainer.
156
+
157
+ Ths fixes in this release include
158
+
159
+ * Include sample NGinx config for `deploy:web:disable`(added by Roger Ertesvåg)
160
+
161
+ * Fix gemspec time format warning (reported by Tony Arcieri, fixed by building the Gem against Ruby-1.9.3)
162
+
163
+ * Finally removed deprecated `before_` and `after_` tasks. (Lee Hambley)
164
+
165
+ * Rake 0.9.x compatibility (reported by James Miller, fixed by Lee Hambley)
166
+
167
+ * More detailed logging output (fixed by Huang Liang)
168
+
169
+ * Includes multistage, without `capistrano-ext`. `require 'capistrano/ext/multistage'` (fixed by Lee Hambley)
170
+
171
+ ## 2.9.0 / September 24 2011
172
+
173
+ A vairly heavy release, including some new features which most of you won't
174
+ need, but power users have contributed, this also marks the beginning of the
175
+ end of the 2.x series, more information will follow in due course, but with
176
+ the proliferation of Bundler, and better ways to do deployment, we will be
177
+ introducing heavier changes to Capistrano to keep the tool current.
178
+
179
+ **Please note, following some reported problems with the asset pipeline code
180
+ being not found, remember Capistrano needs to be in your Gemfile, and as such
181
+ needs to be run with Bundler, otherwise you risk loading a system-wide version
182
+ of Capistrano who's behaviour might be different from that specified in your
183
+ Gemfile. This is also good practice because much of the deploy logic resides
184
+ in the Gem, and you wouldn't want that to change without your knowledge. Rails
185
+ applications include Cap in the Gemfile anyway, you should follow this
186
+ convention.**
187
+
188
+ * find_servers() will no longer raise if there are no servers, this behaviour
189
+ can be modified by way of the `:on_no_matching_servers` option. Thanks to
190
+ `@ppgengler`.
191
+
192
+ * Short Git SHA1 fragments are now supported in commands such as `cap deploy
193
+ -s revision=d7e99f` thanks to `@ndbroadbent`.
194
+
195
+ * One can now specify individual SCM commands by setting
196
+ `:scm_arguments_<command_name>`. Thanks to `@alextk`.
197
+
198
+ * Travis CI build now passes thanks to @andrew, build tested against MRI
199
+ `1.8.7`. `1.9.2` and `REE`.
200
+
201
+ * Support for Perforce labels, I don't know much about this, but I believe
202
+ it's much like deploying a Git tag, thanks to `@ak47`.
203
+
204
+ * Git SCM now correctly adheres to the `:scm_verbose` setting. Thanks
205
+ `@dubek`.
206
+
207
+ * `set()` can now be used to set a `false` value, previously this was a no-op.
208
+ Thanks to `@nilbus`.
209
+
210
+ * Support for Git 1.6x submodules, The Git SCM strategy now queries Git on the
211
+ server-side to ensure it supports the `--recursive` flag, if it doesn't then
212
+ it will fall back to using the long-hand. Many thanks to all those involved in
213
+ the discussion surrounding this topic, and to `@nilbus` for a beautifully
214
+ clean solution which doesn't hold us back.
215
+
216
+ * When using `:cached_copy` with Subversion, use `svn switch` to for more
217
+ reliable switching of branches/etc. Thanks to `@iGEL` for the patch that we
218
+ accepted finally, and to `@richmeyers` who also submitted a patch and
219
+ contributed to the discssion.
220
+
221
+ Other cleanups and minor improvements to the code and tests were committed by yours truly
222
+ (@leehambley), @maxim, @ak47 and @andrew).
223
+
224
+ ## 2.8.0 / August 3 2011
225
+
226
+ A short release, after the last. Announcing Rails 3.1 asset pipeline support.
227
+
228
+ The asset pipeline support requires an additiona `load` in your `Capfile`.
229
+
230
+ You can see information pertaining to the pull request, including the inline
231
+ comments here: https://github.com/capistrano/capistrano/pull/35
232
+
233
+ Documentation will be available soon in the wiki.
234
+
235
+ * Drop-In Rails 3.1 asset pipeline support. (Chris Griego)
236
+
237
+ ## 2.7.0 / August 3 2011
238
+
239
+ A fairly substantial release. There are fixes so that current_release works
240
+ during dry-runs, (although, apparently still not with bundler.)
241
+
242
+ The test-suite was also modified to work with Ruby 1.9.2, except in one case
243
+ where Ruby 1.9.x calls `to_ary` and `to_a` on mocks, which still makes an
244
+ error. 1.9.x has always been supported, but due to lack of maintenance on my
245
+ part the tests didn't ever pass.
246
+
247
+ The `start`, `stop` and `restart` tasks have been reduced to mere hooks into
248
+ which extensions can define their own functionality.
249
+
250
+ The `readme` was also slightly improved, simply tweaks to express how best to
251
+ run the test suite.
252
+
253
+ * Ensure dry-run works with `:current_release` variable (Carol Nichols)
254
+ * Added a new variable `:git_submodules_recursive`, setting the value to false
255
+ will ensure Git doesn't recursively initialize and checkout submodules. (Konstantin Kudryashov)
256
+ * Added an additional task option, `:on_no_matching_servers`, setting the
257
+ value to `:continue` will ensure tasks with no matched servers continue
258
+ without error, instead of raising `Capistrano::NoMatchingServersError` as was
259
+ the previous behaviour. (Chris Griego)
260
+
261
+ A huge thanks to all contributors, as always!
262
+
263
+ Remember: @capistranorb on twitter for news.
264
+
265
+ ## 2.6.1 / June 25 2011
266
+
267
+ A short maintenance release, Some fixes to the verbose flag inside the Git SCM
268
+ as well as another argument for the (internal) `variable()` command, offering
269
+ a default. The Git SCM is now verbose by default, but can be disabled by
270
+ setting `:scm_verbose` to false.
271
+
272
+ There has been an additional method added to string, within the context of the
273
+ test suite, I'm always sketchy about adding additional methods to core
274
+ classes, but it's a short term fix until I make the time to patch the test
275
+ suite not to compare strings literally. The method is `String#compact`, and is
276
+ implemented simply as `self.gsub(/\s+/, ' ')`.
277
+
278
+ Here's the run-down of changes, and their committers, as always - a huge thank
279
+ you to the community that continues to drive Capistrano's development.
280
+
281
+ * `deploy:setup` now respects `:group_writable` (Daniel Duvall)
282
+ * Fixes to `:scm_verbose` for the Git module (defaults to On.) (Matthew Davies)
283
+ * Will now copy hidden files in the project's root into the release
284
+ directory (Mark Jaquith)
285
+ * Now handles closing already-dead connections in a sane way (does not raise
286
+ an exception) (Will Bryant)
287
+ * Renamed `Capistrano::VERSION::TINY` to `Capistrano::VERSION::PATCH` (Lee
288
+ Hambley)
289
+ * Removed the `VERSION` file (Lee Hambley)
290
+
291
+ ## 2.6.0 / May 3 2011
292
+
293
+ A rather large release, feature-version bump because of the new
294
+ multiple-gateways feature as implemented by Ryan Duryea (way to go!)
295
+
296
+ Please also note from this release that if you use Git submodules, the
297
+ Git-version requirement for the new implementation is now >= 1.5.6, from
298
+ previously un-documented. (1.5.6 is new-enough that I think this is
299
+ acceptable)
300
+
301
+ * Upgrade Net::SSH-gateway dependency to 1.1 (fixes a thread-deadlocking bug on MRI 1.9)
302
+ * Respect "dry-run" on transfer methods (Florian Frank)
303
+ * Add support for multiple gateways: (Ryan Duryea)
304
+ set :gateway, {
305
+ 'gate1.example.com' => 'server1.example.com',
306
+ [ 'gate2.example.com', 'gate3.example.com' ] => [ 'server5.example.com', 'server6.example.com' ]
307
+ }
308
+ * Properly support nested Git submodules, moves Git requirement to >= 1.5.6 [if you rely upon submodules] (Ken Miller)
309
+ * Fetch tags into the remote cache, allows deploying a tag when using Git, with the remote_cache strategy (Florian Frank)
310
+ * Various fixes to path handling bugs in the copt strategy. (Philippe Rathé)
311
+
312
+ ## 2.5.21 / April 6 2011
313
+
314
+ * Fixed to follow best-practice guidelines from Bundler (Ben Langfeld)
315
+ * No longer force a gemset for Capistrano development. (Ben Langfeld)
316
+
317
+ ## 2.5.20 / March 16 2011
318
+
319
+ * `deploy:migrations` will now always operate on the latest_release, not
320
+ current_release (Mike Vincent)
321
+ * Adds a check for the presence of `rsync` when using the copy strategy with `rsync`. (Chris Griego)
322
+ * Do not try to look up the `:release_path` on servers which are defined `:no_release` (Chris Griego)
323
+ * Tiny patch to the `CVS` SCM code to be Ruby 1.9 compatible (Martin Carpenter)
324
+ * Changed the default `Git` submodule behaviour to use `--recursive`, Lighthouse Issue #176. (Lee Hambley)
325
+ * `:public_children` can now be `set()`, the default is unchanged, thanks (Chris Griego)
326
+ * Fixing the load path in the default `Capfile` to search vendored/unpacked Gems. Lighthouse Issue #174 (Mari Carmen/Rafael García)
327
+ * Adds a `maintenance_basename` variable (default value is `maintenance`) to allow you to set the maintenance page name (Celestino Gomes)
328
+ * Spelling fixes in inline-documentation (Tom Copeland)
329
+ * Make `zip` and `tar` handle symlinks the same way (zip follows symlinks by default, tar needs the option `-h`) (Ross Cooperman)
330
+
331
+ ## 2.5.19 / June 21, 2010
332
+
333
+ * Small bug fixes, no improvements for people who weren't experiencing problems anyway.
334
+
335
+ ## 2.5.18 / March 14, 2010
336
+
337
+ Small fix for rolling back if a shell scripts exits non-zero; enabled a rollback if git (or other) externals fail during the deploy.
338
+
339
+ * #151 check return code status of system command to create local copy and rollback if not 0 (David King)
340
+
341
+ ## 2.5.17 / February 27, 2010
342
+
343
+ Various small bug fixes.
344
+
345
+ ## 2.5.16 / February 14, 2010
346
+
347
+ Fixed a small regression in 2.5.15
348
+
349
+ ## 2.5.15 / 14 February 2010
350
+
351
+ Fixes a feature request not to overwrite roles when using the ROLES environmental variable.
352
+
353
+ * #126 - The option to not overwriting the roles which are defined in the task definition.
354
+ * Removed the `upgrade` file as it has been a couple of years since 1.x was in the wild.
355
+ * Slight internal re-factor of the way we calculate the `version`
356
+
357
+ ## 2.5.14 / 18 January 2010
358
+
359
+ Fixes a low-value bug, thanks to Chris G for the well submitted patch:
360
+
361
+ * #139 - Improves consistency of variable lookup, scm variables with a local_ prefix will be honoured with priority locally (Chris Griego)
362
+
363
+ ## 2.5.13 / 6 January 2010
364
+
365
+ * Small maintenance release:
366
+
367
+ * #118 - Modified CLI test to not load user or system configuration file (Emily Price)
368
+ * #88 - Re-fixed a problem here, massive apologies to all concerned. (Hangover from 2.5.12)
369
+
370
+ ## 2.5.12 / 5 January 2010
371
+
372
+ * Tweak the directory version listing (caused a lot of problems, please upgrade immediately)
373
+
374
+ ## 2.5.11 / December 2009
375
+
376
+ * Deprecations and other small changes
377
+
378
+ ## 2.5.10 / 3 November 2009
379
+
380
+ * Fixes Darcs remote repository problem when using the copy strategy [Alex `regularfry` Young]
381
+ * Documentation improvements for embedding Capistrano [Lee Hambley]
382
+ * Fixes ticket #95 -formally deprecating the before_something and after_something methods [Lee Hambley]
383
+
384
+ ## 2.5.9 / 1 August 2009
385
+
386
+ * Adds support for customizing which `tar` command to use. [Jeremy Wells]
387
+
388
+ * Fixes a couple of documentation problems, typos and worse. [Lee Hambley]
389
+
390
+ * #105 - Add skip_hostfilter option to find_servers() [Eric]
391
+ * #103 - Using non-master branch fails with Ruby 1.9 [Suraj Kurapati]
392
+ * #96 - Tweak for 1.9 Compatibility
393
+ * #79 - Capistrano hangs on shell command for many computers
394
+ * #77 - Copy command doesn't work on Solaris due to tar/gtar
395
+ * #76 - Invalid Subversion URL
396
+ * Improved web:disable task, now suggests a .htaccess block to use suggested by Rafael García
397
+ * Includes more logger options (can now select stdout, stderr of a file) [Rafael García]
398
+
399
+ ## 2.5.8 / July 2009
400
+
401
+ * Fixes a problem in 2.5.7 where deploy:finalize_update had been badly merged.
402
+
403
+ ## 2.5.6 & 2.5.7 / July 2009
404
+
405
+ * 2.5.7 masks a broken 2.5.6 release that was accidentally mirrored via Rubyforge.
406
+
407
+ * Clean the cached git repository [Graeme Mathieson]
408
+
409
+ * Fixes perforce issues reported at http://bit.ly/wt0es [Scott Johnson]
410
+
411
+ * Improved back-tick handling code in relation to the above.
412
+
413
+ * Fixes a Git issue when submodules update upstream. (via mailing list) [sneakin]
414
+
415
+ * Capify now creates the config directory in directories without one.
416
+
417
+ ## 2.5.5 / 24 Feb 2009
418
+
419
+ * Make sure role(:foo) actually declares an (empty) role for :foo, even without server arguments [Jamis Buck]
420
+
421
+
422
+ ## 2.5.4 / 4 Feb 2009
423
+
424
+ * When using rsync with the remote_cache strategy include -t switch to preserve file times [Kevin McCarthy]
425
+
426
+ * Bump Net::SSH dependency to version 2.0.10 [Jamis Buck]
427
+
428
+ * Use 'user' from .ssh/config appropriately [Jamis Buck]
429
+
430
+ * Allow respond_to?() method to accept optional second parameter (include_priv) [Matthias Marschall]
431
+
432
+ * Make sure sudo prompts are retried correctly even if "try again" and the prompt appear in the same text chunk from the server [Jamis Buck]
433
+
434
+ * Add supported environment variables to -H output [François Beausoleil]
435
+
436
+
437
+ ## 2.5.3 / December 6, 2008
438
+
439
+ * Make previous_release return nil if there is no previous release [Mathias Meyer]
440
+
441
+ * Play nice with rubies that don't inspect terminals well (ie. JRuby) by defaulting screen columns to 80 [Bob McWhirter]
442
+
443
+ * Rollback of deploy:symlink would explode if there was no previous revision to rollback to [Jamis Buck]
444
+
445
+ * Fix bug in transfer.rb that caused get/put/upload/download to ignore blocks passed to them [arika]
446
+
447
+ * Fix issue with git SCM that caused "Unable to resolve revision" errors when there was trailing whitespace in git's output [Mark Zuneska, Daniel Berlinger and Evan Closson]
448
+
449
+
450
+ ## 2.5.2 / November 13, 2008
451
+
452
+ * Fix issue with git SCM that caused "Unable to resolve revision for 'HEAD'" errors on deploy [Jamis Buck]
453
+
454
+
455
+ ## 2.5.1 / November 7, 2008
456
+
457
+ * Add -t (--tools) switch for better task lists for external tools [Jamis Buck]
458
+
459
+ * Make the RemoteDependency#try method use invoke_command instead of run, for sudo-ability [Matthias Marschall]
460
+
461
+ * Make locally executed commands in Windows more Windows-friendly [esad@esse.at]
462
+
463
+ * Added :scm_arguments variable for custom SCM arguments (subversion-only, currently) [David Abdemoulaie]
464
+
465
+ * Don't emit -p for sudo when :sudo_prompt is blank [Matthias Marschall]
466
+
467
+ * Copy symlinks when using rsync [Paul Paradise]
468
+
469
+ * Make sure git query-revision matches on exact branch name [grant@nightriot.com]
470
+
471
+ * Use -T <arg> to filter listed tasks by a pattern [Mathias Meyer, Geoffrey Grosenbach]
472
+
473
+ * Expose the #scm method on SCM::Base for building custom scm commands [Mathias Meyer]
474
+
475
+ * Start logging some locally executed commands [springyweb]
476
+
477
+ * Added HOSTFILTER environment variable for constraining tasks so they run only on hosts matching the given list of servers [Walter Smith]
478
+
479
+ * Make sure the glob matching for copy excludes does not delete parent directories [Fabio Akita]
480
+
481
+ * Ruby 1.9 compatibility [Jamis Buck]
482
+
483
+
484
+ ## 2.5.0 / August 28, 2008
485
+
486
+ * Allow :gateway to be set to an array, in which case a chain of tunnels is created [Kerry Buckley]
487
+
488
+ * Allow HOSTS spec to override even non-existent roles [Mike Bailey]
489
+
490
+ * Sort releases via "ls -xt" instead of "ls -x" to allow for custom release names [Yan Pritzker]
491
+
492
+ * Convert arguments to -s and -S into integers, booleans, etc. based on whether the arguments appear to be those types [Jamis Buck]
493
+
494
+ * Add descriptions of -n and -d to the verbose help text [Jamis Buck]
495
+
496
+ * Make rollbacks work with processes that need the current directory to be valid in order to restart properly (e.g. mongrel_rails) [Jamis Buck]
497
+
498
+ * Rename deploy:rollback_code to deploy:rollback:code [Jamis Buck]
499
+
500
+ * Added parallel() helper for executing multiple different commands in parallel [Jamis Buck]
501
+
502
+ * Make sure a task only uses the last on_rollback block, once, on rollback [Jamis Buck]
503
+
504
+ * Add :shared_children variable to customize which subdirectories are created by deploy:setup [Jonathan Share]
505
+
506
+ * Allow filename globbing in copy_exclude setting for the copy strategy [Jonathan Share]
507
+
508
+ * Allow remote_cache strategy to use copy_exclude settings (requires rsync) [Lewis Mackenzie]
509
+
510
+ * Make None SCM module work in Windows [Carlos Kozuszko]
511
+
512
+ * Recognize mingw as a Windows platform [Carlos Kozuszko]
513
+
514
+ * Fixed failing tests in Windows [Carlos Kozuszko]
515
+
516
+ * Made :scm_auth_cache control whether password option is emitted in subversion module [Brendan Schwartz]
517
+
518
+ * Fixed timestamp bug in CVS module [Jørgen Fjeld]
519
+
520
+ * Added -n/--dry-run switch, to display but not execute remote tasks [Paul Gross]
521
+
522
+
523
+ ## 2.4.3 / June 28, 2008
524
+
525
+ * Fix gem dependencies so gem actually understands them [Jamis Buck]
526
+
527
+
528
+ ## 2.4.2 / June 27, 2008
529
+
530
+ * Specify gem dependencies in rakefile [Jamis Buck]
531
+
532
+
533
+ ## 2.4.1 / June 27, 2008
534
+
535
+ * Use Echoe to manage the Rakefile [Jamis Buck]
536
+
537
+ * Let Net::SSH manage the default SSH port selection [Ben Lavender]
538
+
539
+ * Changed capture() helper to not raise an exception on error, but to warn instead [Jeff Forcier]
540
+
541
+
542
+ ## 2.4.0 / June 13, 2008
543
+
544
+ * Added :normalize_asset_timestamps option to deployment, defaulting to true, which allows asset timestamping to be disabled [John Trupiano]
545
+
546
+
547
+ ## 2.4.0 Preview Release #1 (2.3.101) / June 5, 2008
548
+
549
+ * Only make deploy:start, deploy:stop, and deploy:restart try sudo as :runner. The other sudo-enabled tasks (deploy:setup, deploy:cleanup, etc.) will now use the :admin_runner user (which by default is unset). [Jamis Buck]
550
+
551
+ * Make sure triggers defined as a block inherit the scope of the task they are attached to, instead of the task they were called from [Jamis Buck]
552
+
553
+ * Make deploy:upload use the upload() helper for more efficient directory processing [Jamis Buck]
554
+
555
+ * Make deploy:upload accept globs [Mark Imbriaco]
556
+
557
+ * Make sure the host is reported with the output from scm_run [Jamis Buck]
558
+
559
+ * Make git SCM honor the :scm_verbose option [Jamis Buck]
560
+
561
+ * Don't follow symlinks when using :copy_cache [Jamis Buck]
562
+
563
+ * If :mode is given to upload() helper, do a chmod after to set the mode [Jamis Buck]
564
+
565
+ * Fix load_from_file method for windows users [Neil Wilson]
566
+
567
+ * Display a deprecation error if a remote git branch is specified [Tim Harper]
568
+
569
+ * Fix deployment recipes to use the updated sudo helper [Jamis Buck]
570
+
571
+ * Enhance the sudo helper so it can be used to return the command, instead of executing it [Jamis Buck]
572
+
573
+ * Revert "make sudo helper play nicely with complex command chains", since it broke stuff [Jamis Buck]
574
+
575
+ * Make set(:default_shell, false) work for not using a shell on a per-command basis [Ryan McGeary]
576
+
577
+ * Improved test coverage [Ryan McGeary]
578
+
579
+ * Fixed "coverage" take task [Ryan McGeary]
580
+
581
+ * Use upload() instead of put() with the copy strategy [Jamis Buck]
582
+
583
+ * Revert the "git fetch --tags" change, since it didn't work as expected [Jamis Buck]
584
+
585
+ * Fix deploy:pending when using git SCM [Ryan McGeary]
586
+
587
+ * Make sure deploy:check works with :none scm (which has no default command) [Jamis Buck]
588
+
589
+ * Add debug switch for enabling conditional execution of commands [Mark Imbriaco]
590
+
591
+
592
+ ## 2.3.0 / May 2, 2008
593
+
594
+ * Make deploy:setup obey the :use_sudo and :runner directives, and generalize the :use_sudo and :runner options into a try_sudo() helper method [Jamis Buck]
595
+
596
+ * Make sudo helper play nicely with complex command chains [Jamis Buck]
597
+
598
+ * Expand file-transfer options with new upload() and download() helpers. [Jamis Buck]
599
+
600
+ * Allow SCP transfers in addition to SFTP. [Jamis Buck]
601
+
602
+ * Use Net::SSH v2 and Net::SSH::Gateway. [Jamis Buck]
603
+
604
+ * Added #export method for git SCM [Phillip Goldenburg]
605
+
606
+ * For query_revision, git SCM used git-rev-parse on the repo hosting the Capfile, which may NOT be the same tree as the actual source reposistory. Use git-ls-remote instead to resolve the revision for checkout. [Robin H. Johnson]
607
+
608
+ * Allow :ssh_options hash to be specified per server [Jesse Newland]
609
+
610
+ * Added support for depend :remote, :file to test for existence of a specific file [Andrew Carter]
611
+
612
+ * Ensure that the default run options are mixed into the command options when executing a command from the cap shell [Ken Collins]
613
+
614
+ * Added :none SCM module for deploying a specific directory's contents [Jamis Buck]
615
+
616
+ * Improved "copy" strategy supports local caching and pattern exclusion (via :copy_cache and :copy_exclude variables) [Jamis Buck]
617
+
618
+
619
+ ## 2.2.0 / February 27, 2008
620
+
621
+ * Fix git submodule support to init on sync [halorgium]
622
+
623
+ * Add alternative server-centric role definition method [James Duncan Davidson]
624
+
625
+ * Add support for password prompts from the Mercurial SCM [ches]
626
+
627
+ * Add support for :max_hosts option in task definition or run() [Rob Holland <rob@inversepath.com>]
628
+
629
+ * Distributed git support for better operability with remote_cache strategy [voidlock]
630
+
631
+ * Use a default line length in help text if line length is otherwise too small [Jamis Buck]
632
+
633
+ * Fix incorrect reference to the 'setup' task in task documentation [rajeshduggal]
634
+
635
+ * Don't try to kill the spawner process on deploy:stop if no spawner process exists [Jamis Buck]
636
+
637
+ * Dynamic roles (e.g. role(:app) { "host.name" }) [dmasover]
638
+
639
+ * Implement Bzr#next_revision so that pending changes can be reported correctly [casret]
640
+
641
+ * Use a proper export command for bzr SCM [drudru]
642
+
643
+ * Use checkout instead of merge for git SCM [nuttycom]
644
+
645
+ * Fix typo in Subversion SCM module, encountered when an update fails [kemiller]
646
+
647
+ * Fix documentation typo in upload.rb [evolving_jerk]
648
+
649
+ * Added test case to show that the :scm_command is honored by the git SCM module [grempe]
650
+
651
+ * Fail gracefully when double-colons are used to delimit namespaces [richie]
652
+
653
+ * Add support for :git_enable_submodules variable, to enable submodules with the git SCM [halorgium]
654
+
655
+ * If subversion asks for a password, prompt as a last resort [Jamis Buck]
656
+
657
+ * Use checkout --lightweight for bzr checkout, instead of branch [michiels]
658
+
659
+ * Make sure bzr SCM works when revision is head (or unspecified) [michiels]
660
+
661
+ * Support p4sync_flags and p4client_root variables for Perforce [gseidman]
662
+
663
+ * Prepare for Net::SSH v2 by making sure Capistrano only tries to load Net::SSH versions less than 1.99.0 [Jamis Buck]
664
+
665
+
666
+ ## 2.1.0 / October 14, 2007
667
+
668
+ * Default to 0664 instead of 0660 on upload [Jamis Buck]
669
+
670
+ * Fix deploy:pending to query SCM for the subsequent revision so that it does not include the last deployed change [Jamis Buck]
671
+
672
+ * Prefer 'Last Changed Rev' over 'Revision' when querying latest revision via Subversion [Jamis Buck]
673
+
674
+ * Explicitly require 'stringio' in copy_test [mislav]
675
+
676
+ * When Subversion#query_revision fails, give a more sane error [Jamis Buck]
677
+
678
+ * Don't run the upgrade:revisions task on non-release servers [Jamis Buck]
679
+
680
+ * Fix cap shell to properly recognize sudo prompt [Mark Imbriaco, barnaby, Jamis Buck]
681
+
682
+ * Git SCM module [Garry Dolley, Geoffrey Grosenbach, Scott Chacon]
683
+
684
+ * Use the --password switch for subversion by default, but add :scm_prefer_prompt variable (defaults to false) [Jamis Buck]
685
+
686
+
687
+ ## 2.0.100 (2.1 Preview 1) / September 1, 2007
688
+
689
+ * capify-generated Capfile will autoload all recipes from vendor/plugins/*/recipes/*.rb [Graeme Mathieson]
690
+
691
+ * Use sudo -p switch to set sudo password prompt to something predictable [Mike Bailey]
692
+
693
+ * Allow independent configurations to require the same recipe file [Jamis Buck]
694
+
695
+ * Set :shell to false to run a command without wrapping it in "sh -c" [Jamis Buck]
696
+
697
+ * Don't request a pty by default [Jamis Buck]
698
+
699
+ * Add a "match" remote dependency method [Adam Greene]
700
+
701
+ * Allow auth-caching of subversion credentials to be enabled via :scm_auth_cache [tsmith]
702
+
703
+ * Don't let a task trigger itself when used as the source for an "on" hook [Jamis Buck]
704
+
705
+ * Avoid using the --password switch with subversion for security purposes [sentinel]
706
+
707
+ * Add version_dir, current_dir, and shared_dir variables for naming the directories used in deployment [drinkingbird]
708
+
709
+ * Use Windows-safe binary reads for reading file contents [Ladislav Martincik]
710
+
711
+ * Add Accurev SCM support [Doug Barth]
712
+
713
+ * Use the :runner variable to determine who to sudo as for deploy:restart [Graham Ashton]
714
+
715
+ * Add Namespaces#top to always return a reference to the topmost namespace [Jamis Buck]
716
+
717
+ * Change the "-h" output so that it does not say that "-q" is the default [Jamis Buck]
718
+
719
+
720
+ ## 2.0.0 / July 21, 2007
2
721
 
3
722
  * Make the "no matching servers" error more sane [halorgium]
4
723
 
@@ -27,7 +746,7 @@
27
746
  * Spelling corrections in docs [Tim Carey-Smith, Giles Bowkett]
28
747
 
29
748
 
30
- *1.99.3 (2.0 Preview 4)* June 28, 2007
749
+ ## 1.99.3 (2.0 Preview 4) / June 28, 2007
31
750
 
32
751
  * Don't break task descriptions on a period that appears in the middle of a sentence [Jamis Buck]
33
752
 
@@ -60,8 +779,8 @@
60
779
  * Make sure symlink and finalize_update tasks reference the most recent release when called by themselves [Jamis Buck]
61
780
 
62
781
 
63
- *1.99.2 (2.0 Preview 3)* June 15, 2007
64
-
782
+ ## 1.99.2 (2.0 Preview 3) / June 15, 2007
783
+
65
784
  * CVS SCM module [Brian Phillips]
66
785
 
67
786
  * Fix typo in Perforce SCM module [Chris Bailey]
@@ -85,7 +804,7 @@
85
804
  * Add :default_environment variable, which is applied to every command
86
805
 
87
806
 
88
- *1.99.1 (2.0 Preview 2)* May 10, 2007
807
+ ## 1.99.1 (2.0 Preview 2) / May 10, 2007
89
808
 
90
809
  * Fix some documentation typos [eventualbuddha]
91
810
 
@@ -120,7 +839,7 @@
120
839
  * Make the copy strategy check out to a temporary directory [Jamis Buck]
121
840
 
122
841
 
123
- *1.99.0 (2.0 Preview 1)* April 24, 2007
842
+ ## 1.99.0 (2.0 Preview 1) / April 24, 2007
124
843
 
125
844
  * Add `capify' script to make it easier to prepare a project for deployment using cap [Jamis Buck]
126
845
 
@@ -141,7 +860,7 @@
141
860
  * Merged the Configuration and Actor classes, performed various other massive refactorings of the code [Jamis Buck]
142
861
 
143
862
 
144
- *1.4.1* (February 24, 2007)
863
+ ## 1.4.1 / February 24, 2007
145
864
 
146
865
  * Use the no-auth-cache option with subversion so that username/password tokens do not get cached by capistrano usage [jonathan]
147
866
 
@@ -152,7 +871,7 @@
152
871
  * Add :env option to 'run' (and friends) so that you can specify environment variables to be injected into the new process' environment [Mathieu Lajugie]
153
872
 
154
873
 
155
- *1.4.0* (February 3, 2007)
874
+ ## 1.4.0 / February 3, 2007
156
875
 
157
876
  * Use the auth info for subversion more consistently [Jamis Buck]
158
877
 
@@ -179,12 +898,12 @@
179
898
  * Fix off-by-one bug in show_tasks width-computation [NeilW]
180
899
 
181
900
 
182
- *1.3.1* (January 5, 2007)
901
+ ## 1.3.1 / January 5, 2007
183
902
 
184
903
  * Fix connection problems when using gateways [Ezra Zygmuntowicz]
185
904
 
186
905
 
187
- *1.3.0* (December 23, 2006)
906
+ ## 1.3.0 / December 23, 2006
188
907
 
189
908
  * Deprecate rake integration in favor of invoking `cap' directly [Jamis Buck]
190
909
 
@@ -215,7 +934,7 @@
215
934
  * Added :as option to sudo, so you can specify who the command is executed as [Mark Imbriaco]
216
935
 
217
936
 
218
- *1.2.0* (September 14, 2006)
937
+ ## 1.2.0 / September 14, 2006
219
938
 
220
939
  * Add experimental 'shell' task [Jamis Buck]
221
940
 
@@ -271,7 +990,7 @@
271
990
  on_rollback { run "ln -nfs #{previous_release} #{current_path}" }
272
991
  run "ln -nfs #{current_release} #{current_path}"
273
992
  end
274
-
993
+
275
994
  cap symlink # will not run on 192.168.0.3
276
995
 
277
996
  * Deprecate the -r/--recipe switch in favor of -f/--file (for more make/rake-like semantics) [Jamis Buck]
@@ -287,7 +1006,7 @@
287
1006
  task :setup, :roles => [ :app, :web, :db ]
288
1007
  # normally this would run every where
289
1008
  end
290
-
1009
+
291
1010
  ROLES=app cap setup # this will only run for the app role, overwritting the default declaration
292
1011
 
293
1012
  * Added :hosts option to task definition that allows you to specify cross-cutting tasks [DHH]. Example:
@@ -299,7 +1018,7 @@
299
1018
  * Fix operator precedence problem in script for touching the revisions.log #3223 [jason.garber@emu.edu]
300
1019
 
301
1020
 
302
- *1.1.0* (March 6th, 2006)
1021
+ ## 1.1.0 / March 6th, 2006
303
1022
 
304
1023
  * Simplify the generated capistrano.rake file, and make it easier to customize
305
1024
 
@@ -312,12 +1031,12 @@
312
1031
  * Look for config/deploy.rb, capfile, and Capfile by default
313
1032
 
314
1033
 
315
- *1.0.1* (February 20th, 2006)
1034
+ ## 1.0.1 / February 20th, 2006
316
1035
 
317
1036
  * Fix broken switchtower_invoke function in switchtower.rake (missing require statement)
318
1037
 
319
1038
 
320
- *1.0.0* (Feburary 18th, 2006)
1039
+ ## 1.0.0 / Feburary 18th, 2006
321
1040
 
322
1041
  * Make CVS module's :local value default to "."
323
1042
 
@@ -366,7 +1085,7 @@
366
1085
  * Set :actor key on SSH channel instances
367
1086
 
368
1087
 
369
- *0.10.0* (January 2nd, 2006)
1088
+ ## 0.10.0 / January 2nd, 2006
370
1089
 
371
1090
  * Handle ssh password prompts like "someone's password:"
372
1091
 
@@ -405,7 +1124,7 @@
405
1124
  * Require Net::SSH 1.0.5
406
1125
 
407
1126
 
408
- *0.9.0* (October 18th, 2005)
1127
+ ## 0.9.0 / October 18th, 2005
409
1128
 
410
1129
  * Use process reaper instead of custom reap script for restarting
411
1130