Giter Site home page Giter Site logo

bt's People

Contributors

akiellor avatar jfraser avatar quad avatar samfoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

bt's Issues

Running bt-watch against an invalid repository crashes hard

Invalid directory:

$ bt-watch --debug x
D, [2011-07-12T18:02:03.191200 #94329] DEBUG -- : /usr/local/bin/git --git-dir=/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git clone --bare --shared x /var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git
D, [2011-07-12T18:02:03.197165 #94329] DEBUG -- : 
D, [2011-07-12T18:02:03.197615 #94329] DEBUG -- : fatal: repository 'x' does not exist

D, [2011-07-12T18:02:03.198127 #94329] DEBUG -- : /usr/local/bin/git --git-dir=/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git remote
D, [2011-07-12T18:02:03.203526 #94329] DEBUG -- : 
D, [2011-07-12T18:02:03.203630 #94329] DEBUG -- : fatal: Not a git repository: '/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git'

D, [2011-07-12T18:02:03.203779 #94329] DEBUG -- : /usr/local/bin/git --git-dir=/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git remote add origin x
D, [2011-07-12T18:02:03.207464 #94329] DEBUG -- : 
D, [2011-07-12T18:02:03.207562 #94329] DEBUG -- : fatal: Not a git repository: '/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git'

/Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:311:in `native': Command exited with 128: /usr/local/bin/git --git-dir=/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94329-1l9tl7q.git remote add origin x (Grit::Git::CommandFailed)
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:325:in `method_missing'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:72:in `remote_add'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:53:in `block (2 levels) in mirror'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:90:in `block in initialize'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:90:in `chdir'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:90:in `initialize'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:51:in `new'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:51:in `block in mirror'
    from /Users/scott/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:49:in `mirror'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/bin/bt-watch:42:in `<top (required)>'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-watch:19:in `load'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-watch:19:in `<main>'

Invalid URL:

$ bt-watch --debug git://host/repo.git
D, [2011-07-12T18:02:30.395106 #94334] DEBUG -- : /usr/local/bin/git --git-dir=/var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94334-5k027n.git clone --bare --shared git://host/repo.git /var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94334-5k027n.git
D, [2011-07-12T18:02:30.494888 #94334] DEBUG -- : Cloning into bare repository /var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94334-5k027n.git...

D, [2011-07-12T18:02:30.495071 #94334] DEBUG -- : fatal: Unable to look up host (port 9418) (nodename nor servname provided, or not known)

/Users/scott/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/fileutils.rb:692:in `lstat': No such file or directory - /var/folders/mn/mn-Xv8g8HyahvL5EPn89RU+++TQ/-Tmp-/bt20110712-94334-5k027n.git (Errno::ENOENT)
    from /Users/scott/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/fileutils.rb:692:in `remove_entry_secure'
    from /Users/scott/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/tmpdir.rb:85:in `ensure in mktmpdir'
    from /Users/scott/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/tmpdir.rb:85:in `mktmpdir'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:49:in `mirror'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/bin/bt-watch:42:in `<top (required)>'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-watch:19:in `load'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-watch:19:in `<main>'

At the very least, we should do what bt-go does:

$ bt-go
/Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/repo.rb:51:in `initialize': /Users/scott/Projects/bt/x (Grit::InvalidGitRepositoryError)
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:88:in `new'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/lib/bt/git.rb:88:in `initialize'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/bin/bt-go:25:in `new'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/gems/build-thing-0.0.1/bin/bt-go:25:in `<top (required)>'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-go:19:in `load'
    from /Users/scott/.rvm/gems/ruby-1.9.2-p180@bt/bin/bt-go:19:in `<main>'

bt_spec fails on pre 1.7.4 versions of Git

According to Mandrew this is something to do with git's handling of mirrors changing at 1.7.4. I was using 1.7.0.3.313.g87b3c.

Spec failure snippet:

  /Users/james/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:311:in `native': Command exited with 128: /usr/local/bin/git --git-dir=/var/folders/OA/OAXATDj-EjicTj7GK7PmhU+++TI/-Tmp-/bt20110704-33082-1b76ghe.git fetch origin +refs/bt/*:refs/bt/* (Grit::Git::CommandFailed)
    from /Users/james/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:325:in `method_missing'
    from /Users/james/work/bt/lib/bt/git.rb:109:in `update'
    from /Users/james/work/bt/spec/../bin/bt-results:25:in `block in <main>'
    from /Users/james/work/bt/lib/bt/git.rb:66:in `block in initialize'
    from /Users/james/work/bt/lib/bt/git.rb:66:in `chdir'
    from /Users/james/work/bt/lib/bt/git.rb:66:in `initialize'
    from /Users/james/work/bt/lib/bt/git.rb:47:in `new'
    from /Users/james/work/bt/lib/bt/git.rb:47:in `block in mirror'
    from /Users/james/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from /Users/james/work/bt/lib/bt/git.rb:45:in `mirror'
    from /Users/james/work/bt/spec/../bin/bt-results:24:in `<main>'
   D, [2011-07-04T14:08:10.897586 #33082] DEBUG -- : 
   D, [2011-07-04T14:08:10.897859 #33082] DEBUG -- : fatal: 'origin' does not appear to be a git repository
   fatal: The remote end hung up unexpectedly
 # ./spec/bt_spec.rb:354:in `results'
 # ./spec/bt_spec.rb:284:in `block (2 levels) in <top (required)>'
 # ./spec/bt_spec.rb:167:in `block (4 levels) in <top (required)>'

Stages resulting in long build output fail to save results.

Fails with the following trace. It looks like the commit message is too long.

/Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/process.rb:290:in `spawn': Argument list too long - /usr/bin/git (Errno::E2BIG)
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/process.rb:290:in `spawn'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/process.rb:271:in `popen4'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/process.rb:97:in `exec!'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/process.rb:68:in `initialize'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:301:in `new'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:301:in `native'
    from /Users/akiellor/.rvm/gems/ruby-1.9.2-p180@bt/gems/grit-2.4.1/lib/grit/git.rb:325:in `method_missing'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:130:in `commit'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:27:in `block in workspace'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:56:in `call'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:56:in `block (2 levels) in working_tree'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:65:in `block in initialize'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:65:in `chdir'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:65:in `initialize'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:54:in `new'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:54:in `block in working_tree'
    from /Users/akiellor/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:52:in `working_tree'
    from /Users/akiellor/Development/bt/lib/bt/git.rb:22:in `workspace'
    from /Users/akiellor/Development/bt/lib/bt/stage.rb:22:in `build'
    from /Users/akiellor/Development/bt/bin/bt-go:34:in `<main>'

script/install broken

Hey guys!

Not sure if bt is maintained anymore (if it isn't, is there a replacement?), but I tried to install it earlier today and got this:

~/src[0]$ git clone http://github.com/quad/bt.git
Cloning into 'bt'...
remote: Reusing existing pack: 1808, done.
remote: Total 1808 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1808/1808), 2.01 MiB | 371.00 KiB/s, done.
Resolving deltas: 100% (941/941), done.
Checking connectivity... done.
~/src[0]$ cd bt
~/src/bt[0][master]$ script/install
The source :rubygems is deprecated because HTTP requests are insecure.
Please change your source to 'https://rubygems.org' if possible, or 'http://rubygems.org' if not.
Resolving dependencies...
Using rake (10.1.1)
Installing andand (1.3.1)
Installing dnssd (2.0)
Installing eventmachine (0.12.10)
Using diff-lcs (1.2.5)
Using mime-types (1.25.1)
Installing grit (2.4.1)
Installing haml (3.1.2)
Using rack (1.5.2)
Using tilt (1.4.1)
Installing sinatra (1.2.6)
Installing daemons (1.1.4)
Installing thin (1.2.11)
Installing trollop (1.16.2)
Using systemu (2.6.3)
Using macaddr (1.6.5)
Using uuid (2.3.7)
Using build-thing (0.0.1) from source at .
Using rspec-core (2.14.8)
Using rspec-expectations (2.14.5)
Using rspec-mocks (2.14.6)
Using rspec (2.14.1)
Using bundler (1.5.3)
Updating files in vendor/cache
  * rake-10.1.1.gem
  * diff-lcs-1.2.5.gem
  * mime-types-1.25.1.gem
  * rack-1.5.2.gem
  * tilt-1.4.1.gem
  * systemu-2.6.3.gem
  * macaddr-1.6.5.gem
  * uuid-2.3.7.gem
  * rspec-core-2.14.8.gem
  * rspec-expectations-2.14.5.gem
  * rspec-mocks-2.14.6.gem
  * rspec-2.14.1.gem
Removing outdated .gem files from vendor/cache
  * diff-lcs-1.1.2.gem
  * macaddr-1.0.0.gem
  * mime-types-1.16.gem
  * rack-1.3.0.gem
  * rake-0.9.2.gem
  * rspec-2.6.0.gem
  * rspec-core-2.6.3.gem
  * rspec-expectations-2.6.0.gem
  * rspec-mocks-2.6.0.gem
  * tilt-1.3.2.gem
  * uuid-2.3.2.gem
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
/Users/cvillela/.rbenv/versions/2.1.0/bin/ruby -S rspec ./spec/bt/command_spec.rb ./spec/bt/pipeline_spec.rb ./spec/bt/stage_spec.rb ./spec/bt/stage_specification_spec.rb ./spec/bt_ready_spec.rb ./spec/bt_results_spec.rb ./spec/bt_spec.rb ./spec/bt_stages_spec.rb ./spec/bt_watch_spec.rb --format progress --format html --out spec/spec.html
.....DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:6:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:25:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:53:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:81:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:81:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:127:in `block (4 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:81:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:136:in `block (4 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:198:in `block (4 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:207:in `block (4 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:144:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/pipeline_spec.rb:222:in `block (4 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:13:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:13:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:13:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:13:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:6:in `block (2 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:38:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:49:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:49:in `block (3 levels) in <top (required)>'.
.DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:38:in `block (2 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:55:in `block (3 levels) in <top (required)>'.
DEPRECATION: mock is deprecated. Use double instead. Called from /Users/cvillela/Dropbox/src/bt/spec/bt/stage_spec.rb:55:in `block (3 levels) in <top (required)>'.
./var/folders/kq/svjvd70j6qb48qyxzv49y7c4_z7f7d/T/20140313-5867-1cec30l:3:in `<main>': undefined method `y' for main:Object (NoMethodError)
F./var/folders/kq/svjvd70j6qb48qyxzv49y7c4_z7f7d/T/20140313-5867-rubjs7:3:in `<main>': undefined method `y' for main:Object (NoMethodError)
FFFFFFFFFFFFFFFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFFFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFFFFFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
F/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
F./Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFF/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
FFFFFFFFF..FFF

Failures:

  1) BT::StageSpecification a stage specification with a single generated specification to_hash 
     Failure/Error: should == {'stage' => {'results' => [], 'needs' => [], 'run' => 'exit 0'}}
     TypeError:
       no implicit conversion of false into Hash
     # ./lib/bt/stage_specification.rb:27:in `merge'
     # ./lib/bt/stage_specification.rb:27:in `block in to_hash'
     # ./lib/bt/stage_specification.rb:26:in `each'
     # ./lib/bt/stage_specification.rb:26:in `inject'
     # ./lib/bt/stage_specification.rb:26:in `to_hash'
     # ./spec/bt/stage_specification_spec.rb:26:in `block (3 levels) in <top (required)>'

  2) BT::StageSpecification a stage specification with a static and generated specification to_hash 
     Failure/Error: should == {
     TypeError:
       no implicit conversion of false into Hash
     # ./lib/bt/stage_specification.rb:27:in `merge'
     # ./lib/bt/stage_specification.rb:27:in `block in to_hash'
     # ./lib/bt/stage_specification.rb:26:in `each'
     # ./lib/bt/stage_specification.rb:26:in `inject'
     # ./lib/bt/stage_specification.rb:26:in `to_hash'
     # ./spec/bt/stage_specification_spec.rb:42:in `block (3 levels) in <top (required)>'

  3) bt-ready a project with a single static stage specification the result of executing bt-ready should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_ready_spec.rb:18:in `block (3 levels) in <top (required)>'

  4) bt-ready a project with a single static stage specification the result of executing bt-ready --commit HEAD should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_ready_spec.rb:22:in `block (3 levels) in <top (required)>'

  5) bt-ready a project with a single static stage specification with another stage added the result of executing bt-ready --commit HEAD should == "2052fb403d39309113a4ee273a8d4e4291f668cf/first\n2052fb403d39309113a4ee273a8d4e4291f668cf/second\n"
     Failure/Error: Unable to find matching line from backtrace
       expected: "2052fb403d39309113a4ee273a8d4e4291f668cf/first\n2052fb403d39309113a4ee273a8d4e4291f668cf/second\n"
            got: "/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for \"x\":String (NoMethodError)\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'\n" (using ==)
       Diff:
       @@ -1,3 +1,26 @@
       -2052fb403d39309113a4ee273a8d4e4291f668cf/first
       -2052fb403d39309113a4ee273a8d4e4291f668cf/second
       +/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
     # ./spec/bt_ready_spec.rb:39:in `block (4 levels) in <top (required)>'

  6) bt-ready a project with a single static stage specification with another stage added the result of executing bt-ready --commit HEAD\^ should == "970d2909b5932f530b13d9e348dcdc26bc2f1889/first\n"
     Failure/Error: Unable to find matching line from backtrace
       expected: "970d2909b5932f530b13d9e348dcdc26bc2f1889/first\n"
            got: "/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for \"x\":String (NoMethodError)\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'\n" (using ==)
       Diff:
       @@ -1,2 +1,26 @@
       -970d2909b5932f530b13d9e348dcdc26bc2f1889/first
       +/Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:108:in `unpack_object_header_gently': undefined method `>>' for "x":String (NoMethodError)
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:56:in `get_raw_object'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/internal/loose.rb:32:in `[]'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:84:in `block in get_raw_object_by_sha1'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `each'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:83:in `get_raw_object_by_sha1'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:334:in `walk_log'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:287:in `log'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby/repository.rb:306:in `rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `block in rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:224:in `block in try_run'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:82:in `block in timeout'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `catch'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/timeout.rb:70:in `timeout'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:223:in `try_run'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/git-ruby.rb:68:in `rev_list'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/commit.rb:121:in `find_all'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/grit-2.4.1/lib/grit/repo.rb:406:in `commit'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:78:in `commit'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:23:in `block in <main>'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `new'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-ready:22:in `<main>'
     # ./spec/bt_ready_spec.rb:43:in `block (4 levels) in <top (required)>'

  7) bt-results the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:30:in `block (2 levels) in <top (required)>'

  8) bt-results the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:39:in `block (2 levels) in <top (required)>'

  9) bt-results the result of executing bt-results --format text should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:48:in `block (2 levels) in <top (required)>'

  10) bt-results when 'bt-go --once' has executed the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:59:in `block (3 levels) in <top (required)>'

  11) bt-results when 'bt-go --once' has executed the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:71:in `block (3 levels) in <top (required)>'

  12) bt-results when 'bt-go' has executed the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:82:in `block (3 levels) in <top (required)>'

  13) bt-results when 'bt-go' has executed the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:91:in `block (3 levels) in <top (required)>'

  14) bt-results when 'bt-go' has executed the result of executing bt-results --format short should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:116:in `block (3 levels) in <top (required)>'

  15) bt-results when 'bt-go --once' has executed the result of executing bt-results --format short should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_results_spec.rb:122:in `block (3 levels) in <top (required)>'

  16) bt-go a repo with a bt build when 'bt-go' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:22:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  17) bt-go a repo with a bt build when 'bt-go' has executed the result for stage 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:22:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:23:in `block (5 levels) in <top (required)>'

  18) bt-go a repo with a bt build when 'bt-go' has executed ready_stages 
     Failure/Error: its(:ready_stages) { should be_empty }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/bt_spec.rb:26:in `block (4 levels) in <top (required)>'

  19) bt-go a repo which expects results that are not generated when 'bt-go' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:40:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  20) bt-go a repo which expects results that are not generated when 'bt-go' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:40:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:41:in `block (5 levels) in <top (required)>'

  21) bt-go a repo with a failing bt build when 'bt-go --once' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:50:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  22) bt-go a repo with a failing bt build when 'bt-go --once' has executed should not be ready
     Failure/Error: it { should_not be_ready }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/support/project.rb:176:in `ready?'
     # ./spec/bt_spec.rb:54:in `block (4 levels) in <top (required)>'

  23) bt-go a repo with a failing bt build when 'bt-go --once' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'failing'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:50:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:51:in `block (5 levels) in <top (required)>'

  24) bt-go a repo with a failing build which outputs to stderr when 'bt-go' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:66:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  25) bt-go a repo with a failing build which outputs to stderr when 'bt-go' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:66:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:67:in `block (5 levels) in <top (required)>'

  26) bt-go a repo with a failing dependant stage when 'bt-go --once' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:79:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  27) bt-go a repo with a failing dependant stage when 'bt-go --once' has executed should not be ready
     Failure/Error: it { should_not be_ready }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/support/project.rb:176:in `ready?'
     # ./spec/bt_spec.rb:83:in `block (4 levels) in <top (required)>'

  28) bt-go a repo with a failing dependant stage when 'bt-go --once' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:79:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:80:in `block (5 levels) in <top (required)>'

  29) bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage second' has executed 
     Failure/Error: it { should_not have_results_for project.head }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:107:in `block (4 levels) in <top (required)>'

  30) bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed 
     Failure/Error: it { should have_results_for(project.head).including_stages('first') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:111:in `block (4 levels) in <top (required)>'

  31) bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed 
     Failure/Error: it { should_not have_results_for(project.head).including_stages('second', 'third') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:112:in `block (4 levels) in <top (required)>'

  32) bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed when 'bt-go --stage second' has executed 
     Failure/Error: it { should have_results_for(project.head).including_stages('first', 'second') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:115:in `block (5 levels) in <top (required)>'

  33) bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed when 'bt-go --stage second' has executed 
     Failure/Error: it { should_not have_results_for(project.head).including_stages('third') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:116:in `block (5 levels) in <top (required)>'

  34) bt-go a repo with two dependent stages should be ready
     Failure/Error: it { should be_ready }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/support/project.rb:176:in `ready?'
     # ./spec/bt_spec.rb:138:in `block (3 levels) in <top (required)>'

  35) bt-go a repo with two dependent stages ready_stages 
     Failure/Error: its(:ready_stages) { should == ["#{project.head.sha}/first"]}
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/bt_spec.rb:140:in `block (3 levels) in <top (required)>'

  36) bt-go a repo with two dependent stages when 'bt-go --once' has executed should be ready
     Failure/Error: it { should be_ready }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/support/project.rb:176:in `ready?'
     # ./spec/bt_spec.rb:147:in `block (4 levels) in <top (required)>'

  37) bt-go a repo with two dependent stages when 'bt-go --once' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:151:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  38) bt-go a repo with two dependent stages when 'bt-go --once' has executed 
     Failure/Error: it { should have_results_for(project.head).including_stages('first') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:156:in `block (4 levels) in <top (required)>'

  39) bt-go a repo with two dependent stages when 'bt-go --once' has executed ready_stages 
     Failure/Error: its(:ready_stages) { should == ["#{project.head.sha}/second"] }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/bt_spec.rb:149:in `block (4 levels) in <top (required)>'

  40) bt-go a repo with two dependent stages when 'bt-go --once' has executed the result for stage 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:151:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:152:in `block (5 levels) in <top (required)>'

  41) bt-go a repo with two dependent stages when 'bt-go --once' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'first'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:151:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:153:in `block (5 levels) in <top (required)>'

  42) bt-go a repo with two dependent stages when 'bt-go' has executed should not be ready
     Failure/Error: it { should_not be_ready }
     RuntimeError:
     # ./spec/support/project.rb:171:in `ready_stages'
     # ./spec/support/project.rb:176:in `ready?'
     # ./spec/bt_spec.rb:160:in `block (4 levels) in <top (required)>'

  43) bt-go a repo with two dependent stages when 'bt-go' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:162:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  44) bt-go a repo with two dependent stages when 'bt-go' has executed 
     Failure/Error: it { should have_results_for(project.head).including_stages('first', 'second') }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:167:in `block (4 levels) in <top (required)>'

  45) bt-go a repo with two dependent stages when 'bt-go' has executed the result for stage 
     Failure/Error: result_of stage { [project.head, 'second'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:162:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:163:in `block (5 levels) in <top (required)>'

  46) bt-go a repo with two dependent stages when 'bt-go' has executed the result for stage commit.message 
     Failure/Error: result_of stage { [project.head, 'second'] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:162:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:164:in `block (5 levels) in <top (required)>'

  47) bt-go a project which has multiple upstream stages when 'bt-go' has executed 
     Failure/Error: repo.commits.first
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:194:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:53:in `instance_eval'
     # ./spec/support/project.rb:53:in `block in result_of'

  48) bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage 
     Failure/Error: result_of stage { [ project.head, 'third' ] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:194:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:196:in `block (5 levels) in <top (required)>'

  49) bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage 
     Failure/Error: result_of stage { [ project.head, 'third' ] } do
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:194:in `block (4 levels) in <top (required)>'
     # ./spec/support/project.rb:59:in `instance_eval'
     # ./spec/support/project.rb:59:in `block (2 levels) in result_of'
     # ./spec/bt_spec.rb:197:in `block (5 levels) in <top (required)>'

  50) bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage commit 
     Failure/Error: its('commit') { should have_parents project.bt_ref('first', project.head).commit, project.bt_ref('second', project.head).commit }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_spec.rb:195:in `block (5 levels) in <top (required)>'

  51) bt-stages a repo with a stage generator the result of executing bt-stages should == "---\nfirst:\n  needs: []\n  results:\n  - new_file\n  run: exit 0\nstage:\n  run: exit 0\n  needs: []\n  results: []\nanother:\n  run: exit 0\n  needs: []\n  results: []\nstage_from_lib:\n  run: exit 0\n  results: []\n  needs: []\n"
     Failure/Error: Unable to find matching line from backtrace
       expected: "---\nfirst:\n  needs: []\n  results:\n  - new_file\n  run: exit 0\nstage:\n  run: exit 0\n  needs: []\n  results: []\nanother:\n  run: exit 0\n  needs: []\n  results: []\nstage_from_lib:\n  run: exit 0\n  results: []\n  needs: []\n"
            got: "/private/var/folders/kq/svjvd70j6qb48qyxzv49y7c4_z7f7d/T/d20140313-6563-1rn5zns/stages/generator:3:in `<main>': undefined method `y' for main:Object (NoMethodError)\n/Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:27:in `merge': no implicit conversion of false into Hash (TypeError)\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:27:in `block in to_hash'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `each'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `inject'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `to_hash'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:33:in `block (2 levels) in <main>'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:61:in `call'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:61:in `block (2 levels) in working_tree'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:59:in `new'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:59:in `block in working_tree'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/tmpdir.rb:88:in `mktmpdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:56:in `working_tree'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:25:in `block in <main>'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:50:in `call'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:50:in `block (2 levels) in mirror'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:47:in `new'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:47:in `block in mirror'\n\tfrom /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/tmpdir.rb:88:in `mktmpdir'\n\tfrom /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:45:in `mirror'\n\tfrom /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:24:in `<main>'\n" (using ==)
       Diff:
       @@ -1,19 +1,28 @@
       ----
       -first:
       -  needs: []
       -  results:
       -  - new_file
       -  run: exit 0
       -stage:
       -  run: exit 0
       -  needs: []
       -  results: []
       -another:
       -  run: exit 0
       -  needs: []
       -  results: []
       -stage_from_lib:
       -  run: exit 0
       -  results: []
       -  needs: []
       +/private/var/folders/kq/svjvd70j6qb48qyxzv49y7c4_z7f7d/T/d20140313-6563-1rn5zns/stages/generator:3:in `<main>': undefined method `y' for main:Object (NoMethodError)
       +/Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:27:in `merge': no implicit conversion of false into Hash (TypeError)
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:27:in `block in to_hash'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `each'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `inject'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/stage_specification.rb:26:in `to_hash'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:33:in `block (2 levels) in <main>'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:61:in `call'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:61:in `block (2 levels) in working_tree'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:59:in `new'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:59:in `block in working_tree'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/tmpdir.rb:88:in `mktmpdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:56:in `working_tree'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:25:in `block in <main>'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:50:in `call'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:50:in `block (2 levels) in mirror'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `block in initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `chdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:70:in `initialize'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:47:in `new'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:47:in `block in mirror'
       +    from /Users/cvillela/.rbenv/versions/2.1.0/lib/ruby/2.1.0/tmpdir.rb:88:in `mktmpdir'
       +    from /Users/cvillela/Dropbox/src/bt/lib/bt/git.rb:45:in `mirror'
       +    from /Users/cvillela/Dropbox/src/bt/spec/../bin/bt-stages:24:in `<main>'
     # ./spec/bt_stages_spec.rb:112:in `block (3 levels) in <top (required)>'

  52) bt-watch after executing bt-watch asynchronously 
     Failure/Error: it { should have_results_for(project.head).including_stages('first').eventually }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_watch_spec.rb:13:in `block (3 levels) in <top (required)>'

  53) bt-watch after executing bt-watch asynchronously when polling for changes and a change is commited 
     Failure/Error: precondition { project.bt_ref('first', project.head) }
     NoMethodError:
       undefined method `>>' for "x":String
     # ./spec/support/project.rb:125:in `head'
     # ./spec/bt_watch_spec.rb:31:in `block (4 levels) in <top (required)>'
     # ./spec/bt_watch_spec.rb:20:in `instance_eval'
     # ./spec/bt_watch_spec.rb:20:in `block (2 levels) in precondition'
     # ./spec/bt_watch_spec.rb:19:in `block in precondition'

Finished in 28.57 seconds
84 examples, 53 failures

Failed examples:

rspec ./spec/bt/stage_specification_spec.rb:25 # BT::StageSpecification a stage specification with a single generated specification to_hash 
rspec ./spec/bt/stage_specification_spec.rb:41 # BT::StageSpecification a stage specification with a static and generated specification to_hash 
rspec ./spec/support/project.rb:47 # bt-ready a project with a single static stage specification the result of executing bt-ready should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-ready a project with a single static stage specification the result of executing bt-ready --commit HEAD should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-ready a project with a single static stage specification with another stage added the result of executing bt-ready --commit HEAD should == "2052fb403d39309113a4ee273a8d4e4291f668cf/first\n2052fb403d39309113a4ee273a8d4e4291f668cf/second\n"
rspec ./spec/support/project.rb:47 # bt-ready a project with a single static stage specification with another stage added the result of executing bt-ready --commit HEAD\^ should == "970d2909b5932f530b13d9e348dcdc26bc2f1889/first\n"
rspec ./spec/support/project.rb:47 # bt-results the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results the result of executing bt-results --format text should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go --once' has executed the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go --once' has executed the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go' has executed the result of executing bt-results should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go' has executed the result of executing bt-results --format json should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go' has executed the result of executing bt-results --format short should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:47 # bt-results when 'bt-go --once' has executed the result of executing bt-results --format short should When you call a matcher in an example without a String, like this:

