Vigia

Aktualizacja keyv z 5.x do 6.x

Porównanie publicznego API keyv 5.6.0 i 6.1.0, obliczone automatycznie na podstawie typów TypeScript. Zmieniona sygnatura to możliwa zmiana niekompatybilna, a nie pewność.

Podsumowanie

Usunięte ścieżki importu0
Usunięte eksporty7
Zmienione sygnatury3
Usunięte składowe klas lub interfejsów60
Zmienione składowe klas lub interfejsów22
Nowo wycofane2
Zmiany wymagań (engines, zależności peer)0
Nowe eksporty47

Usunięte eksporty

importexportkindPrzed
keyvSerializetype<Value>(data: DeserializedData<Value>) => string | Promise<string>
keyvStoredDatatypeValue | DeserializedData<Value> | undefined
keyvDeserializetype<Value>(data: string) => DeserializedData<Value> | Promise<DeserializedData<Value> | undefined> | undefined
keyvIEventEmittertype{ on(event: string, listener: (...arguments_: any[]) => void): IEventEmitter; }
keyvStoredDataRawtypeDeserializedData<Value> | undefined
keyvStoredDataNoRawtypeValue | undefined
keyvCompressionAdaptertype{ compress(value: any, options?: any): Promise<any>; decompress(value: any, options?: any): Promise<any>; serialize<Value>(data: DeserializedData<Value>): string | Promise<string>; deserialize<Value>(data: string): DeserializedData<Value> | Promise<DeserializedData<Value> | undefined> | undefined; }

Zmienione sygnatury

