Changelog
Release history for Crest.
A summary of features and significant enhancements in each release.
0.41
- Multi-level command groups.
@Command("quote line-item")on a class creates nested groups to any depth. Class and method paths are concatenated following the JAX-RS@Pathmodel. Intermediate groups are auto-created. Multiple classes can contribute to the same deep group. - Constructor validation improvements.
0.40
- Hugo documentation site.
- Crest Maven Plugin can now create executable jars.
@Editorsupport in table output.- Show negated boolean options in help.
- Class include/exclude filtering for command loading.
0.39
@Commanddescriptions from Javadoc, extracted at compile time by annotation processor.
0.38
- Split-class command groups. Multiple classes can contribute sub-commands to the same
@Commandgroup.
0.37
@GlobalOptionsannotation for flags that apply across all commands.- Global options support in bash completion.
0.36
- Pluggable bean provider via
TargetProviderSPI for CDI and other DI frameworks.
0.35
@Editorsupport loaded fromLoaderand used in help output.
0.34
- Help output matches method signature order.
- Fix help for overloaded commands.
0.33
- CSV and TSV table output no longer pads or wraps rows.
0.32
- Remove deprecated
Main.systemDefaults()builder method.
0.31
- Command name and version in help from
Main.builder()orMANIFEST.MF. - Convenience
--csvand--tsvflags for table output.
0.30
Main.builder()API for programmatic CLI construction.
0.29
- CSV table format via
@Table.
0.28
- TSV table format via
@Table.
0.27
- Fix regression with object-based tables.
- Map key escaping and field name escaping for tables.
0.26
- Map support in table formatting.
0.25
- Programmatic table builder API.
0.24
- Case-insensitive field/column names in tables.
0.23
- Print help when
@Exit(help=true)is set on exceptions.
0.22
- Allow commands to set table options.
0.21
- Allow commands to set table options at runtime.
0.20
- Prefer
@Optionsconstructor with Crest annotations.
0.19
- Javadoc fallback for help text.
- Archetype fixes.
0.18
@Tableannotation for automatic table formatting of return values.- Table border styles, headers, field selection, sorting, and word wrapping.
Streamreturn type support.
0.17
- CDI-style custom interceptor annotations via
@CrestInterceptor. - GraalVM native image support via Apache Arthur extension.
0.16
- Windows compatibility fixes.
- Dependency updates (ASM 9, JUnit 4.13.1).
0.15
@Exitexceptions control reporting. Help is only printed when requested.
0.14
- Table output from
String[][]return values with configurable borders. - Man page piped to
less. - Auto-detect terminal width.
0.13
- Improved exception handling for all return types.
0.12
- Bash completion script generation.
Streamreturn type support.
0.11
@DefaultMappingmade repeatable.- Upgrade to Java 8 compilation.
0.10
- System property and environment variable interpolation for defaults.
- Nullable
@Optionssupport. - Varargs with
@In/@Outstreams.
0.9
@Option(description)for inline option descriptions.
0.8
- Bean validation fixes.
- Ctrl+C handling in CLI.
0.7
- Bean Validation 1.1 support.
- Interactive CLI with history, clear, and alias support.
0.6
- Command interceptors for cross-cutting concerns like security.
0.5
- Crest Maven Plugin for compile-time command discovery.
@Defaultfor prefixed bean parameters.@In/@Out/@Errstream injection.
0.4
@Exitannotation for exception exit codes.Iterablereturn type support.
0.3
- Maven archetype for quick project setup.