specify { object.should matcher }

or this:

it { should matcher }

RSpec expects the matcher to have a #description method. You should either
add a String to the example this matcher is being used in, or give it a
description method. Then you won't have to suffer this lengthy warning again.
rspec ./spec/support/project.rb:52 # bt-go a repo with a bt build when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:23 # bt-go a repo with a bt build when 'bt-go' has executed the result for stage 
rspec ./spec/bt_spec.rb:26 # bt-go a repo with a bt build when 'bt-go' has executed ready_stages 
rspec ./spec/support/project.rb:52 # bt-go a repo which expects results that are not generated when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:41 # bt-go a repo which expects results that are not generated when 'bt-go' has executed the result for stage commit.message 
rspec ./spec/support/project.rb:52 # bt-go a repo with a failing bt build when 'bt-go --once' has executed 
rspec ./spec/bt_spec.rb:54 # bt-go a repo with a failing bt build when 'bt-go --once' has executed should not be ready
rspec ./spec/bt_spec.rb:51 # bt-go a repo with a failing bt build when 'bt-go --once' has executed the result for stage commit.message 
rspec ./spec/support/project.rb:52 # bt-go a repo with a failing build which outputs to stderr when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:67 # bt-go a repo with a failing build which outputs to stderr when 'bt-go' has executed the result for stage commit.message 
rspec ./spec/support/project.rb:52 # bt-go a repo with a failing dependant stage when 'bt-go --once' has executed 
rspec ./spec/bt_spec.rb:83 # bt-go a repo with a failing dependant stage when 'bt-go --once' has executed should not be ready
rspec ./spec/bt_spec.rb:80 # bt-go a repo with a failing dependant stage when 'bt-go --once' has executed the result for stage commit.message 
rspec ./spec/bt_spec.rb:107 # bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage second' has executed 
rspec ./spec/bt_spec.rb:111 # bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed 
rspec ./spec/bt_spec.rb:112 # bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed 
rspec ./spec/bt_spec.rb:115 # bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed when 'bt-go --stage second' has executed 
rspec ./spec/bt_spec.rb:116 # bt-go a repo with a bt build, which has built a stage with needs when 'bt-go --stage first' has executed when 'bt-go --stage second' has executed 
rspec ./spec/bt_spec.rb:138 # bt-go a repo with two dependent stages should be ready
rspec ./spec/bt_spec.rb:140 # bt-go a repo with two dependent stages ready_stages 
rspec ./spec/bt_spec.rb:147 # bt-go a repo with two dependent stages when 'bt-go --once' has executed should be ready
rspec ./spec/support/project.rb:52 # bt-go a repo with two dependent stages when 'bt-go --once' has executed 
rspec ./spec/bt_spec.rb:156 # bt-go a repo with two dependent stages when 'bt-go --once' has executed 
rspec ./spec/bt_spec.rb:149 # bt-go a repo with two dependent stages when 'bt-go --once' has executed ready_stages 
rspec ./spec/bt_spec.rb:152 # bt-go a repo with two dependent stages when 'bt-go --once' has executed the result for stage 
rspec ./spec/bt_spec.rb:153 # bt-go a repo with two dependent stages when 'bt-go --once' has executed the result for stage commit.message 
rspec ./spec/bt_spec.rb:160 # bt-go a repo with two dependent stages when 'bt-go' has executed should not be ready
rspec ./spec/support/project.rb:52 # bt-go a repo with two dependent stages when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:167 # bt-go a repo with two dependent stages when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:163 # bt-go a repo with two dependent stages when 'bt-go' has executed the result for stage 
rspec ./spec/bt_spec.rb:164 # bt-go a repo with two dependent stages when 'bt-go' has executed the result for stage commit.message 
rspec ./spec/support/project.rb:52 # bt-go a project which has multiple upstream stages when 'bt-go' has executed 
rspec ./spec/bt_spec.rb:196 # bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage 
rspec ./spec/bt_spec.rb:197 # bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage 
rspec ./spec/bt_spec.rb:195 # bt-go a project which has multiple upstream stages when 'bt-go' has executed the result for stage commit 
rspec ./spec/support/project.rb:47 # bt-stages a repo with a stage generator the result of executing bt-stages should == "---\nfirst:\n  needs: []\n  results:\n  - new_file\n  run: exit 0\nstage:\n  run: exit 0\n  needs: []\n  results: []\nanother:\n  run: exit 0\n  needs: []\n  results: []\nstage_from_lib:\n  run: exit 0\n  results: []\n  needs: []\n"
rspec ./spec/bt_watch_spec.rb:13 # bt-watch after executing bt-watch asynchronously 
rspec ./spec/bt_watch_spec.rb:35 # bt-watch after executing bt-watch asynchronously when polling for changes and a change is commited 
/Users/cvillela/.rbenv/versions/2.1.0/bin/ruby -S rspec ./spec/bt/command_spec.rb ./spec/bt/pipeline_spec.rb ./spec/bt/stage_spec.rb ./spec/bt/stage_specification_spec.rb ./spec/bt_ready_spec.rb ./spec/bt_results_spec.rb ./spec/bt_spec.rb ./spec/bt_stages_spec.rb ./spec/bt_watch_spec.rb --format progress --format html --out spec/spec.html failed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.