Here's a simple update for Redis 6.0.7. Upgrade urgency for both 6.0.6 and 6.0.7 is MODERATE, see changelog for details. Notably, the fix for the sentinel crash was merged upstream so we can drop it.
https://raw.githubusercontent.com/antirez/redis/6.0/00-RELEASENOTES There is a test that occasionally fails since 6.0.6, but that's the only hiccup I found: [err]: Piping raw protocol in tests/integration/redis-cli.tcl I decided against patching the lolwut easter egg for the new clang warning: lolwut5.c:87:44: warning: implicit conversion from 'int' to 'float' changes value from 2147483647 to 2147483648 [-Wimplicit-int-float-conversion] float r1 = (float)rand() / RAND_MAX / squares_per_col * y; ~ ^~~~~~~~ I have built and lightly tested this on amd64 and macppc. This built successfully on an experimental sparc64/clang system. Tests fail due to weird floating point issues (so does 6.0.5, which tested fine when compiled with gcc). Index: Makefile =================================================================== RCS file: /var/cvs/ports/databases/redis/Makefile,v retrieving revision 1.114 diff -u -p -r1.114 Makefile --- Makefile 28 Jun 2020 10:47:15 -0000 1.114 +++ Makefile 2 Sep 2020 11:38:17 -0000 @@ -1,10 +1,9 @@ # $OpenBSD: Makefile,v 1.114 2020/06/28 10:47:15 tb Exp $ COMMENT = persistent key-value database -DISTNAME = redis-6.0.5 +DISTNAME = redis-6.0.7 CATEGORIES = databases HOMEPAGE = https://redis.io/ -REVISION = 0 # BSD PERMIT_PACKAGE = Yes Index: distinfo =================================================================== RCS file: /var/cvs/ports/databases/redis/distinfo,v retrieving revision 1.88 diff -u -p -r1.88 distinfo --- distinfo 14 Jun 2020 07:35:36 -0000 1.88 +++ distinfo 2 Sep 2020 10:49:36 -0000 @@ -1,2 +1,2 @@ -SHA256 (redis-6.0.5.tar.gz) = Qs+GoRTSpFG4mPzalqzU0BBip9uqrSgB2RZKNviY9ZY= -SIZE (redis-6.0.5.tar.gz) = 2217666 +SHA256 (redis-6.0.7.tar.gz) = wqqhpMfnLHCt7fl2/dXh0005WYkoPaudeEDgowS7I5M= +SIZE (redis-6.0.7.tar.gz) = 2240490 Index: patches/patch-redis_conf =================================================================== RCS file: /var/cvs/ports/databases/redis/patches/patch-redis_conf,v retrieving revision 1.22 diff -u -p -r1.22 patch-redis_conf --- patches/patch-redis_conf 8 Jun 2020 07:32:47 -0000 1.22 +++ patches/patch-redis_conf 2 Sep 2020 11:03:09 -0000 @@ -32,7 +32,7 @@ Index: redis.conf # tls-ca-cert-dir /etc/ssl/certs # By default, clients (including replica servers) on a TLS port are required -@@ -181,14 +182,14 @@ tcp-keepalive 300 +@@ -184,14 +185,14 @@ tcp-keepalive 300 # # tls-protocols "TLSv1.2 TLSv1.3" @@ -49,7 +49,7 @@ Index: redis.conf # information about the syntax of this string, and specifically for TLSv1.3 # ciphersuites. # -@@ -202,8 +203,9 @@ tcp-keepalive 300 +@@ -221,8 +222,9 @@ tcp-keepalive 300 ################################# GENERAL ##################################### # By default Redis does not run as a daemon. Use 'yes' if you need it. @@ -61,7 +61,7 @@ Index: redis.conf # If you run Redis from upstart or systemd, Redis can interact with your # supervision tree. Options: -@@ -221,11 +223,11 @@ supervised no +@@ -240,11 +242,11 @@ supervised no # # When the server runs non daemonized, no pid file is created if none is # specified in the configuration. When the server is daemonized, the pid file @@ -75,7 +75,7 @@ Index: redis.conf # Specify the server verbosity level. # This can be one of: -@@ -238,17 +240,18 @@ loglevel notice +@@ -257,17 +259,18 @@ loglevel notice # Specify the log file name. Also the empty string can be used to force # Redis to log on the standard output. Note that if you use standard # output for logging but daemonize, logs will be sent to /dev/null @@ -99,7 +99,7 @@ Index: redis.conf # Set the number of databases. The default database is DB 0, you can select # a different one on a per-connection basis using SELECT <dbid> where -@@ -343,7 +346,7 @@ rdb-del-sync-files no +@@ -362,7 +365,7 @@ rdb-del-sync-files no # The Append Only File will also be created inside this directory. # # Note that you must specify a directory here, not a file name. @@ -108,7 +108,7 @@ Index: redis.conf ################################# REPLICATION ################################# -@@ -768,7 +771,7 @@ acllog-max-len 128 +@@ -786,7 +789,7 @@ acllog-max-len 128 # AUTH <password> as usually, or more explicitly with AUTH default <password> # if they follow the new protocol: both will work. # @@ -117,8 +117,8 @@ Index: redis.conf # Command renaming (DEPRECATED). # -@@ -807,6 +810,7 @@ acllog-max-len 128 - # an error 'max number of clients reached'. +@@ -830,6 +833,7 @@ acllog-max-len 128 + # limit accordingly in case of very large clusters. # # maxclients 10000 +maxclients 96 Index: patches/patch-src_Makefile =================================================================== RCS file: /var/cvs/ports/databases/redis/patches/patch-src_Makefile,v retrieving revision 1.33 diff -u -p -r1.33 patch-src_Makefile --- patches/patch-src_Makefile 28 Jun 2020 10:33:01 -0000 1.33 +++ patches/patch-src_Makefile 21 Jul 2020 19:19:02 -0000 @@ -53,7 +53,7 @@ Index: src/Makefile # Determine systemd support and/or build preference (defaulting to auto-detection) BUILD_WITH_SYSTEMD=no -@@ -224,6 +225,8 @@ REDIS_BENCHMARK_OBJ=ae.o anet.o redis-benchmark.o adli +@@ -236,6 +237,8 @@ REDIS_BENCHMARK_OBJ=ae.o anet.o redis-benchmark.o adli REDIS_CHECK_RDB_NAME=redis-check-rdb REDIS_CHECK_AOF_NAME=redis-check-aof @@ -62,7 +62,7 @@ Index: src/Makefile all: $(REDIS_SERVER_NAME) $(REDIS_SENTINEL_NAME) $(REDIS_CLI_NAME) $(REDIS_BENCHMARK_NAME) $(REDIS_CHECK_RDB_NAME) $(REDIS_CHECK_AOF_NAME) @echo "" @echo "Hint: It's a good idea to run 'make test' ;)" -@@ -268,7 +271,7 @@ endif +@@ -280,7 +283,7 @@ endif # redis-server $(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ) @@ -71,7 +71,7 @@ Index: src/Makefile # redis-sentinel $(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME) -@@ -315,7 +318,7 @@ distclean: clean +@@ -327,7 +330,7 @@ distclean: clean .PHONY: distclean test: $(REDIS_SERVER_NAME) $(REDIS_CHECK_AOF_NAME) @@ -80,7 +80,7 @@ Index: src/Makefile test-sentinel: $(REDIS_SENTINEL_NAME) @(cd ..; ./runtest-sentinel) -@@ -359,13 +362,14 @@ src/help.h: +@@ -371,13 +374,14 @@ src/help.h: @../utils/generate-command-help.rb > help.h install: all Index: patches/patch-src_networking_c =================================================================== RCS file: /var/cvs/ports/databases/redis/patches/patch-src_networking_c,v retrieving revision 1.3 diff -u -p -r1.3 patch-src_networking_c --- patches/patch-src_networking_c 14 Jun 2020 07:35:36 -0000 1.3 +++ patches/patch-src_networking_c 2 Sep 2020 11:03:18 -0000 @@ -5,7 +5,7 @@ time_t is long long, so use llabs to avo Index: src/networking.c --- src/networking.c.orig +++ src/networking.c -@@ -2559,7 +2559,7 @@ void securityWarningCommand(client *c) { +@@ -2606,7 +2606,7 @@ void securityWarningCommand(client *c) { static time_t logged_time; time_t now = time(NULL); Index: patches/patch-src_sentinel_c =================================================================== RCS file: patches/patch-src_sentinel_c diff -N patches/patch-src_sentinel_c --- patches/patch-src_sentinel_c 2 Jul 2020 09:27:17 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,19 +0,0 @@ -$OpenBSD: patch-src_sentinel_c,v 1.2 2020/07/02 09:27:17 tb Exp $ - -redis-sentinel out of bounds memory access from memcmp -https://github.com/redis-io/redis/pull/7443 - -Index: src/sentinel.c ---- src/sentinel.c.orig -+++ src/sentinel.c -@@ -2217,8 +2217,8 @@ void sentinelRefreshInstanceInfo(sentinelRedisInstance - } - - /* role:<role> */ -- if (!memcmp(l,"role:master",11)) role = SRI_MASTER; -- else if (!memcmp(l,"role:slave",10)) role = SRI_SLAVE; -+ if (sdslen(l) >= 11 && !memcmp(l,"role:master",11)) role = SRI_MASTER; -+ else if (sdslen(l) >= 10 && !memcmp(l,"role:slave",10)) role = SRI_SLAVE; - - if (role == SRI_SLAVE) { - /* master_host:<host> */