Skip to content

Releases: specta-rs/specta

v2.0.0-rc.17 - General upgrades

01 Aug 13:00
Compare
Choose a tag to compare
Pre-release

This release comes with a handful of small incremental improvements primarily targeted at the next release of Tauri Specta including:

  • specta-jsdoccrate for JSDoc exporting. This crate is still a work in progress.
  • Move function::fn_datatype and function::collect_functions from proc macros to macro_rules
  • Remove pub use datatype::* from the crates root. Imports must be updated to be from specta::datatype::... instead.
  • Merge specta_typescript::ExportConfig into specta_typescript::Typescript
  • Handle removing r# from the function name directly in Specta (previously we handled this at the Tauri Specta level)
  • Add aditional time types (#275) thanks @agasparovic

v2.0.0-rc.14 - Restructure

09 Jul 13:59
Compare
Choose a tag to compare
Pre-release

With this release we have undergone a complete restructure of the repository and many functionality that was previously in the core has been more out into external crates.

  • You must now enable the derive feature on specta to get the specta::Type macro.
  • specta::ts is now specta_typescript
  • specta::export has been moved to specta_util
  • DataTypeFrom is now in the unreleased specta-datatype-from crate

Note: v2.0.0-rc.15 was done quickly after due to a bug I missed in the macros.

v2.0.0-rc.13 - Handle `r#` escaping with `specta::command`

24 Jun 12:20
Compare
Choose a tag to compare

Changes:

  • Correctly handle r# escaping with specta::command - #250
  • Support kebab-case inflection - #239

v2.0.0-rc.12 - Fix bugs with enums

09 May 02:42
Compare
Choose a tag to compare
Pre-release

This release fixes a bug where the following type would cause Specta to crash:

#[derive(Type)]
#[serde(tag = "type", content = "data")]
pub enum SkippedFieldWithinVariant {
    A(#[serde(skip)] String),
    B(String),
}

v2.0.0-rc.10 - Fix bugs in function handling

30 Apr 07:01
Compare
Choose a tag to compare

Changes:

  • Empty collect_commands would throw error "unable to infer type for Vec".
  • collect_commands using a module path (Eg. some_module::function) would not work due to macro visibility

v2.0.0-rc.9 - Nit

02 Apr 15:10
Compare
Choose a tag to compare
v2.0.0-rc.9 - Nit Pre-release
Pre-release

Changes:

  • Rename functions module to function. So it's now specta::function::*.
  • Rename functions feature to function.

v2.0.0-rc.8 - Steady Steady

02 Apr 09:25
Compare
Choose a tag to compare
Pre-release

Changes:

  • Rename SpectaFunction, SpectaFunctionArg and SpectaFunctionResult to Function*
  • Drop tauri feature
  • Make FunctionArg public
  • Add Type implementation for Box<str>
  • Bump bevy and glam versions.
  • Drop Type::definition in favor of Type::inline(type_map, Generics::Definition)
  • Fix #196
  • Fix #205
  • Fix #202
  • Fix #201
  • Fix #191
  • Fix #198
  • Fix #189
  • Fix #194

Thanks to @0HyperCube, @bennoinbeta and @mawallace for contributing to this release!

2.0.0-rc.7 - General improvements

04 Dec 10:05
Compare
Choose a tag to compare
Pre-release

Fixes:

  • Fix internally tagged enums with certain children types - #174
  • serde_json::Value is now an enum of possible value - #176
  • Fix recursive types - #179
  • [T; N] is now a Typescript fixed-size tuple - 7039fba
  • Lock the version of Specta macros correctly. - #173
  • Lazily process #[specta(skip)] types - #167
  • Make transparent + skip work correctly together - #170

New Features:

Breaking Changes:

  • Remove Type::definition_generics function
  • Remove DefOpts
  • Change TypeMap from a type alias of a BTreeMap to a custom type.
  • Move specta::ts::prettier to specta::ts::formatters::prettier

2.0.0-rc.6 - Minor fixes

22 Oct 07:54
Compare
Choose a tag to compare
Pre-release

Fixes:

  • Fix regression in #[specta(skip)] handling leading to compilation errors
  • Fix incorrect Typescript from an enum in vector.

2.0.0-rc.5 - Fix compilation error

05 Oct 05:06
Compare
Choose a tag to compare
Pre-release

When compiling Specta with the typescript feature enabled but not the js_doc feature Specta would fail to compile. This is now fixed.