All Versions
143
Latest Version
Avg Release Cycle
25 days
Latest Release
1294 days ago
Changelog History
Page 3
Changelog History
Page 3
-
v8.0.0-rc.1 Changes
October 19, 2021โ 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 [documentation](./docs/profiles.md#using-another-file-than-cucumberjs)) #1794
๐ Changed
- Relative paths for custom snippet syntaxes must begin with
.(#1640) - Absolute paths for custom formatters and snippet syntaxes must be a valid
file://URL - ๐ Use performance timers for test case duration measurement #1793
๐ Fixed
- ๐ Allow targeting 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
--helpcommand, it now shows all available formatters under the--formatoption #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)
- โ Add
-
v7.3.2 Changes
January 10, 2022 -
v7.3.1 Changes
July 20, 2021๐ Deprecated
- ๐ Deprecate
setDefinitionFunctionWrapperand step definition optionwrapperOptions
๐ Fixed
- ๐ Deprecate
-
v7.3.0 Changes
June 17, 2021โ Added
๐ Changed
- โ
All
testCasemessages 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
- ๐
thisnow 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
uris (#1534 #1672) - Json formatter now works with tagged examples (#1621 #1651)
- โ
All
-
v7.2.1 Changes
April 21, 2021๐ Fixed
- ๐ Temporarily remove ESM changes due to impact on formatters
-
v7.2.0 Changes
April 20, 2021โ Added
- ๐ Experimental support for native ES modules via the [
--esmflag](./docs/cli.md#es-modules-experimental-nodejs-12) (#1589)
- ๐ Experimental support for native ES modules via the [
-
v7.1.0 Changes
April 06, 2021โ Added
- ๐ Support attachments that are already base64-encoded via a prefix on the MIME type e.g.
this.attach(base64String, 'base64:image/png')(#1552) - ๐ Support tagged rules (cucumber#1123)
๐ Fixed
- ๐ Fix types for hook functions so they can return e.g.
'skipped'(#1542) - Display the response of the reports server when an error is returned before failing. (#1608)
- โ Remove unnecessary implicit dependency on
longpackage (cucumber#1313) - โ Remove unnecessary transitive dependencies on
reactetc (cucumber#1308)
- ๐ Support attachments that are already base64-encoded via a prefix on the MIME type e.g.
-
v7.0.0 Changes
December 21, 2020โ Added
- โ Add a built in
htmlformatter for rich HTML reports output as a standalone page (#1432) - โ Add support for
BeforeStepandAfterStephooks (#1416) - Custom formatters can now be resolved by a module name (as well as by a relative path), enabling use of Yarn PnP (#1413)
โ Removed
- ๐ Support for running Cucumber in web browsers has been removed (#1508). This feature was increasingly difficult to support and seldom used. Node.js will now be the only support runtime for Cucumber itself; of course as before you can still use tools like WebDriver and Puppeteer to instrument testing of browser-based software. See the discussion in #1437 for more about why this change is happening.
๐ Fixed
- โ Add a built in
-
v7.0.0-rc.0 Changes
September 14, 2020Starting with version 7, the npm module has been changed from
cucumberto@cucumber/cucumberMigration guide
npm uninstall cucumbernpm install --save-dev @cucumber/cucumber- require/import
@cucumber/cucumberinstead ofcucumber - TypeScript
- Replace
TableDefinitionwithDataTable npm uninstall @types/cucumber
- Replace
If anything is missing from the migration guide, please submit an issue.
๐ New Features
- โ Add
--publishoption to publish reports to reports.cucumber.io #1423, #1424 - โ Add support for Gherkin's Rule/Example syntax
- Add
transposemethod to [data table interface](docs/support_files/data_table_interface.md) - โ Add
logfunction to world, providing a shorthand to log plain text as [attachment(s)](docs/support_files/attachments.md) - ๐ Now includes TypeScript type definitions, deprecating the need for
@types/cucumberin TypeScript projects - Yarn PnP can now be used with this project with custom formatters #1413
๐ฅ Breaking changes
- The npm module has changed name from
cucumberto@cucumber/cucumber - Your
require/importstatements must be changed fromcucumberto@cucumber/cucumber - TypeScript users must rename
TableDefinitiontoDataTable - โฌ๏ธ Drop support for Node.js 8, add support for Node.js 14
- Formatters
- Events are now based on cucumber-messages
event-protocolformatter has been removed and replaced withmessage- Custom formatters will need to migrate
jsonformatter is deprecated and will be removed in next major release. Custom formatters should migrate to use themessageformatter, or the standalone JSON formatter as a stopgap.
- โ Remove long-deprecated
typeNamefrom options object fordefineParameterTypein favour ofname - Custom formatters are now loaded via the regular require paths relative to the current directory, unless it begins with a dot (e.g.
--format=./relpath/to/formatter). Previously this was always loaded as a file relative to the current directory.
๐ Bug fixes
- don't execute BeforeAll and AfterAll hooks when in dry-run
- ๐ support correct case for
--retry-tag-filterCLI argument
-
v6.0.5 Changes
November 13, 2019๐ Bug fixes
- json formatter: fix duration to be nanoseconds (was femtoseconds)