Skip to content

chore(deps): update dependency arktype to v2.2.3 - #147

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/arktype-2.x-lockfile
Open

chore(deps): update dependency arktype to v2.2.3#147
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/arktype-2.x-lockfile

Conversation

@renovate

@renovate renovate Bot commented Feb 9, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
arktype (source) 2.1.202.2.3 age confidence

Release Notes

arktypeio/arktype (arktype)

v2.2.3

Compare Source

Fix type.fn.raw throwing at runtime

type.fn.raw is documented as an untyped alias of type.fn, but was undefined at runtime and threw type.fn.raw is not a function when called. It now references the underlying parser directly, so it parses, runs, and validates like type.fn without type-level inference. Thanks to @​aarsh767.

Anchor versioned UUID validation

string.uuid no longer accepts strings that merely contain a UUID. The internal #versioned pattern is now anchored like the individual version keywords, so leading or trailing content is rejected. Thanks to @​WolfieLeader.

Fix inferred output of declared morphs

The output side of a declared definition now wraps its preinferred value in Out<...>, matching the inference of the equivalent definition without declare. Thanks to @​eralmansouri.

Allow Object.prototype method names as keys

Keys like constructor, toString, and hasOwnProperty are no longer incorrectly reported as duplicate keys, since duplicate detection now uses a prototype-free record. Thanks to @​kaigritun.

v2.2.2

Compare Source

Fix precompilation of private aliases

A private alias referenced only within its own scope is no longer skipped during JIT precompilation, so its optimized traversal is bound correctly instead of falling back to the unbound reference.

Harden ArkErrors JSON serialization

ArkErrors doubles as a Standard Schema issues array, so JSON.stringify no longer assumes every indexed entry is an ArkError with a toJSON method (e.g. plain issue-shaped entries from other validators). Inherited array methods (map, filter, slice, …) now return a plain Array via Symbol.species, preventing callbacks that return primitives from producing a malformed ArkErrors.

v2.2.1

Compare Source

Improve regex inference for zero-min quantifiers on numeric patterns
// was: Regex<`${number}`>
// now: Regex<"" | `${number}`>
regex("^\\d*$")

See arkregex CHANGELOG for full notes.

v2.2.0

Compare Source

Full announcement: https://arktype.io/docs/blog/2.2

type.fn - Validated functions

Define functions with runtime-validated parameters and return types. Supports defaults, optionals, and variadics.

const len = type.fn("string | unknown[]", ":", "number")(s => s.length)

len("foo") // 3
len([1, 2]) // 2
Type-safe regex via arkregex

Regex literals in definitions now carry full type inference. x-prefix parses capture groups at runtime.

const T = type({
	birthday: "x/^(?<month>\\d{2})-(?<day>\\d{2})-(?<year>\\d{4})$/"
})

T.assert({ birthday: "05-21-1993" }).birthday.groups.month // "05"
@ark/json-schema - Bidirectional JSON Schema

Parse JSON Schema into ArkType Types with the new @ark/json-schema package, complementing toJsonSchema(). Thanks to @​TizzySaurus.

Configurable toJsonSchema

Handle incompatibilities between ArkType and JSON Schema with granular fallback codes. Supports draft-07/draft-2020-12 targets and cyclic types.

Standard Schema as definitions

Any Standard Schema compliant validator (Zod, Valibot, etc.) can be embedded directly in ArkType definitions.

select - Deep reference introspection

Query the internal structure of a type by node kind and predicate. Use selectors to configure specific references.

Improved type.declare

Now supports morph-aware declarations via a side context, and optionality via property values.

N-ary operators

type.or, type.and, type.merge, and type.pipe accept variadic definitions.

Additional highlights
  • |> string-embeddable pipe operator
  • type.valueOf for TS enums
  • string.hex + string.regex keywords
  • Serializable ArkErrors (flatByPath, flatProblemsByPath, toJSON)
  • TraversalError replaces AggregateError
  • exactOptionalPropertyTypes config
  • ES2020 + Hermes compatibility
  • In-docs playground
  • Better JSDoc + go-to-definition
  • Cyclic unions can now discriminate on nested paths

v2.1.29

Compare Source

Improve regex inference for certain numeric expressions
// was: Regex<`${bigint}${bigint}`>
// now: Regex<`${number}`>
regex("^\\d{2}$")

See arkregex CHANGELOG for full notes.

v2.1.28

Compare Source

JSON Schema improvements
  • Adds support for the new Standard JSON Schema interface (see standardschema.dev)
  • Now accepts a target option and can generate draft-07 in addition to draft-2020-12
Standard Schema is now a valid definition

Any Standard Schema compliant validator can now be passed directly to type, either directly or nested in a structural ArkType definition, and will be fully inferred and validated.

import { type } from "arktype"
import * as v from "valibot"
import z from "zod"

const ZodAddress = z.object({
	street: z.string(),
	city: z.string()
})

