Spring Shell 3 v4.0.3 Release Notes
Release Date: 2026-06-11 // 4 days ago-
🛠 🐞 Bug Fixes
- Tab completion broken on JDK 25 after upgading jline to 3.30.9 #1343
- 📦 ShellInputProvider not usable outside its package #1342
- Incorrect candidate search scope #1351
- 👍 DevTools AutoReload Support #1224
- Autocompletion does not work correctly for arguments #1346
- Custom "Converters" not working with @Command-Annotations #1352
- Missing runtime hints for stg resources in JLineRuntimeHints when using native compilation #1358
- Missing space between non required options in help synopsis #1357
- Missing argument information in the output of the help command #1344
🛠️ Tasks
- 🛠 Fix build errors and warnings #1183
⚡️ 🆙 Dependency updates
- Reactor 3.8.6
- Spring Framework 7.0.8
- Spring Boot: 4.0.7
- JLine: 3.30.13
❤️ Contributors
🚀 Thank you to all the contributors who worked on this release:
Full Changelog : v4.0.2...v4.0.3
Previous changes from v4.0.2
-
⭐ New Features
- ➕ Add support to group commands at class level as in v3 #1266
- ➕ Add support to test commands which ask for input with Spring Shell 4 #1292
- ➕ Add support to specify argument arity for multi-valued input #1263
- Sort command names in help output #1279
🛠 🐞 Bug Fixes
- Exit code is always 0 for non-interactive runner #1339
- Missing help for built-in commands #1335
- Boolean flags not working without value in sub-commands #1331
- Declaring an ApplicationRunner causes Spring Shell application to close immediately #1330
- Spring profiles not honoured when registering commands #1328
- ✅ Command registration differs with
@ActiveProfilesin tests vs jar spring.profiles.active= (4.0.1) #1327 - Command not registered if
@Profile(..) is used and activated #1325 - 🛠 Fix possible NPE in InteractiveShellRunner #1320
- Script execution stops on line with comment (in 4.x) #1316
- 🖨 Empty line in script prints all available commands (in 4.0.1) #1315
- 0️⃣ Default option int value is ignored (in 4.0.1) #1314
- NonInteractiveShellRunner v3 -> v4 Migration Issue #1312
- Boolean option without value does not properly work with argument #1309
- Annotated commands are not registered in GraalVM native binary #1229
- Table Rendering Issue with CJK Characters #1223
📚 📔 Documentation
- 📚 End-to-end testing documentation can be improved #1338
- 👻 Exception handling changes in 4.0 are not documented in migration guide #1265
⚡️ 🆙 Dependency updates
- Reactor 3.8.5
- Spring Framework 7.0.7
- Spring Boot: 4.0.6
- jLine: 3.30.9
❤️ Contributors
🚀 Thank you to all the contributors who worked on this release: