Description
The interface signature of the method in question is:
StackExchange.Redis/src/StackExchange.Redis/Interfaces/IDatabase.cs
Lines 1082 to 1091 in cb8b20d
The <returns>
tag says that the method can return nil
, but the actual method signature says that it can't. (This came up because there was actually a null-check in our code, and it started displaying a warning with a package bump.)
Judging by the implementation of the method I found and looked at for 5 minutes:
StackExchange.Redis/src/StackExchange.Redis/RedisDatabase.cs
Lines 1270 to 1274 in cb8b20d
it appears that the method signature is probably correct and the documented return value should be changed to "empty array" instead? That said because I took 5 minutes to look at this, I'm not gonna attempt to claim correctness of that without confirmation.
It would probably be a good idea to grep through all usages of nil
in the interface xmldocs and double-check them too because I see some more suspect ones like
StackExchange.Redis/src/StackExchange.Redis/Interfaces/IDatabase.cs
Lines 1492 to 1499 in cb8b20d
RedisValue
is a struct, so going off the type annotations alone this can at worst return a default(RedisValue)
, which I wouldn't generally interpret to be the same as nil
.