Releases: skiftle/apiwork
Releases · skiftle/apiwork
Release list
apiwork: v0.7.0
0.7.0 (2026-04-17)
⚠ BREAKING CHANGES
- auto-detect attribute defaults from DB columns
- distinguish unset from explicit nil default
- remove builder generation from exports
Features
- add :apiwork export format (740830c)
- add scope to resource introspection (017d40d)
- add scope to type and enum introspection (883757e)
- auto-detect attribute defaults from DB columns (19a5524)
- auto-detect column bounds for integer, decimal, and string attributes (8be59c6)
- distinguish unset from explicit nil default (49123f8)
- generate .default() in OpenAPI for fields with default (aeaaa11)
- generate .default() in Zod export for fields with defaults (6e1de99)
Bug Fixes
- mark defaulted fields as required in TypeScript output (e7de202)
- preserve integer segments in issue paths (fc59ef5)
- replace spread with explicit property assignment in builders (e1f83bd)
- respect empty flag when auto-detecting null default (44ea2ff)
- transform issue paths and pointers via key_format (de1af81)
Code Refactoring
- remove builder generation from exports (d3646b1)
apiwork: v0.6.1
apiwork: v0.6.0
0.6.0 (2026-03-31)
⚠ BREAKING CHANGES
- rename error types to error_issue and error_layer
Features
- auto-serialize domain objects in expose responses (920f0dc)
Bug Fixes
- compare enum values as strings in response validator (0b08fba)
- expose min/max options on array params (8a342e5)
- preserve native types in expose serialization (409f206)
- rename error types to error_issue and error_layer (46ad454)
- symbolize keys in contract-only expose responses (d9589d7)
- update vulnerable dependencies (7152c58)
apiwork: v0.5.0
0.5.0 (2026-03-23)
⚠ BREAKING CHANGES
- make OP required in nested payload discriminated union
- move default and example to concrete param types
Features
- add builders option to TypeScript, Zod, and Sorbus exports (91f1c11)
- add object() and union() type definitions to representations (105ce8c)
- add record param type for key-value maps with typed values (e2339f3)
- add unknown as a param type (46e4765)
- move default and example to concrete param types (f20e082)
- support union types inside array elements (2f0d05e)
- treat boolean options without arguments as setter to true (392112d)
Bug Fixes
- add boolean type validation to configuration options (a5940fe)
- allow referencing types named after DSL keywords in union variants (be526bb)
- boolean export options ignoring default false (0098b76)
- broken union type and kebab-case playground examples (a8202cd)
- make OP required in nested payload discriminated union (04f2c86)
- omit ErrorSchema from sorbus contract when no raises are declared (df06c22)
- preserve ALL-CAPS keys in response key transformation and extract key transform methods (1e813c9)
- preserve path segments in sorbus export transform_path (8768597)
- produce complete param hashes for of-elements in introspection dump (99b7ec4)
- resolve :id from resource path segment in playground scenario runner (10328d7)
- return null body for no_content responses in introspection (5f8845b)
- select hub node as cycle breaker and iterate until all cycles resolved (c66bfb2)
- skip primitive types when resolving type references in introspection dump (0970b5b)
- use custom_type to resolve type references in introspection (41d1c5b)
- use type definition scope for enum resolution during type expansion (70fbdbf)
apiwork: v0.4.0
0.4.0 (2026-03-09)
⚠ BREAKING CHANGES
- add locales DSL for declaring supported API locales
Features
- add :text string format for multiline text hints (4c6cf17)
- add fingerprint to API for stable client-side identification (dc581aa)
- add locales DSL for declaring supported API locales (2286a69)
Bug Fixes
- accept empty objects and arrays for required fields in validation (e21b938)
- coerce primitive union variants for filter shorthand (a2ae2d5)
- include parent path segments in introspection resource paths (3e8f977)
- merge representation fields into any contract-defined types (9c8b79f)
- promote deeper-path errors in union validation (0c91493)
- remove redundant default? predicate from introspection params (179f22e)
- skip empty payload types for read-only representations (48a114d)
- use "object" instead of "hash" in union type error meta (6ce9f27)
apiwork: v0.3.1
apiwork: v0.3.0
0.3.0 (2026-02-27)
⚠ BREAKING CHANGES
- remove redundant :error_response_body type
- remove per-action types from type registry
- use plural resource names for per-action types and add request/response wrappers
Features
- add description to request for OpenAPI exports (c5685e1)
- add description to response for OpenAPI exports (0df5b82)
- add Sorbus export for typed client contracts (b284cb7)
- expose per-action schema builders for external composition (530a5d3)
- remove per-action types from type registry (ff8d042)
- remove redundant :error_response_body type (3f715cb)
- use plural resource names for per-action types and add request/response wrappers (acde604)
apiwork: v0.2.0
apiwork: v0.1.2
0.1.2 (2026-02-24)
Bug Fixes
- add custom domain for GitHub Pages (a9b48db)
- exclude playground vendor from VitePress build (c691144)
- generate reference index.md in ReferenceGenerator (c1e164e)
- keep playground public directory for docs generation (97eac92)
- lazy-load yard in ReferenceGenerator (ec72f9a)
- remove dummy app master key from repository (078c7a3)
- use pnpm for docs build (d8ca0ac)