Back to Cucumber Ruby

Upgrading to 11.0.0

upgrading_notes/11.0.0.md

11.1.01.8 KB
Original Source

Upgrading to 11.0.0

CCK conformance

CCK conformance has been bumped to v22. This has seen a lot of rewrites specifically around formatters

  • The message default formatters (Which all other formatters are being built on, has been refactored heavily to output more information
  • The rerun formatter is now completely rebuilt using messages - the behaviour should be identical

Removed previously deprecated items that were deprecated in v10

#text?

The #text? method for checking differences in multi-line heredocs or texts has been removed

Should you wish to check multi-line text fragments for differences and issues, there are a host of better-suited libraries that handle this better, and this should be handled outside the remit of cucumber

Cucumber.use_legacy_autoloader configuration setting

This setting has now been removed. All files will only ever autoload once

StepDefinitionLight

This class and its associated actions has been removed. It served little to no purpose other than in one of the legacy formatters that we aim to remove and port to messages and some associated "shim" languages which aren't in the purview of the team anymore

Newly deprecated items

Strict configuration

For a while cucumber has been heavily divergent in terms of how it handles "strict" mode - In some places it was a configuration setting, in others it was a command line flag, and in others it was just a concept that was handled differently across different formatters

Going forward in v11, we will explicitly advise against using strict mode and instead encourage users to use the intended default behaviours for scenarios that involve undefined steps, pending steps, or failed steps. This is in line with the intended design of cucumber and will help to encourage better practices and more consistent behaviour across different formatters and runners