hades-lang
hades-lang copied to clipboard
Bump com.github.ajalt.clikt:clikt from 4.4.0 to 5.0.0 in /hadesboot
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 theSuspendingCliktCommand
and theChainedCliktCommand
, and it's easy to define your own.See the migration guide for details on upgrading to Clikt 5.0.
Added
- Publish
iosArm64
andiosX64
targets.- Added
NoSuchArgument
exception that is thrown when too many arguments were given on the command line. Previously, a less specificUsageError
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 whenallowMultipleSubcommands
istrue
.- Added
SuspendingCliktCommand
that has asuspend fun run
method, allowing you to use coroutines in your commands.- Added
ChainedCliktCommand
that allows you to return a value from yourrun
method and pass it to the next command in the chain.- Added
Context.data
as an alternative toobj
that allows you to store more than one object in the context.- Added
Context.echoer
to customize howecho
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{}
, andassociateWith{}
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
andignoreCase
parameters tooption().split()
. (#541)- Support calling
--help
on subcommands when parents have required parameters.Changed
In a subcommand with and an
argument()
withmultiple()
oroptional()
, the behavior is now the same regardless of the value ofallowMultipleSubcommands
: 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
andCliktCommand.parse
are now extension functions rather than methods.Breaking Change:
Context.obj
andContext.terminal
, andOptionTransformContext.terminal
are now extension functions rather than properties.Breaking Change: The
RenderedSection
andDefinitionRow
classes have moved toAbstractHelpFormatter
.Markdown support in the help formatter is no longer included by default. To enable it, include the
:clikt-markdown
dependency and callyourCommand.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
andiosX64
targets.- Added
NoSuchArgument
exception that is thrown when too many arguments were given on the command line. Previously, a less specificUsageError
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 whenallowMultipleSubcommands
istrue
.- Added
SuspendingCliktCommand
that has asuspend fun run
method, allowing you to use coroutines in your commands.- Added
ChainedCliktCommand
that allows you to return a value from yourrun
method and pass it to the next command in the chain.- Added
Context.data
as an alternative toobj
that allows you to store more than one object in the context.- Added
Context.echoer
to customize howecho
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{}
, andassociateWith{}
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
andignoreCase
parameters tooption().split()
. (#541)- Support calling
--help
on subcommands when parents have required parameters.Changed
In a subcommand with and an
argument()
withmultiple()
oroptional()
, the behavior is now the same regardless of the value ofallowMultipleSubcommands
: 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
andCliktCommand.parse
are now extension functions rather than methods.Breaking Change:
Context.obj
andContext.terminal
, andOptionTransformContext.terminal
are now extension functions rather than properties.Breaking Change: The
RenderedSection
andDefinitionRow
classes have moved toAbstractHelpFormatter
.Markdown support in the help formatter is no longer included by default. To enable it, include the
:clikt-markdown
dependency and callyourCommand.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 newContext.data
map.- Deprecated
Context.expandArgumentFiles
. UseContext.argumentFileReader
instead.
... (truncated)
Commits
bf73432
Release version 5.0.0e650bbe
Update docs96f3e90
Add clikt-markdown to published modules88fd5ea
Split markdown into separate module (#549)becce2e
Finalize eager options before any commands (#547)b1f5b42
Update mordant to 3.0 (#546)8626f4f
Add limit and option.split (#542)7e83887
Fix parsing multi subcommands with optional args (#540)9f48ab1
Support aliasing options to other options (#536)5c56161
Addassociate
overloads (#533)- Additional commits viewable in compare view
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)