Skip to content

build(deps-dev): bump cyclopts from 4.25.2 to 5.0.0 - #49

Merged
robertodr merged 1 commit into
mainfrom
dependabot/uv/cyclopts-5.0.0
Oct 4, 2026
Merged

robertodr merged 1 commit into
mainfrom
dependabot/uv/cyclopts-5.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 1, 2026

Copy link
Copy Markdown
Contributor

Bumps cyclopts from 4.25.2 to 5.0.0.

Release notes

Sourced from cyclopts's releases.

v5.0.0

Check out the new "Migrating to v5" docs page, covering each intentional breaking change with before/after examples.

All v4 features up to 4.25.3 have been merged into this release.

Breaking

  • Dropped Python 3.10 support (Python 3.10 EoL is Oct 31, 2026) BrianPugh/cyclopts#889

  • Removed fuzzy command-matching. Command names must match exactly.

    • It was a temporary v4 backwards-compat shim (#666) for the PascalCase → pascal-case name-transform change, retrying by stripping dashes/underscores on no exact match. Removed as cleanup for the major release.
    @app.command
    def MyCommand(): ...   # registers as "my-command"
    # v4: `mycommand` fuzzy-matched -> my-command
    # v5: `mycommand` no longer resolves; use `my-command`
  • Fallthrough parsing: child wins. Previously a meta app claimed any keyword parameter it recognized regardless of token position — even after a subcommand, and even if the subcommand defined the same name. In v5 (default parse_mode="fallthrough"), when both levels define the same name, the subcommand wins for tokens placed after it.

    @app.meta.default
    def main(
        *tokens: Annotated[str, Parameter(show=False, allow_leading_hyphen=True)],
        verbose: Annotated[bool, Parameter(alias="-v")] = False,
    ):
        app(tokens)
    @​app.command
    def greet(name: str, *, version: Annotated[bool, Parameter(alias="-v")] = False):
    ...

    $ myapp greet -v Alice          # after the subcommand: CHANGED
    # v4: meta verbose=True;  greet version=False
    # v5: meta verbose=False; greet version=True   (child wins)
    

    $ myapp -v greet Alice # before the subcommand: unchanged

    v4: meta verbose=True; greet version=False

    v5: meta verbose=True; greet version=False

    Only placement after the subcommand changed. To reject parent-level parameters placed after a subcommand entirely, use parse_mode="strict".

  • Forwarded *tokens preserve the -- delimiter. A forwarding meta's raw-stream capture parameter (*tokens with allow_leading_hyphen=True) now keeps a user-typed end-of-options delimiter, so the re-parse inside app(tokens) still treats the trailing tokens as positional.

    $ myapp sub -- -x

... (truncated)

Commits
  • ad0e968 chore(deps): bump rich-rst from 2.0.1 to 2.1.0
  • d1c8962 chore(deps): bump docstring-parser from 0.17.0 to 0.18.0
  • b1b1511 chore(deps): bump sphinx-rtd-theme from 3.0.2 to 3.1.0
  • deda088 chore(deps): bump pymdown-extensions from 11.0.2 to 12.0.1
  • 8acc353 chore(deps): update myst-parser[linkify] requirement
  • 5bddc53 chore: bump lockfile deps to clear dependabot security alerts
  • c3435cc Merge pull request #959 from BrianPugh/v5-develop
  • 1ff9947 Merge branch 'main' into v5-develop
  • 83213cc Merge pull request #956 from BrianPugh/fix-set-unhashable-element-diagnostic
  • 38f420c test: cover frozenset in the unhashable-element diagnostic test
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [cyclopts](https://github.com/BrianPugh/cyclopts) from 4.25.2 to 5.0.0.
- [Release notes](https://github.com/BrianPugh/cyclopts/releases)
- [Commits](BrianPugh/cyclopts@v4.25.2...v5.0.0)

---
updated-dependencies:
- dependency-name: cyclopts
  dependency-version: 5.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Oct 1, 2026
@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown

Test Results

  4 files  ±0    4 suites  ±0   2m 1s ⏱️ +12s
 37 tests ±0   36 ✅ ±0  1 💤 ±0  0 ❌ ±0 
128 runs  ±0  126 ✅ ±0  2 💤 ±0  0 ❌ ±0 

Results for commit 1b2badb. ± Comparison against base commit fe1779b.

@robertodr
robertodr enabled auto-merge (squash) October 4, 2026 01:35
@robertodr
robertodr disabled auto-merge October 4, 2026 01:35
@robertodr
robertodr merged commit 031c7f3 into main Oct 4, 2026
12 checks passed
@robertodr
robertodr deleted the dependabot/uv/cyclopts-5.0.0 branch October 4, 2026 01:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant