Skip to content

Releases: RAprogramm/masterror

v0.5.14

20 Sep 11:51

Choose a tag to compare

Added

  • Prepared the derive input structures for future format_args! support by
    introducing display specification variants for templates with arguments and
    fmt = <path> handlers, along with FormatArgsSpec/FormatArg metadata
    scaffolding.

v0.5.13

20 Sep 11:51

Choose a tag to compare

Documentation

  • Documented the formatter trait helpers (TemplateFormatter::is_alternate,
    TemplateFormatter::from_kind, and TemplateFormatterKind::specifier/supports_alternate)
    across README variants and crate docs, including guidance on the extended
    formatter table and compatibility with thiserror v2.

v0.5.12

20 Sep 11:51

Choose a tag to compare

Tests

  • Added runtime assertions covering every derive formatter variant and
    validating lowercase versus uppercase rendering differences during error
    formatting.
  • Expanded the formatter trybuild suite with per-formatter success cases and
    new compile-fail fixtures for unsupported uppercase specifiers to guarantee
    diagnostics remain descriptive.

v0.5.11

20 Sep 11:51

Choose a tag to compare

Changed

  • Aligned the derive display generator with TemplateFormatterKind, invoking the
    appropriate core::fmt trait for every placeholder variant and preserving the
    default Display path when no formatter is provided, mirroring thiserror's
    behaviour.

v0.5.10

20 Sep 11:51

Choose a tag to compare

Changed

  • Template parser now recognises formatter traits even when alignment, sign or
    width flags precede the type specifier, constructing the matching
    TemplateFormatter variant and keeping alternate (#) detection aligned with
    thiserror.

Tests

  • Extended parser unit tests to cover complex formatter specifiers and
    additional malformed cases to guard diagnostic accuracy.

v0.5.9

20 Sep 11:51

Choose a tag to compare

Added

  • TemplateFormatterKind enumerating the formatter traits supported by
    #[error("...")], plus TemplateFormatter::from_kind/kind() helpers for
    constructing and inspecting placeholders programmatically.

Changed

  • Formatter parsing now routes through TemplateFormatterKind, ensuring lookup
    tables, is_alternate handling and downstream derives share the same
    canonical representation.

Documentation

  • Documented TemplateFormatterKind usage and the new inspection helpers
    across README variants.

v0.5.8

20 Sep 11:51

Choose a tag to compare

Changed

  • masterror::Error now infers sources named source and backtrace fields of
    type std::backtrace::Backtrace/Option<std::backtrace::Backtrace> even
    without explicit attributes, matching thiserror's ergonomics.

Tests

  • Expanded derive tests to cover implicit source/backtrace detection across
    structs and enums.

v0.5.7

20 Sep 11:50

Choose a tag to compare

Added

  • masterror::error::template module providing a parsed representation of
    #[error("...")] strings and a formatter hook for future custom derives.
  • Internal masterror-derive crate powering the native masterror::Error
    derive macro.
  • Template placeholders now accept the same formatter traits as thiserror
    (:?, :x, :X, :p, :b, :o, :e, :E) so existing derives keep
    compiling when hexadecimal, binary, pointer or exponential formatting is
    requested.

Changed

  • masterror::Error now uses the in-tree derive, removing the dependency on
    thiserror while keeping the same runtime behaviour and diagnostics.

Documentation

  • Documented formatter trait usage across README.md, README.ru.md and the
    masterror::error module, noting compatibility with thiserror v2 and
    demonstrating programmatic TemplateFormatter inspection.

v0.5.6

20 Sep 11:50

Choose a tag to compare

Tests

  • Added runtime coverage exercising every derive formatter variant (including
    case-sensitive formatters) and asserted the rendered output.
  • Added trybuild suites that compile successful formatter usage and verify the
    emitted diagnostics for unsupported specifiers.

v0.5.5

20 Sep 11:50

Choose a tag to compare

Fixed

  • Derive formatter generation now matches on every TemplateFormatter
    variant and calls the corresponding ::core::fmt trait (including the
    default Display path), mirroring thiserror's placeholder handling.