Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 14 additions & 67 deletions StackExchange.Redis.sln → StackExchange.Redis.sln.old
Original file line number Diff line number Diff line change
Expand Up @@ -24,71 +24,16 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
.github\workflows\codeql.yml = .github\workflows\codeql.yml
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "RedisConfigs", "RedisConfigs", "{96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\cli-master.cmd = tests\RedisConfigs\cli-master.cmd
tests\RedisConfigs\cli-secure.cmd = tests\RedisConfigs\cli-secure.cmd
tests\RedisConfigs\cli-slave.cmd = tests\RedisConfigs\cli-slave.cmd
tests\RedisConfigs\docker-compose.yml = tests\RedisConfigs\docker-compose.yml
tests\RedisConfigs\Dockerfile = tests\RedisConfigs\Dockerfile
tests\RedisConfigs\start-all.cmd = tests\RedisConfigs\start-all.cmd
tests\RedisConfigs\start-all.sh = tests\RedisConfigs\start-all.sh
tests\RedisConfigs\start-basic.cmd = tests\RedisConfigs\start-basic.cmd
tests\RedisConfigs\start-basic.sh = tests\RedisConfigs\start-basic.sh
tests\RedisConfigs\start-cluster.cmd = tests\RedisConfigs\start-cluster.cmd
tests\RedisConfigs\start-sentinel.cmd = tests\RedisConfigs\start-sentinel.cmd
tests\RedisConfigs\wsl2.md = tests\RedisConfigs\wsl2.md
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StackExchange.Redis", "src\StackExchange.Redis\StackExchange.Redis.csproj", "{EF84877F-59BE-41BE-9013-E765AF0BB72E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StackExchange.Redis.Tests", "tests\StackExchange.Redis.Tests\StackExchange.Redis.Tests.csproj", "{3B8BD8F1-8BFC-4D8C-B4DA-25FFAF3D1DBE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BasicTest", "tests\BasicTest\BasicTest.csproj", "{939FA5F7-16AA-4847-812B-6EBC3748A86D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sentinel", "Sentinel", "{36255A0A-89EC-43C8-A642-F4C1ACAEF5BC}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\Sentinel\redis-7010.conf = tests\RedisConfigs\Sentinel\redis-7010.conf
tests\RedisConfigs\Sentinel\redis-7011.conf = tests\RedisConfigs\Sentinel\redis-7011.conf
tests\RedisConfigs\Sentinel\sentinel-26379.conf = tests\RedisConfigs\Sentinel\sentinel-26379.conf
tests\RedisConfigs\Sentinel\sentinel-26380.conf = tests\RedisConfigs\Sentinel\sentinel-26380.conf
tests\RedisConfigs\Sentinel\sentinel-26381.conf = tests\RedisConfigs\Sentinel\sentinel-26381.conf
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Cluster", "Cluster", "{A3B4B972-5BD2-4D90-981F-7E51E350E628}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\Cluster\cluster-7000.conf = tests\RedisConfigs\Cluster\cluster-7000.conf
tests\RedisConfigs\Cluster\cluster-7001.conf = tests\RedisConfigs\Cluster\cluster-7001.conf
tests\RedisConfigs\Cluster\cluster-7002.conf = tests\RedisConfigs\Cluster\cluster-7002.conf
tests\RedisConfigs\Cluster\cluster-7003.conf = tests\RedisConfigs\Cluster\cluster-7003.conf
tests\RedisConfigs\Cluster\cluster-7004.conf = tests\RedisConfigs\Cluster\cluster-7004.conf
tests\RedisConfigs\Cluster\cluster-7005.conf = tests\RedisConfigs\Cluster\cluster-7005.conf
tests\RedisConfigs\Cluster\nodes-7000.conf = tests\RedisConfigs\Cluster\nodes-7000.conf
tests\RedisConfigs\Cluster\nodes-7001.conf = tests\RedisConfigs\Cluster\nodes-7001.conf
tests\RedisConfigs\Cluster\nodes-7002.conf = tests\RedisConfigs\Cluster\nodes-7002.conf
tests\RedisConfigs\Cluster\nodes-7003.conf = tests\RedisConfigs\Cluster\nodes-7003.conf
tests\RedisConfigs\Cluster\nodes-7004.conf = tests\RedisConfigs\Cluster\nodes-7004.conf
tests\RedisConfigs\Cluster\nodes-7005.conf = tests\RedisConfigs\Cluster\nodes-7005.conf
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Basic", "Basic", "{38BDEEED-7BEB-4B1F-9CE0-256D63F9C502}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\Basic\primary-6379.conf = tests\RedisConfigs\Basic\primary-6379.conf
tests\RedisConfigs\Basic\replica-6380.conf = tests\RedisConfigs\Basic\replica-6380.conf
tests\RedisConfigs\Basic\secure-6381.conf = tests\RedisConfigs\Basic\secure-6381.conf
tests\RedisConfigs\Basic\tls-ciphers-6384.conf = tests\RedisConfigs\Basic\tls-ciphers-6384.conf
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BasicTestBaseline", "tests\BasicTestBaseline\BasicTestBaseline.csproj", "{8FDB623D-779B-4A84-BC6B-75106E41D8A4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestConsole", "toys\TestConsole\TestConsole.csproj", "{651FDB97-9DE3-4BD9-9A05-827AF8F1A94A}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Failover", "Failover", "{D082703F-1652-4C35-840D-7D377F6B9979}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\Failover\primary-6382.conf = tests\RedisConfigs\Failover\primary-6382.conf
tests\RedisConfigs\Failover\replica-6383.conf = tests\RedisConfigs\Failover\replica-6383.conf
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StackExchange.Redis.Server", "toys\StackExchange.Redis.Server\StackExchange.Redis.Server.csproj", "{8375813E-FBAF-4DA3-A2C7-E4645B39B931}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KestrelRedisServer", "toys\KestrelRedisServer\KestrelRedisServer.csproj", "{3DA1EEED-E9FE-43D9-B293-E000CFCCD91A}"
Expand All @@ -110,12 +55,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestConsoleBaseline", "toys
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = ".github", ".github\.github.csproj", "{8FB98E7D-DAE2-4465-BD9A-104000E0A2D4}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docker", "Docker", "{A9F81DA3-DA82-423E-A5DD-B11C37548E06}"
ProjectSection(SolutionItems) = preProject
tests\RedisConfigs\Docker\docker-entrypoint.sh = tests\RedisConfigs\Docker\docker-entrypoint.sh
tests\RedisConfigs\Docker\supervisord.conf = tests\RedisConfigs\Docker\supervisord.conf
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleTest", "tests\ConsoleTest\ConsoleTest.csproj", "{A0F89B8B-32A3-4C28-8F1B-ADE343F16137}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConsoleTestBaseline", "tests\ConsoleTestBaseline\ConsoleTestBaseline.csproj", "{69A0ACF2-DF1F-4F49-B554-F732DCA938A3}"
Expand All @@ -134,6 +73,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RESPite.Tests", "tests\RESP
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpBench", "toys\OpBench\OpBench.csproj", "{43D3CD21-1E7E-4D28-B1BA-B6DAB3E19183}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RedisConfigs", "tests\RedisConfigs\RedisConfigs.csproj", "{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "docker", "tests\RedisConfigs\.docker\docker.csproj", "{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -208,32 +151,36 @@ Global
{43D3CD21-1E7E-4D28-B1BA-B6DAB3E19183}.Debug|Any CPU.Build.0 = Debug|Any CPU
{43D3CD21-1E7E-4D28-B1BA-B6DAB3E19183}.Release|Any CPU.ActiveCfg = Release|Any CPU
{43D3CD21-1E7E-4D28-B1BA-B6DAB3E19183}.Release|Any CPU.Build.0 = Release|Any CPU
{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076}.Release|Any CPU.Build.0 = Release|Any CPU
{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{EF84877F-59BE-41BE-9013-E765AF0BB72E} = {00CA0876-DA9F-44E8-B0DC-A88716BF347A}
{3B8BD8F1-8BFC-4D8C-B4DA-25FFAF3D1DBE} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{939FA5F7-16AA-4847-812B-6EBC3748A86D} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{36255A0A-89EC-43C8-A642-F4C1ACAEF5BC} = {96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}
{A3B4B972-5BD2-4D90-981F-7E51E350E628} = {96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}
{38BDEEED-7BEB-4B1F-9CE0-256D63F9C502} = {96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}
{8FDB623D-779B-4A84-BC6B-75106E41D8A4} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{651FDB97-9DE3-4BD9-9A05-827AF8F1A94A} = {E25031D3-5C64-430D-B86F-697B66816FD8}
{D082703F-1652-4C35-840D-7D377F6B9979} = {96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}
{8375813E-FBAF-4DA3-A2C7-E4645B39B931} = {E25031D3-5C64-430D-B86F-697B66816FD8}
{3DA1EEED-E9FE-43D9-B293-E000CFCCD91A} = {E25031D3-5C64-430D-B86F-697B66816FD8}
{D58114AE-4998-4647-AFCA-9353D20495AE} = {E25031D3-5C64-430D-B86F-697B66816FD8}
{A9F81DA3-DA82-423E-A5DD-B11C37548E06} = {96E891CD-2ED7-4293-A7AB-4C6F5D8D2B05}
{A0F89B8B-32A3-4C28-8F1B-ADE343F16137} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{69A0ACF2-DF1F-4F49-B554-F732DCA938A3} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{59889284-FFEE-82E7-94CB-3B43E87DA6CF} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{190742E1-FA50-4E36-A8C4-88AE87654340} = {5FA0958E-6EBD-45F4-808E-3447A293F96F}
{05761CF5-CC46-43A6-814B-6BD2ECC1F0ED} = {00CA0876-DA9F-44E8-B0DC-A88716BF347A}
{CA67D8CA-6CC9-40E2-8CAC-F0B1401BEF7B} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{43D3CD21-1E7E-4D28-B1BA-B6DAB3E19183} = {E25031D3-5C64-430D-B86F-697B66816FD8}
{CAE96C6D-145B-489B-9DC8-5CFBA4CC5076} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
{8ECDE6D4-37B0-4A54-8E21-B0BB3666378D} = {73A5C363-CA1F-44C4-9A9B-EF791A76BA6A}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {193AA352-6748-47C1-A5FC-C9AA6B5F000B}
Expand Down
51 changes: 2 additions & 49 deletions StackExchange.Redis.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -34,59 +34,12 @@
<Project Path="tests/BasicTestBaseline/BasicTestBaseline.csproj" />
<Project Path="tests/ConsoleTest/ConsoleTest.csproj" />
<Project Path="tests/ConsoleTestBaseline/ConsoleTestBaseline.csproj" />
<Project Path="tests/RedisConfigs/.docker/docker.csproj" />
<Project Path="tests/RedisConfigs/RedisConfigs.csproj" />
<Project Path="tests/RESPite.Tests/RESPite.Tests.csproj" />
<Project Path="tests/StackExchange.Redis.Benchmarks/StackExchange.Redis.Benchmarks.csproj" />
<Project Path="tests/StackExchange.Redis.Tests/StackExchange.Redis.Tests.csproj" />
</Folder>
<Folder Name="/tests/RedisConfigs/">
<File Path="tests/RedisConfigs/cli-master.cmd" />
<File Path="tests/RedisConfigs/cli-secure.cmd" />
<File Path="tests/RedisConfigs/cli-slave.cmd" />
<File Path="tests/RedisConfigs/docker-compose.yml" />
<File Path="tests/RedisConfigs/Dockerfile" />
<File Path="tests/RedisConfigs/start-all.cmd" />
<File Path="tests/RedisConfigs/start-all.sh" />
<File Path="tests/RedisConfigs/start-basic.cmd" />
<File Path="tests/RedisConfigs/start-basic.sh" />
<File Path="tests/RedisConfigs/start-cluster.cmd" />
<File Path="tests/RedisConfigs/start-sentinel.cmd" />
<File Path="tests/RedisConfigs/wsl2.md" />
</Folder>
<Folder Name="/tests/RedisConfigs/Basic/">
<File Path="tests/RedisConfigs/Basic/primary-6379.conf" />
<File Path="tests/RedisConfigs/Basic/replica-6380.conf" />
<File Path="tests/RedisConfigs/Basic/secure-6381.conf" />
<File Path="tests/RedisConfigs/Basic/tls-ciphers-6384.conf" />
</Folder>
<Folder Name="/tests/RedisConfigs/Cluster/">
<File Path="tests/RedisConfigs/Cluster/cluster-7000.conf" />
<File Path="tests/RedisConfigs/Cluster/cluster-7001.conf" />
<File Path="tests/RedisConfigs/Cluster/cluster-7002.conf" />
<File Path="tests/RedisConfigs/Cluster/cluster-7003.conf" />
<File Path="tests/RedisConfigs/Cluster/cluster-7004.conf" />
<File Path="tests/RedisConfigs/Cluster/cluster-7005.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7000.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7001.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7002.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7003.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7004.conf" />
<File Path="tests/RedisConfigs/Cluster/nodes-7005.conf" />
</Folder>
<Folder Name="/tests/RedisConfigs/Docker/">
<File Path="tests/RedisConfigs/Docker/docker-entrypoint.sh" />
<File Path="tests/RedisConfigs/Docker/supervisord.conf" />
</Folder>
<Folder Name="/tests/RedisConfigs/Failover/">
<File Path="tests/RedisConfigs/Failover/primary-6382.conf" />
<File Path="tests/RedisConfigs/Failover/replica-6383.conf" />
</Folder>
<Folder Name="/tests/RedisConfigs/Sentinel/">
<File Path="tests/RedisConfigs/Sentinel/redis-7010.conf" />
<File Path="tests/RedisConfigs/Sentinel/redis-7011.conf" />
<File Path="tests/RedisConfigs/Sentinel/sentinel-26379.conf" />
<File Path="tests/RedisConfigs/Sentinel/sentinel-26380.conf" />
<File Path="tests/RedisConfigs/Sentinel/sentinel-26381.conf" />
</Folder>
<Folder Name="/toys/">
<Project Path="toys/KestrelRedisServer/KestrelRedisServer.csproj" />
<Project Path="toys/OpBench/OpBench.csproj" />
Expand Down
5 changes: 3 additions & 2 deletions docs/ReleaseNotes.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ Current package versions:

## Unreleased

- Remove `[Experimental]` 8.8 `GCRA` feature ([#3074 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3074))
- Detect server-mode correctly on Valkey 8+ instances ([#3050 by @wipiano](https://github.com/StackExchange/StackExchange.Redis/pull/3050))
- Add Redis 8.8 stream negative acknowledgements (`XNACK`) ([#3058 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3058))
- Update experimental `GCRA` APIs and wire protocol terminology from "requests" to "tokens", to match server change ([#3051 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3051))
- Add experimental `Aggregate.Count` support for sorted-set combination operations against Redis 8.8 ([#3059 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3059))
- Support sub-key (hash field) notifications ([#3062 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3062))
- Add `ValueCondition` overloads for `SortedSetIncrement`/`SortedSetIncrementAsync`, supporting `ZADD INCR` with existence conditions ([#3071 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3071))
Expand All @@ -22,7 +22,8 @@ Current package versions:

## 2.12.8

- Add [`GCRA`](https://en.wikipedia.org/wiki/Generic_cell_rate_algorithm) support (and remove experimental flag on `VSIM`) ([#3041 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3041))
- (this release also includes experimental 8.8 `GCRA` support; this feature is not being shipped yet, and it is being removed from later releases)
- Remove experimental flag on `VSIM` ([#3041 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3041))
- Add `IServer.GetProductVariant` to detect the product variant and version of the connected server, and use that internally
to enable multi-DB operations on Valkey clusters ([#3040 by @mgravell](https://github.com/StackExchange/StackExchange.Redis/pull/3040))
- Ignore cluster nodes with the `handshake` flag ([#3043 by @TimLovellSmith](https://github.com/StackExchange/StackExchange.Redis/pull/3043))
Expand Down
6 changes: 4 additions & 2 deletions docs/exp/SER006.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@ Redis 8.8 is currently in preview and may be subject to change.

New features in Redis 8.8:

- `GCRA` for rate-limiting
- `XNACK` for stream negative acknowledgements
- `Aggregate.Count` for sorted-set combination operations
- Sub-key notifications

The corresponding library feature must also be considered subject to change:
The corresponding library features must also be considered subject to change:

1. Existing bindings may cease working correctly if the underlying server API changes.
2. Changes to the server API may require changes to the library API, manifesting in either/both of build-time
Expand Down
2 changes: 0 additions & 2 deletions src/StackExchange.Redis/Enums/RedisCommand.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ internal enum RedisCommand
GEOSEARCH,
GEOSEARCHSTORE,

GCRA,
GET,
GETBIT,
GETDEL,
Expand Down Expand Up @@ -325,7 +324,6 @@ internal static bool IsPrimaryOnly(this RedisCommand command)
case RedisCommand.EXPIREAT:
case RedisCommand.FLUSHALL:
case RedisCommand.FLUSHDB:
case RedisCommand.GCRA:
case RedisCommand.GEOSEARCHSTORE:
case RedisCommand.GETDEL:
case RedisCommand.GETEX:
Expand Down
Loading
Loading