Skip to content

Releases: highsidelabs/saloon-sdk-generator

v2.1.3

04 Nov 16:47
Compare
Choose a tag to compare

Changed

  • Remove readonly from DTO properties

Fixed

  • Handle 204 response types in OpenApiNormalizer

Full Changelog: v2.1.2...v2.1.3

v2.1.2

30 Sep 16:47
Compare
Choose a tag to compare

Added

  • Support for header parameters

Fixed

  • Avoid trying to compare schema items in non-array schemas when using Schema::equalsOpenApiSchema()
  • Properly deserialize complex array responses (where the response is an array of objects)

Changed

  • Switch from ignoredBodyParams and ignoredQueryParams Config arguments to a single ignoredParams argument with header, query, and body sub-arrays
  • Simplified the format of complex array parameter definitions

Full Changelog: v2.1.1...v2.1.2

v2.1.1

21 Jun 05:25
Compare
Choose a tag to compare

Fixed

  • Make sure to serialize request bodies that are arrays of DTOs (rather than scalar arrays)
  • Add null checks on Schema::required when performing OpenAPI schema comparisons

Full Changelog: v2.1.0...v2.1.1

v2.1.0

19 Jun 21:58
Compare
Choose a tag to compare

What's Changed

  • Include the body content type in Schema by @dpash in #3
  • Use DateTimeInterface for date parameters by @dpash in #2
  • Include warning comment in autogenerated files by @dpash in #5
  • Fix caching of array schemas when normalizing by @dpash in #6
  • Check for circular references when parsing schemas by @jlevers in #8

Full Changelog: 2.0.0...v2.1.0

v2.0.0

27 Apr 04:54
Compare
Choose a tag to compare

SDKs generated using this library will no longer be dependent on the library itself to run. This removes a lot of potential dependency issues, and gives the end user more customizability in the generation process, because the all parts of the generated library can be modified via the generator classes themselves. To that end:

  • Contracts, enums, and traits that are used in the generated library are copied into the generated library itself with the correct namespace, and placed in the src/Contracts, src/Enums, and src/Traits folders, respectively. The SupportingFilesGenerator class (which can be overridden via the Config parameters).
  • The base DTO/Request/Response/Connector classes are now generated, instead of being hardcoded into this library. They are created with the BaseDtoGenerator, BaseRequestGenerator, BaseResponseGenerator, and BaseConnectorGenerator generators, and can also be overridden via the Config class's parameters.
  • Namespace suffixes are consolidated into a single namespaceSuffixes parameter instead of being separated, and helper Config methods make it easier to retrieve the full namespace to a particular resource type.
  • The baseFilesNamespace makes it possible to put the base classes and supporting files into a separate namespace/folder from the SDK-specific classes, which is useful when generating SDKs that have multiple schema files that are generated into separate namespaces.

The dependencies have also been upgraded to be compatible with Laravel 11/Symfony 7.

v1.0.0

26 Mar 16:33
Compare
Choose a tag to compare

Initial release! Planning to merge this fork upstream at some point, but for now I need it released on its own since it's a dependency of jlevers/selling-partner-api.