CHANGELOG.md in capistrano-3.2.1 vs CHANGELOG.md in capistrano-3.3.3
- old
+ new
@@ -2,14 +2,102 @@
Reverse Chronological Order:
## master
-https://github.com/capistrano/capistrano/compare/v3.2.0...HEAD
+https://github.com/capistrano/capistrano/compare/v3.2.1...v3.3.0
+## `3.3.3`
+
+https://github.com/capistrano/capistrano/compare/v3.2.1...v3.3.0
+
+* Enhancement (@townsen)
+ * Added the variable `:repo_tree` which allows the specification of a sub-tree that
+ will be extracted from the repository. This is useful when deploying a project
+ that lives in a subdirectory of a larger repository.
+ Implemented only for git and hg.
+ If not defined then the behaviour is as previously and the whole repository is
+ extracted (subject to git-archive `.gitattributes` of course).
+
+* Enhancement (@townsen): Remove unnecessary entries from default backtrace
+
+ When the `--backtrace` (or `--trace`) command line option is not supplied
+ Rake lowers the noise level in exception backtraces by building
+ a regular expression containing all the system library paths and
+ using it to exclude backtrace entries that match.
+
+ This does not always go far enough, particularly in RVM environments when
+ many gem paths are added. This commit reverses that approach and _only_
+ include backtrace entries that fall within the Capfile and list of tasks
+ imported thereafter. This makes reading exceptions much easier on the eye.
+
+ If the full unexpurgated backtrace is required then the --backtrace
+ and --trace options supply it as before.
+
+* Disable loading stages configs on `cap -T`
+* Track (anonymous) statistics, see https://github.com/capistrano/stats
+
+* Enhancements (@townsen)
+ * Fix matching on hosts with custom ports or users set
+ * Previously filtering would affect any generated configuration files so that
+ files newly deployed would not be the same as those on the hosts previously
+ deployed (and now excluded by filters). This is almost certainly not what is
+ wanted: the filters should apply only to the on() method and thus any
+ configuration files deployed will be identical across the set of servers
+ making up the stage.
+ * Host and Role filtering now affects only `on()` commands
+ and not the `roles()`, `release_roles()` and `primary()` methods.
+ * This applies to filters defined via the command line, the environment
+ and the :filter variable.
+ * Filtering now supports Regular expressions
+ * This change _could_ cause existing scripts that use filtering and depend on
+ the old behaviour to fail, though it is unlikely. Users who rely on
+ filtering should check that generated configuration files are correct, and
+ where not introduce server properties to do the filtering. For example, if a
+ filter was used to specify an active subset of servers (by hostname), it should
+ be removed and replaced with an 'active' property (set to true or false) on the
+ server definitions. This keeps the stage file as the canonical model of the
+ deployment environment.
+
+ * See the documentation in the README.md file
+
+* Enhancements (@townsen)
+ * Added set_if_empty method to DSL to allow conditional setting
+ * Altered standard Capistrano defaults so that they are not set
+ at the start of a stage if they have been previously set. This
+ allows variables like :default_env to be set in deploy.rb.
+ * Deep copy properties added using the 'roles' keyword
+ * If a property exists on a server when another definition is
+ encountered and is an Array, Set or Hash then add the new values
+
+ This allows roles to specify properties common to all servers and
+ then for individual servers to modify them, keeping things DRY
+
+Breaking Changes:
+ * By using Ruby's noecho method introduced in Ruby version 1.9.3, we dropped support for Ruby versions prior to 1.9.3. See [issue #878](https://github.com/capistrano/capistrano/issues/878) and [PR #1112](https://github.com/capistrano/capistrano/pull/1112) for more information. (@kaikuchn)
+
+* Bug Fixes:
+ * Fixed compatibility with FreeBSD tar (@robbertkl)
+ * remote_file can be used inside a namespace (@mikz)
+
+* Minor Changes
+ * Remove -v flag from mkdir call. (@caligo-mentis)
+ * Capistrano now allows to customize `local_user` for revision log. (@sauliusgrigaitis)
+ * Added tests for after/before hooks features (@juanibiapina, @miry)
+ * Added `--force` flag to `svn export` command to fix errors when the release directory already exists.
+ * Improved the output of `cap --help`. (@mbrictson)
+ * Cucumber suite now runs on the latest version of Vagrant (@tpett)
+ * The `ask` method now supports the `echo: false` option. (@mbrictson, @kaikuchn)
+ * Cucumber scenario improvements (@bruno-)
+ * Added suggestion to Capfile to use 'capistrano-passenger' gem, replacing suggestion in config/deploy.rb to re-implement 'deploy:restart' (@betesh)
+ * Updated svn fetch_revision method to use `svnversion`
+ * `cap install` no longer overwrites existing files. (@dmarkow)
+
## `3.2.1`
+https://github.com/capistrano/capistrano/compare/v3.2.0...v3.2.1
+
* Bug Fixes:
* 3.2.0 introduced some behaviour to modify the way before/after hooks were called, to allow the optional
preservation of arguments to be passed to tasks. This release reverts that commit in order to restore
original functionality, and fix (fairly serious) bugs introduced by the refactoring.
@@ -17,10 +105,11 @@
* Update dsl#local_user method and add test for it. (@bruno-)
* Revert short sha1 revision with git. (@blaugueux)
* Changed asking question to more standard format (like common unix commandline tools) (@sponomarev)
* Fixed typos in the README. (@sponomarev)
* Added `keys` method to Configuration to allow introspection of configuration options. (@juanibiapina)
+ * Improve error message when git:check fails (raise instead of silently `exit 1`) (@mbrictson)
## `3.2.0`
The changelog entries here are incomplete, because many authors choose not to
be credited for their work, check the tag comparison link for Github.
@@ -38,10 +127,11 @@
https://github.com/capistrano/capistrano/compare/v3.0.1...v3.1.0
Breaking changes:
* `deploy:restart` task **is no longer run by default**.
- From this version, developers who restart the app on each deploy need to declare it in their deploy flow (eg `after 'deploy:publishing', 'deploy:restart'`).
+ From this version, developers who restart the app on each deploy need to declare it in their deploy flow (eg `after 'deploy:publishing', 'deploy:restart'`)
+ or, for passenger applications, use the capistrano-passenger gem.
Please, check https://github.com/capistrano/capistrano/commit/4e6523e1f50707499cf75eb53dce37a89528a9b0 for more information. (@kirs)
* Minor changes
* Tasks that used `linked_dirs` and `linked_files` now run on all roles, not just app roles (@mikespokefire)