Skip to content

Releases: samchon/typia

v5.2.6

08 Nov 08:27
9bbd297
Compare
Choose a tag to compare

What's Changed

  • Break change from ts.factory.createNumericLiteral(). by @samchon in #863

Full Changelog: v5.2.5...v5.2.6

v5.2.5

05 Nov 14:14
1e131e4
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v5.2.4...v5.2.5

v5.2.4

22 Oct 15:20
42a488c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.2.3...v5.2.4

v5.2.3

18 Oct 17:27
4545c08
Compare
Choose a tag to compare

What's Changed

  • Remove deprecated @types/commander package by @techvlad in #846
  • Print CLI output when running npx typia setup. by @samchon in #847

Full Changelog: v5.2.2...v5.2.3

v5.2.2

12 Oct 10:53
6d30759
Compare
Choose a tag to compare

When JSON.stringify() function be called about Map<Key, T> type, it always returns the empty bracket value {}. Until now, I'd developed typia to return the empty bracket value {}, following the standard JSON.stringify() function.

However, as most TypeScript/JavaScript developers do not know about that and there's not any problem when using the Map type on typia.json.stringify<T>() function ini the compile time, it was possible to misunderstand that typia's stringify function has a bug about the Map time.

In such reason, I've decided to throw a compile error when such non-supported type being used in the typia.json functions. Also, such strategy would be helpful for typia users to avoid taking a mistake using such non-supported type on the JSON functions.

What's Changed

Full Changelog: v5.2.1...v5.2.2

v5.2.1

11 Oct 11:21
1a6d4b9
Compare
Choose a tag to compare

To support yarn berry which had banned npm prepare script, I'd changed setup wizard of typia to define npm postinstall script instead.

By the way, unlike the npm prepare script which works on only in the local drive and does not work when be installed from remote npm, npm postinstall script is working even when installing from the remote npm. Therefore, when publishing an npm module which has installed tyipa through setup wizard, it enforces users of derived libraries to run the npm postinstall command that requires ts-patch module.

To fix this crazy bug, I've decided to ban yarn berry on the setup wizard. From now on, when you run the npx typia setup command, it will print a text that "yarn berry is not supported". If you still want to utilize the yarn berry, configure it manually by yourself please.

What's Changed

Full Changelog: v5.2.0...v5.2.1

v5.2.0

07 Oct 21:12
8717d4c
Compare
Choose a tag to compare

Added a new module notations to support naming convention converters.

This update is for future's nestia feature.

export namespace notations {
    export function camel<T>(input: T): CamelCase<T>;
    export function assertCamel<T>(input: unknown | T): CamelCase<T>;
    export function isCamel<T>(input: unknown | T): CamelCase<T> | null;
    export function validateCamel<T>(input: unknown | T): IValidation<CamelCase<T>>;

    export function pascal<T>(input: T): PascalCase<T>;
    export function assertPascal<T>(input: unknown | T): PascalCase<T>;
    export function isPascal<T>(input: unknown | T): PascalCase<T> | null;
    export function validatePascal<T>(input: unknown | T): IValidation<PascalCase<T>>;

    export function snake<T>(input: T): SnakeCase<T>;
    export function assertSnake<T>(input: unknown | T): SnakeCase<T>;
    export function isSnake<T>(input: unknown | T): SnakeCase<T> | null;
    export function validateSnake<T>(input: unknown | T): IValidation<SnakeCase<T>>;
}

What's Changed

  • New module notations, the naming convention converters by @samchon in #835

Full Changelog: v5.1.6...v5.2.0

v5.1.6

05 Oct 04:36
4172c5a
Compare
Choose a tag to compare

What's Changed

Full Changelog: v5.1.5...v5.1.6

v5.1.5

29 Sep 16:52
143c439
Compare
Choose a tag to compare

New module http has been newly added.

export namespace http {
    export function parameter<T extends boolean | bigint | number | string>(input: string): T;

    export function headers<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T>;
    export function isHeaders<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T> | null;
    export function assertHeaders<T extends object>(input: Record<string, string | string[] | undefined>): Resolved<T>;
    export function validateHeaders<T extends object>(input: Record<string, string | string[] | undefined>): IValidation<Resolved<T>>;

    export function query<T extends object>(input: URLSearchParams): Resolved<T>;
    export function isQuery<T extends object>(input: URLSearchParams): Resolved<T> | null;
    export function assertQuery<T extends object>(input: URLSearchParams): Resolved<T>;
    export function validateQuery<T extends object>(input: URLSearchParams): IValidation<Resolved<T>>;
}

For reference, those features had been developed in @nestia/core for a long time.

The reason why migrating them from @nestia/core is to support Fastify plugin like nestia case. In the same reason, I've changed naming strategy of JSON schema (IJsonComponents) to be much simpler.

Also, fixed a bug occurred only when tsconfig.json has configured exactOptionalPropertyTypes option and utilizing Partial<T> and Required<T> types.

What's Changed

Full Changelog: v5.0.5...v5.1.5

v5.0.5

21 Sep 07:30
5c2186f
Compare
Choose a tag to compare

From now on, generation mode supports *.tsx files.

What's Changed

New Contributors

Full Changelog: v5.0.4...v5.0.5