Aktualizacja re-reselect z 5.x do 6.x
Porównanie publicznego API re-reselect 5.1.1 i 6.0.0, obliczone automatycznie na podstawie typów TypeScript. Zmieniona sygnatura to możliwa zmiana niekompatybilna, a nie pewność.
Podsumowanie
| Usunięte ścieżki importu | 0 |
|---|---|
| Usunięte eksporty | 11 |
| Zmienione sygnatury | 4 |
| Usunięte składowe klas lub interfejsów | 0 |
| Zmienione składowe klas lub interfejsów | 3 |
| Nowo wycofane | 0 |
| Zmiany wymagań (engines, zależności peer) | 1 |
| Nowe eksporty | 3 |
Usunięte eksporty
| import | export | kind | Przed |
|---|---|---|---|
re-reselect | Selector | type | (state: S) => R |
re-reselect | OutputSelector | type | Selector<S, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } |
re-reselect | ParametricSelector | type | (state: S, props: P, ...args: any[]) => R |
re-reselect | ParametricKeySelector | type | (state: S, props: P, ...args: any[]) => any |
re-reselect | CreateSelectorInstance | type | { [x: string]: any; [x: number]: any; [x: symbol]: any; } |
re-reselect | OutputParametricSelector | type | ParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } |
re-reselect | OptionalParametricSelector | type | (state: S, props?: P | undefined, ...args: any[]) => R |
re-reselect | ParametricKeySelectorCreator | type | (selectorInputs: { inputSelectors: D; resultFunc: C; keySelector: ParametricKeySelector<S, P>; }) => ParametricKeySelector<S, P> |
re-reselect | OutputParametricCachedSelector | type | (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-reselect | OutputOptionalParametricSelector | type | OptionalParametricSelector<S, P, R> & { resultFunc: C; dependencies: D; recomputations: () => number; resetRecomputations: () => number; } |
re-reselect | OutputOptionalParametricCachedSelector | type | (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>; } |
Zmienione sygnatury
| export | Przed | Po |
|---|---|---|
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> |
Usunięte składowe klas lub interfejsów
Nie wykryto.
Zmienione składowe klas lub interfejsów
| member | Przed | Po |
|---|---|---|
LruObjectCache.isValidCacheKey | (key: ObjectCacheKey): boolean | (cacheKey: ObjectCacheKey): boolean |
FifoObjectCache.isValidCacheKey | (key: ObjectCacheKey): boolean | (cacheKey: ObjectCacheKey): boolean |
FlatObjectCache.isValidCacheKey | (key: ObjectCacheKey): boolean | (cacheKey: ObjectCacheKey): boolean |
Nowo wycofane
Nie wykryto.
Zmiany wymagań (engines, zależności peer)
| Przed | Po | |
|---|---|---|
peerDependencies.reselect | ^5.0.0 | ^5.1.0 |
Nowe eksporty (3)
| import | export | kind |
|---|---|---|
re-reselect | TypedKeySelector | type |
re-reselect | CreateCachedSelector | interface |
re-reselect | CreateCachedSelectorOptions | type |
Przekaż te dane swojemu agentowi AI
Vigia to darmowy serwer MCP: Twój agent programistyczny sprawdza wersje, zmiany łamiące zgodność i podatności, zanim napisze kod. Bez rejestracji i klucza API.
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
Dodaj do CursorDodaj do VS Code★ Gwiazdka na GitHubie
Dowolny inny klient MCP
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }Skill dla agentów (SKILL.md): mówi agentowi, kiedy używać Vigii · GitHub Action dla pull requestów
Najczęściej zadawane pytania
Jakie są zmiany niekompatybilne przy aktualizacji re-reselect z 5 do 6?
Między re-reselect 5.1.1 a 6.0.0 Vigia znalazła 11 usuniętych eksportów, 4 zmienionych sygnatur i 3 usuniętych lub zmienionych składowych klas lub interfejsów.
Co zostało wycofane w re-reselect 6?
0 eksportów lub składowych oznaczono w re-reselect 6.0.0 jako wycofane.
Dla agentów
GET https://vigia.coredls.cloud/v1/packages/npm/re-reselect/upgrade?from=5.1.1&to=6.0.0