Skip to content

Changelog

All notable changes to this project will be documented in this file.

[0.1.0] - 2026-03-06

Initial release. Extracts shared framework-agnostic logic from django-apcore and flask-apcore into a standalone toolkit package.

Added

  • ScannedModule dataclass — canonical representation of a scanned endpoint
  • BaseScanner ABC with filter_modules(), deduplicate_ids(), infer_annotations_from_method(), and extract_docstring() utilities
  • YAMLWriter — generates .binding.yaml files for apcore.BindingLoader
  • PythonWriter — generates @module-decorated Python wrapper files
  • RegistryWriter — registers modules directly into apcore.Registry
  • to_markdown() — generic dict-to-Markdown conversion with depth control and table heuristics
  • flatten_pydantic_params() — flattens Pydantic model parameters into scalar kwargs for MCP tool invocation
  • resolve_target() — resolves module.path:qualname target strings
  • enrich_schema_descriptions() — merges docstring parameter descriptions into JSON Schema properties
  • annotations_to_dict() / module_to_dict() — serialization utilities
  • OpenAPI utilities: resolve_ref(), resolve_schema(), extract_input_schema(), extract_output_schema()
  • Output format factory via get_writer()
  • 150 tests with 94% code coverage

Dependencies

  • apcore >= 0.9.0
  • pydantic >= 2.0
  • PyYAML >= 6.0