Cherry-picking latest commits from main into dev#1624
Merged
Conversation
Bumps [@easyops-cn/docusaurus-search-local](https://github.com/easyops-cn/docusaurus-search-local/tree/HEAD/packages/docusaurus-search-local) from 0.52.3 to 0.55.1. - [Release notes](https://github.com/easyops-cn/docusaurus-search-local/releases) - [Commits](https://github.com/easyops-cn/docusaurus-search-local/commits/v0.55.1/packages/docusaurus-search-local) --- updated-dependencies: - dependency-name: "@easyops-cn/docusaurus-search-local" dependency-version: 0.55.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [dotnet-sdk](https://github.com/dotnet/sdk) from 10.0.101 to 10.0.103. - [Release notes](https://github.com/dotnet/sdk/releases) - [Commits](dotnet/sdk@v10.0.101...v10.0.103) --- updated-dependencies: - dependency-name: dotnet-sdk dependency-version: 10.0.103 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Vasileios Zois <96085550+vazois@users.noreply.github.com>
* fix failing ClusterReplicationStoredProc * revert logging
* update dockerfiles * Fix Docker build issues: libaio path, tdnf, and workflow image names - Dockerfile: Add libaio.so.1t64 -> libaio.so.1 symlink for Ubuntu 24.04 t64 compat - Dockerfile.ubuntu: Copy libaio.so.1t64 and create libaio.so.1 symlink (consistent with CI workaround and Dockerfile) - Dockerfile.cbl-mariner: Revert dnf back to tdnf (Azure Linux 3.0 uses tdnf) - docker-linux.yml: Update GHCR image names to match new base OS (jammy -> noble, cbl-mariner2.0 -> azurelinux3.0) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Alpine Lua SIGSEGV: remove glibc-compiled KeraLua liblua54.so The KeraLua NuGet package bundles a glibc-compiled liblua54.so that gets published to /app/liblua54.so. On Alpine (musl libc), .NET loads this glibc binary first (app dir takes priority), causing SIGSEGV on any Lua EVAL command. Remove it in the build stage so .NET falls through to the musl-compiled system Lua library via the runtime symlink. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add libaio to chiseled image for native device support The chiseled (distroless) image was missing libaio.so.1, causing --device-type Native to fail with 'libaio.so.1: cannot open shared object file'. Add libaio1t64 to the libs-builder stage and copy both the library and compat symlink into the final chiseled image. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Dockerfile.ubuntu libaio arm64 arch mismatch Remove the hardcoded --platform=linux/amd64 builder stage that always copied x86_64 libaio into the runtime image regardless of target arch. Install libaio1t64 directly in the runtime stage via apt-get (alongside liblua5.4-0) so the correct architecture library is installed, matching the approach used in the default Dockerfile. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add Docker image validation test script Comprehensive Python script that verifies all 5 Linux Docker images: - Build all Dockerfiles - Basic server tests (PING, SET, GET) - Lua EVAL scripting - Default device persistence (all platforms incl. Alpine) - Native device persistence (glibc platforms) - Library resolution checks (libaio, liblua54, libnative_device) - Optional multi-platform buildx (amd64+arm64) Usage: python3 test/docker-tests/validate_docker_images.py [--skip-build] [--multiplatform] [--images ...] Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Remove dead libaio copy in chiseled prep-runtime stage The libaio files copied into prep-runtime's /usr/lib were never transferred to the final chiseled image (only /usr/share/dotnet/shared is copied from prep-runtime). The final image already gets libaio directly from libs-builder. Remove the unused copy/symlink steps. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Rename Dockerfile.cbl-mariner to Dockerfile.azurelinux The runtime base image is now azurelinux3.0 and the CI publishes as -azurelinux3.0. Rename the Dockerfile to match and update the workflow matrix and test script references. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Use native lua-libs package on Azure Linux instead of Ubuntu copy Azure Linux 3.0 ships lua-libs (providing /usr/lib/liblua-5.4.so) in the base runtime image. Use a symlink to this native library instead of copying a cross-distro binary from an Ubuntu builder stage. This avoids potential glibc ABI compatibility issues and removes an unnecessary build stage. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Use synchronous SAVE instead of BGSAVE+sleep in Docker tests SAVE blocks until the checkpoint completes and returns, eliminating the race condition from the sleep-based BGSAVE approach. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#1601) * Initial plan * initial plan Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> * Fix 7 Dependabot security vulnerabilities in website npm dependencies - Add yarn resolutions for minimatch (3.1.5) and serialize-javascript (7.0.4) - Add npm overrides for minimatch (3.1.5) and serialize-javascript (7.0.4) - ajv updated to 6.14.0 (^6.x) and 8.18.0 (^8.x) via yarn re-resolution - Fixes: GHSA-2g4f-4pwh-qvx6 (ajv ReDoS), GHSA-3ppc-4f35-3m26, GHSA-7r86-cg39-jmmj, GHSA-23c5-xmqv-rm74 (minimatch ReDoS), GHSA-5c6j-r48x-rmvq (serialize-javascript RCE) Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> * Remove yarn v1 resolutions from website/package.json Per review feedback, the resolutions field is unnecessary since yarn v1 is not used. The npm overrides field handles dependency pinning. Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com>
* Bump the nuget-deps group with 14 updates Bumps diskann-garnet from 1.0.23 to 1.0.25 Bumps Microsoft.Extensions.Configuration.Binder from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Configuration.Json from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Logging from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Logging.Configuration from 9.0.8 to 10.0.3 Bumps Microsoft.Extensions.Logging.Console from 9.0.8 to 10.0.3 Bumps Microsoft.IdentityModel.Protocols.OpenIdConnect from 8.6.1 to 8.16.0 Bumps Microsoft.IdentityModel.Validators from 8.6.1 to 8.16.0 Bumps Microsoft.NET.Test.Sdk from 18.0.1 to 18.3.0 Bumps NUnit from 4.1.0 to 4.5.0 Bumps NUnit3TestAdapter from 4.6.0 to 6.1.0 Bumps StackExchange.Redis from 2.9.25 to 2.11.8 Bumps System.IdentityModel.Tokens.Jwt from 8.6.1 to 8.16.0 Bumps System.Numerics.Tensors from 9.0.9 to 10.0.3 --- updated-dependencies: - dependency-name: diskann-garnet dependency-version: 1.0.25 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Configuration.Binder dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Configuration.Json dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging.Configuration dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging.Console dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: Microsoft.IdentityModel.Protocols.OpenIdConnect dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: System.IdentityModel.Tokens.Jwt dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: Microsoft.IdentityModel.Validators dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: Microsoft.NET.Test.Sdk dependency-version: 18.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: NUnit dependency-version: 4.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: NUnit3TestAdapter dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: StackExchange.Redis dependency-version: 2.11.8 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: System.Numerics.Tensors dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps ... Signed-off-by: dependabot[bot] <support@github.com> * fix changes in API * revert unit test upgrade * Add ConfigureAwait(false) to all test await expressions to fix NUnit 4.5 deadlock (#1593) * Initial plan * Add .ConfigureAwait(false) to all await expressions in test files Add .ConfigureAwait(false) to every await expression across 38 test files under test/ to follow best practices for library/test code and avoid potential deadlocks in synchronization contexts. - Handles single-line and multi-line await expressions - Handles ternary await expressions (both branches) - Skips await foreach and await using (already correct) - Excludes Task.Yield() which returns YieldAwaitable (no ConfigureAwait support) - No changes outside test/ directory Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Vasileios Zois <96085550+vazois@users.noreply.github.com> * upgrade nunit * Fix MigrateVector cluster tests for StackExchange.Redis 2.11.8 (#1595) * Initial plan * Fix MigrateVector tests to handle transient errors from StackExchange.Redis 2.11.8 Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> * Fix MigrateVector tests: use Exception catch + specific MOVED message patterns for SE.Redis 2.11.8 Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> * revert diskann version --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Vasileios Zois <vazois@microsoft.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Vasileios Zois <96085550+vazois@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com>
…F operations (#1599) * SkipChecksum validation testing and fix * validate HLL format with skipRDBRestoreChecksumValidation * add tests that cover different length encoding * add full sparse stream validation * skipRDBRestoreChecksumValidation for slot validation tests * remove double validation and fix buffer swap * reduce test overhead * fix redirection tests for RESTORE * eliminate SkipRDBRestoreChecksumValidation option * Bump the nuget-deps group with 14 updates (#1592) * Bump the nuget-deps group with 14 updates Bumps diskann-garnet from 1.0.23 to 1.0.25 Bumps Microsoft.Extensions.Configuration.Binder from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Configuration.Json from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Logging from 10.0.2 to 10.0.3 Bumps Microsoft.Extensions.Logging.Configuration from 9.0.8 to 10.0.3 Bumps Microsoft.Extensions.Logging.Console from 9.0.8 to 10.0.3 Bumps Microsoft.IdentityModel.Protocols.OpenIdConnect from 8.6.1 to 8.16.0 Bumps Microsoft.IdentityModel.Validators from 8.6.1 to 8.16.0 Bumps Microsoft.NET.Test.Sdk from 18.0.1 to 18.3.0 Bumps NUnit from 4.1.0 to 4.5.0 Bumps NUnit3TestAdapter from 4.6.0 to 6.1.0 Bumps StackExchange.Redis from 2.9.25 to 2.11.8 Bumps System.IdentityModel.Tokens.Jwt from 8.6.1 to 8.16.0 Bumps System.Numerics.Tensors from 9.0.9 to 10.0.3 --- updated-dependencies: - dependency-name: diskann-garnet dependency-version: 1.0.25 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Configuration.Binder dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Configuration.Json dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging.Configuration dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: Microsoft.Extensions.Logging.Console dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: Microsoft.IdentityModel.Protocols.OpenIdConnect dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: System.IdentityModel.Tokens.Jwt dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: Microsoft.IdentityModel.Validators dependency-version: 8.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: Microsoft.NET.Test.Sdk dependency-version: 18.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: NUnit dependency-version: 4.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: NUnit3TestAdapter dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps - dependency-name: StackExchange.Redis dependency-version: 2.11.8 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget-deps - dependency-name: System.Numerics.Tensors dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget-deps ... Signed-off-by: dependabot[bot] <support@github.com> * fix changes in API * revert unit test upgrade * Add ConfigureAwait(false) to all test await expressions to fix NUnit 4.5 deadlock (#1593) * Initial plan * Add .ConfigureAwait(false) to all await expressions in test files Add .ConfigureAwait(false) to every await expression across 38 test files under test/ to follow best practices for library/test code and avoid potential deadlocks in synchronization contexts. - Handles single-line and multi-line await expressions - Handles ternary await expressions (both branches) - Skips await foreach and await using (already correct) - Excludes Task.Yield() which returns YieldAwaitable (no ConfigureAwait support) - No changes outside test/ directory Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Vasileios Zois <96085550+vazois@users.noreply.github.com> * upgrade nunit * Fix MigrateVector cluster tests for StackExchange.Redis 2.11.8 (#1595) * Initial plan * Fix MigrateVector tests to handle transient errors from StackExchange.Redis 2.11.8 Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> * Fix MigrateVector tests: use Exception catch + specific MOVED message patterns for SE.Redis 2.11.8 Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: vazois <96085550+vazois@users.noreply.github.com> * revert diskann version --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Vasileios Zois <vazois@microsoft.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Vasileios Zois <96085550+vazois@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com> * cleanup unused properties * add more comments at HLL validation * add test that bypasses crc check by faking it while corrupting the HLL payload --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com>
* Initial plan * Initial plan for fixing dependabot security issues Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> * Fix dompurify vulnerability: upgrade to 3.3.1 via overrides and resolutions Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> * Remove resolutions from package.json per review feedback Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: TalZaccai <18443527+TalZaccai@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com>
Bumps [svgo](https://github.com/svg/svgo) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/svg/svgo/releases) - [Commits](svg/svgo@v3.3.2...v3.3.3) --- updated-dependencies: - dependency-name: svgo dependency-version: 3.3.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* add configureAwait(false) to async await calls * manual search configureAwait * fix formatting * fix formatting for Tsavorite
* bound validation for max 512MB strings * add BITPOS validation * add BITCOUNT offset validation * addressing comments * fix slot verification test * addressing comments * making check in backend bitfield call Debug.Assert * fix formatting * fix Release build
* Fix TTL rounding to match Redis behavior (#1389) Redis rounds TTL seconds to the nearest integer (equivalent to (ms+500)/1000), while Garnet was truncating (flooring) via a direct (long) cast. This caused SET+EXPIRE 10+TTL to return 9 instead of 10 when called immediately. Fix: Use Math.Round(MidpointRounding.AwayFromZero) in both SecondsFromDiffUtcNowTicks and MillisecondsFromDiffUtcNowTicks in ConvertUtils.cs. Added TtlRoundingTest to verify string and object keys return the expected TTL value immediately after EXPIRE. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * updates * updates * increase test timing tolerance * update --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* ci: use orphan commits for deploy branches to reduce clone size Use orphan commits (single commit, no history) for gh-pages, allure_data_history, and benchmark branches to prevent large generated files from accumulating across hundreds of commits, which bloats the repository pack file and slows git clone. - deploy-website: add force_orphan: true to peaceiris/actions-gh-pages - nightly: rewrite allure_data_history push as orphan commit - new workflow: daily squash of continuousbenchmark branches Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * updates --------- Co-authored-by: badrishc <badrishc@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Tal Zaccai <talzacc@microsoft.com>
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 3.3.1 to 3.3.3. - [Release notes](https://github.com/cure53/DOMPurify/releases) - [Commits](cure53/DOMPurify@3.3.1...3.3.3) --- updated-dependencies: - dependency-name: dompurify dependency-version: 3.3.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* add more functions to block list * fix test --------- Co-authored-by: badrishc <badrishc@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR cherry-picks a broad set of recent changes from main into dev, spanning build/runtime upgrades, Docker/CI adjustments, security hardening, bitmap command validation fixes, and widespread test reliability updates (notably adding ConfigureAwait(false)).
Changes:
- Upgrade repo build/runtime targeting to .NET 10 (SDK, Docker images) and refresh several NuGet/website dependency pins.
- Harden and fix server behaviors: bitmap offset validation/normalization, Lua sandbox restrictions, transaction replay behavior, and RESTORE checksum validation.
- Update CI/workflows to prevent long-lived branch history bloat; update tests for async correctness and new validation edge cases.
Reviewed changes
Copilot reviewed 99 out of 101 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| website/package.json | Bumps Docusaurus search plugin; adds dependency override pins. |
| test/Garnet.test/UnixSocketTests.cs | Adds ConfigureAwait(false) and normalizes file header. |
| test/Garnet.test/TransactionTests.cs | Adds ConfigureAwait(false) for async calls; header normalization. |
| test/Garnet.test/TaskManagerTests.cs | Adds ConfigureAwait(false) for async waits/cancels; header normalization. |
| test/Garnet.test/RespTlsTests.cs | Adds ConfigureAwait(false) to async client operations; header normalization. |
| test/Garnet.test/RespSortedSetGarnetClientTests.cs | Adds ConfigureAwait(false) in async test code paths; header normalization. |
| test/Garnet.test/RespSetTest.cs | Adds ConfigureAwait(false) to async client commands; header normalization. |
| test/Garnet.test/RespRevivificationTests.cs | Adds ConfigureAwait(false) to async operations; header normalization. |
| test/Garnet.test/RespListTests.cs | Adds ConfigureAwait(false) in async list tests; header normalization. |
| test/Garnet.test/RespListGarnetClientTests.cs | Adds ConfigureAwait(false) in async GarnetClient tests; header normalization. |
| test/Garnet.test/RespInfoTests.cs | Adds ConfigureAwait(false) for hydration/delays; header normalization. |
| test/Garnet.test/RespHashTests.cs | Adds ConfigureAwait(false) and adjusts TTL assertion behavior; header normalization. |
| test/Garnet.test/RespEtagTests.cs | Adds ConfigureAwait(false) and updates TTL return type assertions. |
| test/Garnet.test/RespCustomCommandTests.cs | Adds ConfigureAwait(false) to async operations; header normalization. |
| test/Garnet.test/RespBlockingCollectionTests.cs | Adds ConfigureAwait(false) for delays; header normalization. |
| test/Garnet.test/Resp/GarnetAuthenticatorTests.cs | Adds ConfigureAwait(false) and ignores unused async results; header normalization. |
| test/Garnet.test/Resp/ACL/SetUserTests.cs | Adds ConfigureAwait(false) to ACL async calls; header normalization. |
| test/Garnet.test/Resp/ACL/ParallelTests.cs | Adds ConfigureAwait(false) in parallel async usage and waits; header normalization. |
| test/Garnet.test/Resp/ACL/GetUserTests.cs | Adds ConfigureAwait(false) for DB async calls; header normalization. |
| test/Garnet.test/Resp/ACL/DeleteUserTests.cs | Adds ConfigureAwait(false) for ACL async calls; header normalization. |
| test/Garnet.test/Resp/ACL/BasicTests.cs | Adds ConfigureAwait(false) to ACL-related async calls; header normalization. |
| test/Garnet.test/Resp/ACL/AclConfigurationFileTests.cs | Adds ConfigureAwait(false) for ACL file tests; header normalization. |
| test/Garnet.test/ObjectTestsForOutput.cs | Adds ConfigureAwait(false) to async batch tests; header normalization. |
| test/Garnet.test/LuaScriptTests.cs | Updates sandbox expectations around load/loadstring; adds ConfigureAwait(false) in delays. |
| test/Garnet.test/LuaScriptRunnerTests.cs | Adds tests asserting sandbox does not expose load/loadstring; updates allowed globals list. |
| test/Garnet.test/GarnetServerConfigTests.cs | Adds ConfigureAwait(false) in async command calls; header normalization. |
| test/Garnet.test/GarnetObjectTests.cs | Adds ConfigureAwait(false) around checkpoint async operations; header normalization. |
| test/Garnet.test/GarnetClientTests.cs | Adds ConfigureAwait(false) broadly in async client tests; header normalization. |
| test/Garnet.test/GarnetBitmapTests.cs | Adds boundary/arity tests for bitmap commands and parsing/validation edge cases. |
| test/Garnet.test/ExpiredKeyDeletionTests.cs | Adds ConfigureAwait(false) to delays/invocations; header normalization. |
| test/Garnet.test.cluster/ReplicationTests/ClusterResetDuringReplicationTests.cs | Adds ConfigureAwait(false) to delays; header normalization. |
| test/Garnet.test.cluster/ReplicationTests/ClusterReplicationBaseTests.cs | Expands stored-proc replication test scenarios; adds ConfigureAwait(false) usage. |
| test/Garnet.test.cluster/RedirectTests/ClusterSlotVerificationTests.cs | Adds object-parameter execution path for SERedis; alters GarnetClientSession coverage. |
| test/Garnet.test.cluster/RedirectTests/BaseCommand.cs | Adds object-parameter request generation (RESTORE); adjusts BITCOUNT request args. |
| test/Garnet.test.cluster/ClusterTestUtils.cs | Adds ConfigureAwait(false) to delay in epoch sync loop; header normalization. |
| test/Garnet.test.cluster/ClusterTestContext.cs | Expands XML doc comment parameter list for CreateInstances signature. |
| test/Garnet.test.cluster/ClusterNegativeTests.cs | Adds ConfigureAwait(false) to delay; header normalization. |
| test/Garnet.test.cluster/ClusterMigrateTests.cs | Adds ConfigureAwait(false) to async execute/waits; header normalization. |
| test/Garnet.test.cluster/ClusterMigrateTLSTests.cs | Adds ConfigureAwait(false) in wrapper async call; header normalization. |
| test/Garnet.test.cluster/ClusterManagementTests.cs | Adds ConfigureAwait(false) to delays; header normalization. |
| libs/storage/Tsavorite/cs/test/UnsafeContextTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/TransactionalUnsafeContextTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/TestUtils.cs | Adds ConfigureAwait(false) to Task.WhenAll; header normalization. |
| libs/storage/Tsavorite/cs/test/StateMachineDriverTests.cs | Adds ConfigureAwait(false) across async waits/operations; header normalization. |
| libs/storage/Tsavorite/cs/test/SimpleRecoveryTest.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/SharedDirectoryTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/RecoveryTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/RecoverReadOnlyTest.cs | Adds ConfigureAwait(false) across delays/async enumerables; header normalization. |
| libs/storage/Tsavorite/cs/test/ReadAddressTests.cs | Adds ConfigureAwait(false) and async flush usage adjustments; header normalization. |
| libs/storage/Tsavorite/cs/test/ObjectRecoveryTest3.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/ObjectRecoveryTest2.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/ObjectRecoveryTest.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/LogResumeTests.cs | Adds ConfigureAwait(false) across enqueue/commit/async enumeration; header normalization. |
| libs/storage/Tsavorite/cs/test/LogRecoverReadOnlyTests.cs | Adds ConfigureAwait(false) across delays/recovery/enumerables; header normalization. |
| libs/storage/Tsavorite/cs/test/LargeObjectTests.cs | Adds ConfigureAwait(false) for checkpoint completion; header normalization. |
| libs/storage/Tsavorite/cs/test/FlakyDeviceTests.cs | Adds ConfigureAwait(false) for commit and async enumerables; header normalization. |
| libs/storage/Tsavorite/cs/test/EnqueueTests.cs | Adds ConfigureAwait(false) to enqueue/commit operations; header normalization. |
| libs/storage/Tsavorite/cs/test/EnqueueAndWaitForCommit.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/DeviceLogTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/ComponentRecoveryTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/CompletePendingTests.cs | Adds ConfigureAwait(false); header normalization. |
| libs/storage/Tsavorite/cs/test/CheckpointManagerTests.cs | Adds ConfigureAwait(false) for checkpoint completion; header normalization. |
| libs/server/Transaction/TxnKeyManager.cs | Skips cluster slot verification during transaction proc replay. |
| libs/server/Transaction/TransactionManager.cs | Introduces replay flag propagation to skip finalize & slot verification during AOF replay. |
| libs/server/Storage/Session/MainStore/HyperLogLogOps.cs | Fixes merge-buffer pointer assignment order. |
| libs/server/Storage/Functions/MainStore/PrivateMethods.cs | Improves bitmap argument parsing/types; validates BITFIELD offsets; adjusts BITCOUNT/BITPOS parsing. |
| libs/server/Servers/ServerOptions.cs | Removes option to skip RESTORE checksum validation. |
| libs/server/Resp/KeyAdminCommands.cs | Always validates RESTORE CRC; removes skip-path. |
| libs/server/Resp/HyperLogLog/HyperLogLog.cs | Tightens HLL sparse validation and construction; improves sparse stream validation. |
| libs/server/Resp/Bitmap/BitmapManagerBitfield.cs | Adds bitfield offset validation and DEBUG assertions; adjusts end offset handling. |
| libs/server/Resp/Bitmap/BitmapManagerBitPos.cs | Uses long-safe bit length calculations; reduces int narrowing in bit scanning. |
| libs/server/Resp/Bitmap/BitmapManagerBitCount.cs | Normalizes/clamps BITCOUNT offsets and handles empty/oversized ranges more safely. |
| libs/server/Resp/Bitmap/BitmapManager.cs | Adds max bitmap payload/offset limits and helpers; strengthens bounds checks. |
| libs/server/Resp/Bitmap/BitmapCommands.cs | Validates offsets/arity more strictly for bitmap commands; supports BIT/BYTE flag parsing. |
| libs/server/Lua/LuaRunner.Loader.cs | Removes load/loadstring from sandbox exported functions. |
| libs/server/Custom/CustomRespCommands.cs | Renames recovery flag to replay flag and propagates through transaction proc execution. |
| libs/server/AOF/ReplayCoordinator/AofReplayCoordinator.cs | Marks stored-proc execution as replay to adjust transaction behavior. |
| libs/host/defaults.conf | Removes SkipRDBRestoreChecksumValidation from default config. |
| libs/host/Configuration/Options.cs | Removes CLI option and wiring for skipping RESTORE checksum validation. |
| libs/common/ConvertUtils.cs | Changes tick-to-seconds/milliseconds conversion behavior (more integer-based). |
| libs/cluster/Session/SlotVerification/RespClusterIterativeSlotVerify.cs | Avoids writing cached error output when verification state is OK. |
| global.json | Updates .NET SDK version to 10.0.103. |
| Dockerfile.ubuntu | Switches publish/runtime to net10.0/.NET 10; installs libaio1t64 and adjusts symlinks. |
| Dockerfile.nanoserver | Switches publish/runtime to net10.0/.NET 10. |
| Dockerfile.chiseled | Switches to .NET 10 noble; stages lua+libaio; copies required libs into chiseled image. |
| Dockerfile.azurelinux | Switches runtime to .NET 10 azurelinux3.0; adjusts libaio/lua linking. |
| Dockerfile.alpine | Switches to .NET 10 alpine; removes bundled glibc Lua and uses system Lua; adjusts deps install. |
| Dockerfile | Switches runtime to .NET 10; installs libaio1t64; adjusts multiarch symlinks and lua link. |
| Directory.Packages.props | Updates NUnit/test tooling and several Microsoft.* and StackExchange.Redis package versions. |
| .github/workflows/squash-benchmark-branches.yml | Adds scheduled workflow to squash benchmark branches to a single commit. |
| .github/workflows/nightly.yml | Switches Allure history branch update to orphan/force push to avoid history bloat. |
| .github/workflows/docker-linux.yml | Renames image tags (jammy→noble; mariner→azurelinux) to match new Dockerfiles. |
| .github/workflows/deploy-website.yml | Enables orphan deploys to gh-pages to reduce repo history bloat. |
| .github/dependabot.yml | Groups dependency updates for dotnet/nuget/npm to reduce PR noise. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
badrishc
approved these changes
Mar 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Commits made between 02/27/26 to 03/12/26