github samchon/typia v9.0.0

latest release: v9.0.1
one day ago

Major update from @samchon/openapi: https://github.com/samchon/openapi/releases/tag/v4.0.0

export namespace JsonSchema {
  export interface INumber {
    type: "number";
    minimum?: number;
    maximum?: number;
    exclusiveMinimum?: number; // boolean -> number
    exclusiveMaximum?: number; // boolean -> number;
    examples?: Record<string, any> | Array<any>; // object -> array | object
  }
}

Anthropic Claude has banned boolean typed exclusiveMinimum and exclusiveMaximum properties. So @samchon/openapi has changed them to number type to support Anthropic Claude perflectly, and it is a typical major update taking a break change on types.

Also, in the JSON schema specifications, examples property has been changed from Array<any> type to Record<string, any> type since OpenAPI v3 update. However, too much people and frameworks are not responding such specification change. So, many of users validating OpenAPI specification by typia.assert<OpenApiV3_1.IDocument>(doc) function had been failed due to such JsonSchema.examples reason.

@samchon/openapi's new release allows non-standard example type (Array<any>) considering the industrial environments, and supports polyfill methods instead.

To respond such break changes with major update from @samchon/openapi, typia has released new major update v9. Also, realising a new major update, typia has enhanced number & tags.Type<"uint32"> like unsigned integer type about JSON schema generation. From now on, when define a number & tags.Type<"int32"> like tag, it would also contain the minimum: 0 constraint in the JSON schema.

What's Changed

  • exclusiveMinimum/exclusiveMaximum as number type by @samchon in #1562
  • Enhance uint type's JSON schema property. by @samchon in #1563

Full Changelog: v8.2.0...v9.0.0

Don't miss a new typia release

NewReleases is sending notifications on new releases.