{"id":"src_yTN3U20OXkhEXt-F7_6v2","slug":"upstash-redis-changelog","name":"Redis Changelog","type":"feed","url":"https://upstash.com/docs/redis/overall/changelog","orgId":"org_pvZm5gKSGRnUZcqcDCro2","org":{"slug":"upstash","name":"Upstash"},"isPrimary":false,"metadata":"{\"feedUrl\":\"https://upstash.com/docs/redis/overall/changelog/rss.xml\",\"feedType\":\"unknown\",\"feedDiscoveredAt\":\"2026-04-07T23:44:37.801Z\",\"noFeedFound\":false,\"feedLastModified\":\"Sat, 18 Apr 2026 05:01:00 GMT\",\"feedContentLength\":\"16\"}","releaseCount":8,"releasesLast30Days":0,"avgReleasesPerWeek":0,"latestVersion":null,"latestDate":"2026-01-06T10:26:09.000Z","changelogUrl":null,"hasChangelogFile":false,"lastFetchedAt":"2026-04-18T05:02:54.216Z","trackingSince":"2024-06-20T08:29:58.000Z","releases":[{"id":"rel_oKtCvMCr9xxd7yxR0NVp5","version":null,"title":"April 2025","summary":"Added HASH expiration support. New commands are:\n\n[HEXPIRE](https://redis.io/docs/latest/commands/hexpire/): Set expiration time in seconds\n[HPEXPIRE]...","content":"Added HASH expiration support. New commands are:\n\n[HEXPIRE](https://redis.io/docs/latest/commands/hexpire/): Set expiration time in seconds\n[HPEXPIRE](https://redis.io/docs/latest/commands/hpexpire/): Set expiration time in milliseconds\n[HEXPIREAT](https://redis.io/docs/latest/commands/hexpireat/): Set expiration time as Unix timestamp in seconds\n[HPEXPIREAT](https://redis.io/docs/latest/commands/hpexpireat/): Set expiration time as Unix timestamp in milliseconds\n[HTTL](https://redis.io/docs/latest/commands/httl/): Get remaining time to live in seconds\n[HPTTL](https://redis.io/docs/latest/commands/hpttl/): Get remaining time to live in milliseconds\n[HEXPIRETIME](https://redis.io/docs/latest/commands/hexpiretime/): Get absolute expiration time as Unix timestamp in seconds\n[HPEXPIRETIME](https://redis.io/docs/latest/commands/hpexpiretime/): Get absolute expiration time as Unix timestamp in milliseconds\n[HPERSIST](https://redis.io/docs/latest/commands/hpersist/): Remove expiration from hash fields","publishedAt":"2026-01-06T10:26:09.000Z","url":"https://upstash.com/docs/redis/overall/changelog#april-2025","media":[]},{"id":"rel_t2Am6MT0dQ-I8hc1mwUPv","version":null,"title":"December 2025","summary":"Added [Redis Functions](https://redis.io/docs/latest/develop/programmability/functions-intro/) support. New commands are:\n\n[FCALL](https://redis.io/do...","content":"Added [Redis Functions](https://redis.io/docs/latest/develop/programmability/functions-intro/) support. New commands are:\n\n[FCALL](https://redis.io/docs/latest/commands/fcall/): Call a function with read/write capabilities\n[FCALL_RO](https://redis.io/docs/latest/commands/fcall_ro/): Call a function in read-only mode\nFUNCTION DELETE, FUNCTION FLUSH, FUNCTION KILL, FUNCTION LIST, FUNCTION LOAD and FUNCTION STATS\n\nNew Hash commands:\n\n[HGETDEL](https://redis.io/docs/latest/commands/hgetdel/): Get and delete hash fields atomically\n[HGETEX](https://redis.io/docs/latest/commands/hgetex/): Get hash fields with expiration support\n[HSETEX](https://redis.io/docs/latest/commands/hsetex/): Set hash fields with expiration support\n\nNew Stream Commands:\n\n[XDELEX](https://redis.io/docs/latest/commands/xdelex/): Extended delete for streams\n[XACKDEL](https://redis.io/docs/latest/commands/xackdel/): Acknowledge and delete stream entries\n\nNew Bit operations added:\n\nBITOP DIFF: A bit is set only if it's set in all source bitmaps\nBITOP DIFF1: A bit is set if it's set in the first key but not in any of the other keys\nBITOP ANDOR: A bit is set if it's set in X and also in one or more of Y1, Y2, ...\nBITOP ONE: A bit is set if it's set in exactly one source key","publishedAt":"2026-01-06T10:26:09.000Z","url":"https://upstash.com/docs/redis/overall/changelog#december-2025","media":[]},{"id":"rel_ROzsWxXXCNrWto7lJ1qjo","version":null,"title":"Feb 2025","summary":"Added [EVAL_RO](https://redis.io/docs/latest/commands/eval_ro/) and [EVALSHA_RO](https://redis.io/docs/latest/commands/evalsha_ro/)\ncommands introduce...","content":"Added [EVAL_RO](https://redis.io/docs/latest/commands/eval_ro/) and [EVALSHA_RO](https://redis.io/docs/latest/commands/evalsha_ro/)\ncommands introduced in Redis 7.","publishedAt":"2025-02-17T16:20:51.000Z","url":"https://upstash.com/docs/redis/overall/changelog#feb-2025","media":[]},{"id":"rel_q-Yeo7UcjTggcY0-sOOTK","version":null,"title":"April 2024","summary":"Implemented [MONITOR](https://redis.io/docs/latest/commands/monitor/) command\nImplemented Redis [keyspace notifications](/redis/howto/keyspacenotifica...","content":"Implemented [MONITOR](https://redis.io/docs/latest/commands/monitor/) command\nImplemented Redis [keyspace notifications](/redis/howto/keyspacenotifications)\nImplemented [WAIT](https://redis.io/docs/latest/commands/wait/) and [WAITAOF](https://redis.io/docs/latest/commands/waitaof/) commands\nAdded lag field to [XINFO GROUPS](https://redis.io/docs/latest/commands/xinfo-groups/)\nAdded [CLIENT ID](https://redis.io/docs/latest/commands/client-id/) subcommand\nAdded password strength check to [ACL SETUSER](https://redis.io/docs/latest/commands/acl-setuser/) command","publishedAt":"2024-10-24T09:24:09.000Z","url":"https://upstash.com/docs/redis/overall/changelog#april-2024","media":[]},{"id":"rel_fPyWbVma1_NPKHhzyiIuP","version":null,"title":"July 2024","summary":"Added REST API support for [MONITOR](https://redis.io/docs/latest/commands/monitor/) and [SUBSCRIBE](https://redis.io/docs/latest/commands/subscribe/)...","content":"Added REST API support for [MONITOR](https://redis.io/docs/latest/commands/monitor/) and [SUBSCRIBE](https://redis.io/docs/latest/commands/subscribe/)\ncommands using [SSE](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events).\nSee Monitor and Subscribe docs.\nAdded [JSON.MSET](https://redis.io/docs/latest/commands/json.mset/) and [JSON.MERGE](https://redis.io/docs/latest/commands/json.merge/) commands.\nIntroduced the IP Allowlist feature for enhanced security on newly created databases. By default, all IP addresses will be allowed.\nHowever, access can be restricted by specifying permitted IP addresses or CIDR ranges.","publishedAt":"2024-10-24T09:24:09.000Z","url":"https://upstash.com/docs/redis/overall/changelog#july-2024","media":[]},{"id":"rel_96RqUlN5lWR71S5ou-n4X","version":null,"title":"June 2024","summary":"Added AWS AP-NorthEast-1 Japan region.\nAdded an option to return REST response in [RESP2](https://redis.io/docs/latest/develop/reference/protocol-spec...","content":"Added AWS AP-NorthEast-1 Japan region.\nAdded an option to return REST response in [RESP2](https://redis.io/docs/latest/develop/reference/protocol-spec/) format instead of JSON.\nSee [REST API docs](/redis/features/restapi#resp2-format-responses) for more information.","publishedAt":"2024-10-24T09:24:09.000Z","url":"https://upstash.com/docs/redis/overall/changelog#june-2024","media":[]},{"id":"rel_h6xG62-FTOc1TDkF0RkJs","version":null,"title":"February 2024","summary":"Fixed JSON commands with empty keys\nFixed a panic on XTRIM and XDEL\nAdded CLIENT SETNAME/NAME/LIST subcommands\nImplemented near exact trim for streams","content":"Fixed JSON commands with empty keys\nFixed a panic on XTRIM and XDEL\nAdded CLIENT SETNAME/NAME/LIST subcommands\nImplemented near exact trim for streams","publishedAt":"2024-06-20T08:29:58.000Z","url":"https://upstash.com/docs/redis/overall/changelog#february-2024","media":[]},{"id":"rel_PfdslLnlXvwjbaeH7Qxqw","version":null,"title":"September 2023","summary":"Implemented some missing Redis commands:\n\nDUMP\nRESTORE\nZMPOP\nBZMPOP\nLMPOP\nBLMPOP\nSINTERCARD\n\n\nAdded support for BIT/BYTE flag to BITPOS and BITCOUNT c...","content":"Implemented some missing Redis commands:\n\nDUMP\nRESTORE\nZMPOP\nBZMPOP\nLMPOP\nBLMPOP\nSINTERCARD\n\n\nAdded support for BIT/BYTE flag to BITPOS and BITCOUNT commands\nAdded support for XX, NX, GT, and LT arguments to EXPIRE commands\nAllowed NX and GET args to be used together in SET command","publishedAt":"2024-06-20T08:29:58.000Z","url":"https://upstash.com/docs/redis/overall/changelog#september-2023","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":1,"totalItems":8},"summaries":{"rolling":null,"monthly":[]}}