const User = type({
	name: "string",
	age: v.number(),
	address: ZodAddress
})
e(x)ec mode for regex types
const User = type({
	// x-prefix a regex literal to parse its type-safe capture groups
	birthday: "x/^(?<month>\\d{2})-(?<day>\\d{2})-(?<year>\\d{4})$/"
})

const data = User.assert({ birthday: "05-21-1993" })

// fully type-safe via arkregex
console.log(data.birthday.groups) // { month: "05", day: "21", year: "1993" }
more flexible type.declare

Optionality can now be expressed via a property value in addition to its key:

type Expected = { f?: string }

const T = type.declare<Expected>().type({
	// previously failed with `"f?" is missing`
	f: "string?"
})
fixed a bug causing predicate errors after the first to not be reported
import { type } from "arktype"

const Dates = type({
	date1: "string.date",
	date2: "string.date",
	date3: "string.date"
})

// now correctly reports the errors on `date2` and `date3` in addition to `date1`
Dates.assert({
	date1: "",
	date2: "",
	date3: ""
})

See #​1557

v2.1.27

Compare Source

fix assignability for certain objects like Module

The following assignment will now correctly fail (thanks @​LukeAbby)🔒

import { type } from "arktype"

const types: Module<{ foo: string }> = type.module({ foo: "unknown" })
bump regex inference to arkregex 0.0.3

v2.1.26

Compare Source

es2020 compatibility

Remove usages of newer prototypes methods like .at() to better support legacy browsers

improve external generic inference

Some inference scenarios like the following involving default values are now more cooperative (thanks @​Andarist) 🎉

function someFunction<TSchema extends Record<string, any>>(
	schema: Type<TSchema, {}>
): (typeof schema)["infer"] {
	const someData = { hello: "world" }
	return schema.assert(someData)
}

const schema = type({
	hello: type("string").pipe(s => s === "world"),
	goodbye: "string='blah'"
})

someFunction(schema)

v2.1.25

Compare Source

bump regex inference to arkregex 0.0.2

v2.1.24

Compare Source

bump regex inference to arkregex 0.0.1
duplicate key errors

Definitions like the following now throw a descriptive error:

const T = type({
	foo: "string",
	foo?: "string"
})

v2.1.23

Compare Source

regex literals are now inferred (will be announced and documented as part of 2.2)
fix an issue with some discriminated morphs (thanks @​JeremyMoeglich)

See #​1464

v2.1.22

Compare Source

fix an issue with some recursive transforms

See #​1496

v2.1.21

Compare Source

~standard toJSONSchema support

Adds support for the upcoming StandardJSONSchemaSourceV1 spec (standardschema.dev)


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from 7399d4b to 7390ed0 Compare February 15, 2026 11:13
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from 5417718 to 44c091a Compare March 1, 2026 06:40
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 3 times, most recently from 3037b90 to 4b90d38 Compare March 3, 2026 20:36
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from 4b90d38 to 4ee866b Compare March 11, 2026 17:32
@renovate renovate Bot changed the title chore(deps): update dependency arktype to v2.1.29 chore(deps): update dependency arktype to v2.2.0 Mar 11, 2026
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 4 times, most recently from 640b304 to b867bd7 Compare March 19, 2026 15:26
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 3 times, most recently from 1c1f1ca to 2424b86 Compare April 3, 2026 23:27
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 4 times, most recently from ee864bc to 6e8731a Compare April 15, 2026 23:53
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from 6e8731a to c30d728 Compare April 19, 2026 05:20
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 7 times, most recently from b687bca to 3e72df8 Compare May 3, 2026 01:01
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from e6337ac to 429ec94 Compare May 12, 2026 11:11
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 6 times, most recently from b410c26 to b2692f0 Compare May 20, 2026 05:05
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from aeb2db1 to eadc87a Compare June 1, 2026 21:55
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from cbe8ad0 to fc8220b Compare June 17, 2026 17:16
@renovate renovate Bot changed the title chore(deps): update dependency arktype to v2.2.0 chore(deps): update dependency arktype to v2.2.1 Jun 17, 2026
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from fc8220b to 7057a33 Compare July 1, 2026 23:39
@renovate renovate Bot changed the title chore(deps): update dependency arktype to v2.2.1 chore(deps): update dependency arktype to v2.2.2 Jul 1, 2026
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from 7057a33 to 87ede72 Compare July 7, 2026 22:44
@renovate renovate Bot changed the title chore(deps): update dependency arktype to v2.2.2 chore(deps): update dependency arktype to v2.2.3 Jul 7, 2026
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from 6e6ae9c to bfe07a5 Compare July 16, 2026 21:04
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch 2 times, most recently from 8dab164 to 23b8b06 Compare July 24, 2026 15:56
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from 23b8b06 to e0b977e Compare July 28, 2026 03:58
@renovate
renovate Bot force-pushed the renovate/arktype-2.x-lockfile branch from e0b977e to 0c6c0f1 Compare July 30, 2026 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants