Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

v0.18.2

v0.18.2 - Opensuse, a #cmd_dir fix, OS X build tools.
* Basic opensuse/zypper support thanks to Robert Warmbier.
* A fix for #cmd_dir; directories were recognised as commands when their
  names matched. Thanks to Chris Heisterkamp.
* The 'xcode build tools' dep now tolerates gcc being installed in a
  separate location to the rest of the toolchain, to account for the
  case where it's installed separately via homebrew.

[My release deps played up, and created 0.18.1 directly on top of
0.18.0 without incorporating these changes. This version fixes that, and
merges the erroneous 0.18.1 commit so that 'stable' can fast-forward.]

v0.18.1

v0.18.1 - Opensuse, a #cmd_dir fix, OS X build tools.
* Basic opensuse/zypper support thanks to Robert Warmbier.
* A fix for #cmd_dir; directories were recognised as commands when their
  names matched. Thanks to Chris Heisterkamp.
* The 'xcode build tools' dep now tolerates gcc being installed in a
  separate location to the rest of the toolchain, to account for the
  case where it's installed separately via homebrew.

v0.18.0

v0.18.0 - A --debug bug, and nodejs, debian, & pacman improvements.
- Fixed an issue where shell commands' output was being corrupted by
  the use of --debug (see 7f78bbe).

- (Tim Riley) Fixed NpmHelper.should_sudo? under nodenv. Previously
  it was requiring sudo because the global installation wasn't
  writable, even when nodenv meant a local, writable location would
  be used.

- Made sure /usr/bin/node is available on apt boxes. The binary was
  renamed upstream.
  https://lists.debian.org/debian-devel-announce/2012/07/msg00002.html

- Fixed debian version parsing so that different versions of the same
  release are understood as such, instead of as separate releases.
  (Thanks to schnittchen for reporting this and for the quick-fix
  patches in the meantime.)

- Added automatic package list updating to PacmanHelper.

- By default, parallelize builds in the 'src' template according to
  the cpu count.

- Removed an attempt to avoid double-updating in the 'apt source'
  deps, that meant updating could be skipped altogether under certain
  conditions.

- Added the definition for ubuntu 14.04 'trusty'.

v0.17.8

v0.17.8 - A little update to fix the URL in 'npm.src'.
Thanks to Timothy Reen for this patch (and for noticing, since I don't
use npm).

v0.17.7

v0.17.7 - such PRs
wowe

From @tamird:
- Use File.writable_real? to avoid a questionable ruby stdlib group write access check

From @schnittchen:
- Work around a superflous ruby warning when Dir.chdir is used

From @bearded:
- Fix boolean defaults passed to accepts_*_for declarations
- Remove unused String#colorize! start_at arg
- Fix the rubinius entries in .travis.yml

From @santouras:
- Run via sudo when required when adding apt ppas.

From @Val:
- Add a version declaration for debian-7.3, and then debian-7.4
  (This shouldn't be necessary, I'll refactor it someday)

v0.17.6

v0.17.6 - gitfs, sudo, encoding handling, homebrew taps, and more.
- The experimental --git-fs option has seen a lot of changes. It commits a base snapshot before making any changes, handles systems with no git name or user set, and can run as any user provided that sudo is configured correctly (this is achieved via a GitRepo change that runs destructive repo commands as the repo's owner).

- BrewHelper can install and query homebrew taps now, thanks to ecin. (The code in BrewHelper makes too many assumptions about homebrew's internals, though; a refactor to instead use `brew info` is planned).

- Handling of externally originating strings has been improved thanks to a bug report from Schnittchen. Strings in unknown or invalid encodings will be coerced into UTF-8 so babushka can operate on them without hitting invalid characters. This shouldn't cause any corruption except on strings whose encoding is invalid, where inknown chars will be replaced with '?'.

- The #sudo helper has been much improved. It can assemble and escape correct shell commands properly now, which means sudo commands no longer have to be passed as a string; it will accept splatted commands just like #shell can, e.g.

    sudo('systemctl', 'start', service_name, :as => 'root')

- Fancypath#puts was added, which functions just like IO#puts: it appends its input to the file and terminates with a newline.

- Standard stream accessing was cleaned up to always use the constants (STDIN, etc) instead of the global vars ($stdin, etc), and to check the correct stream: for keyboard input and traps, STDIN; for colour detection, etc, STDOUT.

- The spec suite no longer includes the 'Babushka' module at the top level, which makes it mirror real usage more. Previously, it was possible for a namespacing problem to exist without the spec suite seeing it, since the Babushka module was always in scope when the test suite ran.

v0.17.5

v0.17.5 - Support for debian geoip mirrors from Laurent Vallar, new d…
…ebian versions, grey text on linux ptys, some minor core dep updates.

v0.17.4

v0.17.4 - refactoring, rdocs (thanks to Thomas Stratmann) and an expe…
…rimental git feature.

- SystemProfile and its associated classes underwent a major refactor (that I started at Railscamp 13). They're a lot more readable now, much more thoroughly tested, and more predictably extendable. I'm still not 100% happy with them because they use a lot of inheritance, but they're in good shape now.

- String::Colorizer was refactored into Babushka::ANSI, and its internals reworked and simplified. It generates minimal escape sequences now, in less code (and with more tests). I also added String#colouriser for us Aussies and Brits, and deprecated some unneeded methods.

(The only remaining parts of babushka that aren't properly covered with specs are quite old. As I refactor them I add the missing tests.)

- Thanks to Thomas Stratmann for a pull request adding rdocs to CurrentRuby.

- Finally, I've added the --git-fs commandline option, which causes babushka to commit the result of meeting deps to a git repo at the root directory. This feature is experimental and might change in the future; it's part of a new technique I'm working on to manage servers.

v0.17.3

v0.17.3 - Revert the YAML change in CurrentRuby, which some gem
configs can break.

That change was to support multiple gem paths, which isn't implemented
yet; I'll work out a different way of achieving that.

Thanks to James Healy for reporting this.

v0.17.2

v0.17.2 - Fix platform detection on debian 6 and older.
Something went wrong with that request. Please try again.