Significantly improve the performance of --bisect on platforms that
support forking by replacing the shell-based runner with one that uses
forking so that RSpec and the application environment can be booted only
once, instead of once per spec run. (Myron Marston, #2511)

Provide a configuration API to pick which bisect runner is used for
--bisect. Pick a runner via config.bisect_runner = :shell or
config.bisect_runner = :fork in a file loaded by a --require
option passed at the command line or set in .rspec. (Myron Marston, #2511)

Support the XDG Base Directory
Specification
for the global options file. ~/.rspec is still supported when no
options file is found in $XDG_CONFIG_HOME/rspec/options (Magnus Bergmark, #2538)

Multiple fixes to allow using the runner multiple times within the same
process: RSpec.clear_examples resets the formatter and no longer clears
shared examples, and streams can be used across multiple runs rather than
being closed after the first. (#2368, Xavier Shay)

3.5.4 / 2016-09-30

3.5.3 / 2016-09-02

When applying shared group metadata to a host group, overwrite
conflicting keys if the value in the host group was inherited from
a parent group instead of being specified at that level.
(Myron Marston, #2307)

Handle errors in :suite hooks and provide the same nicely formatted
output as errors that happen in examples. (Myron Marston, #2316)

Set the exit status to non-zero when an error occurs in an
after(:context) hook. (Myron Marston, #2320)

3.5.0.beta4 / 2016-06-05

Filter out bundler stackframes from backtraces by default, since
Bundler 1.12 now includes its own frames in stack traces produced
by using bundle exec. (Myron Marston, #2240)

HTML Formatter uses exception presenter to get failure message
for consistency with other formatters. (@mrageh, #2222)

Load spec files in the order of the directories or files passed
at the command line, making it easy to make some specs run before
others in a one-off manner. For example, rspec spec/unit
spec/acceptance --order defined will run unit specs before acceptance
specs. (Myron Marston, #2253)

Add new config.shared_context_metadata_behavior = :apply_to_host_groups
option, which causes shared context metadata to be inherited by the
metadata hash of all host groups and examples instead of configuring
implicit auto-inclusion based on the passed metadata. (Myron Marston, #2256)

Bug Fixes:

Fix --bisect so it works on large spec suites that were previously triggering
"Argument list too long errors" due to all the spec locations being passed as
CLI args. (Matt Jones, #2223).

Add optional example_finished notification to the reporter protocol for
when you don't care about the example outcome. (Jon Rowe, #2013)

Switch --bisect to a recursion-based bisection algorithm rather than
a permutation-based one. This better handles cases where an example
depends upon multiple other examples instead of just one and minimizes
the number of runs necessary to determine that an example set cannot be
minimized further. (Simon Coffey, #1997)

Add config.project_source_dirs setting which RSpec uses to determine
if a backtrace line comes from your project source or from some
external library. It defaults to spec, lib and app but can be
configured differently. (Myron Marston, #2088)

Improve failure line detection so that it looks for the failure line
in any project source directory instead of just in the spec file.
In addition, if no backtrace lines can be found from a project source
file, we fall back to displaying the source of the first backtrace
line. This should virtually eliminate the "Unable to find matching
line from backtrace" messages. (Myron Marston, #2088)

Add support for :extra_failure_lines example metadata that will
be appended to the failure output. (bootstraponline, #2092).

Add shared group backtrace to the output displayed by the built-in
formatters for pending examples that have been fixed. (Myron Marston, #1946)

Add support for :aggregate_failures metadata. Tag an example or
group with this metadata and it'll use rspec-expectations'
aggregate_failures feature to allow multiple failures in an example
and list them all, rather than aborting on the first failure. (Myron
Marston, #1946)

When no formatter implements #message add a fallback to prevent those
messages being lost. (Jon Rowe, #1980)

3.2.2 / 2015-03-11

Fix regression in 3.2.0 that allowed tag-filtered examples to
run even if there was a location filter applied to the spec
file that was intended to limit the file to other examples.
(#1894, Myron Marston)

Improve shared example group inclusion backtrace displayed
in failed example output so that it works for all methods
of including shared example groups and shows all inclusion
locations. (Myron Marston, #1763)

Issue seed notification at start (as well as the end) of the reporter
run. (Arlandis Word, #1761)

Improve the documentation of around hooks. (Jim Kingdon, #1772)

Support prepending of modules into example groups from config and allow
filtering based on metadata. (Arlandis Word, #1806)

Emit warnings when :suite hooks are registered on an example group
(where it has always been ignored) or are registered with metadata
(which has always been ignored). (Myron Marston, #1805)

Provide a friendly error message when users call RSpec example
APIs (e.g. expect, double, stub_const, etc) from
within an example group where those APIs are unavailable.
(Myron Marston, #1819)

Add new RSpec::Core::Sandbox.sandboxed { } API that facilitates
testing RSpec with RSpec, allowing you to define example groups
and example from within an example without affecting the global
RSpec.world state. (Tyler Ball, 1808)

Apply line-number filters only to the files they are scoped to,
allowing you to mix filtered and unfiltered files. (Myron Marston, #1839)

When dumping pending examples, include the failure details so that you
don't have to un-pend the example to see it. (Myron Marston, #1844)

Make -I option support multiple values when separated by
File::PATH_SEPARATOR, such as rspec -I foo:bar. This matches
the behavior of Ruby's -I option. (Fumiaki Matsushima, #1855).

Treat each example as having a singleton example group for the
purposes of applying metadata-based features that normally apply
to example groups to individually tagged examples. For example,
RSpec.shared_context "Uses redis", :uses_redis will now apply
to individual examples tagged with :uses_redis, as will
config.include RedisHelpers, :uses_redis, and
config.before(:context, :uses_redis) { }, etc. (Myron Marston, #1749)

Fix NameError caused when duplicate example group aliases are defined and
the DSL is not globally exposed. (Aaron Kromer, #1825)

When a shared example defined in an external file fails, use the host
example group (from a loaded spec file) for the re-run command to
ensure the command will actually work. (Myron Marston, #1835)

Fix location filtering to work properly for examples defined in
a nested example group within a shared example group defined in
an external file. (Bradley Schaefer, Xavier Shay, Myron Marston, #1837)

When a pending example fails (as expected) due to a mock expectation,
set RSpec::Core::Example::ExecutionResult#pending_exception --
previously it was not being set but should have been. (Myron Marston, #1844)

Fix rake task to work when rspec-core is installed in a directory
containing a space. (Guido Günther, #1845)

Fix bug in :pending metadata. If it got set in any way besides passing
it as part of the metadata literal passed to it (such as by using
define_derived_metadata), it did not have the desired effect,
instead marking the example as :passed. (Myron Marston, #1739)

3.1.5 / 2014-09-29

Support absolute path patterns. While this wasn't officially supported
previously, setting rake_task.pattern to an absolute path pattern in
RSpec 3.0 and before worked since it delegated to FileList internally
(but now just forwards the pattern on to the rspec command).
(Myron Marston, #1726)

3.1.3 / 2014-09-15

Fix yet another regression in rake task pattern handling, to allow
task.pattern = FileList["..."] to work. That was never intended
to be supported but accidentally worked in 3.0 and earlier.
(Myron Marston, #1701)

Fix pattern handling so that files are normalized to absolute paths
before subtracting the --exclude-pattern matched files from the
--pattern matched files so that it still works even if the patterns
are in slightly different forms (e.g. one starting with ./).
(Christian Nelson, #1698)

3.1.2 / 2014-09-08

3.1.1 / 2014-09-05

Fix a regression in rake task pattern handling, so that rake_task.pattern = array
works again. While we never intended to support array values (or even knew that worked!),
the implementation from 3.0 and earlier used FileList internally, which allows arrays.
The fix restores the old behavior. (Myron Marston, #1694)

3.1.0 / 2014-09-04

Update files generated by rspec --init so that warnings are enabled
in commented out section of spec_helper rather than .rspec so users
have to consciously opt-in to the setting. (Andrew Hooker, #1572)

Update spec_helper generated by rspec --init so that it sets the new
rspec-expectations include_chain_clauses_in_custom_matcher_descriptions
config option (which will be on by default in RSpec 4) and also sets the
rspec-mocks verify_partial_doubles option (which will also default
to on in RSpec 4). (Myron Marston, #1647)

Provide an inspect output for example procsy objects (used in around
hooks) that doesn't make them look like procs. (Jon Rowe, #1620)

Remove a few unneeded require statements from
rspec/core/rake_task.rb, making it even more lighterweight.
(Myron Marston, #1640)

Allow rspec-core to be used when neither rspec-mocks or
rspec-expectations are installed, without requiring any
user configuration. (Sam Phippen, Myron Marston, #1615)

Don't filter out gems from backtraces by default. (The RSpec
gems will still be filtered). User feedback has indicated
that including gems in default backtraces will be useful.
(Myron Marston, #1641)

When an around hook fails to execute the example, mark it as
pending (rather than passing) so the user is made aware of the
fact that the example did not actually run. (Myron Marston, #1660)

Remove dependency on FileUtils from the standard library so that users do
not get false positives where their code relies on it but they are not
requiring it. (Sam Phippen, #1565)

Bug Fixes:

Fix rake task t.pattern = option so that it does not run all specs
when it matches no files, by passing along a --pattern option to
the rspec command, rather than resolving the file list and passing
along the files individually. (Evgeny Zislis, #1653)

3.0.2 / 2014-06-19

Fix metadata :example_group deprecation warning so that it gets
issued at the call site of the configuration that specified it as
a filter rather than later when an example group is defined.
(Myron Marston, #1562)

Make the line that is printed when a shared example group fails indicating
where the concrete example group is white, separating it from the stack trace
that is produced for the failure. (Sam Phippen, Jon Rowe, #1606)

3.0.0.rc1 / 2014-05-18

Change described_class so that in a nested group like describe
MyClass, it returns MyClass rather than the outer group's described
class. (Myron Marston)

Refactor filter manager so that it no longer subclasses Hash and has a
tighter, more domain-specific interface. (Sergey Pchelincev)

Remove legacy colours definitions from BaseTextFormatter. (Jon Rowe)

Remove console color definitions from BaseTextFormatter. (Jon Rowe)

Restructure example group metadata so that the computed keys are
exposed directly off of the metadata hash rather than being on
a nested :example_group subhash. In addition, the parent example
group metadata is now available as [:parent_example_group] rather
than [:example_group][:example_group]. Deprecated access via the
old key structure is still provided. (Myron Marston)

Remove :describes metadata key. It duplicates :described_class
for no good reason. Deprecated access via :describes is still
provided. (Myron Marston)

Removed focused example alias and change example/group aliases
fit, focus, fcontext and fdescribe to no longer include
:focused => true metadata. They only contain :focus => true
metadata now. This means that you will need to filter them with
filter_run :focus, not filter_run :focused. (Myron Marston)

Remove --line-number filtering. It's semantically dubious since it's
a global filter (potentially applied to multiple files) but there's no
meaningful connection between the same line number in multiple files.
Instead use the rspec path/to/spec.rb:23:46 form, which is terser
and makes more sense as it is scoped to a file. (Myron Marston)

RSpec's global state is no longer reset after a spec run. This gives
more flexibility to alternate runners to decide when and if they
want the state reset. Alternate runners are now responsible for
calling this (or doing a similar reset) if they are going to run
the spec suite multiple times in the same process. (Sam Phippen)

Migrate execution_result (exposed by metadata) from a hash to a
first-class object with appropriate attributes. status is now
stored and returned as a symbol rather than a string. It retains
deprecated hash behavior for backwards compatibility. (Myron Marston)

Provide console code helper for formatters. (Jon Rowe)

Use raw ruby hashes for the metadata hashes rather than a subclass of
a hash. Computed metadata entries are now computed in advance rather
than being done lazily on first access. (Myron Marston)

Add :block metadata entry to the example metadata, bringing
parity with :block in the example group metadata. (Myron Marston)

Add fspecify and fexample as aliases of specify and example
with :focus => true metadata for parity with fit. (Myron Marston)

Add legacy support for colorize_summary. (Jon Rowe)

Restructure runner so it can be more easily customized in a subclass
for an alternate runner. (Ben Hoskings)

Document RSpec::Core::ConfigurationOptions as an officially
supported public API. (Myron Marston)

3.0.0.beta2 / 2014-02-17

Make mock_with option more strict. Strings are no longer supported
(e.g. mock_with "mocha") -- use a symbol instead. Also, unrecognized
values will now result in an error rather than falling back to the
null mocking adapter. If you want to use the null mocking adapter,
use mock_with :nothing (as has been documented for a long time).
(Myron Marston)

Custom formatters are now required to call
RSpec::Core::Formatters.register(formatter_class, *notifications)
where notifications is the list of events the formatter wishes to
be notified about. Notifications are handled by methods matching the
names on formatters. This allows us to add or remove notifications
without breaking existing formatters. (Jon Rowe)

Change arguments passed to formatters. Rather than passing multiple
arguments (which limits are ability to add additional arguments as
doing so would break existing formatters), we now pass a notification
value object that exposes the same data via attributes. This will
allow us to add new bits of data to a notification event without
breaking existing formatters. (Jon Rowe)

Remove support for deprecated :alias option for
RSpec.configuration.add_setting. (Myron Marston)

An example group level pending block or :pending metadata now executes
the example and cause a failure if it passes, otherwise it will be pending if
it fails. The old "never run" behaviour is still used for xexample, xit,
and xspecify, or via a new skip method or :skip metadata option.
(Xavier Shay)

After calling pending inside an example, the remainder of the example will
now be run. If it passes a failure is raised, otherwise the example is marked
pending. The old "never run" behaviour is provided a by a new skip method.
(Xavier Shay)

Pending blocks inside an example have been removed as a feature with no
direct replacement. Use skip or pending without a block. (Xavier Shay)

Expose RSpec DSL entry point methods (describe,
shared_examples_for, etc) on the RSpec constant. Intended for use
when expose_dsl_globally is set to false. (Jon Rowe)

For consistency, expose all example group aliases (including
context) on the RSpec constant. If expose_dsl_globally is set to
true, also expose them on main and Module. Historically, only describe
was exposed. (Jon Rowe, Michi Huber)

Add hook scope :example as an alias for :each, and :context as an alias
for :all. (John Feminella)

Always treat symbols passed as metadata args as hash
keys with true values. RSpec 2 supported this with the
treat_symbols_as_metadata_keys_with_true_values but
now this behavior is always enabled. (Myron Marston)

2.99.2 / 2014-08-19

2.99.1 / 2014-06-19

Add missing deprecation warning for when RSpec::Core::Runner is used
multiple times in the same process. In 2.x RSpec's global state was
automatically cleared between runs but in 3.0 you need to call RSpec.reset
manually in these situations. (Sam Phippen, #1587)

Prevent deprecation being accidentally issues when doubles used with be_
matchers due to automatically generated descriptions. (Jon Rowe, #1573)

Issue a deprecation when described_class is accessed from within
a nested describe <SomeClass> example group, since described_class
will return the innermost described class in RSpec 3 rather than the
outermost described class, as it behaved in RSpec 2. (Myron Marston)

Deprecate RSpec::Core::FilterManager::DEFAULT_EXCLUSIONS,
RSpec::Core::FilterManager::STANDALONE_FILTERS and use of
#empty_without_conditional_filters? on those filters. (Sergey Pchelincev)

Issue warning when passing a symbol or hash to describe or context
as the first argument. In RSpec 2.x this would be treated as metadata
but in RSpec 3 it'll be treated as the described object. To continue
having it treated as metadata, pass a description before the symbol or
hash. (Myron Marston)

Deprecate RSpec::Core::BaseTextFormatter::VT100_COLORS and
RSpec::Core::BaseTextFormatter::VT100_COLOR_CODES in favour
of RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODES and
RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODE_VALUES.
(Jon Rowe)

2.99.0.beta2 / 2014-02-17

Add is_expected for one-liners that read well with the
expect-based syntax. is_expected is simply defined as
expect(subject) and can be used in an expression like:
it { is_expected.to read_well }. (Myron Marston)

Backport skip from RSpec 3, which acts like pending did in RSpec 2
when not given a block, since the behavior of pending is changing in
RSpec 3. (Xavier Shay)

Deprecations:

Deprecate inexact mock_with config options. RSpec 3 will only support
the exact symbols :rspec, :mocha, :flexmock, :rr or :nothing
(or any module that implements the adapter interface). RSpec 2 did
fuzzy matching but this will not be supported going forward.
(Myron Marston)

Deprecate show_failures_in_pending_blocks config option. To achieve
the same behavior as the option enabled, you can use a custom
formatter instead. (Xavier Shay)

Add a deprecation warning for the fact that the behavior of pending
is changing in RSpec 3 -- rather than skipping the example (as it did
in 2.x when no block was provided), it will run the example and mark
it as failed if no exception is raised. Use skip instead to preserve
the old behavior. (Xavier Shay)

2.99.0.beta1 / 2013-11-07

Block-based DSL methods that run in the context of an example
(it, before(:each), after(:each), let and subject)
now yield the example as a block argument. (David Chelimsky)

Warn when the name of more than one example group is submitted to
include_examples and it's aliases. (David Chelimsky)

Add expose_current_running_example_as config option for
use during the upgrade process when external gems use the
deprecated RSpec::Core::ExampleGroup#example and
RSpec::Core::ExampleGroup#running_example methods. (Myron Marston)

Add config.raise_errors_for_deprecations! option, which turns
deprecations warnings into errors to surface the full backtrace
of the call site. (Myron Marston)

Deprecations

Deprecate RSpec::Core::ExampleGroup#example and
RSpec::Core::ExampleGroup#running_example methods. If you need
access to the example (e.g. to get its metadata), use a block argument
instead. (David Chelimsky)

Deprecate use of autotest/rspec2 in favour of rspec-autotest. (Jon Rowe)

2.14.8 / 2014-02-27

2.14.7 / 2013-10-29

Fix regression in 2.14.6 that broke the Fivemat formatter.
It depended upon either
example.execution_result[:exception].pending_fixed? (which
was removed in 2.14.6 to fix an issue with frozen error objects)
or RSpec::Core::PendingExampleFixedError (which was renamed
to RSpec::Core::Pending::PendingExampleFixedError in 2.8.
This fix makes a constant alias for the old error name.
(Myron Marston)

Autoload RSpec::Mocks and RSpec::Expectations when referenced if
they are not already loaded (RSpec::Matches has been autoloaded
for a while). In the rspec gem, we changed it recently to stop
loading rspec/mocks and rspec/expectations by default, as some
users reported problems where they were intending to use mocha,
not rspec-mocks, but rspec-mocks was loaded and causing a conflict.
rspec-core loads mocks and expectations at the appropriate time, so
it seemed like a safe change -- but caused a problem for some authors
of libraries that integrate with RSpec. This fixes that problem.
(Myron Marston)

Gracefully handle a command like rspec --profile path/to/spec.rb:
the path/to/spec.rb arg was being wrongly treated as the profile
integer arg, which got cast 0 using to_i, causing no profiled
examples to be printed. (Jon Rowe)

2.14.2 / 2013-07-09

Fix regression caused by 2.14.1 release: formatters that
report that they respond_to? a notification, but had
no corresponding method would raise an error when registered.
The new fix is to just implement start on the deprecation
formatter to fix the original JRuby/ruby-debug issue.
(Jon Rowe)

2.14.1 / 2013-07-08

Address deprecation formatter failure when using ruby-debug on
JRuby: fix RSpec::Core::Reporter to not send a notification
when the formatter's implementation of the notification method
comes from Kernel (Alex Portnov, Jon Rowe).

2.14.0.rc1 / 2013-05-27

Add profiling of the slowest example groups to --profile option.
The output is sorted by the slowest average example groups.

Don't show slow examples if there's a failure and both --fail-fast
and --profile options are used (Paweł Gościcki).

Rather than always adding spec to the load path, add the configured
--default-path to the load path (which defaults to spec). This
better supports folks who choose to put their specs in a different
directory (John Feminella).

Add some logic to test time duration precision. Make it a
function of time, dropping precision as the time increases. (Aaron Kromer)

Add new backtrace_inclusion_patterns config option. Backtrace lines
that match one of these patterns will always be included in the
backtrace, even if they match an exclusion pattern, too (Sam Phippen).

Support ERB trim mode using the - when parsing .rspec as ERB
(Gabor Garami).

Give a better error message when let and subject are called without a block.
(Sam Phippen).

List the precedence of .rspec-local in the configuration documentation
(Sam Phippen)

config.libs returns the libs configured to be added onto the load path

full_backtrace? returns the state of the backtrace cleaner

debug? returns true when the debugger is loaded

line_numbers returns the line numbers we are filtering by (if any)

full_description returns the RegExp used to filter descriptions
(Jon Rowe)

Add setters for RSpec.world and RSpec.configuration (Alex Soulim)

Configure ruby's warning behaviour with --warnings (Jon Rowe)

Fix an obscure issue on old versions of 1.8.7 where Time.dup wouldn't
allow access to Time.now (Jon Rowe)

Make shared_examples_for context aware, so that keys may be safely reused
in multiple contexts without colliding. (Jon Rowe)

Add a configurable deprecation_stream (Jon Rowe)

Publish deprecations through a formatter (David Chelimsky)

Bug fixes

Make JSON formatter behave the same when it comes to --profile as
the text formatter (Paweł Gościcki).

Fix named subjects so that if an inner group defines a method that
overrides the named method, subject still retains the originally
declared value (Myron Marston).

Fix random ordering so that it does not cause rand in examples in
nested sibling contexts to return the same value (Max Shytikov).

Use the new backtrace_inclusion_patterns config option to ensure
that folks who develop code in a directory matching one of the default
exclusion patterns (e.g. gems) still get the normal backtrace
filtering (Sam Phippen).

Fix ordering of before hooks so that before hooks declared in
RSpec.configure run before before hooks declared in a shared
context (Michi Huber and Tejas Dinkar).

Fix Example#full_description so that it gets filled in by the last
matcher description (as Example#description already did) when no
doc string has been provided (David Chelimsky).

Fix the memoized methods (let and subject) leaking define_method
as a public method. (Thomas Holmes and Jon Rowe) (#873)

Fix warnings coming from the test suite. (Pete Higgins)

Deprecations

Deprecate Configuration#backtrace_clean_patterns in favor of
Configuration#backtrace_exclusion_patterns for greater consistency
and symmetry with new backtrace_inclusion_patterns config option
(Sam Phippen).

Deprecate Configuration#requires= in favor of using ruby's
require. Requires specified by the command line can still be
accessed by the Configuration#require reader. (Bradley Schaefer)

2.13.1 / 2013-03-12

Use hook classes as proxies rather than extending hook blocks to support
lambdas for before/after/around hooks. (David Chelimsky)

Fix regression in 2.13.0 that caused confusing behavior when overriding
a named subject with an unnamed subject in an inner group and then
referencing the outer group subject's name. The fix for this required
us to disallow using super in a named subject (which is confusing,
anyway -- named subjects create 2 methods, so which method on the
parent example group are you supering to?) but super in an unnamed
subject continues to work (Myron Marston).

Do not allow a referenced let or subject in before(:all) to cause
other let declarations to leak across examples (Myron Marston).

Deprecate accessing let or subject declarations in before(:all).
These were not intended to be called in a before(:all) hook, as
they exist to define state that is reset between each example, while
before(:all) exists to define state that is shared across examples
in an example group (Myron Marston).

2.12.1 / 2012-12-01

Specs are run even if another at_exit hook calls exit. This allows
Test::Unit and RSpec to run together. (Suraj N. Kurapati)

Fix full doc string concatenation so that it handles the case of a
method string (e.g. "#foo") being nested under a context string
(e.g. "when it is tuesday"), so that we get "when it is tuesday #foo"
rather than "when it is tuesday#foo". (Myron Marston)

2.11.1 / 2012-07-18

Fix the way we autoload RSpec::Matchers so that custom matchers can be
defined before rspec-core has been configured to definitely use
rspec-expectations. (Myron Marston)

Fix typo in --help message printed for -e option. (Jo Liss)

Fix ruby warnings. (Myron Marston)

Ignore mock expectation failures when the example has already failed.
Mock expectation failures have always been ignored in this situation,
but due to my changes in 27059bf1 it was printing a confusing message.
(Myron Marston).

2.7.1 / 2011-10-20

2.7.0 / 2011-10-16

NOTE: RSpec's release policy dictates that there should not be any backward
incompatible changes in minor releases, but we're making an exception to
release a change to how RSpec interacts with other command line tools.

As of 2.7.0, you must explicity require "rspec/autorun" unless you use the
rspec command (which already does this for you).

Enhancements

Add example.exception (David Chelimsky)

--default_path command line option (Justin Ko)

support multiple --line_number options (David J. Hamilton)

also supports path/to/file.rb:5:9 (runs examples on lines 5 and 9)

Allow classes/modules to be used as shared example group identifiers (Arthur
Gunn)

2.6.4 / 2011-06-06

NOTE: RSpec's release policy dictates that there should not be new
functionality in patch releases, but this minor enhancement slipped in by
accident. As it doesn't add a new API, we decided to leave it in rather than
roll back this release.

Enhancements

Add summary of commands to run individual failed examples.

Bug fixes

Support exclusion filters in DRb. (Yann Lugrin)

Fix --example escaping when run over DRb. (Elliot Winkler)

Use standard ANSI codes for color formatting so colors work in a wider set of
color schemes.

Fixed backtrace so it doesn't include lines from before the autorun at_exit
hook (Myron Marston)

Include RSpec::Matchers when first example group is defined, rather than just
before running the examples. This works around an obscure bug in ruby 1.9
that can cause infinite recursion. (Myron Marston)