ExcelAlchemy 2.2.3
ExcelAlchemy 2.2.3
ExcelAlchemy 2.2.3 continues the stable 2.x line with a focused validation fix in the Pydantic adapter layer.
This release keeps the public import/export workflow API stable while restoring the intended failure mode for unsupported annotated declarations.
Highlights
- unsupported
Annotated[..., Field(...), ExcelMeta(...)]declarations now fail with the intendedProgrammaticError - codec resolution in the Pydantic adapter is stricter and more explicit
- the validation fix is protected by an integration regression test
What changed
Validation fix
- restored explicit
ProgrammaticErrorhandling for unsupported annotated declarations that use native Python types instead ofExcelFieldCodecsubclasses - tightened codec resolution in the Pydantic adapter so unsupported declarations fail at the codec resolution boundary instead of being treated as valid runtime metadata
- preserved the existing behavior for valid
ExcelFieldCodecandCompositeExcelFieldCodecdeclarations
Regression coverage
- added an integration regression test for unsupported annotated declarations
- verified that native Python annotations paired with
ExcelMeta(...)do not silently enter the workbook schema path
Compatibility notes
- no public import or export workflow API was removed in this release
- valid codec-based declarations continue to work unchanged
- unsupported native annotations with
ExcelMeta(...)now fail early with the intendedProgrammaticError
Verification
uv run ruff check src/excelalchemy/helper/pydantic.py tests/integration/test_excelalchemy_workflows.py
uv run pyright
uv run pytest tests/integration/test_excelalchemy_workflows.py -q
uv build
uvx twine check dist/*