Skip to content

Releases: contextgeneric/cgp

v0.3.1

16 Jan 16:31
19c239d
Compare
Choose a tag to compare
  • Update Rust MSRV to v1.84 - #58

  • Add HasAsyncErrorType to prelude - #59

  • Add CanRaiseAsyncError and CanWrapAsyncError to cgp-error and prelude - #60

v0.3.0

08 Jan 21:20
fa0e457
Compare
Choose a tag to compare

More details about this release is covered by the update blogpost.

Changelog

  • Introduce Accessor Component Macros - #56

    • Introduce #[cgp_getter] attribute macro that extends #[cgp_component] and implement
      UseFields and UseField for accessor traits.
    • Introduce #[cgp_auto_getter] attribute macro for deriving accessor traits with
      blanket implementations that use HasField directly.
  • Introduce cgp_type! macro for defining simple abstract CGP types - #55

    • Use cgp_type! to derive HasErrorType and HasRuntimeType.
  • Implement ErrorWrapper on generic ErrorRaiser providers - #54

    • Implement ErrorWrapper for the following providers: DebugError, DisplayError,
      DebugAnyhowError, DisplayAnyhowError, RaiseAnyhowError,
      DebugEyreError, DisplayEyreError, RaiseEyreError,
      DebugBoxedStdError, DisplayBoxedStdError.
  • Reorganize crate exports - #53

    • Move generic error providers to the cgp-error-extra crate.
    • Add an alloc feature to cgp-error-extra to enable use of alloc in providers.
    • Make private the sub-modules inside CGP crates.
    • Explicitly export module items instead of using *.
  • Move cgp-inner to cgp-extra - #51

    • Remove re-export of cgp-inner from cgp-core.
    • Re-export cgp-inner and cgp-runtime from cgp-extra.
  • Introduce cgp-runtime crate - #50

    • Introduce the HasRuntimeType and HasRuntime traits.
    • Introduce HasAsyncRuntimeType trait used for adding Async constraint to HasRuntimeType::Error.
  • Error crates refactoring - #48

    • Remove Async trait bound from HasErrorType::Error.
    • Introduce HasAsyncErrorType trait used for adding Async constraint to HasErrorType::Error.
    • Introduce CanWrapError trait.
    • Introduce generic ErrorRaiser providers in cgp-error.
    • Rename and reoganize constructs in cgp-error-eyre and cgp-error-std.
    • Introduce cgp-error-anyhow crate.
  • Decouple component and field macro crates from the library crates - #47

    • Remove cgp-component-macro crate from being a dependency of cgp-component.
    • Remove cgp-field-macro crate from being a dependency of cgp-field.