A summary of data about the Ruby ecosystem.

Recent Releases of https://github.com/cucumber/cucumber-ruby

https://github.com/cucumber/cucumber-ruby - v11.0.0

Added

  • Add timestamp to Attachment message
  • Added a new option for running order --reverse which will run the scenarios in reverse order (#1807 luke-hill)
  • A first initial iteration of the new cucumber-query structure (#1801 luke-hill)

This will be used for the migration of all existing formatters - becoming the building blocks for the future of cucumber formatters
which will begin being migrated in the start of 2026

Changed

  • Use the test result type 'ambiguous' added to cucumber-ruby-core when steps are ambiguous
    (#1815) brasmusson)
  • Use the new internal cucumber-query structure for the rerun formatter

This is a very large refactor, but should not change any behaviour. The cucumber-query structure is a new internal structure that is designed to be used by formatters to query
the state of the test run in a more intuitive way.

The rerun formatter was chosen as the first formatter to migrate to this new structure as it is one of the simpler
formatters and will allow us to test the new structure in a real-world scenario.

  • Updated cucumber-compatibility-kit to v22
  • Security: Switched out IO.read for more secure File.read in a few areas of the codebase
  • Implemented the new cucumber-query structure in all message based formatters (Currently HTML / Rerun and Message)
    (#1844 luke-hill)

Fixed

  • Fix crash when Cucumber::Messages::Group#children is nil
  • Fixed a longstanding issue that could affect formatters reporting of retried scenarios (Now each scenario should only be reported once, with the final result of the scenario)
    (#1844 luke-hill)
  • Fixed an issue where the default flags derived in the Options and Configuration classes were not congruent
    (#1846) luke-hill)
  • Fixed an issue where NoMethodError could be raised when declaring a parameter-type that used bound methods
    (#1789)

- Ruby
Published by github-actions[bot] 2 months ago

https://github.com/cucumber/cucumber-ruby - v10.2.0

Changed

  • Permit the latest version of the cucumber-html-formatter (v22.0.0+)
  • Permit cucumber-expressions up to v19

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/cucumber/cucumber-ruby - v10.1.1

Changed

  • Internal refactors to CCK testing code to better check that the message formatter responses are as expected
  • Simplify #attach by better checking the different use cases (base64 vs file path)

Fixed

  • Prevent messages (And any consuming formatters), from not handling unknown (base64), media types (#1796 luke-hill)

- Ruby
Published by github-actions[bot] 8 months ago

https://github.com/cucumber/cucumber-ruby - v10.1.0

Changed

  • Updated cucumber-compatibility-kit to v20
  • Optimised compatibility tests (That use the CCK), so that tests run slightly more optimal (Creating less empty arrays)

Fixed

  • Fixed an issue where the html-formatter wasn't respecting the new structure for StackTrace cucumber messages (#1790 luke-hill)

- Ruby
Published by github-actions[bot] 10 months ago

https://github.com/cucumber/cucumber-ruby - v10.0.0

Changed

  • Added dependencies that will no longer be part of the ruby stdlib (jeromeag)
  • NB: This change has also facilitated a tweak to some output messages to include new fields such as testRunStartedId
    for full changes and expectations of what will be new check the messages
    (luke-hill)
  • Updated cucumber-compatibility-kit to v18
  • Changed compatibility testing to fully lean on external assets instead of duplicating them (luke-hill)
  • Permit usage of latest versions of all cucumber internal gems
  • The auto-generation of all placeholder pending steps has been refactored (There should be no visible changes
    but the code is now refactored to work using newer ruby standards
    )
  • The #text? method for checking Differences in multi-line text is now deprecated (Users
    should lean on an appropriate testing library for this)
  • Cucumber.use_legacy_autoloader that was intended as a stop-gap for v4/v5 is now deprecated (People
    that need to rely on procedural loading / reloading of files should use method invocations) (luke-hill)
  • The backtrace filtering logic has been changed (There should be no visible changes but the code is now
    refactored to use newer, less procedural ruby
    )

Fixed

  • Fixed an issue where a change to one example in compatibility testing wasn't fully adhered to (luke-hill)
  • Fixed Ruby 3.4+ issue where error backtraces weren't being formatted. (#1771 orien)
  • Fix some problematic specs that were leaking state and showcasing an issue on JRuby (#1783 luke-hill)

Removed

  • StepDefinitionLight associated methods. The class itself is present but deprecated
  • Webrick Proc handling aliases that were long redundant
  • Associated legacy scripts for updating dependencies that are no longer used
  • Tag Expressions using legacy syntax that were handled / sanitized are no longer done so
    (This applies to both regular usage and internal testing)
  • Removed support for Ruby 2.7 and 3.0 (Minimum ruby is now 3.1) (luke-hill)
  • Unindentation support for snippet generator / tests (Heredocs are much better now) (luke-hill)

- Ruby
Published by github-actions[bot] about 1 year ago

https://github.com/cucumber/cucumber-ruby - v9.2.1

Fixed

  • Fixed an issue for Ruby 3.4 where a default hash instantiation was being picked up as keyword arguments (Jon Rowe)

- Ruby
Published by github-actions[bot] over 1 year ago

https://github.com/cucumber/cucumber-ruby - v9.2.0

Changed

  • Updated cucumber dependencies (Specifically cucumber-core) (luke-hill)
  • Uncoupled a lot of dual-responsibility complexity in HTTP classes (Specifically the builders/parsers)
    (#1752 luke-hill)

Removed

  • Some legacy JRuby local testing profiles are now removed (luke-hill)

- Ruby
Published by github-actions[bot] about 2 years ago

https://github.com/cucumber/cucumber-ruby - v9.1.2

Added

Changed

  • Moved all CCK step definition/miscellaneous file logic from CCK gem to this repo.
    All logic contained in compatibility (luke-hill)
  • Cleared up a few Layout/Linting cop offenses (#1750 luke-hill)

Fixed

  • Fix a situation whereby the step definition message will omit the parameter-type name when it cannot be inferred
    (This fixes an issue in cucumber-wire when passing legacy steps down the wire)
    (#1746 luke-hill)

Removed

- Ruby
Published by github-actions[bot] over 2 years ago

https://github.com/cucumber/cucumber-ruby - v9.1.1

Added

Changed

  • Updated dependencies to slightly more permissive / up to date versions (luke-hill)
  • Fixed most of the Layout cop offenses (luke-hill)

Fixed

Removed

  • The sample sinatra tests are no longer used in internal testing (This removes a bunch of superfluous dev gems) (#1743 luke-hill)
  • Removed all references to autotest as this is an ancient plugin that is not correctly integrated

- Ruby
Published by github-actions[bot] over 2 years ago

https://github.com/cucumber/cucumber-ruby - v9.1.0

Added

Changed

  • First couple of passes of tidying up approximately 40% of the manual fix cops
    (#1739 #1740 #1741 #1742 luke-hill)
  • Removed a bunch of example files / sample projects from ancient projects no longer viable
    (#1740 luke-hill)
  • When a testStepResult is of type FAILED we now pass in a new (Exception), message property
    (#1738 luke-hill)
  • ParameterType message now contains a new (sourceReference), property
    (This contains a uri string and a Location message -> for where the ParameterType transformer is located) (#1738 luke-hill)
  • #attach now can take an optional filename parameter which will rename attachments like PDF's
    (#1738 luke-hill)

Fixed

  • Clear up a couple of tiny "nuances" that hide lots of issues when running local vs remote (Primarily CCK tests should always be runnable)
    (#1738 luke-hill)

Removed

  • Removed a variety of overrides / hacks for travis CI (No longer in use) (#1738 luke-hill)
  • Removed some legacy rspec pending flags present since cucumber 1.x (#1738 luke-hill)

- Ruby
Published by github-actions[bot] over 2 years ago

https://github.com/cucumber/cucumber-ruby - v9.0.2

Changed

  • Began to tidy up (Cleared some AutoFix cops), and organise rubocop tech-debt in repo (This introduced new rubocop sub-gems) (#1716 luke-hill)
  • Gem update. Update rubocop gems to latest and increase minimum version of some cucumber sub-gems (#1732 luke-hill)
  • Rubocop update. Massively overhauled the cucumber style / rubocop expectations and began to tackle some long-standing tech-debt (#1733 luke-hill)
  • First couple of passes of tidying up approximately 15% of the autofix cops
    (#1736 #1737 luke-hill)

Removed

  • Removed a whole bunch of miscellaneous script files that are no longer used (Either in development or usage) (#1721 luke-hill)

- Ruby
Published by github-actions[bot] almost 3 years ago

https://github.com/cucumber/cucumber-ruby - v9.0.1

Changed

  • Update dependency of a few associated cucumber sub-gems (#1715 luke-hill)

Fixed

  • Cucumber was unable to generate the correct VERSION constant (PR#1729 luke-hill)

- Ruby
Published by github-actions[bot] almost 3 years ago

https://github.com/cucumber/cucumber-ruby - v9.0.0

Added

  • Add option --retry-total (#1669)

Changed

Deprecated

Fixed

  • Cucumber may raise NoMethodError when CUCUMBER_COLORS environment was set (PR#1641 s2k)

Removed

  • Removed support for Ruby 2.6 and JRuby 9.3 (PR#1699)

- Ruby
Published by github-actions[bot] almost 3 years ago

https://github.com/cucumber/cucumber-ruby - v8.0.0

Added

  • Add a WARNING message when using a space-separated string with cucumber_opts
    (PR#
    Issue#1614)
  • Add support for TruffleRuby
    (PR#1612
    gogainda)
  • Add support for named hooks
    (PR#1636)

Fixed

  • Use required_rubygems_version instead of rubygems_version(PR#1629)
  • Suppress RSspec deprecation warnings(PR#1631)

- Ruby
Published by github-actions[bot] about 4 years ago

https://github.com/cucumber/cucumber-ruby - v8.0.0.RC.1

Fixed

  • Fix TestRunFinished success property in html formatter and all formatters
    based on the messages: it now returns true if the run has passed
    (PR#1606
    Issue#1604)
  • Fix usage of namespaced modules across multiple scenarios
    (PR#1603
    Issue#1595)
  • Do not serialize Messages::Hook#tag_expression if it is empty.
    (PR#1579)
  • JSON Formatter uses "pretty" output format
    (PR#1580)
  • Fixed JSON Formatter "end of background" detection.
    (PR#1580)
  • Fixed JSON Formatter expansion of Scenario Outline templates in Doc Strings.
    (PR#1580)
  • Removed usage of eval in Cucumber::Term::ANSIColor and Cucumber::Formatter::ANSIColor.
    (PR#1589
    Issue#1583)
  • Fixed DataTable#map_headers when headers have the same prefix.
    (PR#1598
    Issue#1450)

Changed

Removed

  • AfterConfiguration has been removed. Please use InstallPlugin or BeforeAll instead.
    See the UPGRADING.md to update your code accordingly.
    (PR#1591)
  • The built-in Wire protocol
    The Wire protocol is still officially supported, but as an optional plugin rather
    than a built-in feature. See the
    UPGRADING.md
    to update your code accordingly.
  • Removed former unused stdin argument from Cli::Main. That may impact your code
    if you use cucumber API Cucumber::Cli::Main. See UPGRADING.md.
    (PR#1588
    Issue#1581)
  • Removed DataTable#map_column! and DataTable#map_headers!.
    Those methods were error-prone and planned to be removed a long time ago. You
    can use the immutable versions instead: DataTable#map_column and
    DataTable#map_headers.
    (PR#1590
    Issue#1584)
  • Removed support for Ruby 2.5 and JRuby 9.2.

- Ruby
Published by github-actions[bot] over 4 years ago

https://github.com/cucumber/cucumber-ruby - v7.1.0

Added

Changed

Deprecated

  • AfterConfiguration is deprecated. Please use InstallPlugin or BeforeAll instead.
    See the UPGRADING.md to update your code accordingly.
    (1570)

  • The built-in Wire protocol

    The Wire protocol is still officially supported, but as an optional plugin rather
    than a built-in feature. See the
    UPGRADING.md
    to update your code accordingly.

    (1564
    aurelien-reeves)

Known issue

  • There is a known issue with JRuby 9.3. For more info, see
    PR#1571.

- Ruby
Published by github-actions[bot] over 4 years ago