Skip to content

v0.2.0

Choose a tag to compare

@chaturv3di chaturv3di released this 27 May 23:32
· 30 commits to main since this release
f7a8763

Breaking Changes

  • Spec name validation: MetricSpec, SliceSpec, SegmentSpec names are now validated as SQL identifiers at load time. Invalid names (spaces, hyphens, dots, etc.) raise SpecValidationError instead of failing silently at query execution. Migration: rename any affected specs — the error message includes a suggested replacement.

  • SpecCache duplicate enforcement: from_yaml(), from_string(), add() now raise SpecValidationError when a spec with a duplicate name is loaded. Previously from_yaml() warned and overwrote; from_string() and add() silently kept the first. Migration: ensure all spec files have unique names per type.

  • AitaemConnectionError rename: ConnectionError has been renamed to AitaemConnectionError throughout the library to avoid shadowing Python's built-in ConnectionError. Migration: replace any except ConnectionError or from aitaem... import ConnectionError with AitaemConnectionError, now importable directly from aitaem.

Added

  • All symbols now importable directly from aitaem:
    • Spec types: MetricSpec, SliceSpec, SliceValue, SegmentSpec, SegmentValue
    • Constants and types: STANDARD_COLUMNS, PeriodType, VALID_PERIOD_TYPES
    • Connector: IbisConnector
    • All 11 exception classes
  • SpecCache.metrics, .slices, .segments — read-only MappingProxyType views for iterating loaded specs
  • MetricCompute.compute() period_type parameter now typed as PeriodType for IDE completions and static analysis

Fixed

  • README.md: corrected database= to path= in ConnectionManager.add_connection() example

For the full changelog see docs/changelog.md.