Vigia

Оновлення keyv з 5.x до 6.x

Порівняння публічного API keyv 5.6.0 і 6.1.0, обчислене автоматично за їхніми типами TypeScript. Змінена сигнатура — можлива несумісна зміна, а не гарантія.

Підсумок

Видалені шляхи імпорту0
Видалені експорти7
Змінені сигнатури3
Видалені члени класів або інтерфейсів60
Змінені члени класів або інтерфейсів22
Нові застарівання2
Зміни вимог (engines, peer-залежності)0
Нові експорти47

Видалені експорти

importexportkindБуло
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; }

Змінені сигнатури

exportБулоСтало
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

Видалені члени класів або інтерфейсів

memberimportБуло
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

Змінені члени класів або інтерфейсів

memberБулоСтало
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>

Нові застарівання

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

Зміни вимог (engines, peer-залежності)

Не виявлено.

Нові експорти (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

Передайте ці дані своєму ШІ-агенту

Vigia — безкоштовний MCP-сервер: ваш агент для програмування перевіряє версії, несумісні зміни та вразливості, перш ніж писати код. Без реєстрації та API-ключа.

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

Додати в CursorДодати в VS Code★ Зірка на GitHub

Будь-який інший MCP-клієнт
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Навичка для агентів (SKILL.md): підказує агенту, коли використовувати Vigia · GitHub Action для pull request

Поширені запитання

Які несумісні зміни під час оновлення keyv з 5 до 6?

Між keyv 5.6.0 і 6.1.0 Vigia знайшла видалених експортів: 7, змінених сигнатур: 3, видалених або змінених членів класів та інтерфейсів: 82.

Що застаріло в keyv 6?

У keyv 6.1.0 новими застарілими позначено експортів або членів: 2.

Для агентів

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