Releases: cucumber/cucumber-js
Releases · cucumber/cucumber-js
v8.2.1
v8.2.0
v8.1.2
v8.1.1
v8.1.0
Added
- Add support for named hooks (see documentation) (#1994)
- Add generics support for world parameters type in world-related interfaces and classes (see documentation) (#1968 #2002)
Changed
- Rename the
cucumber-jsbinary's underlying file to becucumber.js, so it doesn't fall foul of Node.js module conventions and plays nicely with ESM loaders (see documentation) (#1993)
Fixed
v8.0.0
Changed
- Emit a warning when using a Node.js version that's untested with Cucumber (#1959)
Fixed
- Allow
file://URLs to be used as formatter/snippet paths in options (#1963 #1920) - Allow custom formatters to rely on
--require-moduletranspilers (#1985)
How to upgrade from 7.x.x: https://github.com/cucumber/cucumber-js/blob/main/UPGRADING.md
Full changelog including release candidates: https://github.com/cucumber/cucumber-js/blob/main/CHANGELOG.md
v8.0.0-rc.3
Added
- Cucumber Expressions now support a wider array of parameter types (see documentation)
- Improved styling and usability on report from
htmlformatter - Support for customising work assignment when running in parallel (#1044 #1588)
- Add a new option to
--format-options:printAttachments(see documentation) (#1136 #1721) - Support for configuration to be objects instead of argv strings, and for configuration files in ESM and JSON formats (#1952)
- New API for running Cucumber programmatically (see documentation) (#1955)
Changed
- Switch from
colorstochalkfor terminal coloring (#1895)
Deprecated
parseGherkinMessageStreamis deprecated in favour ofloadSources(#1957)
Fixed
- Warn users who are on an unsupported node version (#1922)
- Allow formatters to finish when a Gherkin parse error is encountered (#1404 #1951)
Removed
getConfiguration,initializeFormattersandgetSupportCodeLibrarymethods removed fromCliclass in favour of new API
v8.0.0-rc.2
Added
- Export cucumber version number. It is now possible to retrieve the current version
of cucumber usingimport { version } from '@cucumber/cucumber'.
(PR#1866
Issue#1853)
Changed
- Switched to new
@cucumber/ci-environmentlibrary for CI detection (#1868)
Fixed
- Handles spaces in paths for developers working on cucumbers's own code (#1845)
- Ensure package.json can be imported by consuming projects
(PR#1870
Issue#1869) - Allows for parentheses in paths for developers working on cucumber's own code ([#1735])
- Smoother onboarding for Windows developers (#1863)
- Pin
colorsto1.4.0to fix security vulnerability (#1884) - Pin
cli-table3to0.6.1to fix security vulnerability (#251)
v7.3.2
v8.0.0-rc.1
Added
- Add
wrapPromiseWithTimeoutto public API (#1566) - Add support for user code as native ES modules
BeforeStepandAfterStephook functions now have access to thepickleStepin their argument object.--configoption to the CLI. It allows you to specify a configuration file other thancucumber.js.
See docs/profiles.md for more info.
#1794
Changed
- Relative paths for custom snippet syntaxes must begin with
.(#1640) - Use performance timers for test case duration measurement.
#1793
Fixed
- Allow targetting same file multiple times (#1708)
- When running with
--dry-run, undefined or ambiguous steps no longer cause the process to exit with code 1. (#1814) - When running the help command, it now shows all available formatters under the --format option.
#1798
Removed
- Drop support for Node.js 10 and 15, add support for Node.js 16
- Remove deprecated
--retryTagFilteroption (the correct option is--retry-tag-filter) (#1713) - Remove validation that step definition functions are not generators
- Remove
--predictable-idsoption (was only used for internal testing)