Skip to content

Commit

Permalink
Resolve conflicts (#5)
Browse files Browse the repository at this point in the history
* Cleaning up feature file

* Cleaning up feature file

* Use new messages without protobuf dependencies, and Markdown support. (cucumber#1645)

* Start refactoring the code to use the new messages from the json-schema branch.

To use those messages, first `npm link` every @cucumber/* module we depend on in the monorepo.
Then, `npm link [all the modules]` from this repo.

* Everything compiles

* Fix import of messages module

* Fix import of messages in coordinator

* Update predictableTimestamp to work with new messages

* Fix tests related to capture groups

* Fix some more tests

* Fix another spec

* All unit tests passing

* cck fixes

* Make more scenarios pass

* Fix import

* Export Status

* All features passing

* npm test is now passing

* Update @cucumber dependencies

* Add support for Markdown

* update yarn lockfile

* Fix npm dependencies

* Use .feature.md extension. Update dependencies.

Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>
Co-authored-by: davidgoss <david@davidgoss.co>

* Update @cucumber/* dependencies (cucumber#1671)

* Bump @cucumber/html-formatter

* cli: have gherkin emit uris relative to the cwd (cucumber#1672)

* pass relativeTo to gherkin-streams

* fix json formatter

* remove more usages of relative

* another one

* another one

* last one

* lint

* fix this test

* fix this test

* add changelog

Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>

* Revert "cli: have gherkin emit uris relative to the cwd (cucumber#1672)"

This reverts commit 5a21c22.

* cli: relative path fix again, now with windows (cucumber#1673)

* generate html report on runs

* reinstate original change

This reverts commit 8a54a1b.

* update test

* fix pickle filter for windows

* debt: add retry for publish tests (cucumber#1674)

* add tag to feature

* retry config for feature-test run

* chore(deps): update dependency @types/bluebird to v3.5.35 (cucumber#1676)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/lodash to v4.14.170 (cucumber#1678)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* format: report total steps correctly in progress bar (cucumber#1669)

* make cck fail: remove reordering of testCase messages

* add new function to deal with testCase

* dont emit testCase from PickleRunner

* include in result

* fix up some tests

* move tests to right places

* emit test cases from serial runtime

* scrappy impl to get serial working

* remove unused field

* refactor structures, fix tests

* make coordinator api more promisey

* start to hook up parallel

* assemble test cases without ITestStep

* remove unused function

* TestCase is source of truth

* TestCaseRunner is more accurate than PickleRunner?

* make parallel runtime work with this

* add explanatory comment

* fix progress bar formatter counts

* changelog

* remove temp tag

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* clarify changelog entry audience

* cleanup

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* chore(deps): update dependency @types/node to v14.17.1 (cucumber#1680)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/express to v4.17.12 (cucumber#1677)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/semver to v7.3.6 (cucumber#1679)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update unit test packages (cucumber#1684)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.3.2 (cucumber#1682)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency sinon to v11 (cucumber#1686)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Publish reports to https://reports.cucumber.io

* Revert "Publish reports to https://reports.cucumber.io"

This reverts commit 85b0f1a.

* docs: more clarification on setDefaultTimeout

* docs: mention that coord process.env copies to workers (cucumber#1693)

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* docs: call out change of after hook result in migration guide (cucumber#1692)

* document change of after hook result

* better wording

* whoops

* Update docs/migration.md

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* Empty rerun file exits running no scenarios (cucumber#1302) (cucumber#1568)

Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>
Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>
Co-authored-by: David Goss <david@davidgoss.co>

* chore(deps): update eslint packages (cucumber#1683)

* chore(deps): update eslint packages

* autofix prettier

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Charles Rudolph <charles.w.rudolph@gmail.com>

* Update migration guide links (cucumber#1694)

* typescript: type this as IWorld in user functions (cucumber#1690)

* type this as any in user fns, add test

* update changelog

* setWorldConstructor for completeness

* use generics to do it right

* Update CHANGELOG.md

* use a clearer generic type name

* Pass --tags correctly, remove duplication

* Revert "Pass --tags correctly, remove duplication"

This reverts commit dbcb177.

* debt: add things to main entry point that people need (cucumber#1697)

* ensure hook parameters are exported

* dont need to mark this arg as possibly undefined

* export runtime options

* expose formatter options

* build: only audit production dependencies

* chore: remove redundant profile config

* Release 7.3.0

* 7.3.0

* refactor documentation (part 1) (cucumber#1699)

* add export of cli --help

* dont need note about sync

* update world docs

* document retry

* document profiles

* start to trim stuff from cli

* more on profiles

* document parallel

* add linsk to readmr

* Fixed reports banner to point to https://cucumber.io/docs/cucumber/environment-variables/ (cucumber#1703)

* Add more arrow function warnings (cucumber#1705)

* Add more arrow function warnings

* Update links

* fix(cli): allow targetting same file multiple times (cucumber#1708)

* fix(cli): allow targetting same file multiple times

* Add example to "run multiple scenarios" scenario outline

* Update CHANGELOG.md

* Deduplicate deduplicate message

Co-authored-by: David Goss <david@davidgoss.co>

* update supported node versions (cucumber#1704)

* update supported node versions

* fix changelog

* update package json

Co-authored-by: David Goss <david@davidgoss.co>

* chore(deps): update dependency ts-node to v10 (cucumber#1687)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency fs-extra to v10 (cucumber#1685)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency tsd to v0.17.0 (cucumber#1681)

* chore(deps): update dependency tsd to v0.17.0

* Add @tsd/typescript to dependency-lint ignore list

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* cli: remove deprecated retryTagFilter option (cucumber#1713)

* remove retryTagFilter camelCased option

* add changelog entry

* [WIP] remove lodash (cucumber#1709)

* remove lodash wip

* compiles

* most unit tests + lint

* passing unit tests

* fix features

* fix feature tests

Co-authored-by: David Goss <david@davidgoss.co>
Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* fix(deps): update dependency commander to v8 (cucumber#1720)

* fix(deps): update dependency commander to v8

* Fix commander upgrade issue

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* chore(deps): update dependency @types/node to v14.17.4 (cucumber#1715)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.3.5 (cucumber#1716)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency mocha to v9 (cucumber#1719)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/chai to v4.2.19 (cucumber#1714)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1718)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update cucumber packages (cucumber#1717)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* docs: fix node version mentioned in example

* Fix import in docs

* expose promise timeout helper (cucumber#1566)

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md

* IParameterTypeDefinition fix (cucumber#1733)

Co-authored-by: Ludek Novy <ludeknovy@fastmail.com>

* bringing back v6/5 props (cucumber#1732)

* bringing back v6/5 props

* changelog update

* Update CHANGELOG.md

Co-authored-by: David Goss <david@davidgoss.co>

Co-authored-by: Ludek Novy <ludeknovy@fastmail.com>
Co-authored-by: David Goss <david@davidgoss.co>

* remove support for generators (cucumber#1725)

* Explain how to use yarn to list commands (cucumber#1730)

Co-authored-by: Matt Wynne <matt@mattwynne.net>

* Add a 'reindent' test helper (cucumber#1722)

* Upgrade dependencies (cucumber#1736)

* (deps) update dependency lint (cucumber#1726)

* chore: update changelog on main

* add release step to edit+publish gh release

* Bump reindent-template-literals to 1.1.0 (cucumber#1742)

* chore(deps): update dependency @types/express to v4.17.13 (cucumber#1744)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): pin dependency reindent-template-literals to 1.1.0 (cucumber#1743)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/glob to v7.1.4 (cucumber#1746)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/mustache to v4.1.2 (cucumber#1747)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/fs-extra to v9.0.12 (cucumber#1745)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v14.17.6 (cucumber#1749)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/mz to v2.7.4 (cucumber#1748)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/progress to v2.0.4 (cucumber#1750)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/resolve to v1.20.1 (cucumber#1751)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v14.17.7 (cucumber#1757)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/semver to v7.3.8 (cucumber#1752)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/stream-buffers to v3.0.4 (cucumber#1753)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/tmp to v0.2.1 (cucumber#1754)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1756)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/verror to v1.10.5 (cucumber#1755)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update unit test packages (cucumber#1758)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency ts-node to v10.1.0 (cucumber#1760)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/mocha to v9 (cucumber#1761)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Make parameter type generic for value checker (cucumber#1764)

* Add retro notes from new contributors ensemble (cucumber#1765)

* Add retro folder and notes from last Friday

* Add retro doc from the previous new-contributors session

* Add some more actions from previous retro

* Add pointer to retro-tools

* Use youtube link for stream which is permanent

* Move retro stuff into docs folder

* Fix link to issue

* Tweak CONTRIBUTING guide to be more beginner-friendly (cucumber#1767)

As mentioned in the new contributors ensemble retro[1]

[1]: https://github.com/cucumber/cucumber-js/blob/main/docs/retro/2021/07/17.md#what-should-we-decide--change-for-next-time

* docs: minor fixes for the styling consistency (cucumber#1769)

* Yarn to npm (cucumber#1774)

* Change yarn to npm

Co-authored-by: Matt Wynne <matt@cucumber.io>

* Changed the contributing guide use to npm

Co-authored-by: Matt Wynne <matt@cucumber.io>

* fixed the autoformat from vscode

* updated the build.yml to now work npm commands

* fixed the update-dependencies

* try using npm 7 with all node versions

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: David Goss <david@davidgoss.co>

* Use typescript incremental build to speed up compilation (cucumber#1766)

Co-authored-by: David Goss <david@davidgoss.co>

* chore(deps): update dependency @types/node to v14.17.12 (cucumber#1778)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/progress to v2.0.5 (cucumber#1779)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency mocha to v9.1.1 (cucumber#1780)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency ts-node to v10.2.1 (cucumber#1781)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.4.2 (cucumber#1782)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v14.17.14 (cucumber#1785)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1787)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1786)

* chore(deps): update eslint packages

* Fix linting errors

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* Deactivate renovate dependency dashboard

As discussed at our last community meeting, we do not want those dashboards.

* chore: update @cucumber/* dependencies, fix willBeRetried usage (cucumber#1776)

* latest dependencies

* make it just about compile

* fix test case runner

* fix summary helper

* fix formatters (ish)

* fix last bit in formatters

* update fixtures for feature tests

* fix attachments cck

* hook up retry cck

* lint

* update doc

* update lockfile

* Add configuration cli option (cucumber#1794)

* Config file Option update

* Add --config option in the argv parser

* Add a scenario in profiles.feature

* Add unit tests and refactorize profile_loader

* Consider the new --config option when loading profiles

* Add some documentation

* Add an entry in the changelog

Co-authored-by: deepziem <54252717+deepziem@users.noreply.github.com>

* feat: add pickleStep to step hook function arg (cucumber#1775)

* add to interface

* implement

* update api ref

* update changelgo

* add test

* Increase precision of test case duration measurements. (cucumber#1793)

* fix(formatter): Enable calling parseTestCaseAttempt on test cases that haven't completed (cucumber#1531)

* fix(formatter): Enable calling parseTestCaseAttempt on test cases that haven't completed yet

* Instanciate a proper TestStepResult when parsing TestCaseAttempt

* Add unit tests

* Refactor testCaseAttemptParser unit tests

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>
Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>

* add ESM support (take 2) (cucumber#1649)

* Revert "temporarily revert ESM change (cucumber#1647)"

This reverts commit 084c1f2.

* add failing scenario for deep imports

* define entry point with dot

* make deep imports work via export patterns

* move doc to own file

* link to doc from readme

* add changelog entry

* add example to doc

* remove confusing comment

* remove cli option, use import by default

* update documentation

* remove redundant describe

* fix ordering

* Update features/esm.feature

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* Update features/esm.feature

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* simplify tagging

* use import only if a javascript file

* add note about no transpilers

* inline to avoid confusing reassignment

* whoops, re-add try/catch

* use require with transpilers; import otherwise

* remove pointless return

* support .cjs config file

* type and import the importer

* actually dont import - causes issues

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* docs: add rule to keywords for i18n command (cucumber#1800)

* add rule to keywords for i18n command

* Fix i18n example

Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* set correct version

* debt: remove --predictable-ids option (cucumber#1801)

* WIP

* fix up testing

* add changelog entry

* chore(deps): update dependency @types/fs-extra to v9.0.13 (cucumber#1803)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v14.17.20 (cucumber#1804)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.4.3 (cucumber#1805)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @sinonjs/fake-timers to v8 (cucumber#1810)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1809)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency coffeescript to v2.6.0 (cucumber#1808)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix(deps): update cucumber packages (cucumber#1807)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update unit test packages (cucumber#1806)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update cucumber packages (major) (cucumber#1791)

* chore(deps): update cucumber packages

* Implement new CCK tests from CCK 8.0.0

* Bump compatibility-kit to v9.0.0

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* fix(deps): update cucumber packages (major) (cucumber#1811)

* chore(deps): update cucumber packages

* Implement new CCK tests from CCK 8.0.0

* Bump compatibility-kit to v9.0.0

* fix(deps): update cucumber packages

* Fix requires of cucumber-expressions GeneratedExpression class

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* Fix link to 7.3.1

* support: re-add setDefinitionFunctionWrapper (minus generator step logic) (cucumber#1795)

* Revert "remove support for generators (cucumber#1725)"

This reverts commit a2dcce6.

* Remove bluebird and related dependencies

* Remove support for generator functions

* Update mocha config

* Add forbid-pending to mocharc too

* Update migration and api_reference documents

* Update changelog

* Update CHANGELOG entry

* Fix dependency audit issue

* List formatters in help command (cucumber#1798)

* feature/list-formatters-in-help-command adding documentation field to Formatter class

* feature/list-formatters-in-help-command refactoring getConstructorByType method to hold a Record<string, typeof Formatter>

* feature/list-formatters-in-help-command improving return statement to deal with cases where the default formatter should be returned

* feature/list-formatters-in-help-command after running lint fix

* feature/list-formatters-in-help-command fixing ternary so logic does not invoke load customFormatter

* feature/list-formatters-in-help-command creating class that will hold the description of the formatters

* feature/list-formatters-in-help-command adding logic to extract the correct documentation for each formatter and altering the IFormatter type to have this field

* feature/list-formatters-in-help-command reverting changes made by adding the documentation field to the formatter object

* feature/list-formatters-in-help-command adding documentation field to html formatter

* feature/list-formatters-in-help-command adding documentation member to json/message/progress/rerun/summary/usage formatters

* feature/list-formatters-in-help-command removing formatterDocumentationHelper class as it is no longer needed

* feature/list-formatters-in-help-command adding documentation field to rerun formatter

* feature/list-formatters-in-help-command fixing return type of getConstructorByType method and running linter

* feature/list-formatters-in-help-command removing unnecessary await

* feature/list-formatters-in-help-command creating Formatters class to hold different formatters and extracting them from the builder class

* feature/list-formatters-in-help-command adding documentation field to progress-bar/snippets/usage-json formatters

* feature/list-formatters-in-help-command added method in formatters class to help build the documentation string

* feature/list-formatters-in-help-command used recently added method to list all available formatters

* feature/list-formatters-in-help-command adding documentation to snippets/progress-bar/usage-json formatters

* feature/list-formatters-in-help-command adding new line to format option so that formatters will appear on new line

* feature/list/formatters-in-help-command converting documentation field inside formatter to be public and static. Refactoring buildFormatterDocumentationString

* feature/list/formatters-in-help-command indenting formatters and removing extra space

* feature/list-formatters-in-help-command refactoring building the documentation string

* feature/list-formatters-in-help-command adding feature to changelog

* (docs,snippets): redo formatter docs, new loading strategy for snippet syntaxes (cucumber#1812)

* start the formatters doc

* document summary formatter

* document progress formatter

* progress bar

* regenerate gifs

* clutching at straws here

* optimise gifs

* edit out the summary failure one for mpw

* describe unhappy path for summary

* html formatter doco

* usage and usage-json doco

* replace html formatter screenshot

* try again?

* update git attrs

* wip snippets doco

* readd png

* better version of html screenshot

* better again

* document message and json formatters

* fix messages link

* more info on snippets

* finish up snippets

* rerun docs

* finish up

* load snippet syntax in same way as formatters

* clarify what the options are

* tweak rerun docs

* differentiate retry vs rerun in docs

* simplify readme

* add changelog

* make promise interface return a promise

* add example output for snippet interfaces

* runtime: don't fail the test run for undefined/ambiguous when in dry run (cucumber#1814)

* update scenario (failing)

* clarify

* change logic

* refactor to share logic across serial+parallel

* add changelog

* add doco for dry run

* add link to changelog entry

* Fix github diff link to use main instead of master

* Delete .whitesource

We have renovate.json

* Upgrade dependencies 20211018 (cucumber#1820)

* Update @cucumber dependencies

* Update mocha,ts-node,typescript

* fall back to require where file doesnt have a native js extension (cucumber#1819)

Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>

* Add Release workflow - see https://github.com/cucumber/.github/blob/main/RELEASING.md

* Add missing changelog and contributor entries

* Add missing comma

* Format changelog (cucumber#1821)

* Format changelog

* Fix links

* Fix release workflow

* Update release process, use .yaml extension for workflows

* Release 8.0.0-rc.1

* Refactor build helpers (cucumber#1826)

* Extract functions into their own files

* Allow injection of exclusion filter to make easier to test

* Make sure we always exclude ourselves

* chore(deps): pin dependencies (cucumber#1827)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): pin dependencies (cucumber#1828)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): pin dependency mocha to 9.1.3 (cucumber#1829)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v14.17.32 (cucumber#1830)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/semver to v7.3.9 (cucumber#1831)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/tmp to v0.2.2 (cucumber#1832)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency coffeescript to v2.6.1 (cucumber#1833)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @cucumber/compatibility-kit to v9.1.2 (cucumber#1834)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency ts-node to v10.4.0 (cucumber#1836)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/glob to v7.2.0 (cucumber#1835)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency tsd to v0.18.0 (cucumber#1837)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1838)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Ignore OS X files

* chore(deps): update dependency @types/node to v16 (cucumber#1839)

* Factor out instructions about dependency upgrades into central file

* Update RELEASING.md

* Fix-1735 Parentheses in developers' paths break cucumber's own tests WIP (cucumber#1824)

* Extract functions into their own files

* Allow injection of exclusion filter to make easier to test

* Make sure we always exclude ourselves

* Add unit test for getDefinitionLineAndUri

* -adds regex pattern for stack traces
-removes dependencies for StackFram library

* - adds "source-map-support" dependency
- progress towards fixing bug for paths with parentheses Cucumber's own features fail when parent directory contains parentheses cucumber#1735
- gets accurate line numbers for Error stacks in typescript

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Matt Wynne <matt@mattwynne.net>

* update cspotcode/source-map-support

* remove .DS_Store

* updates unit test to support paths on windows

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* Removes assertion for a failing test that's no longer needed

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* Removes exception for the custom stack trace feature

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* Updates changelog

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* fixed linting for previous commit

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Matt Wynne <matt@mattwynne.net>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* chore(deps): update dependency @types/node to v16.11.11 (cucumber#1854)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix(deps): update dependency @cucumber/create-meta to v6.0.4 (cucumber#1856)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update eslint packages (cucumber#1855)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency tsd to v0.19.0 (cucumber#1857)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency eslint-plugin-promise to v5.2.0 (cucumber#1861)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update unit test packages (cucumber#1860)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update unit test packages (cucumber#1859)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.5.2 (cucumber#1858)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Update esm.md (cucumber#1862)

Move the chapter about configuration file at the top of the doc to give it more visibility

* Smoother onboarding for Windows developers (cucumber#1863)

* Add a warning for Windows developers

The tests won't work if you don't have "Developer Mode" enabled. See cucumber#1852

Co-authored-by: Aurelien Reeves <aurelien.reeves@smartbear.com>

* Explain about Developer Mode in contributing guide

* Use cross-platform command for copying files

* Update changelog

* No need to npx in a node script

Co-authored-by: Aurelien Reeves <aurelien.reeves@smartbear.com>

* api: add runCucumber function internally (cucumber#1849)

* Export version number of cucumber-js (cucumber#1866)

* Export version number of cucumber-js

* Update CHANGELOG.md

* Add package.json to node module exports (cucumber#1870)

* Add package.json to node module exports

* Update changelog

* Add a scenario to validate we can export package.json and version numbers

* Use template literal rather than string concatenation in direct_imports.feature

* Change entry in the changelog

* handle spaces in the absolute path (cucumber#1845) (cucumber#1847)

* put quotes around the absolute path (cucumber#1845)

added quotes to wrap the path to summary.txt
to ensure that paths containing spaces are read properly

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>

* fix indentations in feature file

* fixed the bug but needs unit testing

* fixed linting

* adds unit testing for handling paths with quotes

* adds the fix to option splitter files

* updated changelog and removed wip tag

Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>
Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>

* Update contributing guide

* chore: use new ci-environment package instead of create-meta (cucumber#1868)

* install lib

* WIP

* bump other cucumber deps

* finish impl

* add changelog

* redundant comment

* update library, simplify mapping

* simplify again

* update changelog

* build: add build artifact for reports

* Replace 1 instance of regex with cucumber expression (cucumber#1872)

* Replace regex with cucumber expression.

We decided to split the step definition into two. So that the patterns used be simpler.

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Dane Parchment Jr <dparchmentjr@gmail.com>

* Fix linting issues

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Dane Parchment Jr <dparchmentjr@gmail.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* Replace 2 instances of regex with cucumber expression (cucumber#1873)

* Replace 2 instance of regex with cucumber expression

* Fixing linting issues

* Optimizing const string

* Making Prettier: from " to '

* chore(deps): pin dependencies (cucumber#1874)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/tmp to v0.2.3 (cucumber#1876)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency express to v4.17.2 (cucumber#1877)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency @types/node to v16.11.17 (cucumber#1875)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency tsd to v0.19.1 (cucumber#1879)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency prettier to v2.5.1 (cucumber#1878)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps): update dependency typescript to v4.5.4 (cucumber#1880)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: David Goss <david@davidgoss.co>

* fix(deps): update dependency @cucumber/ci-environment to v8.0.1 (cucumber#1881)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: David Goss <david@davidgoss.co>

* chore(deps): update unit test packages (cucumber#1882)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: David Goss <david@davidgoss.co>

* chore(deps): update eslint packages (major) (cucumber#1840)

* chore(deps): update eslint packages

* Update eslint configuration

- remove plugins which prevent upgrading eslint
- update the configuration based on the one from cucumber-expression
- update a piece of code to make linting happy

Note: some rules have been deactivated to make the update of eslint
possible without breaking our build. Those rules may be deactivated
later as part of dedicated pull requests.

* Activate eslint-plugin-simple-import-sort

* Add simple-import-sort to dependency-lint ignore list

* Revert "Add simple-import-sort to dependency-lint ignore list"

This reverts commit 1bd2f32.

* Revert "Activate eslint-plugin-simple-import-sort"

This reverts commit a0075e7.

* Remove eslint-plugin-simple-import-sort

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>

* chore: remove defunct npm script

* fix: update colors@1.4.0 cli-table2@0.6.1  (cucumber#1886)

* Update package.json

A Security Vuln was identified in the Colors package for >1.4.0, offending packages being `1.4.1`, `1.4.44-liberty`
- [source1](https://twitter.com/snyksec/status/1480286811482206216?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Etweet)
- [source2](https://twitter.com/snyksec/status/1480286811482206216?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Etweet)
- [source3](https://security.snyk.io/vuln/SNYK-JS-COLORS-2331906)

This PR pins the color package to `1.4.0` as advised on the [snyk page](https://snyk.io/blog/open-source-maintainer-pulls-the-plug-on-npm-packages-colors-and-faker-now-what/)

* chore: update changelog

* fix: update and pin cli-table3@0.6.1

* chore: update CHANGELOG

* chore: update lockfile with new pinned versions

* Release 8.0.0-rc.2

* Add a retro

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>

* Extract prettier config from eslintrc (cucumber#1893)

This is a more conventional place to store prettier config, and it means
that VSCode's prettier plugin can automatically find it.

* chore: bump dependency with vulnerability

* build: only build on main and for PRs

* chore: switch from colors to chalk (cucumber#1895)

* swap out dependencies

* reimpl

* add changelog entry

* remove unused import

* Replace some uses of `any` type (cucumber#1892)

* Replace use of `any` type with `messages.Envelope`

Part of cucumber#1648

Co-authored-by: Kate Dames <kate.funficient@gmail.com>
Co-authored-by: Emmanuel Ola <54866720+eoola@users.noreply.github.com>

* Replace use of `any` with a custom World in CCK example

Part of cucumber#1648

Co-authored-by: Emmanuel Ola <54866720+eoola@users.noreply.github.com>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>

* Replace another use of `any` with a custom type

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>

* Replace another use of `any` type

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>

Co-authored-by: Kate Dames <kate.funficient@gmail.com>
Co-authored-by: Emmanuel Ola <54866720+eoola@users.noreply.github.com>
Co-authored-by: Blaise Pabon <blaise@gmail.com>

* docs: improve profiles documentation (cucumber#1897)

* Update profiles.md

* Update docs/profiles.md

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>

* Add new-contributors retro

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>

* Consolidate retro files

* Removing usage of lodash

Co-authored-by: Aslak Hellesøy <1000+aslakhellesoy@users.noreply.github.com>
Co-authored-by: aurelien-reeves <aurelien.reeves@smartbear.com>
Co-authored-by: davidgoss <david@davidgoss.co>
Co-authored-by: Aslak Hellesøy <aslak.hellesoy@gmail.com>
Co-authored-by: David Goss <dgoss@whiteclarkegroup.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: jshifflet <jason.shifflet@gmail.com>
Co-authored-by: Charles Rudolph <charles.w.rudolph@gmail.com>
Co-authored-by: Nico Jansen <jansennico@gmail.com>
Co-authored-by: Matt Wynne <matt@cucumber.io>
Co-authored-by: Ludek <13610612+ludeknovy@users.noreply.github.com>
Co-authored-by: Ludek Novy <ludeknovy@fastmail.com>
Co-authored-by: Cucumber Ensemble <87445349+cucumber-ensemble@users.noreply.github.com>
Co-authored-by: Matt Wynne <matt@mattwynne.net>
Co-authored-by: 16sheep <marjutubli@gmail.com>
Co-authored-by: Dmytro Shpakovskyi <Marketionist@users.noreply.github.com>
Co-authored-by: abelalmeida <abelalmeida@u.boisestate.edu>
Co-authored-by: deepziem <54252717+deepziem@users.noreply.github.com>
Co-authored-by: Joaquín Sorianello <joac@users.noreply.github.com>
Co-authored-by: Jan Molak <1089173+jan-molak@users.noreply.github.com>
Co-authored-by: David Goss <david.goss@matillion.com>
Co-authored-by: Tomer Ben-Rachel <tomerpacific@gmail.com>
Co-authored-by: Emmanuel Ola <54866720+eoola@users.noreply.github.com>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Dane Parchment <dparchmentjr@gmail.com>
Co-authored-by: Karla Aparecida Justen <justen.karla@gmail.com>
Co-authored-by: Manny <mannyis@typingona.computer>
Co-authored-by: Kate Dames <kate.funficient@gmail.com>
Co-authored-by: Michael Morris <35374244+michaelm-rsi@users.noreply.github.com>
  • Loading branch information
1 parent cddc5a5 commit 753a5e6
Show file tree
Hide file tree
Showing 218 changed files with 20,014 additions and 10,468 deletions.
25 changes: 18 additions & 7 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,24 @@
extends:
- standard-with-typescript
- "plugin:prettier/recommended"
- 'eslint:recommended'
- 'plugin:import/typescript'
- 'plugin:@typescript-eslint/eslint-recommended'
- 'plugin:@typescript-eslint/recommended'
- 'plugin:prettier/recommended'
- prettier
parser: '@typescript-eslint/parser'
parserOptions:
project: './tsconfig.json'
plugins:
- import
- node
- '@typescript-eslint'
- prettier
rules:
prettier/prettier:
- error
- trailingComma: es5
singleQuote: true
semi: false
'prettier/prettier': 2
# requires strictNullChecks compiler option, produces many errors with messages objects
'@typescript-eslint/strict-boolean-expressions': off
'@typescript-eslint/no-explicit-any': off
'@typescript-eslint/no-inferrable-types': off
'@typescript-eslint/no-empty-function': off
'@typescript-eslint/ban-types': off
'@typescript-eslint/no-unused-vars': off
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
* text eol=lf
*.gif binary
*.png binary
28 changes: 19 additions & 9 deletions .github/workflows/build.yml → .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,13 @@

name: Build

on: [push, pull_request]
on:
push:
branches:
- main
pull_request:
branches:
- main

jobs:
test:
Expand All @@ -13,7 +19,7 @@ jobs:
os:
- ubuntu-latest
- windows-latest
node-version: [10.x, 12.x, 14.x, 15.x]
node-version: [12.x, 14.x, 16.x]
fail-fast: false

steps:
Expand All @@ -22,27 +28,31 @@ jobs:
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- run: yarn install
- run: yarn test
- run: npm i -g npm@7
- run: npm install-test

coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: 14.x
- run: yarn install
- run: yarn test-coverage
node-version: 16.x
- run: npm install
- run: npm run test-coverage
- uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/upload-artifact@v2
with:
name: reports
path: reports

audit-dependencies:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: 14.x
- run: yarn audit
node-version: 16.x
- run: npm audit --groups dependencies
18 changes: 18 additions & 0 deletions .github/workflows/release-github.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Release GitHub

on:
push:
branches: [release/*]

jobs:
create-github-release:
name: Create GitHub Release and Git tag
runs-on: ubuntu-latest
environment: Release
permissions:
contents: write
steps:
- uses: actions/checkout@v2
- uses: cucumber/action-create-github-release@v1.1.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
22 changes: 22 additions & 0 deletions .github/workflows/release-npm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Release NPM

on:
push:
branches: [release/*]

jobs:
publish-npm:
name: Publish NPM module
runs-on: ubuntu-latest
environment: Release
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
cache: 'npm'
cache-dependency-path: package-lock.json
- run: npm install-test
- uses: cucumber/action-publish-npm@v1.0.0
with:
npm-token: ${{ secrets.NPM_TOKEN }}
8 changes: 5 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,13 @@
.nyc_output/
@rerun.txt
coverage/
html-formatter.html
lib/
messages.ndjson
node_modules
tmp/
usage.txt
reports/*.html
reports/*.ndjson
reports/*.txt
yarn-error.log
.vscode
.DS_Store
src/version.ts
2 changes: 2 additions & 0 deletions .mocharc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ colors: true
file:
- test/test_helper.ts
full-trace: true
forbid-only: true
forbid-pending: true
recursive: true
reporter: dot
require: 'ts-node/register'
5 changes: 5 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"trailingComma": "es5",
"singleQuote": true,
"semi": false
}
15 changes: 0 additions & 15 deletions .whitesource

This file was deleted.

0 comments on commit 753a5e6

Please sign in to comment.