Vigia

Upgrading query-string from 9.x to 10.x

Comparison of the public API of query-string 9.5.1 and 10.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports0
Changed signatures12
Removed class or interface members0
Changed class or interface members0
Newly deprecated0
Requirement changes (engines, peer dependencies)1
New exports0

Removed exports

None detected.

Changed signatures

exportBeforeAfter
query-string · ParsedUrl{ readonly url: string; readonly query: ParsedQuery<string>; readonly fragmentIdentifier?: string | undefined; }{ readonly url: string; readonly query: ParsedQuery<T>; readonly fragmentIdentifier?: string | undefined; }
query-string · UrlObject{ readonly url: string; readonly query?: StringifiableRecord | undefined; readonly fragmentIdentifier?: string | undefined; }{ readonly url: string; readonly query?: Record<string, any> | undefined; readonly fragmentIdentifier?: string | undefined; }
query-string · ParseOptions{ readonly decode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: false | ((itemLeft: string, itemRight: string) => number) | undefined; readonly parseNumbers?: boolean | undefined; readonly parseBooleans?: boolean | undefined; readonly parseFragmentIdentifier?: boolean | undefined; readonly types?: Record<string, "string" | "number" | "boolean" | "string[]" | "number[]" | ((value: string) => unknown)> | undefined; }{ readonly decode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: boolean | ((itemLeft: string, itemRight: string) => number) | undefined; readonly parseNumbers?: boolean | undefined; readonly parseBooleans?: boolean | undefined; readonly parseFragmentIdentifier?: boolean | undefined; readonly types?: Record<string, "string" | "number" | "boolean" | "string[]" | "number[]" | ((value: string) => unknown)> | undefined; …
query-string · StringifyOptions{ readonly strict?: boolean | undefined; readonly encode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: false | ((itemLeft: string, itemRight: string) => number) | undefined; readonly skipNull?: boolean | undefined; readonly skipEmptyString?: boolean | undefined; readonly replacer?: ((key: string, value: unknown) => unknown) | undefined; }{ readonly strict?: boolean | undefined; readonly encode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: boolean | ((itemLeft: string, itemRight: string) => number) | undefined; readonly skipNull?: boolean | undefined; readonly skipEmptyString?: boolean | undefined; readonly replacer?: ((key: string, value: unknown) => unknown) | undefined; }
query-string/base · pick(url: string, keys: readonly string[], options?: (ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | number | boolean) => boolean, options?: ({ parseBooleans: true; parseNumbers: true; } & ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | boolean) => boolean, options?: ({ parseBooleans: true; } & ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | number) => boolean, options?: ({ parseNumbers: true; } & ParseOptions & Stringi…(url: string, keys: readonly string[], options?: (ParseOptions & StringifyOptions) | undefined): string | <Options extends ParseOptions & StringifyOptions>(url: string, filter: (key: string, value: ParsedValue<Options> | (ParsedValue<Options> | null)[] | null) => boolean, options?: KnownOptions<Options> | undefined): string
query-string/base · parse(query: string, options: { parseBooleans: true; parseNumbers: true; } & ParseOptions): ParsedQuery<string | number | boolean> | (query: string, options: { parseBooleans: true; } & ParseOptions): ParsedQuery<string | boolean> | (query: string, options: { parseNumbers: true; } & ParseOptions): ParsedQuery<string | number> | (query: string, options?: ParseOptions | undefined): ParsedQuery<string><Options extends ParseOptions>(query: string, options?: KnownOptions<Options> | undefined): ParsedQuery<ParsedValue<Options>>
query-string/base · exclude(url: string, keys: readonly string[], options?: (ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | number | boolean) => boolean, options?: ({ parseBooleans: true; parseNumbers: true; } & ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | boolean) => boolean, options?: ({ parseBooleans: true; } & ParseOptions & StringifyOptions) | undefined): string | (url: string, filter: (key: string, value: string | number) => boolean, options?: ({ parseNumbers: true; } & ParseOptions & Stringi…(url: string, keys: readonly string[], options?: (ParseOptions & StringifyOptions) | undefined): string | <Options extends ParseOptions & StringifyOptions>(url: string, filter: (key: string, value: ParsedValue<Options> | (ParsedValue<Options> | null)[] | null) => boolean, options?: KnownOptions<Options> | undefined): string
query-string/base · parseUrl(url: string, options?: ParseOptions | undefined): ParsedUrl<Options extends ParseOptions>(url: string, options?: KnownOptions<Options> | undefined): ParsedUrl<ParsedValue<Options>>
query-string/base · ParsedUrl{ readonly url: string; readonly query: ParsedQuery<string>; readonly fragmentIdentifier?: string | undefined; }{ readonly url: string; readonly query: ParsedQuery<T>; readonly fragmentIdentifier?: string | undefined; }
query-string/base · UrlObject{ readonly url: string; readonly query?: StringifiableRecord | undefined; readonly fragmentIdentifier?: string | undefined; }{ readonly url: string; readonly query?: Record<string, any> | undefined; readonly fragmentIdentifier?: string | undefined; }
query-string/base · ParseOptions{ readonly decode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: false | ((itemLeft: string, itemRight: string) => number) | undefined; readonly parseNumbers?: boolean | undefined; readonly parseBooleans?: boolean | undefined; readonly parseFragmentIdentifier?: boolean | undefined; readonly types?: Record<string, "string" | "number" | "boolean" | "string[]" | "number[]" | ((value: string) => unknown)> | undefined; }{ readonly decode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: boolean | ((itemLeft: string, itemRight: string) => number) | undefined; readonly parseNumbers?: boolean | undefined; readonly parseBooleans?: boolean | undefined; readonly parseFragmentIdentifier?: boolean | undefined; readonly types?: Record<string, "string" | "number" | "boolean" | "string[]" | "number[]" | ((value: string) => unknown)> | undefined; …
query-string/base · StringifyOptions{ readonly strict?: boolean | undefined; readonly encode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: false | ((itemLeft: string, itemRight: string) => number) | undefined; readonly skipNull?: boolean | undefined; readonly skipEmptyString?: boolean | undefined; readonly replacer?: ((key: string, value: unknown) => unknown) | undefined; }{ readonly strict?: boolean | undefined; readonly encode?: boolean | undefined; readonly arrayFormat?: "bracket" | "index" | "comma" | "separator" | "bracket-separator" | "colon-list-separator" | "none" | undefined; readonly arrayFormatSeparator?: string | undefined; readonly sort?: boolean | ((itemLeft: string, itemRight: string) => number) | undefined; readonly skipNull?: boolean | undefined; readonly skipEmptyString?: boolean | undefined; readonly replacer?: ((key: string, value: unknown) => unknown) | undefined; }

Removed class or interface members

None detected.

Changed class or interface members

None detected.

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

BeforeAfter
engines.node>=18>=22

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading query-string from 9 to 10?

Between query-string 9.5.1 and 10.0.0, Vigia found 0 removed exports, 12 changed signatures and 0 removed or changed class or interface members.

What became deprecated in query-string 10?

0 exports or members are newly marked as deprecated in query-string 10.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/query-string/upgrade?from=9.5.1&to=10.0.0