Skip to content

Conversation

@depfu
Copy link
Contributor

@depfu depfu bot commented May 28, 2025

Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ rspec (3.10.0 → 3.13.1) · Repo

Sorry, we couldn't find anything useful about this release.

↗️ diff-lcs (indirect, 1.4.4 → 1.6.2) · Repo · Changelog

Release Notes

1.6.2 (from changelog)

  • Handle upcoming changes to the cgi gem in Ruby 3.5 (#147)

  • Fix issues found with htmldiff in Ruby 1.8 (which is used approximately never, since the code change which broke Ruby 1.8 was made 6 years ago). #148

  • Fixed some standardrb formatting and configuration issues.

1.6.1 (from changelog)

  • Performed further work on Diff::LCS::Ldiff improvements (#46) and resolve several thread safety issues cleanly by making it a class. #129

  • Restructure the project to be more consistent with the rest of the projects that I manage.

  • Increased GitHub action security.

  • Added trusted publishing for fully automated releases.

1.6.0 (from changelog)

  • Baptiste Courtois (@Annih) has done significant work on making bin/ldiff work better, contributing a number of issues and pull requests. These include:

    • Separation of command parsing from diff-generation in Diff::LCS::Ldiff code extraction making it easier to use separately from the bin/ldiff command in #103. This partially resolves #46.

    • Improvement of binary and empty file detection and tests in #104 and #105. This resolves issues #100, #102.

    • Various ldiff fixes for output #101 resolves issues #106 (ldiff ed scripts are inverted), #107 (ldiff hunk ranges are incorrect; regression or incorrect fix for #60), and #95.

  • Patrick Linnane fixed various minor typos. #93

  • Mark Young added a Changelog link to the RubyGems metadata. #92 This has been modified to incorporate it into the README.

  • Updated the documentation on Diff::LCS#lcs to be clearer about the requirements for object equality comparison. This resolves #70.

  • Governance:

    Changes described here are effective 2024-12-31.

    • Update gem management details to use markdown files for everything, enabled in part by flavorjones/hoe-markdown. Several files were renamed to be more consistent with standard practices.

    • Updated security notes with an age public key rather than pointing to Keybase.io and a PGP public key which I no longer use. The use of the Tidelift security contact is recommended over direct disclosure.

1.5.1 (from changelog)

  • Peter Goldstein updated CI configuration to add Ruby 3.1 and Masato Nakamura added Ruby 3.2 and 3.3. #82, #89

  • Updated the CI configuration, resolving #82 to add Ruby 3.1. Masato

  • Switched to standard ruby formatting.

  • Justin Steele converted the licence file to Markdown. #84

  • Updated the gem SPDX identifier for GPL 2.0 or later, resolving #86 by Vit Ondruch.

  • Resolve a potential security issue with ldiff in its use of IO.read instead of File.read. #91

  • Added MFA authentication requirement for release to RubyGems. #90

  • Added dependabot management for actions and gems. #90

  • Updated CodeQL coniguration. #90

1.5.0 (from changelog)

  • Updated the CI configuration and monkey-patch Hoe.

  • Kenichi Kamiya fixed a test configuration deprecation in SimpleCov. #69

  • Tien introduced several corrections and code improvements:

    • Removed an off-by-one error when calculating an index value by embracing Ruby iteration properly. This had a side-effect of fixing a long-standing bug in #traverse_sequences where the traversal would not be transitive. That is, LCS(s2, s1) should produce a sequence that is transitive with LCS(s1, s2) on traversal, and applying the diff computed from those results would result in equivalent changes that could be played forward or backward as appropriate. #71, #75

    • The above fix resulted in a changed order of the longest common subsequence when callbacks were applied. After analysis, it was determined that the computed subsequence was equivalent to the prior version, so the test was updated. This also resulted in the clarification of documentation when traversing the subsequences. #79

    • An infinite loop case in the case where Diff::LCS would be included into an enumerable class has been fixed. #73

    • Clarified the purpose of a threshold test in calculation of LCS. #72, #80

  • Removed autotest directory

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.

↗️ rspec-core (indirect, 3.10.1 → 3.13.4) · Repo · Changelog

Release Notes

3.13.2 (from changelog)

Full Changelog

Bug fixes:

  • RSpec::Configuration#requires will reflect files already required, whilst requiring them. (Jon Rowe, #3117)

3.13.1 (from changelog)

Full Changelog

Bug fixes:

  • Sort ids to run as the original order to fix --bisect. (Maki Kawahara, #3093)

3.13.0 (from changelog)

Full Changelog

Enhancements:

  • Support the --backtrace flag when using the JSON formatter. (Matt Larraz, #2980)
  • Ignore commented out lines in CLI config files (e.g. .rspec). (Junichi Ito, #2984)
  • Add pending_failure_output config option to allow skipping backtraces or muting pending specs output. (Phil Pirozhkov, #2957)
  • Process --dry-run before configuration flags that read files so that introspecting it returns the correct value. (Xenor Chang, #3008)
  • Allow specifying custom ordering strategies via --order. (Jon Rowe, #3025)
  • Use the improved syntax_suggest output for SyntaxError when available. (Richard Schneeman, #3015, #3026)
  • Add config option (RSpec::Core::Configuration#full_cause_backtrace) to print the entire backtrace of an exception cause. (David Taylor, #3046)

3.12.3 (from changelog)

Full Changelog

Bug fixes:

  • Use __send__ in output wrapper to avoid issues with IO objects that implement send like Socket. (Richard Platel, #3045)

3.12.1 (from changelog)

Full Changelog

Bug fixes:

  • Prevent multiple calls to extra_failure_lines from adding additional whitespace around them when the lines already contain whitespace. (Jon Rowe, #3006)

3.12.0 (from changelog)

Full Changelog

  • No changes, released to support other gems.

3.11.0 (from changelog)

Full Changelog

Enhancements:

  • Improve pluralisation of words ending with s (like process). (Joshua Pinter, #2779)
  • Add ordering by file modification time (most recent first). (Matheus Richard, #2778)
  • Add to_s to reserved names for #let and #subject. (Nick Flückiger, #2886)
  • Introduce RSpec.current_scope to expose the current scope in which RSpec is executing. e.g. :before_example_hook, :example etc. (@odinhb, #2895)
  • Add named bold colours as options for custom colours. (#2913, #2914)
  • Warn when (but not prevent) a SystemExit occurs. (Jared Beck, #2926)

Does any of this look wrong? Please let us know.

↗️ rspec-expectations (indirect, 3.10.1 → 3.13.5) · Repo · Changelog

Release Notes

3.13.3 (from changelog)

Full Changelog

Bug Fixes:

  • Fix passing a regular expression to the include matcher without a count constraint. (Jon Rowe, #1485)

3.13.2 (from changelog)

Bug Fixes:

  • When using null object doubles, prevent typos triggering dynamic matchers. (Eric Mueller, #1455)
  • Use RSpec.warning for an expectation warning rather than Kernel.warn. (Jon Rowe, #1472)
  • Prevent mismatched use of block and value matchers in compound expectations. (Phil Pirozhkov, #1476)
  • Raise an error when passing no arguments to the include matcher. (Eric Mueller, #1479)

3.13.1 (from changelog)

Full Changelog

Bug Fixes:

  • Fix the "false positive" warning message when using a negated raise_error matcher with a RegExp instance. (Eric Mueller, #1456)

Enhancements:

  • Improve the IO emulation in the output capture matchers (output(...).to_stdout et al) by adding as_tty and as_not_tty to change the tty? flags. (Sergio Gil Pérez de la Manga, #1459)

3.13.0 (from changelog)

Full Changelog

Enhancements:

  • Update eq and eql matchers to better highlight difference in string encoding. (Alan Foster, #1425)

3.12.4 (from changelog)

Full Changelog

Bug Fixes:

  • Fix the diff for redefined actual and reassigned @actual in compound expectations failure messages. (Phil Pirozhkov, #1440)

3.12.3 (from changelog)

Full Changelog

Bug Fixes:

  • Fix include matcher when fuzzy matching on keys with a hash-like actual which has a non standard key? method which may raise. (Jon Rowe, #1416)

3.12.2 (from changelog)

Full Changelog

Bug Fixes:

  • Prevent deprecation warning when using the exist matcher with Dir. (Steve Dierker, #1398)

3.12.1 (from changelog)

Full Changelog

Bug Fixes:

  • Pass keyword arguments through to aliased (and thus negated) matchers. (Jon Rowe, #1394)
  • When handling failures in an aggregated_failures block (or example) prevent the failure list leaking out. (Maciek Rząsa, #1392)

3.12.0 (from changelog)

Full Changelog

Enhancements:

  • Add an_array_matching alias for match_array to improve readability as an argument matcher. (Mark Schneider, #1361)

3.11.1 (from changelog)

Full Changelog

Bug Fixes:

  • Allow the contain_exactly matcher to be reused by resetting its internals on matches? (@bclayman-sq, #1326)
  • Using the exist matcher on FileTest no longer produces a deprecation warning. (Ryo Nakamura, #1383)

3.11.0 (from changelog)

Full Changelog

Enhancements:

  • Return true from aggregate_failures when no exception occurs. (Jon Rowe, #1225)

Deprecations:

  • Print a deprecation message when using the implicit block expectation syntax. (Phil Pirozhkov, #1139)

3.10.2 (from changelog)

Full Changelog

Bug Fixes:

  • Fix support for dynamic matchers for expectation target checks (Phil Pirozhkov, #1294)
  • Fix expect(array).to include(hash).times, previously this would fail due to matching the entire array as a single hash, rather than a member of the hash. (Slava Kardakov, #1322)
  • Ensure raise_error matches works with the error_highlight option from Ruby 3.1. (Peter Goldstein, #1339)

Does any of this look wrong? Please let us know.

↗️ rspec-mocks (indirect, 3.10.2 → 3.13.5) · Repo · Changelog

Release Notes

Too many releases to show here. View the full release notes.

↗️ rspec-support (indirect, 3.10.2 → 3.13.4) · Repo · Changelog

Release Notes

3.13.1 (from changelog)

Full Changelog

Bug Fixes:

  • Exclude ruby internal require warnings from RSpec::Support::CallerFilter#first_non_rspec_line. (Jon Rowe, #593)

3.13.0 (from changelog)

Full Changelog

Enchancements

  • Add RubyFeatures#supports_syntax_suggest?. (Jon Rowe, #571)

3.12.2 (from changelog)

Full Changelog

Bug Fixes:

  • Properly surface errors from in_sub_process. (Jon Rowe, #575)
  • Add magic comment for freezing string literals. (Josh Nichols, #586)
  • Allow string keys for keyword arguments during verification of method signatures, (but only on Ruby 3+). (@malcolmohare, #591)

3.12.1 (from changelog)

Full Changelog

Bug Fixes:

  • Fix RSpec::Support.thread_local_data to be Thread local but not Fiber local. (Jon Rowe, #581)

3.12.0 (from changelog)

Full Changelog Enhancements:

  • Add RSpec::Support::RubyFeatures.distincts_kw_args_from_positional_hash? (Jean byroot Boussier, #535)

3.11.1 (from changelog)

Full Changelog

Bug Fixes:

  • Fix ripper detection on TruffleRuby. (Brandon Fish, #541)

3.11.0 (from changelog)

Full Changelog

No changes. Released to support other RSpec releases.

3.10.3 (from changelog)

Full Changelog

Bug Fixes:

  • Use Mutex#owned? to allow RSpec::Support::ReentrantMutex to work in nested Fibers on Ruby 3.0 and later. (Benoit Daloze, #503, #504)
  • Support end-less methods in RSpec::Support::Source::Token so that RSpec won't hang when an end-less method raises an error. (Yuji Nakayama, #505)

Does any of this look wrong? Please let us know.


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)

@depfu depfu bot added the depfu label May 28, 2025
@depfu
Copy link
Contributor Author

depfu bot commented Oct 22, 2025

Closed in favor of #29.

@depfu depfu bot closed this Oct 22, 2025
@depfu depfu bot deleted the depfu/update/rspec-3.13.1 branch October 22, 2025 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant