ERR 未知命令`publish` Miniredis 已执行

ERR unknown command `publish` Miniredis Golang

我正在使用 miniredis 模拟 Redis 来测试这个小代码片段。 repository.client 是一个正常运行的模拟(用于其他测试),returns 一个 Redis 客户端。

    err := repository.client.Publish(ctx, "UPDATE", "MESSAGE").Err()
    if err != nil {
        log.fatal(err.Error())
    }

当我 运行 测试时,它记录了以下错误:

ERR unknown command `publish`, with args beginning with: `UPDATES`, `MESSAGE`,

我对 miniredis 应该实现 pub-sub 功能感到困惑。有什么问题的线索吗?

在研究所有者的存储库后,我发现问题与导入版本有关。网上的文章一般都是引用import github.com/alicebob/miniredis,但是没有实现pub/sub的功能。为了使它们工作,重要的是导入 V2:

github.com/alicebob/miniredis/v2

来源:https://github.com/alicebob/miniredis/issues/157