exportPrzedPo
keyv · KeyvEntry{ key: string; value: any; ttl?: number | undefined; }{ key: string; value: Value; ttl?: number | undefined; }
keyv · KeyvOptions{ emitErrors?: boolean | undefined; namespace?: string | undefined; serialize?: Serialize | undefined; deserialize?: Deserialize | undefined; store?: any; ttl?: number | undefined; compression?: any; stats?: boolean | undefined; useKeyPrefix?: boolean | undefined; throwOnErrors?: boolean | undefined; }{ namespace?: string | undefined; serialization?: false | KeyvSerializationAdapter | undefined; store?: any; ttl?: number | undefined; compression?: any; stats?: boolean | undefined; sanitize?: KeyvSanitizeOptions | undefined; encryption?: KeyvEncryptionAdapter | undefined; checkExpired?: boolean | undefined; }
keyv · KeyvStoreAdapter{ opts: any; namespace?: string | undefined; get<Value>(key: string): Promise<StoredData<Value>>; set(key: string, value: any, ttl?: number | undefined): any; setMany?(values: { key: string; value: any; ttl?: number | undefined; }[]): Promise<void>; delete(key: string): Promise<boolean>; clear(): Promise<void>; has?(key: string): Promise<boolean>; hasMany?(keys: string[]): Promise<boolean[]>; getMany?<Value>(keys: string[]): Promise<StoredData<Value | undefined>[]>; disconnect?(): Promise<void>; deleteMany?(key: string[]): Promise<boolean>; iterator?<Value>(namespace?: string | undefined): Asy…any

Usunięte składowe klas lub interfejsów

memberimportPrzed
Keyv.onkeyv(event: string, listener: EventListener): Keyv<GenericValue>
Keyv.offkeyv(event: string, listener: EventListener): void
Keyv.emitkeyv(event: string, ...arguments_: any[]): void
Keyv.oncekeyv(event: string, listener: EventListener): void
Keyv.optskeyvKeyvOptions_
Keyv.hookskeyvHooksManager
Keyv.listenerskeyv(event: string): EventListener[]
Keyv.serializekeyvSerialize | undefined
Keyv._serializekeyvany
Keyv.addListenerkeyv(event: string, listener: EventListener): void
Keyv.deserializekeyvDeserialize | undefined
Keyv._deserializekeyvany
Keyv.maxListenerskeyv(): number
Keyv.useKeyPrefixkeyvboolean
Keyv._getKeyPrefixkeyv(key: string): string
Keyv._maxListenerskeyvnumber
Keyv._useKeyPrefixkeyvany
Keyv.serializeDatakeyv<T>(data: DeserializedData<T>): Promise<string | DeserializedData<T>>
Keyv.throwOnErrorskeyvboolean
Keyv._throwOnErrorskeyvany
Keyv.removeListenerkeyv(event: string, listener: EventListener): void
Keyv._eventListenerskeyvMap<string, EventListener[]>
Keyv._getKeyUnprefixkeyv(key: string): string
Keyv.deserializeDatakeyv<T>(data: string | DeserializedData<T>): Promise<DeserializedData<T> | undefined>
Keyv.setMaxListenerskeyv(n: number): void
Keyv.generateIteratorkeyv(iterator: IteratorFunction): IteratorFunction
Keyv._getKeyPrefixArraykeyv(keys: string[]): string[]
Keyv.removeAllListenerskeyv(event?: string | undefined): void
Keyv._checkIterableAdapterkeyv(): boolean
Keyv._isValidStorageAdapterkeyv(store: any): boolean
default.onkeyv(event: string, listener: EventListener): Keyv<GenericValue>
default.offkeyv(event: string, listener: EventListener): void
default.emitkeyv(event: string, ...arguments_: any[]): void
default.oncekeyv(event: string, listener: EventListener): void
default.optskeyvKeyvOptions_
default.hookskeyvHooksManager
default.listenerskeyv(event: string): EventListener[]
default.serializekeyvSerialize | undefined
default._serializekeyvany
default.addListenerkeyv(event: string, listener: EventListener): void
default.deserializekeyvDeserialize | undefined
default._deserializekeyvany
default.maxListenerskeyv(): number
default.useKeyPrefixkeyvboolean
default._getKeyPrefixkeyv(key: string): string
default._maxListenerskeyvnumber
default._useKeyPrefixkeyvany
default.serializeDatakeyv<T>(data: DeserializedData<T>): Promise<string | DeserializedData<T>>
default.throwOnErrorskeyvboolean
default._throwOnErrorskeyvany
default.removeListenerkeyv(event: string, listener: EventListener): void
default._eventListenerskeyvMap<string, EventListener[]>
default._getKeyUnprefixkeyv(key: string): string
default.deserializeDatakeyv<T>(data: string | DeserializedData<T>): Promise<DeserializedData<T> | undefined>
default.setMaxListenerskeyv(n: number): void
default.generateIteratorkeyv(iterator: IteratorFunction): IteratorFunction
default._getKeyPrefixArraykeyv(keys: string[]): string[]
default.removeAllListenerskeyv(event?: string | undefined): void
default._checkIterableAdapterkeyv(): boolean
default._isValidStorageAdapterkeyv(store: any): boolean

Zmienione składowe klas lub interfejsów

memberPrzedPo
Keyv.get<Value = GenericValue>(key: string, options?: { raw: false; } | undefined): Promise<StoredDataNoRaw<Value>> | <Value = GenericValue>(key: string, options?: { raw: true; } | undefined): Promise<StoredDataRaw<Value>> | <Value = GenericValue>(key: string[], options?: { raw: false; } | undefined): Promi…<Value = GenericValue>(key: string): Promise<Value | undefined> | <Value = GenericValue>(key: string[]): Promise<(Value | undefined)[]>
Keyv.statsStatsManagerKeyvStats
Keyv.delete(key: string | string[]): Promise<boolean>(key: string): Promise<boolean> | (keys: string[]): Promise<boolean[]>
Keyv.getRaw<Value = GenericValue>(key: string): Promise<StoredDataRaw<Value>><Value = GenericValue>(key: string): Promise<KeyvStorageGetResult<Value>>
Keyv.getMany<Value = GenericValue>(keys: string[], options?: { raw: false; } | undefined): Promise<StoredDataNoRaw<Value>[]> | <Value = GenericValue>(keys: string[], options?: { raw: true; } | undefined): Promise<StoredDataRaw<Value>[]><Value = GenericValue>(keys: string[]): Promise<(Value | undefined)[]>
Keyv.setMany<Value = GenericValue>(entries: KeyvEntry[]): Promise<boolean[]><Value = GenericValue>(entries: KeyvEntry<Value>[]): Promise<boolean[]>
Keyv.iteratorIteratorFunction | undefined(): AsyncGenerator<[string, any], void, any>
Keyv.deleteMany(keys: string[]): Promise<boolean>(keys: string[]): Promise<boolean[]>
Keyv.getManyRaw<Value = GenericValue>(keys: string[]): Promise<StoredDataRaw<Value>[]><Value = GenericValue>(keys: string[]): Promise<KeyvStorageGetResult<Value>[]>
Keyv.compressionCompressionAdapter | undefinedKeyvCompressionAdapter | undefined
Keyv.constructor<GenericValue = any>(store?: KeyvStoreAdapter | KeyvOptions | Map<any, any> | undefined, options?: Omit<KeyvOptions, "store"> | undefined): Keyv<GenericValue> | <GenericValue = any>(options?: KeyvOptions | undefined): Keyv<GenericValue><GenericValue = any>(store?: any, options?: Omit<KeyvOptions, "store"> | undefined): Keyv<GenericValue> | <GenericValue = any>(options?: KeyvOptions | undefined): Keyv<GenericValue>
default.get<Value = GenericValue>(key: string, options?: { raw: false; } | undefined): Promise<StoredDataNoRaw<Value>> | <Value = GenericValue>(key: string, options?: { raw: true; } | undefined): Promise<StoredDataRaw<Value>> | <Value = GenericValue>(key: string[], options?: { raw: false; } | undefined): Promi…<Value = GenericValue>(key: string): Promise<Value | undefined> | <Value = GenericValue>(key: string[]): Promise<(Value | undefined)[]>
default.statsStatsManagerKeyvStats
default.delete(key: string | string[]): Promise<boolean>(key: string): Promise<boolean> | (keys: string[]): Promise<boolean[]>
default.getRaw<Value = GenericValue>(key: string): Promise<StoredDataRaw<Value>><Value = GenericValue>(key: string): Promise<KeyvStorageGetResult<Value>>
default.getMany<Value = GenericValue>(keys: string[], options?: { raw: false; } | undefined): Promise<StoredDataNoRaw<Value>[]> | <Value = GenericValue>(keys: string[], options?: { raw: true; } | undefined): Promise<StoredDataRaw<Value>[]><Value = GenericValue>(keys: string[]): Promise<(Value | undefined)[]>
default.setMany<Value = GenericValue>(entries: KeyvEntry[]): Promise<boolean[]><Value = GenericValue>(entries: KeyvEntry<Value>[]): Promise<boolean[]>
default.iteratorIteratorFunction | undefined(): AsyncGenerator<[string, any], void, any>
default.deleteMany(keys: string[]): Promise<boolean>(keys: string[]): Promise<boolean[]>
default.getManyRaw<Value = GenericValue>(keys: string[]): Promise<StoredDataRaw<Value>[]><Value = GenericValue>(keys: string[]): Promise<KeyvStorageGetResult<Value>[]>
default.compressionCompressionAdapter | undefinedKeyvCompressionAdapter | undefined
default.constructor<GenericValue = any>(store?: KeyvStoreAdapter | KeyvOptions | Map<any, any> | undefined, options?: Omit<KeyvOptions, "store"> | undefined): Keyv<GenericValue> | <GenericValue = any>(options?: KeyvOptions | undefined): Keyv<GenericValue><GenericValue = any>(store?: any, options?: Omit<KeyvOptions, "store"> | undefined): Keyv<GenericValue> | <GenericValue = any>(options?: KeyvOptions | undefined): Keyv<GenericValue>

Nowo wycofane

export@deprecated
keyv · DeserializedDataUse `KeyvValue` instead.
keyv · KeyvStoreAdapterUse `KeyvStorageAdapter` instead.

Zmiany wymagań (engines, zależności peer)

Nie wykryto.

Nowe eksporty (47)
importexportkind
keyvKeyvAnytype
keyvKeyvStatsclass
keyvKeyvValuetype
keyvKeyvEventsenum
keyvKeyvMapAnytype
keyvMethodTypetype
keyvcreateKeyvfunction
keyvdetectKeyvfunction
keyvKeyvMapTypetype
keyvKeyvMethodstype
keyvKeyvAnyArraytype
keyvKeyvSanitizeclass
keyvKeyvCapabilitytype
keyvKeyvPropertiestype
keyvjsonSerializervariable
keyvKeyvBridgeStoretype
keyvKeyvCompressiontype
keyvKeyvStatsOptionstype
keyvKeyvStorageEntrytype
keyvKeyvBridgeAdapterclass
keyvKeyvMemoryAdapterclass
keyvKeyvStorageMethodtype
keyvdetectKeyvStoragefunction
keyvKeyvJsonSerializerclass
keyvKeyvStorageAdaptertype
keyvKeyvStorageMethodstype
keyvKeyvTelemetryEventtype
keyvKeyvSanitizeAdaptertype
keyvKeyvSanitizeOptionstype
keyvKeyvSanitizePatternstype
keyvKeyvStorageGetResulttype
keyvdetectKeyvEncryptionfunction
keyvKeyvEncryptionAdaptertype
keyvKeyvEncryptionMethodstype
keyvKeyvStorageCapabilitytype
keyvdetectKeyvCompressionfunction
keyvkeyvStorageCapabilityfunction
keyvKeyvCompressionAdaptertype
keyvKeyvCompressionMethodstype
keyvdetectKeyvSerializationfunction
keyvKeyvBridgeAdapterOptionstype
keyvKeyvEncryptionCapabilitytype
keyvKeyvMemoryAdapterOptionstype
keyvKeyvSerializationAdaptertype
keyvKeyvSerializationMethodstype
keyvKeyvCompressionCapabilitytype
keyvKeyvSerializationCapabilitytype

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 keyv z 5 do 6?

Między keyv 5.6.0 a 6.1.0 Vigia znalazła 7 usuniętych eksportów, 3 zmienionych sygnatur i 82 usuniętych lub zmienionych składowych klas lub interfejsów.

Co zostało wycofane w keyv 6?

2 eksportów lub składowych oznaczono w keyv 6.1.0 jako wycofane.

Dla agentów

GET https://vigia.coredls.cloud/v1/packages/npm/keyv/upgrade?from=5.6.0&to=6.1.0