Vigia

Upgrading re-reselect from 5.x to 6.x

Comparison of the public API of re-reselect 5.1.1 and 6.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 exports11
Changed signatures4
Removed class or interface members0
Changed class or interface members3
Newly deprecated0
Requirement changes (engines, peer dependencies)1
New exports3

Removed exports

importexportkindBefore
re-reselectSelectortype(state: S) => R
re-reselectOutputSelectortypeSelector<S, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; }
re-reselectParametricSelectortype(state: S, props: P, ...args: any[]) => R
re-reselectParametricKeySelectortype(state: S, props: P, ...args: any[]) => any
re-reselectCreateSelectorInstancetype{ [x: string]: any; [x: number]: any; [x: symbol]: any; }
re-reselectOutputParametricSelectortypeParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; }
re-reselectOptionalParametricSelectortype(state: S, props?: P | undefined, ...args: any[]) => R
re-reselectParametricKeySelectorCreatortype(selectorInputs: { inputSelectors: D; resultFunc: C; keySelector: ParametricKeySelector<S, P>; }) => ParametricKeySelector<S, P>
re-reselectOutputParametricCachedSelectortype(options: ParametricKeySelector<S, P> | ParametricOptions<S, P, C, D>) => ParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } & { getMatchingSelector: (state: S, props: P, ...args: any[]) => OutputParametricSelector<S, P, R, C, D>; removeMatchingSelector: (state: S, props: P, ...args: any[]) => void; clearCache: () => void; cache: ICacheObject; keySelector: ParametricKeySelector<S, P>; }
re-reselectOutputOptionalParametricSelectortypeOptionalParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; }
re-reselectOutputOptionalParametricCachedSelectortype(options: ParametricKeySelector<S, P> | ParametricOptions<S, P, C, D>) => OptionalParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } & { getMatchingSelector: (state: S, props?: P | undefined, ...args: any[]) => OutputOptionalParametricSelector<S, P, R, C, D>; removeMatchingSelector: (state: S, props?: P | undefined, ...args: any[]) => void; clearCache: () => void; cache: ICacheObject; keySelector: ParametricKeySelector<S, P>; }

Changed signatures

exportBeforeAfter
re-reselect · KeySelectorCreator(selectorInputs: { inputSelectors: D; resultFunc: C; keySelector: KeySelector<S>; }) => KeySelector<S>(selectorInputs: { inputSelectors: InputSelectors; resultFunc: Combiner<InputSelectors, Result>; keySelector?: TypedKeySelector<InputSelectors> | undefined; }) => TypedKeySelector<InputSelectors>
re-reselect · OutputCachedSelector(options: KeySelector<S> | Options<S, C, D>) => Selector<S, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } & { getMatchingSelector: (state: S, ...args: any[]) => OutputSelector<S, R, C, D>; removeMatchingSelector: (state: S, ...args: any[]) => void; clearCache: () => void; cache: ICacheObject; keySelector: KeySelector<S>; }any
re-reselect · createCachedSelector<S, R1, T>(selector: Selector<S, R1>, combiner: (res: R1) => T, createSelectorOptions?: any): OutputCachedSelector<S, T, (res: R1) => T, [Selector<S, R1>]> | <S, P, R1, T>(selector: ParametricSelector<S, P, R1>, combiner: (res: R1) => T, createSelectorOptions?: any): OutputParametricCachedSelector<S, P, T, (res: R1) => T, [ParametricSelector<S, P, R1>]> | <S, R1, R2, T>(selector1: Selector<S, R1>, selector2: Selector<S, R2>, combiner: (res1: R1, res2: R2) => T, createSelectorOptions?: any): OutputCachedSelector<S, T, (res1: R1, res2: R2) => T, [Selector<S, R1>, Selector<S, R2>]> | <S, P, R1, R…<InputSelectors extends SelectorArray<any>, Result>(...createSelectorArgs: [...inputSelectors: InputSelectors, combiner: Combiner<InputSelectors, Result>]): (polymorphicOptions: PolymorphicCachedOptions<InputSelectors, Result>) => any | <InputSelectors extends SelectorArray<any>, Result>(...createSelectorArgs: [...inputSelectors: InputSelectors, combiner: Combiner<InputSelectors, Result>, createSelectorOptions: CreateSelectorOptions]): (polymorphicOptions: PolymorphicCachedOptions<InputSelectors, Result>) => any | <InputSelectors extends SelectorArray<any>, Result>(inputSelectors: [...InputSel…
re-reselect · createStructuredCachedSelector<T extends { [key: string]: (state: any, ...args: any[]) => any; }, S = $Values<{ [K in keyof T]: Parameters<T[K]>[0]; }>, P = Exclude<$Values<{ [K in keyof T]: Parameters<T[K]>[1]; }>, undefined>, R = { [K in keyof T]: ReturnType<T[K]>; }>(selectors: T): StructuredIsParametric<T> extends false ? OutputCachedSelector<S, R, (...args: $Values<R>[]) => R, Selector<S, $Values<R>>[]> : StructuredHasRequiredProps<T> extends true ? OutputParametricCachedSelector<S, P, R, (...args: $Values<R>[]) => R, ParametricSelector<S, P, $Values<R>>[]> : OutputOptionalParametricCachedSelector<S, P, R, (...args: $…<InputSelectorsObject extends SelectorsObject<any>>(selectors: InputSelectorsObject): StructuredCachedSelector<InputSelectorsObject>

Removed class or interface members

None detected.

Changed class or interface members

memberBeforeAfter
LruObjectCache.isValidCacheKey(key: ObjectCacheKey): boolean(cacheKey: ObjectCacheKey): boolean
FifoObjectCache.isValidCacheKey(key: ObjectCacheKey): boolean(cacheKey: ObjectCacheKey): boolean
FlatObjectCache.isValidCacheKey(key: ObjectCacheKey): boolean(cacheKey: ObjectCacheKey): boolean

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

BeforeAfter
peerDependencies.reselect^5.0.0^5.1.0
New exports (3)
importexportkind
re-reselectTypedKeySelectortype
re-reselectCreateCachedSelectorinterface
re-reselectCreateCachedSelectorOptionstype

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 re-reselect from 5 to 6?

Between re-reselect 5.1.1 and 6.0.0, Vigia found 11 removed exports, 4 changed signatures and 3 removed or changed class or interface members.

What became deprecated in re-reselect 6?

0 exports or members are newly marked as deprecated in re-reselect 6.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/re-reselect/upgrade?from=5.1.1&to=6.0.0