Skip to content

feat: @cucumber/cucumber 13 (0.1.6) - #20

Merged
alexanderilyin merged 12 commits into
devcontainer-builderfrom
cucumber-13
Oct 7, 2026
Merged

alexanderilyin merged 12 commits into
devcontainer-builderfrom
cucumber-13

Conversation

@alexanderilyin

Copy link
Copy Markdown
Member

Lets devcontainer-builder take cucumber 13 (DeepSpaceCartel/devcontainer-builder#67).

  • Peer and dev dependency @cucumber/cucumber ^13.2.1; version 0.1.6; engines node >=22.
  • Cucumber 13's --parallel workers are worker threads, and register() in cucumber.mjs doesn't reach them (ERR_MODULE_NOT_FOUND on a .ts import). Every test* script now sets NODE_OPTIONS='--import tsx', which they do get.
  • CUCUMBER_WORKER_ID is still set per worker (cucumber's adapter.ts), so per-worker namespaces and log names are unchanged.

Verified: tsc --noEmit is clean, and devcontainer-builder's request_validation.feature ran on Node 26 with --parallel=3 up to its image build (which needs this commit pinned).

🤖 Generated with Claude Code

Cucumber 13 runs --parallel workers as worker threads, which don't get the
tsx loader cucumber.mjs registers, so every test script sets
NODE_OPTIONS='--import tsx'. engines node >=22 (cucumber 13 dropped Node 20).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 86d9f272-dbb2-4d7c-87d6-ccaaabbde727

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

alexanderilyin added a commit to DeepSpaceCartel/devcontainer-builder that referenced this pull request Oct 7, 2026
- Sentry 11's fastifyIntegration captures errors itself and
  setupFastifyErrorHandler is deprecated: the call is gone.
- TypeScript 7 no longer loads @types/* on its own: tsconfig lists node.
- thomas 0.1.6 (DeepSpaceCartel/thomas#20) accepts cucumber 13, whose
  --parallel workers are threads; npm test already sets
  NODE_OPTIONS='--import tsx', which reaches them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
alexanderilyin and others added 11 commits October 7, 2026 21:23
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cucumber/pretty-formatter 4.x no longer exports a class-based formatter,
so --format @cucumber/pretty-formatter fails under cucumber 13. Use the
built-in 'pretty' formatter and drop the redundant devDependency.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Helm v4.3 spells it 'reuse' (v3: 're-use'), so assert only the shared
tail 'name that is still in use'.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
BuildKit needs a privileged pod, which the cluster's default baseline
PodSecurity level rejects. The namespace label was a manual one-time
step and was lost when thomas-helm-test got recreated. Each Docker
scenario now sets pod-security.kubernetes.io/enforce=privileged before
installing BuildKit and removes it after uninstalling.

CI needs a ClusterRole to patch that one namespace (documented in
docs/project/ci.md).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Labeling thomas-helm-test needs cluster-scoped access the CI
ServiceAccount doesn't have; skip them in CI instead of adding a
ClusterRole for now. They still run for anyone with broader access.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keep the global real-tests group on the test job (one shared namespace)
but add a per-ref workflow group that cancels a PR's older run, so a
stale commit no longer holds the only slot. main is never cancelled.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
engines node >=26 and @types/node ^26 to match the dev container's
Node 26; every workflow reads the version from a new .nvmrc instead
of hard-coding "22".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Node 26's Linux binary needs libatomic.so.1, which the ARC runner
image lacks, so real-tests died before running any scenario.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alexanderilyin
alexanderilyin merged commit 35473ee into devcontainer-builder Oct 7, 2026
5 checks passed
@alexanderilyin
alexanderilyin deleted the cucumber-13 branch October 7, 2026 23:26
@alexanderilyin
alexanderilyin restored the cucumber-13 branch October 7, 2026 23:26
@alexanderilyin
alexanderilyin deleted the cucumber-13 branch October 7, 2026 23:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant