All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for params being passed in the header
- Support for
type : null
- Support for
const : <value>
- Documentation for generated types. Leonardo Taglialegne
- A new record type for generated endpoints. Leonardo Taglialegne
- This allows for incorporating with your own custom HTTP approach.
- Support for multiple servers as a CLI argument. Leonardo Taglialegne
- Support for overriding portions of an OAS with the
--overrides
CLI argument. Leonardo Taglialegne- Support for writing the overridden OAS to a file. Leonardo Taglialegne
- Support for
date
anddate-time
types. Leonardo Taglialegne- If your OAS has these types, you'll need these additional dependencies:
- wolfadex/elm-rfc3339
- This is the core new requirement as JSON Schema
date
anddate-time
are in RFC-3339 format
- This is the core new requirement as JSON Schema
- justinmimbs/time-extra
- justinmimbs/date
- elm/time
- elm/parser
- wolfadex/elm-rfc3339
- If your OAS has these types, you'll need these additional dependencies:
- General documentation cleanup. Leonardo Taglialegne
- Improved handling of bytes. Leonardo Taglialegne
- When there's a single error, don't define a custom type for it. Leonardo Taglialegne
- Enums are now custom types not
String
s. Leonardo Taglialegne - Improved errors for Swagger files. Leonardo Taglialegne
- Decoding a
String
as aString
and not as JSON. ✨ Leonardo Taglialegne
- Support for multiple servers. ✨ Leonardo Taglialegne
- Support for query based API keys. ✨ Leonardo Taglialegne
- Support for generating
lamdera/program-test
Effect.Http
requests. ✨ Leonardo Taglialegne - Support for enums.
- How the various effect types are generated. ✨ Leonardo Taglialegne
- Now generates multiple
Api.*
modules when generating effects for multiple packages. ✨ Leonardo Taglialegne- This is to prevent with name collisions as well as horrible naming.
- Fix for URL builder generation. ✨ Leonardo Taglialegne
- Fixed the CLI help doc for effect types, a couple values were reversed.
- Support for API Keys in auth
- The new option
--effect-types
for determining which http effect types are generated- Support for generating elm-pages BackendTask.Http requests
- The new option
--server
for being able to pass in a server URL to be used in the generated requests
- Now generates 4 files instead of 2:
<namespace>/Api.elm
,<namespace>/Json.elm
, and<namespace>/Types.elm
which correspond to the OAS directlyOpenApi/Common.elm
which can be shared across all generated SDKs
- Support for converting Swagger docs to Open API files, resolves issue #47
- Print status of various steps of the process
✓ Read OAS from ./example/realworld-conduit.yaml ✓ Parse OAS ✓ Generate Elm modules ✓ Format with elm-format ✓ Write to disk
- Issue #86, some response names start with the status code
- Included
elm/url
in the possible dependencies list. ✨ James Robb
- Now generates 2 files:
<namespace>/Api.elm
and<namespace>/OpenApi.elm
, which resolves issue #81
- The risky version of requests, to resolve issue #71
- Improved the success message to use links to the generated files &necessary Elm dependencies, and list elm/bytes as a possible dependency
- Some resopnse names could be status codes, they now generate as
statusCode<number>
- Issue #72, where URLs would end with a trailing
/
when they shouldn't - Names (like this in the BIMcloud API) can start with a
$
prefix, make them Elm compliant - Issue #65, not all paths define error responses
- Improved accesing JSON content to included vendored JSON. ✨ James Robb
- Custom error handling: now generates a custom error type for each endpoint that has a non-2xx responses.
- Post generation notes: after generating the SDK, a message will be displayed with additional dependencies to install. ✨ James Robb
- Warnings are now grouped instead of duplicated ✨ Leonardo Taglialegne
- elm-community/json-extra is no loonger required as a dependency
- A duplicate release of 0.2.0
- Custom error handling:
- Now generates a custom error type for each endpoint that has a non-2xx responses.
- I published the wrong build for 0.1.1, this published the correct build. See 0.1.1 for changes.
-
incorrect parsing of JSON files
- Resolved by #54 ✨ Lars Wikman
With a large amount of help from Leonardo Taglialegne