Skip to content

v0.21.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 12:14
· 113 commits to main since this release

What's Changed

Other Changes

  • refactor(spec): decouple spec generation from the Azure Functions SDK by @yeongseon in #329
  • refactor(discovery): funnel Azure Functions SDK access through an adapter by @yeongseon in #330
  • feat(cli): discover endpoint-metadata routes via module:variable by @yeongseon in #331
  • test(sdk): pin adapter-boundary SDK compatibility contract and guards by @yeongseon in #332
  • test(bridge): cover additive endpoint 422 response independently of producers by @yeongseon in #333
  • fix(adapter): skip unbuildable functions during discovery by @yeongseon in #338
  • docs(bridge): drop canonical/shared-contract framing in endpoint terminology by @yeongseon in #340
  • docs(readme): sync translated READMEs with CLI --app discovery and SDK Compatibility by @yeongseon in #341
  • docs(extending): add endpoint metadata producer guide by @yeongseon in #342
  • fix(discovery): preserve all-method semantics when HTTP methods are unspecified by @yeongseon in #339
  • feat(spec): surface structured spec warnings + --fail-on-warnings exit code by @yeongseon in #343
  • fix(spec): isolate report warnings to injected registry by @yeongseon in #348
  • fix(cli): fail --fail-on-warnings before writing output by @yeongseon in #349
  • fix(spec): scope all-method expansion to routes with binding evidence by @yeongseon in #350
  • feat(warnings): surface skipped unbuildable functions as a discovery warning by @yeongseon in #351
  • fix(warnings): carry reason, dedupe, and harden discovery-skipped warning by @yeongseon in #355
  • fix(cli): move --fail-on-warnings gate after empty-paths hint by @yeongseon in #356
  • fix(spec): expand all-methods for @openapi below @app.route in recommended order by @yeongseon in #357
  • fix(discovery): reconcile HTTP method for @openapi below @app.route by @yeongseon in #359
  • fix(bridge): preserve binding route when exploding @openapi below @app.route by @yeongseon in #365
  • fix(bridge): infer route+method for plain @openapi and flag binding mismatch by @yeongseon in #366
  • fix(bridge): resolve one-to-many _function_id per method on re-scan by @yeongseon in #369
  • fix(bridge): flag method/binding mismatch for validation-carrying handlers by @yeongseon in #370
  • refactor(bridge): binding-first invariant resolution model for discovery by @yeongseon in #372
  • fix(discovery): unwrap FunctionApp-wrapping containers and warn on empty scans by @yeongseon in #376
  • feat(spec): opt-in hoisting of flat schemas into components (#375) by @yeongseon in #377
  • fix(api): propagate flat-schema hoisting option across spec output APIs by @yeongseon in #382
  • fix(schema): make hoisted component names JSON-Pointer safe and hash strictly by @yeongseon in #383
  • fix(warnings): scope empty-discovery reason to the selected application object by @yeongseon in #384
  • fix(warnings): emit DUPLICATE_OPERATION as a structured warning by @yeongseon in #387
  • refactor: opt-in app-scoped registry isolation (#381) by @yeongseon in #388
  • fix(bridge): make isolated re-scan idempotent by seeding on function id by @yeongseon in #390
  • fix(api): export OpenAPIRegistry and correct _validate_method docstring by @yeongseon in #398
  • fix(schema): make component names OpenAPI-name-safe by @yeongseon in #399
  • fix(warnings): scope registry diagnostics to the current generation by @yeongseon in #400
  • fix(registry): distinguish dynamically-created handlers with identical qualnames by @yeongseon in #401
  • docs(decorator): document last-writer-wins for register_openapi_metadata by @yeongseon in #402
  • fix(cli): fail closed when --isolate-app cannot be honored by @yeongseon in #403
  • fix(warnings): correct clear_diagnostics docstring on diagnostic lifecycle by @yeongseon in #405

Full Changelog: v0.20.0...v0.21.0