-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Problem description
The validation framework uses gherkin-lint@^4.2.4 (currently 4.2.4, the latest release) for Gherkin/BDD test file linting. The package appears unmaintained — its core dependencies are deprecated and published under new package names:
npm warn deprecated gherkin@9.0.0: This package is now published under @cucumber/gherkin
npm warn deprecated cucumber-messages@8.0.0: This package is now published under @cucumber/messages
npm warn deprecated uuid@3.4.0: Please upgrade to version 7 or higher
npm warn deprecated glob@7.1.6: Old versions of glob are not supported
gherkin-lint works correctly with Node.js 24, so these are cosmetic warnings rather than functional issues. However, the package's maintenance state means no bug fixes or new Gherkin syntax support should be expected.
Possible evolution
No action needed now. Monitor periodically:
- New gherkin-lint releases or maintainer activity at timjroberts/gherkin-lint
- Community alternatives that could serve as a replacement (e.g., tools built on
@cucumber/gherkin) - Whether the deprecated transitive dependencies cause install failures in future npm versions
If an alternative emerges, the validation framework's gherkin engine adapter (engines/gherkin_adapter.py) is designed for easy tool swap — only the CLI invocation and output parsing need to change.
Alternative solution
- Build a custom linter using
@cucumber/gherkin(the maintained successor togherkin@9) - Evaluate other community Gherkin linting tools if they emerge
- Reduce scope to syntax validation only using
@cucumber/gherkinparser (no style rules)
Additional context
gherkin-lint runs correctly on Node.js 24 in the validation framework CI pipeline. The linting rules it provides (indentation, no-empty-background, no-unnamed-features, etc.) are useful for CAMARA test file quality. Related: tooling#137 tracks Spectral CLI's similar deprecated dependency situation.