Release notes
This page is statically generated from the Github releasesβ, and may sometimes be slightly out of date.
5 May 2025 (v0.20.0)
The main feature in this release is a new typescript-express
server generation template. Its very similar in function to the typescript-koa
template, but allows use of the express middleware ecosystem.
See the documentation here: https://openapi-code-generator.nahkies.co.nz/guides/server-templates/typescript-expressβ
There was also some improvements of the availability of βescape hatchesβ, namely you can now return a SkipResponse
symbol to bypass the normal response validation and sending, allowing your handler full control over this.
Features
- feat: typescript-express server template by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/324β
- feat: improve escape hatches by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/326β
Bug Fixes
- fix: donβt export aliases if name is ApiClient by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/319β
- fix: wrap response validation errors when using joi by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/323β
Misc
- refactor: decompose koa server generator by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/316β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/317β
- ci: cache .next/cache by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/318β
- chore: mark specification validation as generated by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/321β
- chore: adopt typescript project references by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/322β
- fix: parametrize responder generation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/325β
- fix: clean tsconfig.tsbuildinfo by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/327β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.19.2β¦v0.20.0β
19 Apr 2025 (v0.19.2)
Another attempt to solve running by npx
Bug fixes
- fix: dynamically require prettier by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/314β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.19.1β¦v0.19.2β
18 Apr 2025 (v0.19.1)
Hopefully resolves being able to run via npx
without issues.
Bug fixes
- fix: revert typespec by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/313β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.19.0β¦v0.19.1β
18 Apr 2025 (v0.19.0)
The headline feature, and potentially breaking change, is safer enum evolution. You can read more about it on the documentation site here: https://openapi-code-generator.nahkies.co.nz/guides/concepts/enumsβ
Otherwise included some minor bug fixes to joi
schema generation, and misc testing improvements.
Features
- feat!: making enum evolution safer by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/291β
Bug fixes
- fix: typescript is a production dependency by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/299β
- fix: joi array query params by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/309β
Docs
- feat: add an interactive playground to the documentation site by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/216β
- feat(docs): upgrade to nextra 4 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/301β
Misc
- chore: refresh deps / data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/294β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/293β
- chore(deps): update dependency koa to v2.15.4 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/296β
- chore(deps): update dependency axios to v1.8.2 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/300β
- chore: deps / refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/302β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/295β
- chore(deps): update dependency next to v15.2.3 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/303β
- chore(deps): update dependency next to v15.2.4 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/305β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/304β
- refactor: normalizeSchemaObject is a instance method of input by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/306β
- fix: paths to openapi specifications by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/307β
- chore(deps): update dependency koa to v2.16.1 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/308β
- chore: upgrade dependencies and roadmap by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/312β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.18.0β¦v0.19.0β
22 Dec 2024 (v0.18.0)
Primarily a bug-fix release focusing on improving client SDK runtime validation.
POTENTIALLY BREAKING CHANGES
- Users of
joi
validation must change the dependency from@hapi/joi
tojoi
- Unused
Res
andStatusCode
types removed fromtypescript-axios-runtime
package TypedFetchResponse
removed fromtypescript-fetch-runtime
package, use exported typeRes
instead if needed
Bug fixes
- feat(typescript-fetch)!: simplify response types by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/280β
- fix(typescript-axios)!: remove unused exports by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/281β
- fix(joi)!: switch from @hapi/joi to joi by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/284β
- fix: intersected union schemas by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/283β
- fix(typescript-fetch): runtime validation works by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/287β
- fix(client-sdks): handle 204 empty responses with runtime validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/288β
Misc
- chore: refresh / update deps by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/289β
- test: add missing unit tests to utils by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/292β
- docs: regenerate release-notes by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/279β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.17.0β¦v0.18.0β
11 Dec 2024 (v0.17.0)
The main change is that server
overrides at the path / operation level will now be respected and create an additional positional parameter for these methods when generating clients (closes #266).
There was also a fix for client generation with --enable-runtime-response-validation
, when the typescript project has exactOptionalPropertyTypes: true
in its tsconfig.json
Additionally defaultHeaders
is now optional in client configuration, and the HTTP head
verb is now supported. The documentationβ got a few new pages including a roadmap, and some general tips on usage.
BREAKING CHANGES
- New positional parameter on methods where server overrides are included in the specification
- Unique export names for Angular services now suffixed with
Service
Features
- feat: support servers at path / operation level + variables by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/272β
- feat: defaultHeaders is optional by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/274β
- feat: support http verb βheadβ by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/271β
Bug Fixes
- fix: support exactOptionalPropertyTypes on client SDKs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/278β
- fix!: angular modules have unique export names by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/270β
Docs
- docs: add tips page by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/275β
- docs: use with react-query by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/276β
- docs: add roadmap / release notes by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/277β
- docs: iterate on the documentation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/268β
Misc
- chore: dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/273β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/269β
- chore: dependencies / refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/267β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.16.0β¦v0.17.0β
2 Nov 2024 (v0.16.0)
Client class exports will now be given unique names generated from the input specifications info.title
field. This can additionally be overridden through a new cli arg --override-specification-title
.
The previous generic exports are kept for backwards compatibility.
POTENTIALLY BREAKING: Filenames generated from tags or route prefixes will now follow kebab-case
naming convention by default. This can be customized to other conventions like camel-case
, etc using --filename-convention
Features
- feat: unique client export names by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/263β
- feat!: dynamic filename conventions / no spaces in filenames by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/259β
- feat: safer identifier transformation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/260β
Misc
- fix: format/emit in parallel by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/265β
- chore: upgrade to next@15 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/261β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/262β
- chore: refresh data + regenerate by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/264β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.15.0β¦v0.16.0β
27 Oct 2024 (v0.15.0)
Itβs now possible to change the construct used for the βimplementationβ symbol between being a type
, interface
or abstract class
using the new option --ts-server-implementation-method
. This is particularly useful if using a dependency injection library that requires abstract class
as part of its wiring approach.
Additionally, when splitting the generated files by first-tag
/ first-slug
(using --grouping-strategy
), the tag/slug will now be added to the exported symbol names, eg: createRouter
-> createMyTagRouter
and Implementation
-> MyTagImplementation
. This can reduce the need to alias imports manually.
The generic Implementation
/ createRouter
exports have be retained to keep this backwards compatible.
Features
- feat: support emitting abstract classes for implementation types by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/256β
- feat: emit unique symbol names for Implementation / createRouter functions by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/258β
Misc
- fix(docs): improve meta tags by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/255β
- chore: dependencies / refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/257β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.14.0β¦v0.15.0β
12 Oct 2024 (v0.14.0)
Fixes a few small bugs, and adds support for relative $ref
s when using a URI as the input.
Features
- feat: support loading relative remote uris by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/254β
Bug fixes
- fix: allow
$ref
to be used as a schema property by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/250β - fix: handle
type: "null"
inanyOf
/oneOf
/allOf
by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/252β
Misc
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/251β
- fix(docs): use absolute url for og:image by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/253β
- chore(docs): switch to self-hosted plausible ce by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/249β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.13.0β¦v0.14.0β
20 Sept 2024 (v0.13.0)
This release adds support for schemas specifying default values, and begins validating / parsing incoming request headers. Note: this may be a breaking change if your server currently accepts requests with invalid request headers.
Features
- feat: support default values by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/241β
- feat!: parse/validate request headers by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/247β
- feat: include urls from servers array in basePath type by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/246β
Docs
- docs: add compatibility tables by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/248β
Misc
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/239β
- chore(deps): Bump micromatch from 4.0.7 to 4.0.8 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/240β
- chore: update dependencies and refresh data files by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/244β
- chore: upgrade typescript by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/245β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.12.1β¦v0.13.0β
17 Aug 2024 (v0.12.1)
This release fixes a small typing mistake preventing queries parameters of type number[]
from building properly, and fixes bugs in the handling of header parameters / defaults and the βescape hatchβ parameters allowing arbitrary fetch / axios request options to be passed.
Itβs also the first release with automated end-to-end tests in place, though the coverage is still low - this will be improved during the course of development going forward.
Bug fixes
- fix: allow number array query param by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/236β
- fix(fetch/axios): correctly merge headers from opts by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/231β
Testing
- feat: add e2e test suite by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/235β
Misc
- chore(deps): update dependency axios to v1.7.4 [security] by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/232β
- chore: dependencies / refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/233β
- chore: tweak npm metadata by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/234β
- chore: use node 22 by default by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/237β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.12.0β¦v0.12.1β
5 Aug 2024 (v0.12.0)
Another small release, adding a new CLI parameter OPENAPI_REMOTE_SPEC_REQUEST_HEADERS
/ --remote-spec-request-headers
that allows request headers to be sent when fetching specifications from remote URIβs.
This makes it possible to generate from a remote URI that is behind some form of header based authentication, eg: Authorization: Bearer <bla>
(which includes cookie based authentication since cookies are just a Cookie
header, and basic auth as this is just Authorization: Basic <credentials>
).
The headers are scoped to specific domains/urls such that you can mix and match sources without leaking tokens to the wrong servers.
Features
- feat: support remote specs with authentication by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/230β
Misc
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/228β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.11.2β¦v0.12.0β
29 Jul 2024 (v0.11.2)
This is a bug fix release, solving an issue with the order schemas were output when generating from specifications that are split over multiple files, causing variable used before declaration issues.
Bug fixes
- fix: include schemas from all documents in dependency graph by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/227β
Documentation
- fix: improve seo, use plausible by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/226β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.11.1β¦v0.11.2β
27 Jul 2024 (v0.11.1)
This is a bug fix release, containing a solution for https://github.com/mnahkies/openapi-code-generator/issues/217β.
Previously query parameters of an array type did not work when a single element was provided, now this will be parsed and handed to the route handler as an array of one element.
Bug fixes
- fix: support array of 1 for query parameter arrays (round 2) by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/225β
Misc
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/210β
- chore(deps): update all dependencies by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/221β
- chore: refresh data / use new okta specs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/222β
- chore: update dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/223β
- fix: peer dependency by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/224β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.11.0β¦v0.11.1β
8 Jun 2024 (v0.11.0)
This release contains 1 bug fix for default header handling in typescript-axios
and several internal refactoring changes required to facilitate the work-in-progress documentation playgroundβ
Also dropped eslint
for biome
because I canβt be bothered figuring out the eslint@^9
upgrade / configuration migration.
Bug fixes
- fix(axios): always apply default headers by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/218β
Internal refactoring
- fix: make logger compatible with web by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/211β
- fix: decouple validator from readline by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/212β
- feat: add a prettier based formatter by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/213β
- fix: move tsconfig loading by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/214β
- fix: decouple typespec loader from readline by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/215β
Misc
- chore: ditch eslint by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/219β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.10.0β¦v0.11.0β
25 May 2024 (v0.10.0)
This release is primarily bug fixes, and internal refactoring to facilitate improvements to documentation. Most effort has gone into the new documentation site live at https://openapi-code-generator.nahkies.co.nz/β
It also splits the cli
from the library entrypoint such that you can now import {generate} from '@nahkies/openapi-code-generator'
for programmatic usage if you wish, and improves handling of boolean cli flags.
BREAKING CHANGES There are several potentially breaking changes here:
- Dropped the βsafe edit regionβ functionality, I doubt anyone was using this and it wasnβt particularly robust
- Improved handling of
additionalProperties
/{}
schemas to better align with the specification - Joi validation became stricter for strings with format
email
/date-time
This may make some schemas / types change type to unknown
, and start serializing/deserializing values that were previously stripped (see #200). If you want more permissive types (any
) in these situations rather than unknown
you can use the --ts-allow-any
cli flag.
Bug fixes
- fix!: an schema should be an unknown/any type by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/204β
- fix!: drop safe edit regions by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/198β
- fix!: joi supports email / date-time string formats by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/206β
- fix: improve handling of cli boolean params by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/205β
- fix: only allow publish of releases from latest main by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/161β
Internal refactoring
- refactor: create TypescriptFormatter class by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/199β
- refactor: isolate filesystem interaction by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/201β
- refactor: split cli to allow programmatic use by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/202β
Docs
- feat: new documentation website by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/162β
- feat: publish docs from ci, add ga to docs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/163β
- fix: provide a user by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/164β
- fix: try git config by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/165β
- fix: set url by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/166β
- fix: move script to _app by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/167β
- fix: replace default nextra meta descriptions by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/168β
- docs: show typespec shell snippets, mention runtime response validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/169β
- docs: move architecture into nextra site by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/186β
- docs: update readme by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/187β
- fix(docs): correct header level by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/209β
Misc
-
chore: upgrade dependencies / angular v18 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/207β
-
chore: refresh data and regenerate by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/208β
-
chore: bump lerna by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/203β
-
fix: make renovate less noisy by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/197β
-
chore: Configure Renovate by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/170β
-
chore(deps): update dependency @azure-tools/typespec-client-generator-core to v0.41.8 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/171β
-
chore(deps): update dependency @types/node to v20.12.8 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/172β
-
fix(deps): update angular monorepo by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/175β
-
chore(deps): update dependency typescript to ~5.4.0 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/180β
-
chore(deps): update dependency node to v20.12.2 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/179β
-
chore(deps): update yarn to v4.2.1 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/182β
-
chore(deps): update dependency zod to v3.23.6 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/174β
-
chore(deps): update typescript-eslint monorepo to v7.8.0 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/181β
-
fix(deps): update dependency ajv to v8.13.0 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/183β
-
chore(deps): update dependency eslint-plugin-jest to v28.5.0 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/178β
-
fix(deps): update dependency @biomejs/biome to v1.7.2 by @renovate in https://github.com/mnahkies/openapi-code-generator/pull/176β
-
@renovate made their first contribution in https://github.com/mnahkies/openapi-code-generator/pull/170β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.9.0β¦v0.10.0β
27 Apr 2024 (v0.9.0)
There are two new features in this release:
- Typespecβ can now be used as an input file by passing
--input-type=typespec
as an additional arg - You can now use a url for your input file (openapi specs only, typespec must be local files)
Features
- feat: support typespec as an input format by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/158β
- feat: support loading input from uri by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/150β
Bug fixes
- fix: allow options by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/151β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.8.0β¦v0.9.0β
7 Apr 2024 (v0.8.0)
There are three main features in this release:
- Improve json schema validation support for
string
,number
,array
(min / max / etc) - Make
boolean
schema validation stricter - Start using a pre-compiled ajv validator for better performance
BREAKING CHANGES
Previously any truthy value would be accepted for a boolean, eg: any-string
would parse to true
. Now its parsed like:
true | "true" | 1
->true
false | "false" | 0
->false
- anything else -> error
Features
- feat: support minimum / maximum for numbers by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/140β
- feat: use pre-compiled ajv validators at runtime by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/141β
- feat: joi number min/max validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/143β
- feat: support exclusive min/max and multipleOf by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/144β
- feat: support string validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/145β
- fix!: stricter booleans by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/146β
- feat: support basic array validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/147β
Misc
- chore(deps): Bump follow-redirects from 1.15.5 to 1.15.6 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/136β
- chore(deps): Bump webpack-dev-middleware from 5.3.3 to 5.3.4 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/137β
- chore(deps): Bump express from 4.18.3 to 4.19.2 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/138β
- chore: deps by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/139β
- chore: refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/142β
- chore: bump deps by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/149β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.7.0β¦v0.8.0β
3 Mar 2024 (v0.7.0)
Features
- feat: experimental support for splitting code by tags / route segments by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/134β
- feat: eliminate unused imports by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/132β
- feat: use strict typescript settings by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/131β
- feat: adopt biome for code formatting by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/129β
Misc
- chore: update dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/133β
- chore(deps): Bump ip from 2.0.0 to 2.0.1 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/130β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.6.0β¦v0.7.0β
19 Feb 2024 (v0.6.0)
Features
- feat: improve additional properties support by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/126β
- feat: support response validation for joi by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/127β
Misc
- chore: adopt prettier everywhere by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/128β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.5.0β¦v0.6.0β
10 Feb 2024 (v0.5.0)
Features
- feat: experimental support for extracting inline schemas by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/123β
- feat: client generators support experimental runtime response validation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/112β
Misc
- docs: tiny improvement by @asfaltboy in https://github.com/mnahkies/openapi-code-generator/pull/122β
- chore: update deps / use RouterContext by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/124β
Upgrading notes
You may need to replace the Context
type from koa
with RouterContext
from @koa/router
in some cases due to changes in the upstream type definitions.
- @asfaltboy made their first contribution in https://github.com/mnahkies/openapi-code-generator/pull/122β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.4.0β¦v0.5.0β
5 Jan 2024 (v0.4.0)
- feat(typescript-koa): introduce optional βrespondβ pattern by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/96β
Bugs
- fix: incorrect .d.ts path for zod by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/119β
- fix(koa): donβt camel-case route placeholders by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/120β
Misc
- chore(deps-dev): Bump @koa/cors from 4.0.0 to 5.0.0 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/116β
- chore: bump deps by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/121β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.3.0β¦v0.4.0β
2 Dec 2023 (v0.3.0)
- feat: add
typescript-axios
template by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/83β - feat!: throw discriminable errors indicating point of failure by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/95β
Breaking Changes
Errors thrown during request handling in typescript-koa
will now be wrapped in KoaRuntimeError
objects with the original exception included as the cause
, in order to provide additional context about where the error was thrown.
Misc
- fix: decouple schema builders from
typescript-koa
by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/113β - feat: include schema builder in client generators by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/114β
- chore: upgrade angular / dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/115β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.2.0β¦v0.3.0β
12 Nov 2023 (v0.2.0)
Features
- feat: basic support for openapi 3.1 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/109β
Bug Fixes
- fix: skip broken openapi 3.1 validation for now by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/104β
- fix: allow numeric header values by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/105β
- fix: handle null in enums by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/106β
- fix: handle
"
in string enum values by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/107β - fix: use numerical enums when creating zod schema by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/108β
- fix: optional oneOf / allOf / anyOf / $refβs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/110β
Misc
- chore: refresh lockfile by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/100β
- chore: use branch as preid / dist-tag on alpha versions by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/101β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.1.1β¦v0.2.0β
11 Nov 2023 (v0.1.1)
Breaking changes
- feat!: more flexible koa server creation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/88β
Fixes
- fix: donβt coerce strings by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/87β
Misc
- chore(deps): bump @babel/traverse from 7.22.19 to 7.23.2 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/85β
- chore(deps): Bump zod from 3.22.2 to 3.22.3 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/86β
- chore: yarn 4, @swc/jest by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/89β
- style: comma-dangle always-multiline by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/91β
- chore: move generated files into a generated sub-directory by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/92β
- fix: delete files missed in #92 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/93β
- fix: unused imports by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/97β
- fix: avoid warning for non-nullable paths by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/90β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/compare/v0.1.0β¦v0.1.1β
1 Oct 2023 (v0.1.0)
Initial Release.
-
chore: refresh dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/1β
-
fix(typescript-fetch): omit optional query params by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/2β
-
chore: switch source of GitHub defs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/3β
-
feat: add script consuming github fetch client by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/4β
-
feat: support zod for parsing inputs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/7β
-
chore(deps): bump ua-parser-js from 0.7.32 to 0.7.33 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/5β
-
chore(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/6β
-
feat: support string enums in zod parsing by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/8β
-
feat: new approach to server stubs by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/9β
-
chore: update dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/10β
-
chore: update dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/15β
-
chore: upgrade to yarn berry by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/16β
-
chore: add lint-staged / husky, improve lint cmd by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/17β
-
docs: add table of contents / format by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/18β
-
chore: switch from mocha/chai to jest by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/19β
-
feat: move static code to normal files by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/20β
-
feat: move more static code into koa runtime by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/21β
-
fix: respect optional $ref properties by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/22β
-
feat: initial support for oneOf by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/23β
-
fix: request bodies can be optional by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/24β
-
feat: rework input schema parsing by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/25β
-
refactor: several tidy ups by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/26β
-
feat: zod schema builder supports allOf by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/27β
-
fix: use merge instead of intersection by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/28β
-
feat: response body validation and types by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/29β
-
fix: eslint disable in generated files by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/30β
-
fix: use request body by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/32β
-
fix: improve support for nullable types by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/33β
-
fix: improve validation to switch between 3.1.0 / 3.0.0 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/34β
-
feat: improve client generation by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/35β
-
feat: clients default params to when none are required by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/36β
-
feat: order schemas correctly by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/37β
-
chore: update github definition by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/31β
-
refactor: move schema builders to common, rename model builder by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/38β
-
feat: config flag to switch schema parser by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/39β
-
fix: improve null support by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/40β
-
refactor: simplify by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/41β
-
refactor: consistently use yaml instead of yml by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/47β
-
chore: refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/48β
-
fix: replace . in identifiers by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/50β
-
chore: review todos and create tickets for most by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/54β
-
feat: initial support for anyOf by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/55β
-
fix: switch to qs and add tests for query string by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/56β
-
feat: better support for additional properties by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/57β
-
feat: support circular references by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/58β
-
tests: add stripe api definitions by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/49β
-
chore(deps): bump engine.io from 6.4.1 to 6.4.2 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/61β
-
chore: upgrade to angular v16 by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/62β
-
fix: surface status code -> body relationship in angular template by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/63β
-
chore: update data and regenerate by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/64β
-
feat: fetch client supports abort signals by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/65β
-
chore(deps): bump socket.io-parser from 4.2.2 to 4.2.3 by @dependabot in https://github.com/mnahkies/openapi-code-generator/pull/66β
-
chore: update dependencies by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/69β
-
chore: upgrade prettier by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/70β
-
chore: refresh yarn lock by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/71β
-
fix: dependency graph handles oneOf allOf nesting by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/73β
-
chore: refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/72β
-
chore: add okta api specs as tests by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/74β
-
fix: master -> main by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/77β
-
feat: use commander for cli args for better ux by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/76β
-
chore: refresh data by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/79β
-
fix: plumb through middleware by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/80β
-
feat: overhaul docs / publish to npm by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/75β
-
fix: remove broken functionality by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/78β
-
fix: try using wildcard version to work around lerna publish bug by @mnahkies in https://github.com/mnahkies/openapi-code-generator/pull/84β
-
@mnahkies made their first contribution in https://github.com/mnahkies/openapi-code-generator/pull/1β
-
@dependabot made their first contribution in https://github.com/mnahkies/openapi-code-generator/pull/5β
Full Changelog: https://github.com/mnahkies/openapi-code-generator/commits/v0.1.0β