Releases: orval-labs/orval
Release v8.13.0
What's Changed
- fix(core): extract named enum type for anyOf nullable enum composition by @wadakatu in #3424
- feat(mock): add faker schema mock generation by @jakiestfu in #3426
- fix(query): pass operationId and operationName to queryOptions mutator by @wadakatu in #3427
- fix(mock): emit boolean enum literals instead of random datatype.boolean() by @wadakatu in #3428
- fix(mock): preserve discriminator value when oneOf parent declares the same property by @wadakatu in #3429
- fix(zod): handle content-type with charset suffix by @wadakatu in #3433
- fix(mock): stop leaking sibling variants into allOf-inherited mocks by @wadakatu in #3431
- fix(query): make
useInfiniteQueryParamstrict by @daugvinasr in #3434 - feat(core): added factoryMethods by @mironbalcerzak in #3344
- feat(core): add $dynamicRef / $dynamicAnchor support for OpenAPI 3.1 by @aqeelat in #3353
- fix(core): break circular type alias for allOf-inheriting discriminator variants by @wadakatu in #3435
- fix(core): bump dependencies Scalar Parser by @melloware in #3437
- fix(core): generate union for nullable composition (type: null + allOf/oneOf/anyOf) by @artnikbrothers in #3438
- feat(mcp): use
server.registerToolinstead ofserver.toolby @soartec-lab in #3441 - fix(core): read x-enum-varnames from parameter level for primitive query enums by @takahiro-1227 in #3442
- fix(core): support $dynamicAnchor fallback per JSON Schema spec by @aqeelat in #3446
- fix(core): update dynamic-ref tests to reflect correct $dynamicRef fallback behavior by @aqeelat in #3452
- feat(mcp): return registerd tools variable by @soartec-lab in #3450
- fix(mock): resolve circular suffix matching and combine recursion by @Hypenate in #3448
- fix(mock): use one-sided bounds when only minLength/maxLength or minItems/maxItems is specified by @wadakatu in #3451
- feat(zod): add generateReusableSchemas opt-in flag by @z4o4z in #3449
- Release v8.13.0 by @github-actions[bot] in #3453
New Contributors
Full Changelog: v8.12.3...v8.13.0
Release v8.12.3
Note
BREAKING CHANGE: Mock now has custom MSW and FAKER configs allowing you to use one or the other if needed. See https://orval.dev/docs/versions/v8#10-outputmock-now-uses-a-generators-array
What's Changed
- fix(mock): detect $ref in single-element allOf/oneOf/anyOf array items by @jakiestfu in #3421
- fix(core): inline string type for $ref binary fields in x-www-form-urlencoded bodies by @wadakatu in #3422
- Release v8.12.3 by @github-actions[bot] in #3423
Full Changelog: v8.12.2...v8.12.3
Release v8.12.2
Note
BREAKING CHANGE: Mock now has custom MSW and FAKER configs allowing you to use one or the other if needed. See https://orval.dev/docs/versions/v8#10-outputmock-now-uses-a-generators-array
What's Changed
- fix(core): raw binary request bodies such as image/png must be passed to fetch as the Blob itself by @daugvinasr in #3397
- fix(core): handle type arrays (["array","null"]) in form-urlencoded serialization by @jakiestfu in #3419
- Release v8.12.2 by @github-actions[bot] in #3420
Full Changelog: v8.12.1...v8.12.2
Release v8.12.1
Note
BREAKING CHANGE: Mock now has custom MSW and FAKER configs allowing you to use one or the other if needed. See https://orval.dev/docs/versions/v8#10-outputmock-now-uses-a-generators-array
What's Changed
- test(core): add regression coverage for multi-tag operation dedup (#873) by @wadakatu in #3377
- test(query): add regression coverage for vue-query header params (#1026) by @wadakatu in #3379
- test(core): add regression coverage for cross-file $ref schema exports (#1107) by @wadakatu in #3381
- chore(core): replace globby with tinyglobby by @ivoberger in #3383
- fix(orval): decode escaped JSON Pointer tokens in external $refs (#3380) by @wadakatu in #3382
- fix(fetch): type error caused by useDates date param string coerce by @ivoberger in #3384
- fix: properly handle zod.generate options & use 2xx when 200 is not available by @arthurfiorette in #3387
- fix(vue): unref vue infinite query params by @daugvinasr in #3386
- test(query): add regression coverage for react-query onMutate option (#1177) by @wadakatu in #3388
- fix(query): pass enabled option into queryOptions mutator by @wadakatu in #3389
- fix(query): use nullish fallback for infinite query page params by @daugvinasr in #3391
- fix(core): treat binary fields in x-www-form-urlencoded bodies as strings by @wadakatu in #3395
- fix(zod): narrow string literals per-value in object defaults (#3399) by @zeriong in #3400
- fix(core): parse mutator with latest ecmaVersion to support dynamic import by @wadakatu in #3401
- feat(core): allow mock data generators only by @jakiestfu in #3398
- fix(core): handle multi-line descriptions in JSDoc generation by @aqeelat in #3393
- fix(fetch): restore urlEncodeParameters support for the fetch client (#3343) by @zeriong in #3405
- feat(mock): extend output.mock with multi-generator support for msw and faker by @jakiestfu in #3407
- fix(core): inline header schema when $ref points outside #/components/parameters by @wadakatu in #3408
- test(orval): cover double-linked cross-file $ref chain (#1935) by @wadakatu in #3409
- test(core): pin optional-by-default requestBody behavior (#2028) by @wadakatu in #3410
- fix(core): decode ~0 tilde escapes in JSON Pointer refs by @aqeelat in #3414
- fix(core,mock): generate Blob for $ref schemas with format: binary by @matsu3m in #3406
- style(ci): format release-publish workflow with prettier by @aqeelat in #3415
- Release v8.12.0 by @github-actions[bot] in #3416
- Release v8.12.1 by @github-actions[bot] in #3417
New Contributors
- @ivoberger made their first contribution in #3383
- @jakiestfu made their first contribution in #3398
- @aqeelat made their first contribution in #3393
Full Changelog: v8.11.0...v8.12.1
Release v8.11.0
What's Changed
- fix(orval): pass skipErrorChecking to TypeDoc to scope it to generated entry points (#3338) by @zeriong in #3345
- fix(mock): restore oneOf/anyOf cycle detection by @wadakatu in #3350
- feat(bun): config to add min age on install package by @anymaniax in #3351
- fix(angular): place body before accept in multi-content overload signatures by @the-ult in #3354
- fix(core): inline non-component $refs to avoid broken named imports (#398) by @wadakatu in #3355
- fix(core): emit nested array item constraints in jsdoc by @daugvinasr in #3357
- fix: file extension is not added to imported files when using NodeNext moduleResolution by @rkday-pro in #3361
- fix(query): honor per-operation useMutation override for GET operations by @wadakatu in #3360
- fix(query): bulk-update cached data via setQueriesData (#3260) by @zeriong in #3363
- fix(core): keep non-relative mutator import path in tags-split mode by @wadakatu in #3368
- fix(query): emit plain SolidMutationOptions for user-facing mutation param (#3365) by @mhamri in #3369
- fix(angular): emit filterParams for untagged ops in tags-split default file by @the-ult in #3359
- test(query): add regression coverage for infinite vs regular query key isolation (#708) by @wadakatu in #3372
- test(query): assert full queryKey assignment in issue-708 regression test by @wadakatu in #3373
- fix(core): wrap request bodies whose readonly props come from nested schemas by @wadakatu in #3374
- fix(orval): apply input.override.transformer before spec validation (#3227) by @zeriong in #3375
- fix(angular): preserve object query params in generated clients by @the-ult in #3371
- Release v8.11.0 by @github-actions[bot] in #3378
New Contributors
- @daugvinasr made their first contribution in #3357
- @rkday-pro made their first contribution in #3361
- @mhamri made their first contribution in #3369
Full Changelog: v8.10.0...v8.11.0
Release v8.10.0
What's Changed
Important
Please see breaking changes
Note
TypeScript 6/7 is now supported!
- fix(mock): apply useExamples to property-level example after OAS 3.0 upgrade by @wadakatu in #3311
- fix(query): namespace non-GET query keys with the HTTP verb by @wadakatu in #3312
- fix(query): wrap body type with mutator BodyType in non-GET Query helpers by @wadakatu in #3314
- fix(fetch): include error content types in parse strategy (follow-up to #3222) (#3088) by @zeriong in #3261
- fix(core): deterministic comparators in sorting by @melloware in #3322
- fix(angular): resolve compile error for binary response types (#3289) by @zeriong in #3306
- chore: TypeScript 6/7 support replace tsconfck with get-tsconfig by @jmorel in #3320
- fix(query): apply global override.query.useQuery to non-GET verbs (#2376) by @wadakatu in #3323
- fix(core): wrap allOf intersection types in parens for array items by @sushichan044 in #3288
- test(orval): cover internal $ref in external parameter (#394) by @wadakatu in #3324
- fix(hono): refresh handler preamble and fix import paths for hono.handlers option by @zeriong in #3292
- fix(core): resolve propertyNames enum refs by @dpkass in #3329
- fix(core): resolve propertyNames const refs by @dpkass in #3332
- Typescript 6 : bump typedoc to 0.28.19 by @ArnaudGathy in #3334
- fix(query,swr): use null-check for auto-generated
enabledoption (#3241) by @zeriong in #3325 - fix(orval): break cycles when inlining recursive external $refs (#1642) by @zeriong in #3336
- fix(zod): preserve literal types in object defaults with
as const(#3244) by @zeriong in #3339 - Angluar: Fix PUT request bodies for multi-content responses#1 by @Gogolian in #3335
- Release v8.10.0 by @github-actions[bot] in #3346
New Contributors
- @sushichan044 made their first contribution in #3288
- @dpkass made their first contribution in #3329
- @ArnaudGathy made their first contribution in #3334
- @Gogolian made their first contribution in #3335
Full Changelog: v8.9.1...v8.10.0
Release v8.9.1
What's Changed
- feat(orval): warn when optionsParamRequired is set with fetch httpClient by @wadakatu in #3281
- fix(core): exclude unwritten schemas path from afterAllFilesWrite by @wadakatu in #3282
- docs(query): Document suspense override options by @MasterOdin in #3283
- fix(msw): ensure path colons are escaped with double backslashes by @crow-misia in #3286
- fix(query): apply queryOptions mutator to generated invalidate function (#3190) by @zeriong in #3290
- fix(zod): generate Body schema for multipart and urlencoded requests (#3066) by @zeriong in #3293
- chore(deps-dev): bump postcss from 8.5.6 to 8.5.13 by @dependabot[bot] in #3297
- chore(deps-dev): bump @vue/compiler-sfc from 3.5.30 to 3.5.33 by @dependabot[bot] in #3295
- chore(deps-dev): bump eslint-plugin-react-hooks from 7.0.1 to 7.1.1 by @dependabot[bot] in #3294
- fix(fetch,query,swr): attach JSDoc to main function instead of URL helper (#3266) by @zeriong in #3303
- fix(core): prevent empty import type statement with enumGenerationType: 'enum' (#3246) by @zeriong in #3304
- fix(query): warn when mutationInvalidates references a Query-emitted operation by @wadakatu in #3302
- fix(core): add missing import for $ref types in additionalProperties (#3255) by @zeriong in #3309
- fix(core): support Map format for x-enumDescriptions and x-enumNames (#3232) by @zeriong in #3307
- Release v8.9.1 by @github-actions[bot] in #3310
New Contributors
- @MasterOdin made their first contribution in #3283
- @crow-misia made their first contribution in #3286
Full Changelog: v8.9.0...v8.9.1
Release v8.9.0
What's Changed
- fix: add zip to the binary application types list by @jmorel in #3257
- fix(core): treat OpenAPI validation failures as warnings instead of errors by @zeriong in #3239
- fix(zod): order of stringFormat call by @perryd01 in #3259
- fix(angular): httpresource ts errors file split error [3258] by @the-ult in #3263
- fix(angular): drop unsound
as TDatacast from HttpClient Zod valida… by @the-ult in #3262 - fix(mock): skip MSW resolvedBody prelude when no *ResponseMock is generated by @Spence1115 in #3271
- chore: bump scalar packages by @snebjorn in #3272
- fix(core): revert multipart JSON object parts to plain string append by @superxiao in #3275
- fix(hono): emit routes as method chain for type inference by @dachi023 in #3276
- feat(core): only referenced schemas output when tags specified in
input.filterby @soartec-lab in #3254 - docs: add statement about AI by @soartec-lab in #3277
- fix(samples): enable
clean: trueon safe samples and document layout rule (#2981) by @zeriong in #3267 - fix(core,mock): import not propagated to msw mock for nullable anyOf $ref types by @nathansogut-sipios in #3279
- fix(angular,query): skip Content-Type for multipart/form-data ONLY for Angular httpClient by @melloware in #3278
- Release v8.9.0 by @github-actions[bot] in #3280
New Contributors
- @perryd01 made their first contribution in #3259
- @Spence1115 made their first contribution in #3271
- @dachi023 made their first contribution in #3276
Full Changelog: v8.8.1...v8.9.0
Release v8.8.1
What's Changed
- feat(core): add
output.schemas: falseto disable schema file generation by @wadakatu in #3240 - feat(query): add literal param syntax for mutationInvalidates by @zeriong in #3237
- fix(core): support oneOf/anyOf in multipart/form-data code generation by @nathansogut-sipios in #3245
- fix(zod): default dateTimeOptions to { offset: true } for RFC3339 date-time (#3124) by @zeriong in #3247
- fix(mock): emit ArrayBuffer for binary schemas upgraded to contentMediaType (#3065) by @zeriong in #3248
- fix(angular-query): support usePrefetch for angular-query client by @zeriong in #3238
- fix(angular): scope httpResource output by tag in tags/tags-split modes (#3209) by @zeriong in #3249
- chore: bump bun 1.3.9 -> 1.3.12 by @snebjorn in #3251
- chore: bump tsdown 0.20.3 -> 0.21.9 by @snebjorn in #3250
- chore: bump turbo 2.8.12 -> 2.9.6 by @snebjorn in #3252
- fix(core): baseUrl runtime imports missing in single mode without schemas by @mikan3rd in #3253
- fix(fetch): parse response body based on content-type instead of always JSON.parse by @zeriong in #3222
- Release v8.8.1 by @github-actions[bot] in #3256
New Contributors
- @nathansogut-sipios made their first contribution in #3245
Full Changelog: v8.8.0...v8.8.1
Release v8.8.0
What's Changed
- chore: fixes failed to run git in issue-labeler github action by @snebjorn in #3213
- fix: broken model imports by @Chnapy in #3214
- chore: fixes angular sample failing to start by @snebjorn in #3217
- chore: auto mark isssues as stale by @snebjorn in #3219
- fix(hono): add orval file header to generated handler files (#2988) by @zeriong in #3220
- fix(mock): handle boolean exclusiveMinimum/exclusiveMaximum from OpenAPI 3.0 schemas by @zeriong in #3221
- fix(mcp): broken path params name convention by @soartec-lab in #3225
- fix(mock): preserve object properties for nullable type arrays (OpenAPI 3.1) (#3081) by @zeriong in #3230
- fix(core): support propertyNames.const for typed Record generation (#3208) by @zeriong in #3229
- feat(mcp): add
orverride.mcp.serveroption by @soartec-lab in #3228 - fix(mock): use indexed access types for inline enum properties in MSW mocks by @wadakatu in #3224
- chore(deps): bump softprops/action-gh-release from 2 to 3 by @dependabot[bot] in #3234
- feat(mcp): possible to pass
options: RequestInitfrom the MCP server to the handler by @soartec-lab in #3235 - Release v8.8.0 by @github-actions[bot] in #3236
New Contributors
Full Changelog: v8.7.0...v8.8.0