You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 362c38c
Browse filesBrowse the repository at this point in the historyBrowse files
- Consolidate CLI SDK operation extraction in openapi_client.cli_sdk.emit.extract_cli_operations and share it with cli_sdk_cdd, emitting Client(base_url=os.environ.get('API_BASE_URL', ...)) and supporting requestBody (--body) and non-primitive argument types.
- Enhance CLIExtractor in openapi_client.cli_sdk.parse to synthesize PathItem, Operation, Parameter, and RequestBody nodes when extracting from standalone CLI scripts where spec.paths starts empty.
- Implement SQLAlchemyExtractor and extract_sqlalchemy_column in openapi_client.sqlalchemy_cdd.parse to parse declarative Column/mapped_column AST assignments into OpenAPI component schemas and wire models/ extraction into sync_dir(--truth sqlalchemy) and generate_to_openapi.
- Break top-level circular imports between cli, sdk, sync, servers.json_rpc, and servers.mcp_stdio; route MCP stdio tools/call through mcp.execute_tool with normalized argument aliases and add sync_dir to mcp.get_tools().
- Standardize OpenAPI 3.2.0 HTTP_METHODS (including options, head, trace, query) and PathItem.additionalOperations across emitters and AST extractors, and add deterministic PoolManager lifecycle methods (close, __enter__, __exit__) to generated Client classes.
- Introduce build_cst_module to normalize LibCST EmptyLine nodes into statement leading_lines/footer, add PEP 561 py.typed marker, and achieve zero mypy --strict errors across all 99 source and test files.
- Replace tautological and mock-only assertions in test/ and tests/ with behavioral round-trip verification while maintaining 100.00% statement/branch test coverage and 100.00% docstring/argument coverage.
0 commit comments