π Enhancements
- Improve default parser to accept boolean options without values #1304
- Add alias for description attribute in Command annotation #1300
- Improve argument parsing syntax for commands without options #1287
- Provide completion from enumeration values if an option is of enum type #1282
- How to run a shell in an integration test in spring shell 4.x? #1274
π Bug Fixes
- Revert script command to accept the script file as an option rather than an argument #1301
- Quoting of option values is broken #1291
- Quit builtin command is not autocompleted #1290
- Remove Spring Boot specific documentation from Spring Shell documentation #1289
- Restore version command result as in v3 #1286
- Exception handling in interactive mode does not report cause #1285
- Mixup of Option short and long name #1284
- Missing Spring Boot configuration for debug mode #1280
- Alias commands are not coloured correctly after update to version 4.0.0 #1277
- java.lang.ClassNotFoundException: org.jline.reader.History in SB 4 and Shell 4.0 #1276
- String option is empty string by default and not null #1273
- Built in help for single commands is not working anymore #1271
- Output is not printed to the shell when executing commands from a script #1270
- Command output not available in non-interactive mode in 4.0 #1268
- Options with primitive types fail in 4.0 without explicit value #1262
- Commands fail in 4.0 if no short name or long name are specified #1261
- NullPointerException is thrown when a script file contains empty lines at the end of file #1257
- Completion does not work correctly in some cases, and display text is not used in candidates #1255
π Documentation
- Add breaking change to 4.0 migration guide: Non-interactive mode is not the default anymore #1264
- Add breaking change to 4.0 migration guide: GraalVM not supported for annotated commands #1260
π Dependency updates
- Reactor 3.8.2
- Spring Framework 7.0.3
- Spring Boot 4.0.2
β€οΈ Contributors
Many thanks to all contributors who worked on this release! @czpilar @piotrooo @ThomasVitale
Full Changelog: v4.0.0...v4.0.1