v0.2.0
Breaking Changes
-
Spec name validation:
MetricSpec,SliceSpec,SegmentSpecnames are now validated as SQL identifiers at load time. Invalid names (spaces, hyphens, dots, etc.) raiseSpecValidationErrorinstead 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 raiseSpecValidationErrorwhen a spec with a duplicate name is loaded. Previouslyfrom_yaml()warned and overwrote;from_string()andadd()silently kept the first. Migration: ensure all spec files have unique names per type. -
AitaemConnectionErrorrename:ConnectionErrorhas been renamed toAitaemConnectionErrorthroughout the library to avoid shadowing Python's built-inConnectionError. Migration: replace anyexcept ConnectionErrororfrom aitaem... import ConnectionErrorwithAitaemConnectionError, now importable directly fromaitaem.
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
- Spec types:
SpecCache.metrics,.slices,.segments— read-onlyMappingProxyTypeviews for iterating loaded specsMetricCompute.compute()period_typeparameter now typed asPeriodTypefor IDE completions and static analysis
Fixed
README.md: correcteddatabase=topath=inConnectionManager.add_connection()example
For the full changelog see docs/changelog.md.