- Add ShellConversionServiceSupplier interface to define
shell spesific ConversionService so that we don't
get trouble with other services in boot.
- Fixes#435
- New configurations to CommandRegistration
- Re-using exit code concepts from boot
- Handling exit codes only in non-interactive mode
- Adding e2e commands and tests for better coverage
- Fixes#431
- Change how errors are printed for interactive
vs non-interactive mode.
- This now changes behaviour so that stacktrace is printed
if non-interactive mode is active so that user has a change
to see the full error.
- Fixes#427
- Change help command output to get templated using
model classes.
- Remove things around ParameterDescription as those are
replaced with template classes.
- Fixes for native configs.
- For now availability and aliases are removed from
help to get back in better form.
- Aliases has been partly introduced to structure.
- Fixes#422
- Change parser to user conversion service to attempt
conversion from a default value to an expected type.
- Make more use of shellConversionService bean so that
we use the one which can be customized.
- UserConfigPathProvider interface to provid "user-level"
config directory which can be used within a shell.
- New options which can be used to configure behaviour.
spring.shell.history.enabled
spring.shell.history.name
spring.shell.config.location
spring.shell.config.env
- Fixes#417
- Tweak flow framework so that single item selector
can be configured with a default item which is then
"exposed" automatically so that user can just hit enter.
- Fixes#414
- Now using qualifier for one we expect which should
work if some other services are in a context.
- Properly use shellConversionService in defined
MethodArgumentResolver beans.
- Fixes#400
- Fix native configs for win in sample app.
- Integrate spring-native with samples app.
- Tweak e2e workflow to upload artifacts and some other generic changes.
- Relates #401
- Focus of these changes are to introduce a new command system based on
real registrations (new way) instead of continuously (old way) resolve
methods and its parameters via reflection.
- There's a lot of changes as this resolution via reflection had its
hooks almost everywhere and thus most changes are just refactorings.
- Order to understand real changes I'd start to look classes under
`org.springframework.shell.command` package as it defines new registration,
catalog and parser classes. Also samples contain new classes to demonstrate
new functionality.
- Fixes#380