From Fedora Project Wiki

Revision as of 16:18, 26 October 2021 by Bcotton (talk | contribs) (Announcing the Change proposal)

Rubygem Cucumber 7.1.0

Summary

Rubygem-cucumber 7.1.0 is the latest version of the popular integration BDD testing framework for Ruby.

Owner

Current status

  • Targeted release: Fedora Linux 36
  • Last updated: 2021-10-26
  • devel list thread
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Fedora is currently lagging behind on the Ruby Cucumber library which underwent internal restructuration. Therefore the rubygem-cucumber library stack will be updated to version 7.1.0, ensuring that Fedora has the newest Ruby Cucumber available.

Benefit to Fedora

This update will bring Rule and Rule tags, new hooks, and better plugin support into Fedora as well as bug fixes and other improvements.

Scope

  • Proposal owners:
  • rubygem-cucumber and its dependencies will be updated.
  • Build rubygem-cucumber update and dependencies in side tag.
  • Rebuild packages that depend on rubygem-cucumber and fix any that begin to fail as a result.
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Objectives:

Upgrade/compatibility impact

Upon upgrade it should still work for all users. The only exception is the HTML output formatter which is currently not planned on being packaged due to minified JS present in the distributed gem.


How To Test

Tests that are running under rubygem-cucumber 3 are expected to run under rubygem-cucumber 7 as well.

1. Prepare: To test using DNF, enable the copr repository containing the newest cucumber build and install it:

 $ sudo dnf copr enable pvalena/rubygems
 $ sudo dnf install rubygem-cucumber

2. Running the tests Find a project that uses rubygem-cucumber for testing, and in that project run:

 $ cucumber

3. Checking the results All tests should proceed as they do upstream without crashing.

User Experience

  • New rubygem-cucumber version 7.1.0 available

Dependencies

  • There are several packages, which depend on the rubygem-cucumber test suite as their build requirement.
  • Packages that need to be updated: rubygem-aruba, rubygem-cucumber-rails
  • Following packages don't support rubygem-cucumber 7.1.0 right now and would be broken by the update: rubygem-aruba

Contingency Plan

  • Contingency Plan
  • Contingency mechanism: None needed. rubygem-cucumber with its dependencies will be built in a side-tag and merged after successful updates.
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? No
  • Blocks product? No


Documentation

https://cucumber.io/docs/cucumber/

Release Notes

See the upstream changelog for a more detailed overview of what changed: https://github.com/cucumber/cucumber-ruby/blob/v7.1.0/CHANGELOG.md