The maze book for programmers!

Algorithms, circle mazes, hex grids, masking, weaving, braiding, 3D and 4D grids, spheres, and more!

DRM-Free Ebook

The Buckblog

assorted ramblings by Jamis Buck

Maintenance Releases: Capistrano, Net::SSH

30 April 2008 — 1-minute read

With the impending releases of the improved Net::SSH family of libraries, and the next Capistrano release that will depend on them, it was time to go back and make sure that the oldies-but-goodies will still work along side these new-comers.

To that end, I present:

Net::SSH 1.1.3

This maintenance release will hopefully fix the hangs that people have been reporting when dealing with long-running requests in Net::SSH, Net::SFTP, and Capistrano.

gem install net-ssh

It is strongly recommended that all Net::SSH users upgrade to this version.

Capistrano 1.4.2

This release merely adds an explicit dependency on Net::SSH and Net::SFTP versions less than 1.99.0, allowing you to use both cap1 and cap2 side-by-side after Net::SSH v2 (and friends) are released.

gem install --version 1.4.2 capistrano

If you are needing to run cap1 and cap2 side-by-side (for instance, if you haven’t yet upgraded some recipes, but want to enjoy the cap2 goodies on newer projects), you should upgrade your cap1 installation to 1.4.2. If you are completely upgraded to cap2, you can safely ignore this release.

Reader Comments

How exactly does one run cap1 and cap2 side-by-side? Do you just install cap1, rename cap to cap1, then install cap2? Because I need to do this. I have a project that is running in production, and we aren’t upgrading support libs very fast on it, where I run cap1, and another project just under development, where I run cap2. Right now I’m using Locomotive to maintain a whole different Ruby/Rails stack for the first project, but I’d like to get rid of that complication.

@LoriO, if you’re using Rubygems to install capistrano, it’s really simple:

# to execute cap2
$ cap deploy

# to execute cap 1.4.2
$ cap _1.4.2_ deploy

The “underscore version underscore” syntax is generally understood by scripts installed via rubygems to mean that the given version of the library should be used.

How did I miss that? Oh, well. Thank you, Jamis!

Awesome, did fix our Net::SFTP hangs. Thanks, Jamis!