Skip to content


Merge pull request #1503 from bazzargh/patch-2
fix rescue for asset_manifest_prefix


Merge pull request #1503 from bazzargh/patch-2
fix rescue for asset_manifest_prefix


Preparing Release v2.15.6


Preparing Release v3.4.0


Preparing Release v3.3.5


Preparing Release v3.3.4


* 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

* 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 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](#878) and [PR
  #1112](#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)


Preparing Release v3.2.1


Preparing Release v3.2.0


Version 3.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'`).

    Please, check 4e6523e for more information. (@kirs)

* Minor changes
  * Tasks that used `linked_dirs` and `linked_files` now run on all roles, not just app roles (@mikespokefire)
  * Tasks `deploy:linked_dirs`, `deploy:make_linked_dirs`, `deploy:linked_files`, `deploy:cleanup_rollback`,
    `deploy:log_revision` and `deploy:revert_release` now use `release_roles()` not `roles()` meaning that they
    will only run on servers where the `no_release` property is not falsy. (@leehambley)
  * Fixed bug when `deploy:cleanup` was executed twice by default (@kirs)
  * Config location can now be changed with `deploy_config_path` and `stage_config_path` options (@seenmyfate)
  * `no_release` option is now available (@seenmyfate)
  * Raise an error if developer tries to define `:all` role, which is reserved (@kirs)
  * `deploy:fallback` hook was added to add some custom behaviour on failed deploy (@seenmyfate)
  * Correctly infer namespace in task enhancements (@seenmyfate)
  * Add SHA to revision log (@blackxored)
  * Allow configuration of multiple servers with same hostname but different ports (@rsslldnphy)
  * Add command line option to control role filtering (@andytinycat)
  * Make use of recent changes in Rake to over-ride the application name (@shime)
  * Readme corrections (@nathanstitt)
  * Allow roles to be fetched with a variable containing an array (@seenmyfate)
  * Improve console (@jage)
  * Add ability to filter tasks to specific servers (host filtering). (@andytinycat)
  * Add a command line option to control role filter (`--roles`) (@andytinycat)
  * Use an SCM object with a pluggable strategy (@coffeeaddict)

Big thanks to @Kriechi for his help.
Something went wrong with that request. Please try again.