diff --git a/dependencies.gradle b/dependencies.gradle index 61614cae5..ba52f8b14 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -5,12 +5,12 @@ ext { // PICOCLI VERSION // projectPreviousPublishedVersion is non-SNAPSHOT, only published releases - projectPreviousPublishedVersion = "4\\.7\\.3" // for task bumpReadmeVersion + projectPreviousPublishedVersion = "4\\.7\\.4" // for task bumpReadmeVersion // projectPreviousVersionRegex may be a SNAPSHOT - projectPreviousVersionRegex = "4\\.7\\.4-SNAPSHOT" // for task bumpVersion - projectVersion = "4.7.4" // for all build tasks + projectPreviousVersionRegex = "4\\.7\\.4" // for task bumpVersion + projectVersion = "4.7.5-SNAPSHOT" // for all build tasks releaseDate = "2023-06-03" // for task bumpVersion - releaseDatePreviousRegex = "2023\\-04\\-16" // for task bumpVersion + releaseDatePreviousRegex = "2023\\-06\\-03" // for task bumpVersion // DEPENDENCIES asciidoctorGradlePluginVersion = "3.3.2" diff --git a/docs/autocomplete.adoc b/docs/autocomplete.adoc index e748e3db5..2b9b18614 100644 --- a/docs/autocomplete.adoc +++ b/docs/autocomplete.adoc @@ -1,7 +1,7 @@ = Autocomplete for Java Command Line Applications //:author: Remko Popma //:email: rpopma@apache.org -:revnumber: 4.7.4 +:revnumber: 4.7.5-SNAPSHOT :revdate: 2023-06-03 :toc: left :numbered: diff --git a/docs/index.adoc b/docs/index.adoc index be0d9f29b..ac3f62244 100644 --- a/docs/index.adoc +++ b/docs/index.adoc @@ -1,7 +1,7 @@ = picocli - a mighty tiny command line interface //:author: Remko Popma //:email: rpopma@apache.org -:revnumber: 4.7.4 +:revnumber: 4.7.5-SNAPSHOT :revdate: 2023-06-03 :toc: left :numbered: @@ -120,7 +120,7 @@ class CheckSum implements Callable { [[CheckSum-App-Groovy]] [source,groovy,role="secondary"] ---- -@Grab('info.picocli:picocli-groovy:4.7.4') +@Grab('info.picocli:picocli-groovy:4.7.5-SNAPSHOT') import picocli.CommandLine import static picocli.CommandLine.* @@ -152,7 +152,7 @@ class Checksum implements Callable { [[CheckSum-App-Groovy-Script]] [source,groovy,role="secondary"] ---- -@Grab('info.picocli:picocli-groovy:4.7.4') +@Grab('info.picocli:picocli-groovy:4.7.5-SNAPSHOT') import static picocli.CommandLine.* import groovy.transform.Field import java.security.MessageDigest @@ -279,7 +279,7 @@ Below are examples of configuring Gradle or Maven to use picocli as an external [source,groovy,role="primary"] ---- dependencies { - implementation 'info.picocli:picocli:4.7.4' + implementation 'info.picocli:picocli:4.7.5-SNAPSHOT' } ---- .Maven @@ -288,7 +288,7 @@ dependencies { info.picocli picocli - 4.7.4 + 4.7.5-SNAPSHOT ---- @@ -325,8 +325,8 @@ https://immutables.github.io/apt.html[This page] shows the steps to configure Ec [source,groovy,role="primary"] ---- dependencies { - implementation 'info.picocli:picocli:4.7.4' - annotationProcessor 'info.picocli:picocli-codegen:4.7.4' + implementation 'info.picocli:picocli:4.7.5-SNAPSHOT' + annotationProcessor 'info.picocli:picocli-codegen:4.7.5-SNAPSHOT' } @@ -348,7 +348,7 @@ compileJava { info.picocli picocli-codegen - 4.7.4 + 4.7.5-SNAPSHOT @@ -368,7 +368,7 @@ then replace `annotationProcessor` with `kapt`: apply plugin: 'kotlin-kapt' // required dependencies { // ... - kapt 'info.picocli:picocli-codegen:4.7.4' + kapt 'info.picocli:picocli-codegen:4.7.5-SNAPSHOT' } ``` @@ -399,7 +399,7 @@ Now, assuming we created a jar named `checksum.jar` containing our compiled `Che [source,bash] ---- -java -cp "picocli-4.7.4.jar:checksum.jar" CheckSum --algorithm SHA-1 hello.txt +java -cp "picocli-4.7.5-SNAPSHOT.jar:checksum.jar" CheckSum --algorithm SHA-1 hello.txt ---- You may want to package your application in such a way that end users can invoke it with a short command like this: @@ -10381,7 +10381,7 @@ Eventually, we are ready to run our application: [source,bash] ---- -java -cp "picocli-4.7.4.jar;myapp.jar" org.myorg.GreetingApp Sarah Lea +java -cp "picocli-4.7.5-SNAPSHOT.jar;myapp.jar" org.myorg.GreetingApp Sarah Lea ---- With no command line parameter `--locale` given, the message texts are printed in the default language (here: English): @@ -10395,7 +10395,7 @@ In order to control the locale chosen for our output, we have to make use of the [source,bash] ---- -java -cp "picocli-4.7.4.jar;myapp.jar" org.myorg.GreetingApp --locale=es Sarah Lea +java -cp "picocli-4.7.5-SNAPSHOT.jar;myapp.jar" org.myorg.GreetingApp --locale=es Sarah Lea ---- Now our message texts are printed in Spanish: @@ -11714,21 +11714,21 @@ Since picocli dependencies are not available in the Spring Initializr, we have t info.picocli picocli-spring-boot-starter - 4.7.4 + 4.7.5-SNAPSHOT ---- .Gradle (Groovy) [source,groovy,role="secondary"] ---- dependencies { - implementation 'info.picocli:picocli-spring-boot-starter:4.7.4' + implementation 'info.picocli:picocli-spring-boot-starter:4.7.5-SNAPSHOT' } ---- .Gradle (Kotlin) [source,kotlin,role="secondary"] ---- dependencies { - implementation("info.picocli:picocli-spring-boot-starter:4.7.4") + implementation("info.picocli:picocli-spring-boot-starter:4.7.5-SNAPSHOT") } ---- @@ -13078,7 +13078,7 @@ As mentioned in <>, earlier in this manual, one way to [source,bash] ---- -java -cp "picocli-4.7.4.jar;myapp.jar" org.myorg.MyMainClass --option=value arg0 arg1 +java -cp "picocli-4.7.5-SNAPSHOT.jar;myapp.jar" org.myorg.MyMainClass --option=value arg0 arg1 ---- That is quite verbose. You may want to package your application in such a way that end users can invoke it by its command name like this: @@ -13097,7 +13097,7 @@ On unix-based operating systems, you can ask your users to define an alias. For [source,bash] ---- -alias mycommand='java -cp "/path/to/picocli-4.7.4.jar:/path/to/myapp.jar" org.myorg.MainClass' +alias mycommand='java -cp "/path/to/picocli-4.7.5-SNAPSHOT.jar:/path/to/myapp.jar" org.myorg.MainClass' ---- Append the above line to your `~/.bashrc` file to make this alias available in every new shell session. @@ -13146,7 +13146,7 @@ After installing GraalVM and installing the `native-image` generator utility (wi you can then create a native image by invoking the `native-image` command: ---- -path/to/native-image -cp picocli-4.7.4.jar --static -jar myapp.jar +path/to/native-image -cp picocli-4.7.5-SNAPSHOT.jar --static -jar myapp.jar ---- CAUTION: To create a native image, the compiler toolchain for your platform needs to be installed. See https://www.infoq.com/articles/java-native-cli-graalvm-picocli/[Build Great Native CLI Apps in Java with Graalvm and Picocli] for details. @@ -13291,7 +13291,7 @@ The script body is executed if the user input was valid and did not request usag [source,groovy] ---- -@Grab('info.picocli:picocli-groovy:4.7.4') +@Grab('info.picocli:picocli-groovy:4.7.5-SNAPSHOT') @GrabConfig(systemClassLoader=true) @Command(name = "myScript", mixinStandardHelpOptions = true, // add --help and --version options @@ -13332,7 +13332,7 @@ The table below compares these two base classes. WARNING: When upgrading scripts from picocli versions older than 4.0, just changing the version number is not enough! -Scripts should use `@Grab('info.picocli:picocli-groovy:4.7.4')`. The old artifact id `@Grab('info.picocli:picocli:4.7.4')` will not work, +Scripts should use `@Grab('info.picocli:picocli-groovy:4.7.5-SNAPSHOT')`. The old artifact id `@Grab('info.picocli:picocli:4.7.5-SNAPSHOT')` will not work, because the `@picocli.groovy.PicocliScript` annotation class and supporting classes have been moved into a separate module, `picocli-groovy`. ==== Closures in Annotations @@ -13390,7 +13390,7 @@ NOTE: When using a Groovy version older than 2.4.7, use this workaround for the [source,groovy] ---- -@Grab('info.picocli:picocli-groovy:4.7.4') +@Grab('info.picocli:picocli-groovy:4.7.5-SNAPSHOT') @GrabExclude('org.codehaus.groovy:groovy-all') // work around GROOVY-7613 ... ---- @@ -13533,13 +13533,13 @@ You can add picocli as an external dependency to your project, or you can includ .Gradle [source,groovy,role="primary"] ---- -implementation 'info.picocli:picocli:4.7.4' +implementation 'info.picocli:picocli:4.7.5-SNAPSHOT' ---- .Gradle (Kotlin) [source,kotlin,role="secondary"] ---- -implementation("info.picocli:picocli:4.7.4") +implementation("info.picocli:picocli:4.7.5-SNAPSHOT") ---- .Maven @@ -13548,50 +13548,50 @@ implementation("info.picocli:picocli:4.7.4") info.picocli picocli - 4.7.4 + 4.7.5-SNAPSHOT ---- .Scala SBT [source,role="secondary"] ---- -libraryDependencies += "info.picocli" % "picocli" % "4.7.4" +libraryDependencies += "info.picocli" % "picocli" % "4.7.5-SNAPSHOT" ---- .Ivy [source,role="secondary"] ---- - + ---- .Grape [source,role="secondary"] ---- @Grapes( - @Grab(group='info.picocli', module='picocli', version='4.7.4') + @Grab(group='info.picocli', module='picocli', version='4.7.5-SNAPSHOT') ) ---- .Leiningen [source,role="secondary"] ---- -[info.picocli/picocli "4.7.4"] +[info.picocli/picocli "4.7.5-SNAPSHOT"] ---- .Buildr [source,role="secondary"] ---- -'info.picocli:picocli:jar:4.7.4' +'info.picocli:picocli:jar:4.7.5-SNAPSHOT' ---- .JBang [source,role="secondary"] ---- -//DEPS info.picocli:picocli:4.7.4 +//DEPS info.picocli:picocli:4.7.5-SNAPSHOT ---- === Source By using picocli in source form, you can avoid having an external dependency on picocli. -Picocli has only one source file: link:https://github.com/remkop/picocli/blob/v4.7.4/src/main/java/picocli/CommandLine.java[CommandLine.java]. +Picocli has only one source file: link:https://github.com/remkop/picocli/blob/v4.7.5-SNAPSHOT/src/main/java/picocli/CommandLine.java[CommandLine.java]. This facilitates including picocli in your project: simply copy and paste the code of this file into a file called `CommandLine.java`, add it to your project, and enjoy! diff --git a/docs/picocli-programmatic-api.adoc b/docs/picocli-programmatic-api.adoc index 7b4281037..0577392df 100644 --- a/docs/picocli-programmatic-api.adoc +++ b/docs/picocli-programmatic-api.adoc @@ -1,7 +1,7 @@ = Programmatic API //:author: Remko Popma //:email: rpopma@apache.org -:revnumber: 4.7.4 +:revnumber: 4.7.5-SNAPSHOT :revdate: 2023-06-03 :toc: left :numbered: diff --git a/docs/quick-guide.adoc b/docs/quick-guide.adoc index 01eeae94b..391e51e4e 100644 --- a/docs/quick-guide.adoc +++ b/docs/quick-guide.adoc @@ -1,7 +1,7 @@ = Quick Guide //:author: Remko Popma //:email: rpopma@apache.org -:revnumber: 4.7.4 +:revnumber: 4.7.5-SNAPSHOT :revdate: 2023-06-03 :toc: left :numbered: @@ -52,7 +52,7 @@ Below we show a small but fully functional example picocli-based command line ap .Invoking the command ---- -$ java -cp "myapp.jar;picocli-4.7.4.jar" ASCIIArt --font-size=9 Hello picocli +$ java -cp "myapp.jar;picocli-4.7.5-SNAPSHOT.jar" ASCIIArt --font-size=9 Hello picocli # # # # # # # # # # # # # # *** # # **** #*** # **# **** **# # # @@ -162,7 +162,7 @@ The application can be used as follows: .Resolving two letter language codes ---- -$ java -cp "myapp.jar;picocli-4.7.4.jar" ISOCodeResolver language de cs en sd se +$ java -cp "myapp.jar;picocli-4.7.5-SNAPSHOT.jar" ISOCodeResolver language de cs en sd se de: German cs: Czech en: English @@ -172,7 +172,7 @@ se: Northern Sami .Resolving two letter country codes ---- -$ java -cp "myapp.jar;picocli-4.7.4.jar" ISOCodeResolver country cn fr th ro no +$ java -cp "myapp.jar;picocli-4.7.5-SNAPSHOT.jar" ISOCodeResolver country cn fr th ro no CN: China FR: France TH: Thailand diff --git a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/DynamicProxyConfigGenerator.java b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/DynamicProxyConfigGenerator.java index 2e84d377d..cba40c510 100644 --- a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/DynamicProxyConfigGenerator.java +++ b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/DynamicProxyConfigGenerator.java @@ -58,7 +58,7 @@ public class DynamicProxyConfigGenerator { }, footerHeading = "%nExample%n", footer = { - " java -cp \"myapp.jar;picocli-4.7.4.jar;picocli-codegen-4.7.4.jar\" " + + " java -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar;picocli-codegen-4.7.5-SNAPSHOT.jar\" " + "picocli.codegen.aot.graalvm.DynamicProxyConfigGenerator my.pkg.MyClass" }, mixinStandardHelpOptions = true, version = "picocli-codegen gen-proxy-config " + CommandLine.VERSION) diff --git a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/JniConfigGenerator.java b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/JniConfigGenerator.java index 5d8acb659..ec2de6b00 100644 --- a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/JniConfigGenerator.java +++ b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/JniConfigGenerator.java @@ -31,7 +31,7 @@ public class JniConfigGenerator { }, footerHeading = "%nExample%n", footer = { - " java -cp \"myapp.jar;picocli-4.7.4.jar;picocli-codegen-4.7.4.jar\" " + + " java -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar;picocli-codegen-4.7.5-SNAPSHOT.jar\" " + "picocli.codegen.aot.graalvm.JniConfigGenerator my.pkg.MyClass" }, mixinStandardHelpOptions = true, sortOptions = false, diff --git a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ReflectionConfigGenerator.java b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ReflectionConfigGenerator.java index 77a8dd013..b2c8f730e 100644 --- a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ReflectionConfigGenerator.java +++ b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ReflectionConfigGenerator.java @@ -95,7 +95,7 @@ public class ReflectionConfigGenerator { }, footerHeading = "%nExample%n", footer = { - " java -cp \"myapp.jar;picocli-4.7.4.jar;picocli-codegen-4.7.4.jar\" " + + " java -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar;picocli-codegen-4.7.5-SNAPSHOT.jar\" " + "picocli.codegen.aot.graalvm.ReflectionConfigGenerator my.pkg.MyClass" }, mixinStandardHelpOptions = true, sortOptions = false, diff --git a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ResourceConfigGenerator.java b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ResourceConfigGenerator.java index cc0807bac..a93f1bdd8 100644 --- a/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ResourceConfigGenerator.java +++ b/picocli-codegen/src/main/java/picocli/codegen/aot/graalvm/ResourceConfigGenerator.java @@ -54,7 +54,7 @@ public class ResourceConfigGenerator { }, footerHeading = "%nExample%n", footer = { - " java -cp \"myapp.jar;picocli-4.7.4.jar;picocli-codegen-4.7.4.jar\" " + + " java -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar;picocli-codegen-4.7.5-SNAPSHOT.jar\" " + "picocli.codegen.aot.graalvm.ResourceConfigGenerator my.pkg.MyClass" }, mixinStandardHelpOptions = true, version = "picocli-codegen gen-resource-config " + CommandLine.VERSION) diff --git a/picocli-codegen/src/main/java/picocli/codegen/docgen/manpage/ManPageGenerator.java b/picocli-codegen/src/main/java/picocli/codegen/docgen/manpage/ManPageGenerator.java index 356b7ab6d..b0fcf616b 100644 --- a/picocli-codegen/src/main/java/picocli/codegen/docgen/manpage/ManPageGenerator.java +++ b/picocli-codegen/src/main/java/picocli/codegen/docgen/manpage/ManPageGenerator.java @@ -190,7 +190,7 @@ private void verboseDetailed(String message, Object... params) { "", "Example", "-------", - " java -Duser.language=de -cp \"myapp.jar;picocli-4.7.4.jar;picocli-codegen-4.7.4.jar\" " + + " java -Duser.language=de -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar;picocli-codegen-4.7.5-SNAPSHOT.jar\" " + "picocli.codegen.docgen.manpage.ManPageGenerator my.pkg.MyClass" } ) diff --git a/src/main/java/picocli/AutoComplete.java b/src/main/java/picocli/AutoComplete.java index be8176d27..17fe51258 100644 --- a/src/main/java/picocli/AutoComplete.java +++ b/src/main/java/picocli/AutoComplete.java @@ -116,7 +116,7 @@ private static boolean syspropDefinedAndNotFalse(String key) { "", "Example", "-------", - " java -cp \"myapp.jar;picocli-4.7.4.jar\" \\", + " java -cp \"myapp.jar;picocli-4.7.5-SNAPSHOT.jar\" \\", " picocli.AutoComplete my.pkg.MyClass" }, exitCodeListHeading = "%nExit Codes:%n", diff --git a/src/main/java/picocli/CommandLine.java b/src/main/java/picocli/CommandLine.java index 889f4c571..7960e216c 100644 --- a/src/main/java/picocli/CommandLine.java +++ b/src/main/java/picocli/CommandLine.java @@ -148,7 +148,7 @@ public class CommandLine { /** This is picocli version {@value}. */ - public static final String VERSION = "4.7.4"; + public static final String VERSION = "4.7.5-SNAPSHOT"; private static final Tracer TRACER = new Tracer(); private CommandSpec commandSpec; @@ -979,7 +979,7 @@ public CommandLine setStopAtUnmatched(boolean newValue) { * or whether such values should be rejected with a missing parameter exception. * The default is {@code false}, so by default input like {@code -x=subcommand} is rejected if {@code -x} is an option that takes a String parameter, and {@code subcommand} is a subcommand of this command. * @return {@code true} when options can have parameter values that match subcommand names or aliases, {@code false} when such values should be rejected with a missing parameter exception - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @see ParserSpec#allowSubcommandsAsOptionParameters() */ public boolean isAllowSubcommandsAsOptionParameters() { @@ -994,7 +994,7 @@ public boolean isAllowSubcommandsAsOptionParameters() { * subcommands, call the setter last, after adding subcommands.

* @param newValue the new setting. When {@code true}, options can have parameter values that match subcommand names or aliases, when {@code false}, such values are rejected with a missing parameter exception * @return this {@code CommandLine} object, to allow method chaining - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @see ParserSpec#allowSubcommandsAsOptionParameters(boolean) */ public CommandLine setAllowSubcommandsAsOptionParameters(boolean newValue) { @@ -1009,7 +1009,7 @@ public CommandLine setAllowSubcommandsAsOptionParameters(boolean newValue) { * The default is {@code false}, so by default input like {@code -x=--some-option} is rejected if {@code -x} is an option that takes a String parameter, and {@code --some-option} is an option of this command. *

This method only considers actual options of this command, as opposed to {@link #isUnmatchedOptionsAllowedAsOptionParameters()}, which considers values that resemble options.

* @return {@code true} when options can have parameter values that match the name of an option in this command, {@code false} when such values should be rejected with a missing parameter exception - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @see #isUnmatchedOptionsAllowedAsOptionParameters() * @see ParserSpec#allowOptionsAsOptionParameters() */ @@ -1029,7 +1029,7 @@ public boolean isAllowOptionsAsOptionParameters() { * subcommands, call the setter last, after adding subcommands.

* @param newValue the new setting. When {@code true}, options can have parameter values that match the name of an option in this command, when {@code false}, such values are rejected with a missing parameter exception * @return this {@code CommandLine} object, to allow method chaining - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @see #setUnmatchedOptionsAllowedAsOptionParameters(boolean) * @see ParserSpec#allowOptionsAsOptionParameters(boolean) */ @@ -4737,7 +4737,7 @@ enum Target { * Note that picocli cannot reliably detect declaration order in commands that have both {@code @Option}-annotated methods and {@code @Option}-annotated fields. * The default ({@code true}) is to sort alphabetically. * @return whether options in the synopsis should be shown in alphabetic order. - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ boolean sortSynopsis() default true; /** Prefix required options with this character in the options list. The default is no marker: the synopsis @@ -5033,7 +5033,7 @@ public interface IVersionProvider { * * * The {@link #convert(String)} method of this class always throws an UnsupportedOperationException. - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT */ public static final class UseDefaultConverter implements ITypeConverter { /** Always throws UnsupportedOperationException. @@ -8184,7 +8184,7 @@ private String[] arr(String[] localized, String[] value, String[] defaultValue) public boolean sortOptions() { return (sortOptions == null) ? DEFAULT_SORT_OPTIONS : sortOptions; } /** Returns whether the options in the synopsis should be sorted alphabetically. - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public boolean sortSynopsis() { return (sortSynopsis == null) ? DEFAULT_SORT_SYNOPSIS : sortSynopsis; } /** Returns the character used to prefix required options in the options list. */ @@ -8333,7 +8333,7 @@ public UsageMessageSpec synopsisAutoIndentThreshold(double newValue) { /** Sets whether the options in the synopsis should be sorted alphabetically. * @return this UsageMessageSpec for method chaining - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public UsageMessageSpec sortSynopsis(boolean newValue) {sortSynopsis = newValue; return this;} /** Sets the character used to prefix required options in the options list. @@ -8599,11 +8599,11 @@ public boolean useSimplifiedAtFiles() { public boolean unmatchedOptionsAllowedAsOptionParameters() { return unmatchedOptionsAllowedAsOptionParameters; } /** * @see CommandLine#isAllowSubcommandsAsOptionParameters() - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public boolean allowSubcommandsAsOptionParameters() { return allowSubcommandsAsOptionParameters; } /** * @see CommandLine#isAllowOptionsAsOptionParameters() - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public boolean allowOptionsAsOptionParameters() { return allowOptionsAsOptionParameters; } private boolean splitFirst() { return limitSplit(); } /** Returns true if arguments should be split first before any further processing and the number of @@ -8663,11 +8663,11 @@ public boolean useSimplifiedAtFiles() { public ParserSpec unmatchedOptionsArePositionalParams(boolean unmatchedOptionsArePositionalParams) { this.unmatchedOptionsArePositionalParams = unmatchedOptionsArePositionalParams; return this; } /** * @see CommandLine#setAllowSubcommandsAsOptionParameters(boolean) - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public ParserSpec allowSubcommandsAsOptionParameters(boolean allowSubcommandsAsOptionParameters) { this.allowSubcommandsAsOptionParameters = allowSubcommandsAsOptionParameters; return this; } /** * @see CommandLine#setAllowOptionsAsOptionParameters(boolean) - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public ParserSpec allowOptionsAsOptionParameters(boolean allowOptionsAsOptionParameters) { this.allowOptionsAsOptionParameters = allowOptionsAsOptionParameters; return this; } /** Sets whether exceptions during parsing should be collected instead of thrown. * Multiple errors may be encountered during parsing. These can be obtained from {@link ParseResult#errors()}. @@ -8884,7 +8884,7 @@ void applyInitialValue() { } /** Returns the original value of the option's required attribute, regardless of whether the option is used in an exclusive group or not. - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @see Option#required() */ public boolean originallyRequired(){ return originallyRequired; @@ -11675,7 +11675,7 @@ private static Set keys(ResourceBundle rb) { * classpath and thereby cause failures. This method allows for disabling * loading of resource bundles during annotation processing, preventing such * errors. - * @since 4.7.4 + * @since 4.7.5-SNAPSHOT * @param loadBundles true if bundles should be loaded (default), false if bundles should not be loaded */ public static final void setLoadBundles(boolean loadBundles) { @@ -18371,7 +18371,7 @@ private Assert() {} // private constructor: never instantiate } /** Enumerates over the trace level values for filtering which internal debug statements should be printed. - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public enum TraceLevel { OFF, WARN, INFO, DEBUG; /** Returns whether messages at the specified {@code other} trace level would be printed for the current trace level. */ public boolean isEnabled(TraceLevel other) { return ordinal() >= other.ordinal(); } @@ -18384,7 +18384,7 @@ private void print(Tracer tracer, String msg, Object... params) { /** Utility class for printing internal debug statements. * @see CommandLine#tracer() - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public static final class Tracer { private PrintStream stream = System.err; private TraceLevel level = TraceLevel.lookup(System.getProperty("picocli.trace")); @@ -18427,7 +18427,7 @@ private Tracer() {} } /** Returns the {@code Tracer} used internally for printing internal debug statements. * @return the {@code Tracer} used internally for printing internal debug statements - * @since 4.7.4 */ + * @since 4.7.5-SNAPSHOT */ public static Tracer tracer() { // TRACER is a static variable. // Refresh to pick up changes to the system property after the CommandLine class was loaded. diff --git a/src/test/java/picocli/CommandLineTest.java b/src/test/java/picocli/CommandLineTest.java index f97bce350..00bc34aba 100644 --- a/src/test/java/picocli/CommandLineTest.java +++ b/src/test/java/picocli/CommandLineTest.java @@ -138,7 +138,7 @@ class App { } @Test public void testVersion() { - assertEquals("4.7.4", CommandLine.VERSION); + assertEquals("4.7.5-SNAPSHOT", CommandLine.VERSION); } @Test public void testArrayPositionalParametersAreReplacedNotAppendedTo() {