Skip to content

Specta v3 #467

Description

@oscartbeaumont

Anything that isn't going to make it into v2. I also wouldn't hold your breath for any of this. These are ideas and they aren't making it into v2 likely beause it's not clear if they are actually possible, and even if they are if it would make any sense.

Ideas:

  • Sqlx support for their anonymous structs. This would need to exist upstream I think it would just require Specta to get really big.
  • Drop specta::function::* and specta::specta. I wish I never stablised this but it's relied on by Tauri and we can no longer remove it cleanly (bring back Drop function from core #432)
  • Invesigate zero-allocation DataType layer. This would likely require the removal or rethinking of Types as it currently prevents things being static as calling T::definition(types) on a dependant type has side-effects on Types which isn't 'static.
  • Drop reexport for Types as TypeMap in crate root which is relied on by Tauri so we were stuck with it for v2
  • Figure out a way of handling crates which use Rust features to change Serialize/Deserialize implementation. I would argue this is a misuse of crate-features as they are intended to be "addative" (due to how Cargo enables them for all users of the crate in the dependency tree) but still would be nice to handle them.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backburnerIssues that likely aren't going to be supported anytime soon but would be cool.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions