Releases: cucumber/cucumber-js
Releases · cucumber/cucumber-js
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-js
binary'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-module
transpilers (#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
html
formatter - 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
colors
tochalk
for terminal coloring (#1895)
Deprecated
parseGherkinMessageStream
is 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
,initializeFormatters
andgetSupportCodeLibrary
methods removed fromCli
class 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-environment
library 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
colors
to1.4.0
to fix security vulnerability (#1884) - Pin
cli-table3
to0.6.1
to fix security vulnerability (#251)
v7.3.2
v8.0.0-rc.1
Added
- Add
wrapPromiseWithTimeout
to public API (#1566) - Add support for user code as native ES modules
BeforeStep
andAfterStep
hook functions now have access to thepickleStep
in their argument object.--config
option 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
--retryTagFilter
option (the correct option is--retry-tag-filter
) (#1713) - Remove validation that step definition functions are not generators
- Remove
--predictable-ids
option (was only used for internal testing)
v7.3.1
Deprecated
- Deprecate
setDefinitionFunctionWrapper
and step definition optionwrapperOptions
Fixed
v7.3.0
Added
Changed
- All
testCase
messages now emitted upfront at the start of the run (relevant for formatter authors) (#1408
#1669) - Clarify that the JSON formatter will not be removed any time soon
Fixed
this
now has correct TypeScript type in support code functions (#1667 #1690)- Progress bar formatter now reports total step count correctly (#1579
#1669) - Rerun functionality will now run nothing if the rerun file is empty from the previous run (#1302 #1568)
- All messages now emitted with project-relative
uri
s
(#1534
#1672) - Json formatter now works with tagged examples
(#1621
#1651)