Skip to content

feat!: rewrite to use cucumber messages#273

Open
Daan Timmer (daantimmer) wants to merge 248 commits intomainfrom
feature/rewrite-to-use-cucumber-messages
Open

feat!: rewrite to use cucumber messages#273
Daan Timmer (daantimmer) wants to merge 248 commits intomainfrom
feature/rewrite-to-use-cucumber-messages

Conversation

@daantimmer
Copy link
Collaborator

@daantimmer Daan Timmer (daantimmer) commented Dec 18, 2025

This (internal) rewrite is to make amp-cucumber-cpp-runner cucumber-messages compatible. Both during runtime and during formatting.

This will enable amp-cucumber-cpp-runner to be compatible with other, standalone, formatters.

  • implement all compatibility tests (37 / 39 done)
  • auto search for feature files if no paths are given
  • use CLI11's 'config file' option
  • implement minimum formatters
    • console/file: summary (partially done)
      • allow theming/disabling colouring
    • console/file: pretty printer (partially done)
      • allow theming/disabling colouring
    • console/file: step statistics
    • console/file: ndjson
    • console/file: junit

…ta, doc-strings, empty, examples-tables and minimal
…ooks-beforeall-error, hooks, hooks-attachment and hooks-conditional compatibility tests
@github-actions
Copy link

github-actions bot commented Dec 18, 2025

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 6 0 0 0.05s
✅ CPP clang-format 229 0 0 0 1.9s
✅ DOCKERFILE hadolint 1 0 0 0.04s
✅ JSON jsonlint 8 0 0 0.37s
✅ JSON prettier 8 6 0 0 0.63s
⚠️ MARKDOWN markdownlint 6 3 14 0 1.19s
✅ MARKDOWN markdown-table-formatter 6 3 0 0 0.33s
✅ REPOSITORY git_diff yes no no 0.02s
✅ REPOSITORY grype yes no no 33.33s
✅ REPOSITORY ls-lint yes no no 0.1s
✅ REPOSITORY secretlint yes no no 4.11s
✅ REPOSITORY syft yes no no 1.45s
✅ REPOSITORY trivy yes no no 9.72s
✅ REPOSITORY trivy-sbom yes no no 0.23s
✅ REPOSITORY trufflehog yes no no 4.49s
⚠️ SPELL lychee 83 1 0 3.93s
✅ YAML prettier 10 0 0 0 0.77s
✅ YAML v8r 10 0 0 7.24s
✅ YAML yamllint 10 0 0 0.64s

Detailed Issues

⚠️ SPELL / lychee - 1 error
[404] https://github.com/yourname/amp-cucumber-cpp-runner.git | Network error: Not Found
📝 Summary
---------------------
🔍 Total..........155
✅ Successful.....154
⏳ Timeouts.........0
🔀 Redirected.......0
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........1

Errors in CONTRIBUTING.md
[404] https://github.com/yourname/amp-cucumber-cpp-runner.git | Network error: Not Found
⚠️ MARKDOWN / markdownlint - 14 errors
CHANGELOG.md:26 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Chores"]
CHANGELOG.md:38 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:47 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:53 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Chores"]
CHANGELOG.md:61 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "⚠ BREAKING CHANGES"]
CHANGELOG.md:65 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:70 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:79 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:90 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Chores"]
CHANGELOG.md:98 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "⚠ BREAKING CHANGES"]
CHANGELOG.md:102 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:127 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:134 error MD024/no-duplicate-heading Multiple headings with the same content [Context: "Chores"]
README.md:114 error MD040/fenced-code-language Fenced code blocks should have a language specified [Context: "```"]

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.4.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,CPP_CLANG_FORMAT,DOCKERFILE_HADOLINT,JSON_JSONLINT,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_GIT_DIFF,REPOSITORY_GRYPE,REPOSITORY_LS_LINT,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@github-actions
Copy link

github-actions bot commented Dec 18, 2025

Test Results

27 tests   - 1   27 ✅  - 1   28s ⏱️ +24s
 1 suites ±0    0 💤 ±0 
 1 files   ±0    0 ❌ ±0 

Results for commit 2e6a580. ± Comparison against base commit 44e129b.

This pull request removes 6 and adds 5 tests. Note that renamed tests count towards both.
test.bats ‑ Missing mandatory feature argument
test.bats ‑ Missing mandatory report argument
test.bats ‑ Second feature file does not overwrite success with an undefined status
test.bats ‑ Test the asterisk keyword - will fail
test.bats ‑ Test unused step reporting
test.bats ‑ Undefined tests
test.bats ‑ Second feature file does not overwrite success with an ■ status
test.bats ‑ Test nested steps
test.bats ‑ Test the asterisk keyword
test.bats ‑ Test usage formatter
test.bats ‑ ■ tests

♻️ This comment has been updated with latest results.

Copilot AI review requested due to automatic review settings February 19, 2026 16:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 395 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 2, 2026 13:16
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 398 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 2, 2026 14:38
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 404 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Introduced util::HookData and util::HookFactory to streamline hook management.
- Updated HookRegistry to utilize new HookData structure for better encapsulation.
- Refactored StepRegistry to use util::StepFactory for step creation.
- Removed unnecessary includes and simplified code structure in HookRegistry and StepRegistry.
- Added new Body class to handle execution and exception management for hooks and steps.
- Implemented TransformHookData utility to convert HookData to cucumber messages format.
- Enhanced error handling in Body execution with detailed reporting.
- Updated TransformTable to correctly convert Table structures to pickle_table format.
- Cleaned up SupportCodeLibrary by removing unused code and organizing includes.
Copilot AI review requested due to automatic review settings March 3, 2026 13:31
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 431 changed files in this pull request and generated 7 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 3, 2026 15:28
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 434 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 4, 2026 10:08
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 291 out of 434 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 4, 2026

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.

6 participants