Development¶ ↑
3.13.3 / 2025-04-30¶ ↑
Bug Fixes:
-
Support for changes in diff-lcs and Ruby 3.4 in spec helpers. (Jon Rowe, #164 etc)
3.13.2 / 2024-12-02¶ ↑
No changes. Released during the monorepo migration to test release processes, but accidentally contained no changes.
3.13.1 / 2024-02-23¶ ↑
Bug Fixes:
-
Exclude ruby internal require warnings from
RSpec::Support::CallerFilter#first_non_rspec_line
. (Jon Rowe, rspec/rspec-support#593)
3.13.0 / 2024-02-04¶ ↑
Enchancements
-
Add
RubyFeatures#supports_syntax_suggest?
. (Jon Rowe, rspec/rspec-support#571)
Bug Fixes:
-
Allow string keys for keyword arguments during verification of method signatures, (but only on Ruby 3+). (@malcolmohare, rspec/rspec-support#591)
3.12.2 / 2024-02-04¶ ↑
Bug Fixes:
-
Properly surface errors from
in_sub_process
. (Jon Rowe, rspec/rspec-support#575) -
Add magic comment for freezing string literals. (Josh Nichols, rspec/rspec-support#586)
3.12.1 / 2023-06-26¶ ↑
Bug Fixes:
-
Fix
RSpec::Support.thread_local_data
to be Thread local but not Fiber local. (Jon Rowe, rspec/rspec-support#581)
3.12.0 / 2022-10-26¶ ↑
Full Changelog Enhancements:
-
Add
RSpec::Support::RubyFeatures.distincts_kw_args_from_positional_hash?
(Jean byroot Boussier, rspec/rspec-support#535)
3.11.1 / 2022-09-12¶ ↑
Bug Fixes:
-
Fix ripper detection on TruffleRuby. (Brandon Fish, rspec/rspec-support#541)
3.11.0 / 2022-02-09¶ ↑
No changes. Released to support other RSpec
releases.
3.10.3 / 2021-11-03¶ ↑
Bug Fixes:
-
Use
Mutex#owned?
to allowRSpec::Support::ReentrantMutex
to work in nested Fibers on Ruby 3.0 and later. (Benoit Daloze, rspec/rspec-support#503, rspec/rspec-support#504) -
Support
end
-less methods inRSpec::Support::Source::Token
so thatRSpec
won’t hang when anend
-less method raises an error. (Yuji Nakayama, rspec/rspec-support#505)
3.10.2 / 2021-01-28¶ ↑
Bug Fixes:
-
Fix issue with
RSpec::Support.define_optimized_require_for_rspec
on JRuby 9.1.17.0 (Jon Rowe, rspec/rspec-support#492)
3.10.1 / 2020-12-27¶ ↑
Bug Fixes:
-
Fix deprecation expectations to fail correctly when asserting on messages. (Phil Pirozhkov, rspec/rspec-support#453)
3.10.0 / 2020-10-30¶ ↑
No changes. Released to support other RSpec
releases.
3.9.4 / 2020-10-23¶ ↑
Bug Fixes:
-
Flag ripper as supported on Truffle Ruby. (Brandon Fish, rspec/rspec-support#427)
-
Prevent stubbing
File.read
from breaking source extraction. (Jon Rowe, rspec/rspec-support#431)
3.9.3 / 2020-05-02¶ ↑
Bug Fixes:
-
Mark ripper as unsupported on Truffle Ruby. (Brandon Fish, rspec/rspec-support#395)
-
Mark ripper as unsupported on JRuby 9.2.0.0. (Brian Hawley, rspec/rspec-support#400)
-
Capture
Mutex.new
for ourRSpec::Support:Mutex
in order to allow stubbingMutex.new
. (Jon Rowe, rspec/rspec-support#411)
3.9.2 / 2019-12-30¶ ↑
Bug Fixes:
-
Remove unneeded eval. (Matijs van Zuijlen, rspec/rspec-support#394)
3.9.1 / 2019-12-28¶ ↑
Bug Fixes:
-
Remove warning caused by keyword arguments on Ruby 2.7.0. (Jon Rowe, rspec/rspec-support#392)
3.9.0 / 2019-10-07¶ ↑
NO CHANGES
Version 3.9.0 was released to allow other RSpec
gems to release 3.9.0.
3.8.3 / 2019-10-02¶ ↑
Bug Fixes:
-
Escape r when outputting strings inside arrays. (Tomita Masahiro, Jon Rowe, rspec/rspec-support#378)
-
Ensure that optional hash arguments are recognised correctly vs keyword arguments. (Evgeni Dzhelyov, rspec/rspec-support#366)
3.8.2 / 2019-06-10¶ ↑
Bug Fixes:
-
Ensure that an empty hash is recognised as empty keyword arguments when applicable. (Thomas Walpole, rspec/rspec-support#375)
-
Ensure that diffing truthy values produce diffs consistently. (Lucas Nestor, rspec/rspec-support#377)
3.8.1 / 2019-03-03¶ ↑
Bug Fixes:
-
Ensure that inspecting a
SimpleDelegator
based object works regardless of visibility of the__getobj__
method. (Jon Rowe, rspec/rspec-support#369)
3.8.0 / 2018-08-04¶ ↑
Bug Fixes:
-
Order hash keys before diffing to improve diff accuracy when using mocked calls. (James Crisp, rspec/rspec-support#334)
3.7.1 / 2018-01-29¶ ↑
Bug Fixes:
-
Fix source extraction logic so that it does not trigger a
SystemStackError
when processing deeply nested example groups. (Craig Bass, rspec/rspec-support#343)
3.7.0 / 2017-10-17¶ ↑
Enhancements:
-
Improve compatibility with
--enable-frozen-string-literal
option on Ruby 2.3+. (Pat Allan, rspec/rspec-support#320) -
Add
Support.class_of
for extracting class of any object. (Yuji Nakayama, rspec/rspec-support#325)
Bug Fixes:
-
Fix recursive const support to not blow up when given buggy classes that raise odd errors from to_str. (Myron Marston, rspec/rspec-support#317)
3.6.0 / 2017-05-04¶ ↑
Enhancements:
-
Import
Source
classes from rspec-core. (Yuji Nakayama, rspec/rspec-support#315)
3.6.0.beta2 / 2016-12-12¶ ↑
No user-facing changes.
3.6.0.beta1 / 2016-10-09¶ ↑
Bug Fixes:
-
Prevent truncated formatted object output from mangling console codes. (rspec/rspec-support#294, Anson Kelly)
3.5.0 / 2016-07-01¶ ↑
No user facing changes since beta4
3.5.0.beta4 / 2016-06-05¶ ↑
Enhancements: * Improve MethodSignature
to better support keyword arguments. (rspec/rspec-support#250, Rob Smith).
3.5.0.beta3 / 2016-04-02¶ ↑
Bug Fixes:
-
Fix
EncodedString
to properly handle the behavior ofString#split
on JRuby when the string contains invalid bytes. (Jon Rowe, rspec/rspec-support#268) -
Fix
ObjectFormatter
so that formatting objects that don’t respond to inspect (such asBasicObject
) does not causeNoMethodError
. (Yuji Nakayama, rspec/rspec-support#269) -
Fix
ObjectFormatter
so that formatting recursive array or hash does not causeSystemStackError
. (Yuji Nakayama, rspec/rspec-support#270, rspec/rspec-support#272)
3.5.0.beta2 / 2016-03-10¶ ↑
No user-facing changes.
3.5.0.beta1 / 2016-02-06¶ ↑
Enhancements:
-
Improve formatting of objects by allowing truncation to a pre-configured length. (Liam M, rspec/rspec-support#256)
3.4.1 / 2015-11-20¶ ↑
Bug Fixes:
-
Fix
RSpec::Support::RubyFeature.ripper_supported?
so it returnsfalse
on Rubinius since the Rubinius team has no plans to support it. This prevents rspec-core from trying to load and use ripper to extract failure snippets. (Aaron Stone, rspec/rspec-support#251)
Changes:
-
Remove
VersionChecker
in favor ofComparableVersion
. (Yuji Nakayama, rspec/rspec-support#266)
3.4.0 / 2015-11-11¶ ↑
Enhancements:
-
Improve formatting of
Delegator
based objects (e.g.SimpleDelegator
) in failure messages and diffs. (Andrew Horner, rspec/rspec-support#215) -
Add
ComparableVersion
. (Yuji Nakayama, rspec/rspec-support#245) -
Add
Ripper
support detection. (Yuji Nakayama, rspec/rspec-support#245)
Bug Fixes:
-
Work around bug in JRuby that reports that
attr_writer
methods have no parameters, causing RSpec’s verifying doubles to wrongly fail when mocking or stubbing a writer method on JRuby. (Myron Marston, rspec/rspec-support#225)
3.3.0 / 2015-06-12¶ ↑
Enhancements:
-
Improve formatting of arrays and hashes in failure messages so they use our custom formatting of matchers, time objects, etc. (Myron Marston, Nicholas Chmielewski, rspec/rspec-support#205)
-
Use improved formatting for diffs as well. (Nicholas Chmielewski, rspec/rspec-support#205)
Bug Fixes:
-
Fix
FuzzyMatcher
so that it checksexpected == actual
rather thanactual == expected
, which avoids errors in situations where theactual
object’s==
is improperly implemented to assume that only objects of the same type will be given. This allows rspec-mocks’anything
to match against objects with buggy==
definitions. (Myron Marston, rspec/rspec-support#193)
3.2.2 / 2015-02-23¶ ↑
Bug Fixes:
-
Fix an encoding issue with
EncodedString#split
when encountering an invalid byte string. (Benjamin Fleischer, rspec/rspec-support#1760)
3.2.1 / 2015-02-04¶ ↑
Bug Fixes:
-
Fix
RSpec::CallerFilter
to work on Rubinius 2.2. (Myron Marston, rspec/rspec-support#169)
3.2.0 / 2015-02-03¶ ↑
Enhancements:
-
Add extra Ruby type detection. (Jon Rowe, rspec/rspec-support#133)
-
Make differ instance re-usable. (Alexey Fedorov, rspec/rspec-support#160)
Bug Fixes:
-
Do not consider
[]
and{}
to match when performing fuzzy matching. (Myron Marston, rspec/rspec-support#157)
3.1.2 / 2014-10-08¶ ↑
Bug Fixes:
-
Fix method signature to not blow up with a
NoMethodError
on 1.8.7 when verifying against anRSpec
matcher. (Myron Marston, rspec/rspec-support#116)
3.1.1 / 2014-09-26¶ ↑
Bug Fixes:
-
Fix
RSpec::Support::DirectoryMaker
(used byrspec --init
andrails generate rspec:install
) so that it detects absolute paths on Windows properly. (Scott Archer, rspec/rspec-support#107, rspec/rspec-support#108, rspec/rspec-support#109) (Jon Rowe, rspec/rspec-support#110)
3.1.0 / 2014-09-04¶ ↑
Bug Fixes:
-
Fix
FuzzyMatcher
so that it does not wrongly match a struct against an array. (Myron Marston, rspec/rspec-support#97) -
Prevent infinitely recursing flatten methods from causing the differ to hang. (Jon Rowe, rspec/rspec-support#101)
3.0.4 / 2014-08-14¶ ↑
Bug Fixes:
-
Fix
FuzzyMatcher
so that it does not silenceArgumentError
raised from broken implementations of==
. (Myron Marston, rspec/rspec-support#94)
3.0.3 / 2014-07-21¶ ↑
Bug Fixes:
-
Fix regression in
Support#method_handle_for
where proxy objects with method delegated would wrongly not return a method handle. (Jon Rowe, rspec/rspec-support#90) -
Properly detect Module#prepend support in Ruby 2.1+ (Ben Langfeld, rspec/rspec-support#91)
-
Fix
rspec/support/warnings.rb
so it can be loaded and used in isolation. (Myron Marston, rspec/rspec-support#93)
3.0.2 / 2014-06-20¶ ↑
-
Revert
BlockSignature
change from 3.0.1 because of a ruby bug that caused it to change the block’s behavior (bugs.ruby-lang.org/issues/9967). (Myron Marston, rspec-mocksrspec/rspec-support#721)
3.0.1 / 2014-06-19¶ ↑
-
Fix
BlockSignature
so that it correctly differentiates between required and optional block args. (Myron Marston, rspec-mocksrspec/rspec-support#714)
3.0.0 / 2014-06-01¶ ↑
3.0.0.rc1 / 2014-05-18¶ ↑
3.0.0.beta2 / 2014-02-17¶ ↑
Bug Fixes:
-
Issue message when :replacement is passed to
RSpec.warn_with
. (Jon Rowe)
3.0.0.beta1 / 2013-11-07¶ ↑
Initial release.