Two Weeks of Vacation, Vlad, RubyGems
drbrain |
I’m not working this month so I can do whatever I want. So far that’s featured:
- The long overdue MogileFS 1.2.1 with a minor bugfix
- A mostly-evil
Kernel#callerenhancement, SuperCaller 1.0.0
- memcache-client 1.5.0 with a couple of new features
- Sphincter 1.1.0 with friendlier setup and association inclusion
- The first release of Vlad the Deployer by the Ruby Hit Squad
- Tons of hacking on RubyGems
Building Vlad was a lot of fun. Ryan and I flew up Wilson Bilkovich, watched Bourne Ultimatum, then hacked for four days straight to bring Vlad into the world.
InfoQ published an interview with us about Vlad:
Capistrano, a popular deployment tool for Rails, is challenged by Vlad the Deployer, a tool which offers similar functionality with a much simpler implementation. We talked to the Ruby Hit Squad group that released version 1.0 of Vlad.
—Capistrano gets competition: Vlad the Deployer via InfoQ
The RubyGems hacking has been mostly bug fixes and refactoring so far. I’m working towards teaching RubyGems your platform so it can automatically install the correct version.
Here’s a sample of what’s I’ve done to RubyGems so far:
- —sources is no longer remembered forever, use `gem sources` to manage the permanent list
- The sources gem is gone, RubyGems uses a built-in list now (but can be upgraded in the future)
- `gem list` respects its default of just gem names now
- Only exact gem names are matched on install, “foo_bar 2.0” won’t install instead of “foo 1.0” if you run `gem install foo`
- RubyGems requires only what it needs when you
require 'rubygems'
- Fewer bulk updates when updating the gem index
- `gem dep -r` lists dependencies for remote gems
- `gem info -r` shows information for remote gems
- `gem -v` turns on “really verbose” mode (verbose mode is the default)
- `gem_mirror`, `gem_server`, `gemlock`, `gemri`, `gemwhich`, `index_gem_repository.rb` have been merged into `gem`
Comments are disabled


