Skip to content

Improve API Consistency and Ergonomics

Compare
Choose a tag to compare
@AttilaTheFun AttilaTheFun released this 12 Jul 17:50
· 8 commits to master since this release

Changes in this release:

  • Added Tag type and 'tags' definitions to Swagger object
  • Added ExternalDocumentation type to Schema, Operation, Swagger and Tag
  • Improved + consolidated reference resolution. Fixed a bug with cyclic references.
  • Separated Schema into Schema and SchemaType, the latter being an enum.
  • Separated Items into Items and ItemsType, the latter being an enum.
  • Extracted metadata from the enum cases into Schema and Items respectively.
  • VersionTransform is now a struct for better consistency in the API.
  • New 'multi' case for CollectionType, used for query strings "foo=a&foo=b"
  • Added / cleaned up security requirements.
  • Fixed several URL mappings that were likely failing (and untested) before.
  • Removed Reference and Pointer from the public API - they are only used during building.
  • Added more granularity to DecodingError, including a localized description, file and line numbers.
  • Made top-level parameters, definitions, and responses into dictionaries (instead of structures) for better ergonomics.

Many thanks to @n8chur and @yonaskolb for all of their feedback and contributions!