Releases: icerpc/slicec
Release list
Slicec 0.4.0
What's Changed
This is a major release which changes the model of slicec from being a pure library, to a binary executable (#705).
Instead of writing executables which use the slicec library to generate code, you now call the slicec executable
and supply code-generator plugins to it using the --generator (-G for short) command-line option (#752, #767).
Run cargo run -- --help for a full explanation of the new command-line interface.
Enhancements
- Duplicate diagnostic messages are now filtered out (#778).
Breaking
- Dropped
Slice1support.slicecnow only accepts what were formerly calledSlice2-mode files. @linkand@seetags in doc-comments can no longer reference parameters or return members (#757).- Removed all helper functions that were only used by downstream crates, and not
slicecitself (#751, #753, #756).
Changed
- Changed the API for reporting and printing diagnostics, and added a new
Infodiagnostic level (#770, #772, #774). - Changed the error codes to account for many errors which were removed (#766).
by @InsertCreativityHere, @externl, and @pepone
Full Changelog: v0.3.3...slicec-0.4.0
Crate: https://crates.io/crates/slicec/0.4.0
Docs: https://docs.icerpc.dev/
v0.3.3
What's Changed
Changed
- Updated dependencies and bumped MSRV to 1.82 (#704).
Full Changelog: v0.3.2...v0.3.3
Crate: https://crates.io/crates/slicec/0.3.3
Docs: https://docs.icerpc.dev/
v0.3.2
What's Changed
Added
- Added support for computing source-hashes of Slice files, for tools to utilize (#696).
Fixed
- Fixed redefinition errors on containers triggering false-positives for their contents (#700).
Changed
- The compiler no longer emits a build summary message when using JSON formatted output (#702).
Full Changelog: v0.3.1...v0.3.2
Crate: https://crates.io/crates/slicec/0.3.2
Docs: https://docs.icerpc.dev/
v0.3.1
What's Changed
Enhancements
- Input files are now loaded and parsed in the order they're passed (#694).
Full Changelog: v0.3.0...v0.3.1
Crate: https://crates.io/crates/slicec/0.3.1
Docs: https://docs.icerpc.dev/
v0.3.0
What's Changed
Added
- Added a new built-in generic type:
Result<S, F>(#687). - Added support for compact enums (#686).
- Added support for specifying explicit discriminants on enumerators with fields (#688).
Enhancements
- Allow
@paramtags to be used for documenting enumerator fields. - Implemented the
Defaulttrait forAstandCompilationState. - Implemented the
Hashtrait forSliceOptionsandDiagnosticFormat.
Fixed
- Improved the cycle detection logic to correctly check fields in enumerators (#689).
Breaking
- Enums with fields can no longer be used as dictionary keys (#685).
CompilationStateno longer implementsSend(so we have greater freedom to evolve it).
Changes
- The files
code_gen_util.rsandcode_block.rswere moved out of this crate (intoslicec-cs).
Full Changelog: v0.2.1...v0.3.0
Crate: https://crates.io/crates/slicec/0.3.0
Docs: https://docs.icerpc.dev/
v0.2.1
What's Changed
Enhancements
- Added default no-op implementations to
Visitorto make it easier to implement (#678).
Fixed
- Fixed crash caused by some syntax errors when the parser expected EOL (#677).
Full Changelog: v0.2.0...v0.2.1
Crate: https://crates.io/crates/slicec/0.2.1
Docs: https://docs.icerpc.dev/
v0.2.0
What's Changed
Added
- Added support for enums with associated fields (#664).
- Added support for specifying scoped exceptions in
@throwsdoc comment tags (#662). - Added
is_withinto check if aLocationis within aSpan(#668).
Enhancements
- Added improve location tracking to messages and tags in doc comments (#670).
- Improved the
Visitorto automatically skip unpatched type references by @externl (#672). - Implemented the
SendandSynctrait for some of the compiler's types.
Fixed
- Fixed crash caused by compiling a Slice file with no module declaration.
Breaking
- Interfaces can no longer be used a type in Slice definitions (#675).
- Removed unused
is_numeric_or_boolfunction fromPrimitive.
Full Changelog: v0.1.1...v0.2.0
Crate: https://crates.io/crates/slicec/0.2.0
Docs: https://docs.icerpc.dev/
v0.1.1
What's Changed
- Improve Escape Sequences in String Literals by @InsertCreativityHere in #659
- Document the MSRV in our Cargo file.
Full Changelog: v0.1.0...v0.1.1
Crate: https://crates.io/crates/slicec/0.1.1
Docs: https://docs.icerpc.dev/
0.1.0
Initial public release
Crate: https://crates.io/crates/slicec/0.1.0
Docs: https://docs.icerpc.dev