Skip to content

Infinite recursion bug#1316

Merged
phlptp merged 8 commits into
CLIUtils:mainfrom
phlptp:option_group_fallthrough_recursion
Mar 22, 2026
Merged

Infinite recursion bug#1316
phlptp merged 8 commits into
CLIUtils:mainfrom
phlptp:option_group_fallthrough_recursion

Conversation

@phlptp
Copy link
Copy Markdown
Collaborator

@phlptp phlptp commented Mar 21, 2026

fix a bug that led to infinite recursion on subcommand option groups with fallthrough enabled.

FIxes #1315

@phlptp phlptp added the bug label Mar 21, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 21, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (e4ee3af) to head (49b5724).
⚠️ Report is 189 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##              main     #1316     +/-   ##
===========================================
  Coverage   100.00%   100.00%             
===========================================
  Files           17        19      +2     
  Lines         4546      5144    +598     
  Branches         0      1103   +1103     
===========================================
+ Hits          4546      5144    +598     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@phlptp
Copy link
Copy Markdown
Collaborator Author

phlptp commented Mar 21, 2026

I got curious how an AI would handle this solution I gave codex the issue vs what I did without AI. Discussion #1317 . I am not entirely sure how I feel about that solution, I was considering going down that route as well, so I don't think it is wrong. Curious what others think.

@phlptp phlptp merged commit 1d99797 into CLIUtils:main Mar 22, 2026
74 checks passed
LunarWatcher added a commit to LunarWatcher/umbra that referenced this pull request May 14, 2026
CLI11 has turned to AI slop. 2.6.2 is the last version without slop (as
far as I can tell)

* CLIUtils/CLI11#1317
* CLIUtils/CLI11#1316
* CLIUtils/CLI11#1337

As far as I can tell, there are no other alternatives at the time of
writing, aside a boost library, and a fair few unmaintained libraries.
LunarWatcher added a commit to LunarWatcher/CLI11 that referenced this pull request May 14, 2026
Upstream has turned to AI slop:

* CLIUtils#1317
* CLIUtils#1316
* CLIUtils#1337

This fork is based on the commit with the v2.6.2 tag, and will be
versioned 3.0.0 to separate the versioning trees

The following has been removed:

* The explicit contributor lists. Git keeps track of this for free
* Microslop Azure pipelines
* Misc tools I'll never be using
* Bazel and meson; I do not have capacity to maintain two extra build
  systems for no reason
* Microslop GitDowntime CodeQL
LunarWatcher added a commit to LunarWatcher/hazel that referenced this pull request May 14, 2026
CLI11 has turned to AI slop. 2.6.2 is the last version without slop (as
far as I can tell)

* CLIUtils/CLI11#1317
* CLIUtils/CLI11#1316
* CLIUtils/CLI11#1337

The fork diverges at 2.6.2 to keep it slop-free (or at least prevent
additional AI slop)
LunarWatcher added a commit to LunarWatcher/CLI11 that referenced this pull request May 14, 2026
Upstream has turned to AI slop:

* CLIUtils#1317
* CLIUtils#1316
* CLIUtils#1337

This fork is based on the commit with the v2.6.2 tag, and will be
versioned 3.0.0 to separate the versioning trees

The following has been removed:

* The explicit contributor lists. Git keeps track of this for free
* Microslop Azure pipelines
* Misc tools I'll never be using
* Bazel and meson; I do not have capacity to maintain two extra build
  systems for no reason
* Microslop GitDowntime CodeQL
LunarWatcher added a commit to LunarWatcher/violet that referenced this pull request May 16, 2026
CLI11 has turned to AI slop. 2.6.2 is the last version without slop (as
far as I can tell)

* CLIUtils/CLI11#1317
* CLIUtils/CLI11#1316
* CLIUtils/CLI11#1337

The fork diverges at 2.6.2 to keep it slop-free (or at least prevent
additional AI slop)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Infinite recursion in CLI::App::get_option_no_throw

1 participant