Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump com.github.ajalt.clikt:clikt from 4.4.0 to 5.0.0 #190

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Sep 16, 2024

Bumps com.github.ajalt.clikt:clikt from 4.4.0 to 5.0.0.

Release notes

Sourced from com.github.ajalt.clikt:clikt's releases.

5.0.0

This release splits the package into separate modules to help produce smaller binaries. Parsing and running commands are now separated, which allows for custom run types. This release includes the SuspendingCliktCommand and the ChainedCliktCommand, and it's easy to define your own.

See the migration guide for details on upgrading to Clikt 5.0.

Added

  • Publish iosArm64 and iosX64 targets.
  • Added NoSuchArgument exception that is thrown when too many arguments were given on the command line. Previously, a less specific UsageError was thrown instead.
  • Added CommandLineParser.tokenize that splits a string into argv tokens.
  • Added CommandLineParser that provides functions for parsing and finalizing commands manually for more control.
  • Added Context.invokedSubcommands that contains all subcommands of the current command that are going to be invoked when allowMultipleSubcommands is true.
  • Added SuspendingCliktCommand that has a suspend fun run method, allowing you to use coroutines in your commands.
  • Added ChainedCliktCommand that allows you to return a value from your run method and pass it to the next command in the chain.
  • Added Context.data as an alternative to obj that allows you to store more than one object in the context.
  • Added Context.echoer to customize how echo messages are printed.
  • Added CompletionGenerator to manually generate completions for a command.
  • Added Context.exitProcess which you can use to prevent the process from exiting during tests.
  • Added core module that supports watchOS, tvOS, and wasmWasi targets and has no dependencies.
  • Added more options to CliktCommand.test to control the terminal interactivity. (#517)
  • Added associate{}, associateBy{}, and associateWith{} transforms for options that allow you to convert the keys and values of the map. (#529)
  • Added support for aliasing options to other options. (#535)
  • Added limit and ignoreCase parameters to option().split(). (#541)
  • Support calling --help on subcommands when parents have required parameters.

Changed

  • In a subcommand with and an argument() with multiple() or optional(), the behavior is now the same regardless of the value of allowMultipleSubcommands: if a token matches a subcommand name, it's now treated as a subcommand rather than a positional argument.

  • Due to changes to the internal parsing algorithm, the exact details of error messages when multiple usage errors occur have changed in some cases.

  • Breaking Change: Moved the following parameters from CliktCommand's constructor; override the corresponding properties instead:

    removed parameter replacement property
    help fun help
    epilog fun helpEpilog
    invokeWithoutSubcommand val invokeWithoutSubcommand
    printHelpOnEmptyArgs val printHelpOnEmptyArgs
    helpTags val helpTags
    autoCompleteEnvvar val autoCompleteEnvvar
    allowMultipleSubcommands val allowMultipleSubcommands
    treatUnknownOptionsAsArgs val treatUnknownOptionsAsArgs
    hidden val hiddenFromHelp
  • The following methods on CliktCommand have been renamed: commandHelp -> help, commandHelpEpilog -> epilog. The old names are deprecated.

  • Breaking Change: CliktCommand.main and CliktCommand.parse are now extension functions rather than methods.

  • Breaking Change: Context.obj and Context.terminal, and OptionTransformContext.terminal are now extension functions rather than properties.

  • Breaking Change: The RenderedSection and DefinitionRow classes have moved to AbstractHelpFormatter.

  • Markdown support in the help formatter is no longer included by default. To enable it, include the :clikt-markdown dependency and call yourCommand.installMordantMarkdown() before parsing.

  • Updated Kotlin to 2.0.0

Fixed

  • Fixed excess arguments not being reported when allowMultipleSubcommands=true and a subcommand has excess arguments followed by another subcommand.
  • Commands with printHelpOnEmptyArgs=true will no longer print help if an option has a value from an environment variable or value source. (#382)

... (truncated)

Changelog

Sourced from com.github.ajalt.clikt:clikt's changelog.

5.0.0

Added

  • Publish iosArm64 and iosX64 targets.
  • Added NoSuchArgument exception that is thrown when too many arguments were given on the command line. Previously, a less specific UsageError was thrown instead.
  • Added CommandLineParser.tokenize that splits a string into argv tokens.
  • Added CommandLineParser that provides functions for parsing and finalizing commands manually for more control.
  • Added Context.invokedSubcommands that contains all subcommands of the current command that are going to be invoked when allowMultipleSubcommands is true.
  • Added SuspendingCliktCommand that has a suspend fun run method, allowing you to use coroutines in your commands.
  • Added ChainedCliktCommand that allows you to return a value from your run method and pass it to the next command in the chain.
  • Added Context.data as an alternative to obj that allows you to store more than one object in the context.
  • Added Context.echoer to customize how echo messages are printed.
  • Added CompletionGenerator to manually generate completions for a command.
  • Added Context.exitProcess which you can use to prevent the process from exiting during tests.
  • Added core module that supports watchOS, tvOS, and wasmWasi targets and has no dependencies.
  • Added more options to CliktCommand.test to control the terminal interactivity. (#517)
  • Added associate{}, associateBy{}, and associateWith{} transforms for options that allow you to convert the keys and values of the map. (#529)
  • Added support for aliasing options to other options. (#535)
  • Added limit and ignoreCase parameters to option().split(). (#541)
  • Support calling --help on subcommands when parents have required parameters.

Changed

  • In a subcommand with and an argument() with multiple() or optional(), the behavior is now the same regardless of the value of allowMultipleSubcommands: if a token matches a subcommand name, it's now treated as a subcommand rather than a positional argument.

  • Due to changes to the internal parsing algorithm, the exact details of error messages when multiple usage errors occur have changed in some cases.

  • Breaking Change: Moved the following parameters from CliktCommand's constructor; override the corresponding properties instead:

    removed parameter replacement property
    help fun help
    epilog fun helpEpilog
    invokeWithoutSubcommand val invokeWithoutSubcommand
    printHelpOnEmptyArgs val printHelpOnEmptyArgs
    helpTags val helpTags
    autoCompleteEnvvar val autoCompleteEnvvar
    allowMultipleSubcommands val allowMultipleSubcommands
    treatUnknownOptionsAsArgs val treatUnknownOptionsAsArgs
    hidden val hiddenFromHelp
  • The following methods on CliktCommand have been renamed: commandHelp -> help, commandHelpEpilog -> epilog. The old names are deprecated.

  • Breaking Change: CliktCommand.main and CliktCommand.parse are now extension functions rather than methods.

  • Breaking Change: Context.obj and Context.terminal, and OptionTransformContext.terminal are now extension functions rather than properties.

  • Breaking Change: The RenderedSection and DefinitionRow classes have moved to AbstractHelpFormatter.

  • Markdown support in the help formatter is no longer included by default. To enable it, include the :clikt-markdown dependency and call yourCommand.installMordantMarkdown() before parsing.

  • Updated Kotlin to 2.0.0

Fixed

  • Fixed excess arguments not being reported when allowMultipleSubcommands=true and a subcommand has excess arguments followed by another subcommand.
  • Commands with printHelpOnEmptyArgs=true will no longer print help if an option has a value from an environment variable or value source. (#382)

Deprecated

  • Deprecated Context.originalArgv. It will now always return an empty list. If your commands need an argv, you can pass it to them before you run them, or set in on the new Context.data map.
  • Deprecated Context.expandArgumentFiles. Use Context.argumentFileReader instead.

... (truncated)

Commits

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 merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @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 [com.github.ajalt.clikt:clikt](https://github.com/ajalt/clikt) from 4.4.0 to 5.0.0.
- [Release notes](https://github.com/ajalt/clikt/releases)
- [Changelog](https://github.com/ajalt/clikt/blob/master/CHANGELOG.md)
- [Commits](ajalt/clikt@4.4.0...5.0.0)

---
updated-dependencies:
- dependency-name: com.github.ajalt.clikt:clikt
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Sep 16, 2024
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 java Pull requests that update Java code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant