Releases: samchon/typia
v7.3.0
What's Changed
- Adapt nextra v3 update by @samchon in #1422
- Refactor README and index.html by @samchon in #1423
- Fixing #1227: documentation of
UniqueItems
by @samchon in #1424 - Block LLM function schema composition by
@human
tag. by @samchon in #1427 ILlmFunction.strict
has been removed. by @samchon in #1428
Full Changelog: v7.2.0...v7.3.0
v7.2.0
What's Changed
- Report
TransformError
in website playground. by @samchon in #1420 - Update typedoc requirement from ^0.27.3 to ^0.27.4 in /website in the ecosystem group by @dependabot in #1419
- Add
IValidation.IError.data
property. by @samchon in #1421
Full Changelog: v7.1.0...v7.2.0
v7.1.0
What's Changed
- Bump typedoc from 0.26.11 to 0.27.3 in /website in the ecosystem group across 1 directory by @dependabot in #1416
- New function
typia.llm.applicationOfValidate()
. by @samchon in #1418
Full Changelog: v7.0.2...v7.1.0
v7.0.2
TypeScript v5.7 has occured many break changes on its filesystem, and it had broken the ts-patch. And today, @nonara has fixed the problem by upgrading the ts-patch. This PR allows to install TypeScript 5.7+ version following the ts-patch update.
Also, TypeScript v5.7 has changed another break change on the Uint8Array like native class type to have a generic argument Uint8Array. This PR also solves the problem of it.
Special thanks to @nonara, the transformation ecosystem builder.
What's Changed
- Close #1366: discord server by @samchon in #1412
- Support TypeScript v5.7 update. by @samchon in #1415
Full Changelog: v7.0.1...v7.0.2
v7.0.1
Emergent patch for frontend applications with unplugin-typia
, especially for below cases.
Special thanks to @ryoppippi
- Dynamic import statements must be injected after
"use server"
like statements - Remove
$
starting variable for SvelteKit 5.
What's Changed
- Description of
tags.Sequence<N>
type in theprotobuf
chapter. by @samchon in #1407 - Fix wrong file typo by @samchon in #1408
- Fix #1409 and Fix #1410:
"use server"
case, and$
starting variable. by @samchon in #1411
Full Changelog: v7.0.0...v7.0.1
v7.0.0
LLM Models Supporting
LLM schema generator functions have become suitable to LLM provider models.
import { ILlmApplication, ILlmSchema } from "@samchon/openapi";
import typia from "typia";
const app: ILlmApplication<"chatgpt"> = typia.llm.application<MyApp, "chatgpt">();
const parameters: ILlmSchema.IParameters<"claude"> = typia.llm.parameters<MyParameters, "claude">();
const schema: ILlmSchema<"gemini"> = typia.llm.schema<MyType, "gemini">();
IChatGptSchema
: OpenAI ChatGPTIClaudeSchema
: Anthropic ClaudeIGeminiSchema
: Google GeminiILlamaSchema
: Meta Llama
Optimized for Frontend Bundlers
Typia v7 compiler has been optimized for frontend bundlers.
From now on, internal functions would be dynamically imported like below.
cc @ryoppippi: please check
unplugin-typia
works in the new major update.
import typia, { tags } from "typia";
import { v4 } from "uuid";
const matched: boolean = typia.is<IMember>({
id: v4(),
email: "[email protected]",
age: 30,
});
console.log(matched); // true
interface IMember {
id: string & tags.Format<"uuid">;
email: string & tags.Format<"email">;
age: number &
tags.Type<"uint32"> &
tags.ExclusiveMinimum<19> &
tags.Maximum<100>;
}
import * as __typia_transform__isFormatUuid from "typia/lib/internal/_isFormatUuid.js";
import * as __typia_transform__isFormatEmail from "typia/lib/internal/_isFormatEmail.js";
import * as __typia_transform__isTypeUint32 from "typia/lib/internal/_isTypeUint32.js";
import typia from "typia";
import { v4 } from "uuid";
const matched = (() => {
const _io0 = (input) =>
"string" === typeof input.id &&
__typia_transform__isFormatUuid._isFormatUuid(input.id) &&
"string" === typeof input.email &&
__typia_transform__isFormatEmail._isFormatEmail(input.email) &&
"number" === typeof input.age &&
__typia_transform__isTypeUint32._isTypeUint32(input.age) &&
19 < input.age &&
input.age <= 100;
return (input) => "object" === typeof input && null !== input && _io0(input);
})()({
id: v4(),
email: "[email protected]",
age: 30,
});
console.log(matched); // true
What's Changed
- Change currying functions to keyworded. by @samchon in #1278
- Refactor debugging tool by @samchon in #1308
- Internal functions for
ImportProgrammer.internal()
. by @samchon in #1311 ImportProgrammer
composing import statements by transformation. by @samchon in #1313- Refactor
ImportTransformer
for generation mode. by @samchon in #1319 - Add test cases for
typia.http.parameter()
function. by @samchon in #1320 - Separate to
typia.json.application
andtypia.json.schemas
functions. by @samchon in #1322 - Prepare #1234: refactor metadata schema for
protobuf
sequencing. by @samchon in #1328 - Develop #1234:
Sequence<N>
tag and its validator onProtobufFactory
by @samchon in #1332 - New metadata
IProtobufProperty
andIProtobufSchema
by @samchon in #1333 - Close #1234: completed
Sequence<N>
implementation for Protocol Buffer. by @samchon in #1334 ImportProgrammer.IOptions
for multiple transformers case. by @samchon in #1336- Every JSON and LLM schema starts from the OpenAPI v3.1 emended specif… by @samchon in #1338
- Close ryoppippi/unplugin-typia#335: change
$
prefix to_
for Svelte. by @samchon in #1339 - Allow LLM model specification by @samchon in #1350
- Enhance test programs for the LLM schemas. by @samchon in #1352
- Fix miss-downgraded OpenAPI v3.1 tuple type by @samchon in #1355
- docs: add file structure and convention by @sunrabbit123 in #1353
- Target to be ES2015 by @samchon in #1358
$importInternal
script in the type tag validator. by @samchon in #1359- Close #1062:
_isUniqueItems()
, the deepinng comparison. by @samchon in #1360 - Adapt changed structure of
ILlmFunction<Parameters>
. by @samchon in #1371 - Strict JSON/LLM schema of object type by @samchon in #1372
- New function
typia.llm.parameters()
. by @samchon in #1374 - Support claude model in LLM function calling schema. by @samchon in #1378
- Fix #1357: use relative path instead of
tgz
setup. by @samchon in #1380 - Support Meta Llama schema by @samchon in #1383
- Remove
typia.json.application<App>()
function. by @samchon in #1385 - Exact LLM schema types even in the generation mode. by @samchon in #1387
- Fix type tag bug in nested case like
Array<number & X & Y> & A & B
. by @samchon in #1389 - LLM functions' provide config argument. by @samchon in #1390
- Only one object typed parameter in
typia.llm.application()
function. by @samchon in #1391 - Allow
additionalProperties
in Claude and Llama schemas. by @samchon in #1394 - Fix
typia.llm.application()
bug of vulnerable nesting. by @samchon in #1395 - Fix type tag name in the MetadataCollection by @samchon in #1397
- Re-write website contents about LLM schema by @samchon in #1398
- Upgrade
@samchon/openapi
, maybe the last update. by @samchon in #1399 - Update
@samchon/openapi
, theTry<T, E>
composer. by @samchon in #1400 - 1st completion of documentation by @samchon in #1401
- replace URLSearchParams to IReadableURLSearchParams by @miyaji255 in #1349
- Emend #1349: publish
IReadableURLSearchParams
in v7 major update. by @samchon in #1402 - Website compiled JS text renewal by @samchon in #1405
- Publish v7.0 by @samchon in #1396
Full Changelog: v6.12.2...v7.0.0
v6.12.2
v6.12.1
What's Changed
- Introducing Typia Guru on Gurubase.io by @kursataktas in #1356
- Fix playground runtime version of dependencies by @samchon in #1369
- fix(cli): type error by @ryoppippi in #1362
- Update Nx documentation by @KyleBastien in #1373
- Add
@samchon/openapi
topeerDependencies
. by @samchon in #1376
New Contributors
- @kursataktas made their first contribution in #1356
- @KyleBastien made their first contribution in #1373
Full Changelog: v6.12.0...v6.12.1
v6.12.0
v6.11.4
What's Changed
- build(deps): update @samchon/openapi requirement from ^1.1.1 to ^1.1.2 in the ecosystem group by @dependabot in #1341
- build(deps-dev): update typedoc requirement from ^0.26.10 to ^0.26.11 in /website in the ecosystem group by @dependabot in #1347
- Fix wrong
$ref
address for recursive array type. by @samchon in #1351
Full Changelog: v6.11.3...v6.11.4