---
title: "iovalkey Breaking Changes on npm | Since.dev"
description: "What each iovalkey release removed, renamed or changed: 10 breaking changes in 1 version on npm, each with its source."
canonical_url: https://since.dev/packages/npm/iovalkey
last_updated: 2026-07-27
---

# iovalkey breaking changes

Every breaking API change we have recorded in iovalkey on npm: 10 breaking changes in 1 version. Below are its newest version, removals and renames first, each with its source.

Newest change July 27, 2026

## 0.4.0

10 breaking changes, first published July 27, 2026.

- **Signature changed** `Cluster.zrange`  

Was zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<string\[\]>): Result<string\[\], Context> zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Cluster.zrangeBuffer`  

Was zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<Buffer\[\]>): Result<Buffer\[\], Context> zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string |... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Command.setArgumentTransformer`  

Was static setArgumentTransformer(name: string, func: ArgumentTransformer): void; now static setArgumentTransformer(name: string, func?: ArgumentTransformerFunction, includeCmd?: boolean): void. [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Command.setReplyTransformer`  

Was static setReplyTransformer(name: string, func: ReplyTransformer): void; now static setReplyTransformer(name: string, func?: ReplyTransformer): void. [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Pipeline.zrange`  

Was zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<string\[\]>): Result<string\[\], Context> zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Pipeline.zrangeBuffer`  

Was zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<Buffer\[\]>): Result<Buffer\[\], Context> zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string |... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Redis.zrange`  

Was zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<string\[\]>): Result<string\[\], Context> zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `Redis.zrangeBuffer`  

Was zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<Buffer\[\]>): Result<Buffer\[\], Context> zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string |... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `RedisCommander.zrange`  

Was zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<string\[\]>): Result<string\[\], Context> zrange(key: RedisKey, start: string | Buffer | number, stop: string | Buffer... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)
- **Signature changed** `RedisCommander.zrangeBuffer`  

Was zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string | Buffer, bylex: "BYLEX", callback?: Callback<Buffer\[\]>): Result<Buffer\[\], Context> zrangeBuffer(key: RedisKey, start: string | Buffer | number, stop: string |... [npmjs.com](https://www.npmjs.com/package/iovalkey/v/0.4.0)

## Check your code

These are the changes. To see which of them reach your code, [scan a public repository](https://since.dev/scan.md), or have your coding agent call `check_code` with your manifest or lockfile over [MCP](https://since.dev/docs.md#mcp). [The API](https://since.dev/docs.md#api) reads every change in every version, not only the newest. On Team and up, a fix pull request opens for the changes that reach a connected repository. Nothing merges or deploys.

## Put your code on continuous management.

Scan a public repository now, or give your agent one line.

### See how out of date your code is.

[Scan a repository](https://since.dev/scan.md). Any public GitHub repository. No sign-in.

### Tell your agent what changed since it was trained.

`claude mcp add --transport http since https://api.since.dev/mcp`

---

Every page on this site as Markdown: https://since.dev/sitemap.md. For agents: https://since.dev/llms.txt.
