Skip to content

refactor(schemas): make internal endpoint-schema surface unambiguous before 1.0 - #294

Merged
yeongseon merged 1 commit into
mainfrom
chore/schemas-291-drop-all
Aug 9, 2026
Merged

refactor(schemas): make internal endpoint-schema surface unambiguous before 1.0#294
yeongseon merged 1 commit into
mainfrom
chore/schemas-291-drop-all

Conversation

@yeongseon

Copy link
Copy Markdown
Owner

Summary

Removes the explicit __all__ from azure_functions_validation/schemas/__init__.py (Option B from #291). The subpackage is documented as internal, but declaring __all__ made its loader symbols (ENDPOINT_METADATA_VERSION, load_endpoint_schema, endpoint_schema_sha256, assert_defs_present_if_ref_used, ...) read as a supported public API — an import path we would be reluctant to break at 1.0.

Why Option B (not the rename)

Keeping the schemas module name avoids churning the importlib.resources package-data paths that resolve the shipped endpoint.schema.json / .sha256. Removing __all__ is sufficient to stop the surface reading as public.

Verification

  • Top-level azure_functions_validation/__init__.py does not re-export any of these symbols (confirmed); test_public_api.py stays green.
  • Package-data loading still resolves the shipped schema (no rename).
  • make check-all passes; coverage stays >= 95%.
  • No runtime or payload change; ENDPOINT_METADATA_VERSION unchanged.

Closes #291


Supersedes #293 (re-created under a chore/ branch to satisfy the branch-naming gate; content unchanged).

The schemas subpackage is internal (its docstring and #288 establish the JSON
Schema as an internal conformance artifact), but its explicit __all__ made the
loader symbols read as a supported public API. Remove __all__ (Option B) so
nothing signals a public export path we would be reluctant to break at 1.0.

Keeps the module name to avoid churning importlib.resources package-data paths.
Top-level azure_functions_validation.__init__ does not re-export these symbols;
test_public_api stays green. No runtime or payload change.

Closes #291
@yeongseon
yeongseon merged commit 98aa793 into main Aug 9, 2026
23 of 24 checks passed
@yeongseon
yeongseon deleted the chore/schemas-291-drop-all branch August 9, 2026 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refactor(schemas): make internal endpoint-schema surface unambiguous before 1.0

2 participants