<#3732 feat(mappers): Expose UUID expression helpe...
# meltano-repo-activity
g
#3732 feat(mappers): Expose UUID expression helpers Pull request opened by AG0708 Summary • add
uuid4()
for JSON-safe UUID generation in stream map expressions • add
check_uuid(value, version=None)
for non-raising UUID validation, including optional version checks • infer correct string/boolean output schemas and document the nondeterministic generation behavior This follows the maintainer guidance on #3694: it intentionally does not expose
uuid.UUID
or depend on the unresolved
try_cast
proposal in #3693. Validation •
uv run pytest -q
— 851 passed, 388 deselected, 1 expected xfail, 21 subtests passed •
uvx pre-commit run --files singer_sdk/mapper.py tests/core/test_mapper.py docs/stream_maps.md
— passed •
.venv/bin/mypy singer_sdk/mapper.py
— passed •
.venv/bin/ty check singer_sdk/mapper.py
— passed •
.venv/bin/sphinx-build docs build -W
— passed with warnings treated as errors Closes #3694 Summary by Sourcery Expose UUID generation and validation helpers for stream map expressions. New Features: • Expose
uuid4()
for generating JSON-safe random UUID strings in stream map expressions. • Expose
check_uuid()
for non-raising UUID validation with optional version checks. Enhancements: • Infer string and boolean output schemas for the new UUID expression helpers. • Document the nondeterministic behavior and suitability limitations of generated UUIDs. Documentation: • Document the UUID helpers and warn that generated values are not stable across syncs. Tests: • Add coverage for UUID generation, validation, version checks, JSON serialization, and inferred schemas. meltano/sdk