Skip to content

Bump quicktype from 15.1.0 to 26.0.0 - #8439

Open
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/quicktype-26.0.0
Open

Bump quicktype from 15.1.0 to 26.0.0#8439
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/quicktype-26.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 21, 2026

Copy link
Copy Markdown
Contributor

Bumps quicktype from 15.1.0 to 26.0.0.

Release notes

Sourced from quicktype's releases.

quicktype 26.0.0

quicktype 26 modernizes the default generated code across most target languages: current serialization frameworks, current language standards, and safer types. Because versions 24, 25, and 26 shipped in quick succession, many users will upgrade directly from 23.x — so this document calls out every breaking change since 23.2.6, not just changes since 25.1.0. Nearly every changed generated-code default has a flag to restore the previous output (see the table below).

Am I affected?

  • CLI users: check the generated-code defaults table for your target languages, and note the stricter date-time/integer inference. Add the listed flags to keep your previous output.
  • quicktype-core embedders: additionally note the Node.js ≥ 20.19 requirement, the new exports map (deep imports only via quicktype-core/dist/*), typed rendererOptions keys, and the stricter languageNamed().

Breaking changes since 23.2.6

Runtime and packaging (introduced in 24.x)

  • Node.js 20.19 or newer is required. The published packages are built and tested on Node.js 20, 22, and 24.
  • Native fetch replaces bundled fetch polyfills. If your application supplied a fetch polyfill only for quicktype, you can remove it.
  • quicktype-core ships a dual CJS/ESM build with an exports map. require resolves the CommonJS build, import resolves the ESM build. Deep imports must go through quicktype-core/dist/*; other undeclared paths no longer resolve.
  • languageNamed() accepts only canonical language names. Display names and file extensions (e.g. "C++", "kt") are no longer accepted; unknown strings return undefined instead of throwing. Use isLanguageName() to validate arbitrary strings.

Core API (introduced in 25.0.0)

  • rendererOptions keys are type-checked in the quicktype-core API. TypeScript consumers passing unknown option keys now get compile errors.

Type inference (introduced in 25.0.0)

  • Date-times are inferred only for strict RFC 3339 strings. Loosely formatted date strings stay plain strings.
  • Whole numbers outside the target's integer range are inferred as floating point. For example, 9007199254740991 now becomes Float64 in Crystal instead of an overflowing Int32.

Generated-code defaults (new in 26.0.0)

These change what the generated code looks like and which dependencies it needs. Each has a flag to restore the previous output.

Language New default Previous default Restore old behavior
C# System.Text.Json ([JsonPropertyName], #nullable enable), C# 8 Newtonsoft.Json, C# 6 --framework NewtonSoft --csharp-version 6
Kotlin Jackson Klaxon --framework klaxon
C++ C++17 std::variant / std::optional, no Boost dependency boost::variant / boost::optional --boost
Java List<T> T[] arrays --array-type array
Python @dataclass + PEP 585 generics (list[...]) — generated code now targets Python 3.9+ explicit __init__, typing.List --python-version 3.7
Scala 3 circe Encoder/Decoder derivation plain case classes --just-types
Swift explicit CodingKeys enums implicit coding keys --no-coding-keys
Dart final fields (immutable) mutable fields --no-final-props
TypeScript / Flow string-literal unions instead of enums; unknown instead of any enums; any --no-prefer-unions --no-prefer-unknown
Elm Elm 0.19, native List Elm 0.18, Array --array-type array (0.18 no longer supported)
Haskell native lists Vector (no restore flag)
Rust #[derive(Debug, Clone, Serialize, Deserialize)], pub fields Serialize/Deserialize only, private fields --no-derive-debug --no-derive-clone --visibility private

Also in TypeScript, JSON Schema arrays with minItems/maxItems (and 2020-12 prefixItems) now generate tuple types.

Output for the remaining targets is unchanged: in our JSON-input comparison against 23.2.6, C (cJSON), Elixir, Flow, Go, JavaScript, JavaScript PropTypes, JSON Schema, Objective-C, Pike, Ruby, Smithy, TypeScript, TypeScript Effect Schema, and TypeScript Zod produced byte-identical output. (TypeScript and Flow appear in both lists because their new defaults only alter output where enums, any, or tuple-typed arrays occur — typically with JSON Schema input.)

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for quicktype since your current version.


Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Jul 21, 2026
@github-actions
github-actions Bot enabled auto-merge July 21, 2026 00:56
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/quicktype-26.0.0 branch 23 times, most recently from dae88bb to 763e41f Compare July 24, 2026 04:51
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/quicktype-26.0.0 branch 28 times, most recently from af73ce1 to d3e71a5 Compare August 11, 2026 04:10
Bumps [quicktype](https://github.com/glideapps/quicktype) from 15.1.0 to 26.0.0.
- [Release notes](https://github.com/glideapps/quicktype/releases)
- [Commits](https://github.com/glideapps/quicktype/commits/v26.0.0)

---
updated-dependencies:
- dependency-name: quicktype
  dependency-version: 26.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants