Skip to content

Releases: glideapps/quicktype

v25.0.0-pre1

v25.0.0-pre1 Pre-release
Pre-release

Choose a tag to compare

@schani schani released this 13 Jul 20:39
2164e06

What's Changed

  • Added support for original field and type naming for C++ language. by @basdl in #2639
  • TypeScript dependency cleanups: latest compiler, devDeps, exact input pin, dead artifact removal by @schani in #2915
  • Infer date-times only for strict RFC 3339 strings by @schani in #2916
  • Document LanguageName and the isLanguageName validation pattern by @schani in #2917
  • Bump yaml from 2.8.3 to 2.9.0 by @dependabot[bot] in #2922
  • Bump tsx from 4.23.0 to 4.23.1 by @dependabot[bot] in #2921
  • Upgrade pako 1.0.6 → 3.0.1 by @schani in #2924
  • Finish the Biome migration: working lint scripts, CI format check, drop dead ESLint deps by @schani in #2923
  • Support prerelease publishing from release tags by @schani in #2925
  • Adopt Biome lint rules by @schani in #2926
  • CI: run once-only extras on Node 24; add Node 22 support leg by @schani in #2927
  • fix(swift): emit JSONNull hash(into:) by default by @AysajanE in #2928

New Contributors

Full Changelog: v24.0.2...v25.0.0-pre1

v24.0.2

Choose a tag to compare

@schani schani released this 11 Jul 01:24
7a86b5e

What's Changed

  • README: document esbuild ESM bundling workaround for quicktype-core by @schani in #2912

Full Changelog: v24.0.1...v24.0.2

v24.0.1

Choose a tag to compare

@schani schani released this 11 Jul 00:57
26aacd0

What's Changed

  • Replace typescript-json-schema fork with upstream, dropping deprecated glob@7/inflight by @schani in #2909
  • Fix published .d.ts files breaking strict consumers (skipLibCheck: false) by @schani in #2910
  • Revert "Make languageNamed accept display names and extensions again" (#2883) by @schani in #2911
  • quicktype-core: ship a dual CJS/ESM build with an "exports" map by @schani in #2908

Full Changelog: v24.0.0...v24.0.1

v24.0.0

Choose a tag to compare

@schani schani released this 10 Jul 19:22
9b81813

quicktype 24.0.0

quicktype 24 modernizes the supported Node.js runtime, fixes language lookup and Windows schema-path regressions, and moves package publishing to GitHub Releases.

Highlights

  • Node.js 20 or newer is now required. Development, fixture CI, and publishing use Node.js 24, while the published npm packages are built and tested on both Node.js 20 and 24.
  • Native fetch replaces bundled fetch polyfills. URL inputs, remote schema references, and GraphQL introspection now use the runtime's native Fetch API.
  • Language lookup is compatible with display names and extensions again. languageNamed() and isLanguageName() once more accept values such as TypeScript, C++, JSON Schema, and kt, case-insensitively. Unknown strings return undefined/false instead of throwing. #2883
  • Windows absolute schema paths work correctly. Drive-letter and UNC paths are normalized as file URIs, including schemas that use relative $ref references. #2886

Tooling and release process

  • Migrated standalone regression tests to Vitest while retaining the cross-language fixture suite. #2892
  • Publishing now starts from stable GitHub Releases tagged vMAJOR.MINOR.PATCH. Release versions are stamped into npm package manifests and the VS Code extension during CI, with checks that prevent non-forward releases and safely skip already-published artifacts on reruns. #2902

Upgrade notes

  • Upgrade to Node.js 20 or newer before installing quicktype 24.
  • If your application supplied a fetch polyfill only for quicktype, it can now be removed on supported Node.js versions.
  • Calls to languageNamed() with arbitrary strings should continue to handle its undefined result for unknown languages.