RSpec-2.5.0 is released!
This is a minor upgrade, and is fully backward compatible with rspec-2.4. It
includes several bug fixes, enhancements, and one deprecation. See the changelog
below for details.
We had a little glitch publishing the docs to
[http://relishapp.com/rspec](http://relishapp.com/rspec), so the 2.5 docs
won''t be up for another day or two, so I''ll detail the
noticable differences here (and on
http://blog.davidchelimsky.net/2011/02/06/rspec-250-is-released/).
## Autotest/Bundler integration
### --skip-bundler
RSpec''s Autotest integration assumes that you want `bundle exec` in the
shell command generated by Autotest if you have a `Gemfile`. This works fine for
some situations, but not all, so we added an opt-out for rspec-2.5:
autotest -- --skip-bundler
Autotest ignores everything after the initial `--`, so RSpec''s Autotest
extension handles the `--skip-bundler` option.
### Autotest''s bundler plugin
Autotest ships with a plugin for bundler. Just add the following to a
`.autotest` file in the project''s root directory, or your home
directory:
require ''autotest/bundler''
This prefixes the generated shell command with ''bundle exec''.
### Implicit detection of Gemfile is deprecated
Given that Autotest has its own way of dealing with Bundler (see above), we
deprecated the implicit assumption that `Gemfile` means "use bundler".
You''ll see a deprecation notice if you are relying on that, but it
_still works_. It''s just a deprecation warning. To silence the warning,
either use the `--skip-bundler` option or Autotest''s bundler plugin,
described above.
## HTML Formatter
The HTML formatter now has a set of checkboxes in the header that allow you to
filter what you''re looking at:
<img
src="https://img.skitch.com/20110205-xup5ktgdua75rfs8fwtr1yf1b7.jpg">
## to not, or not to not
Are you the sort of person for whom "expect this block of code _to not_
raise an error" is like nails on chalkboard? If so, relief has arrived. You
may now type either of the following, and RSpec will happily service you:
expect { ... }.to_not raise_error
expect { ... }.not_to raise_error
## Changelog
### rspec-core-2.5.0
[full changelog](http://github.com/rspec/rspec-core/compare/v2.4.0...v2.5.0)
* Enhancements
* Autotest::Rspec2 parses command line args passed to autotest after
''--''
* --skip-bundler option for autotest command
* Autotest regexp fixes (Jon Rowe)
* Add filters to html and textmate formatters (Daniel Quimper)
* Explicit passing of block (need for JRuby 1.6) (John Firebaugh)
* Bug fixes
* fix dom IDs in HTML formatter (Brian Faherty)
* fix bug with --drb + formatters when not running in drb
* include --tag options in drb args (monocle)
* fix regression so now SPEC_OPTS take precedence over CLI options again
(Roman Chernyatchik)
* only call its(:attribute) once (failing example from Brian Dunn)
* fix bizarre bug where rspec would hang after `String.alias :to_int :to_i`
(Damian Nurzynski)
* Deprecations
* implicit inclusion of ''bundle exec'' when Gemfile present
(use autotest''s
bundler plugin instead)
### rspec-expectations-2.5.0
[full
changelog](http://github.com/rspec/rspec-expectations/compare/v2.4.0...v2.5.0)
* Enhancements
* `should exist` works with `exist?` or `exists?` (Myron Marston)
* `expect { ... }.not_to do_something` (in addition to `to_not`)
* Documentation
* improved docs for `raise_error` matcher (James Almond)
### rspec-mocks-2.5.0
[full changelog](http://github.com/rspec/rspec-mocks/compare/v2.4.0...v2.5.0)
* Bug fixes
* message expectation counts now work in combination with a stub (Damian
Nurzynski)
* fix failure message when message received with incorrect args (Josep M.
Bach)
### rspec-rails-2.5.0
[full changelog](http://github.com/rspec/rspec-rails/compare/v2.4.1...v2.5.0)
* Enhancements
* use `index_helper` instead of `table_name` when generating specs (Reza
Primardiansyah)
* Bug fixes
* fixed bug in which `render_views` in a nested group set the value in its
parent group.
* only include MailerExampleGroup when it is defiend (Steve Sloan)
* `mock_model.as_null_object.attribute.blank?` returns `false` (Randy Schmidt)
* fix typo in request specs (Paco Guzman)