From ce75f430e82584aa7a77b5cf66ef128bdc8a4fa8 Mon Sep 17 00:00:00 2001 From: Vlada Skorohodova <94827090+vladaskorohodova@users.noreply.github.com> Date: Thu, 5 Dec 2024 15:13:14 +0400 Subject: [PATCH 01/30] Update DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html (#651) --- .../api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html b/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html index a9b4bcbf..4652198b 100644 --- a/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html +++ b/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html @@ -196,7 +196,7 @@
Property Value

Filter

-

A filter expression.

+

A filter expression. Uses DevExpress Cross-Platform Criteria Language Syntax.

Declaration
From a7cccb494e40961b27e7c7d15abb1acc32d611cb Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:31:28 +0200 Subject: [PATCH 02/30] Bump db deps (#652) --- net/Directory.Packages.md | 6 +++--- net/Directory.Packages.props | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index 71dc6194..37be409f 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -156,11 +156,11 @@ TFM: `net472` - + - - + + diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index 46855fa3..f7771496 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -5,13 +5,13 @@ - + - - + + From 89aae462bf8cbd0f23abdc16708337f81904fd66 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Fri, 10 Jan 2025 15:15:43 +0200 Subject: [PATCH 03/30] CI: Update external actions, setup missing only dotnet versions (#654) --- .github/actions/dotnet-test-build/action.yml | 6 ++---- .github/workflows/ci.yml | 20 +++++++++----------- .github/workflows/codeql-analysis.yml | 2 +- 3 files changed, 12 insertions(+), 16 deletions(-) diff --git a/.github/actions/dotnet-test-build/action.yml b/.github/actions/dotnet-test-build/action.yml index 7ca0eee2..a99b8155 100644 --- a/.github/actions/dotnet-test-build/action.yml +++ b/.github/actions/dotnet-test-build/action.yml @@ -8,11 +8,9 @@ runs: - uses: actions/setup-dotnet@v3 with: dotnet-quality: ga - dotnet-version: | - 8.0 - 9.0 + dotnet-version: 9.0 - - uses: actions/cache@v3 + - uses: actions/cache@v4 with: key: ${{ runner.os }}-nuget-${{ hashFiles('net/**/*.csproj') }} restore-keys: ${{ runner.os }}-nuget- diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4061704..998611cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,7 +27,7 @@ jobs: steps: - run: git config --global core.autocrlf true - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: curl -L https://github.com/editorconfig-checker/editorconfig-checker/releases/download/2.3.5/ec-linux-amd64.tar.gz | tar xzf - -C /opt - run: /opt/bin/ec-linux-amd64 -v @@ -46,7 +46,7 @@ jobs: - '>=23.1.0' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: node build/make-nojquery @@ -69,7 +69,7 @@ jobs: runs-on: windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: nuget install -Verbosity quiet -ExcludeVersion -OutputDirectory . -Version 2022.2.3 JetBrains.dotCover.CommandLineTools @@ -77,7 +77,7 @@ jobs: - run: JetBrains.dotCover.CommandLineTools\tools\dotCover cover --ReturnTargetExitCode --ReportType=DetailedXML --Filters="+:module=DevExtreme.AspNet.Data" --Output=coverage_dotnet.xml --TargetExecutable=net\dotnet-test-all.cmd - - uses: codecov/codecov-action@v3 + - uses: codecov/codecov-action@v4 with: files: coverage_dotnet.xml @@ -91,11 +91,9 @@ jobs: - uses: actions/setup-dotnet@v3 with: dotnet-quality: ga - dotnet-version: | - 3.1 - 8.0 + dotnet-version: 3.1 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - if: ${{ env.RELEASE_KEY_SECRET != '' }} run: | @@ -112,7 +110,7 @@ jobs: - if: ${{ env.RELEASE_KEY_SECRET != '' }} run: dotnet pack net/DevExtreme.AspNet.Data --configuration=Release --include-symbols - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: release-packages path: | @@ -123,12 +121,12 @@ jobs: runs-on: windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: dotnet build net/DevExtreme.AspNet.Data - run: net\docfx\build.cmd - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: docfx-site path: net/docfx/build/site diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 47eaf7a9..57a66d97 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -46,7 +46,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL From 206d2318ef1db34575aee5198ac982b5146d0ce8 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Mon, 20 Jan 2025 13:36:16 +0200 Subject: [PATCH 04/30] CI: Setup linux / ubuntu-latest workflow after #654 (#655) --- .github/workflows/ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 998611cb..746861d2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -88,7 +88,7 @@ jobs: RELEASE_KEY_SECRET: ${{ secrets.RELEASE_KEY_SECRET }} steps: - - uses: actions/setup-dotnet@v3 + - uses: actions/setup-dotnet@v4 with: dotnet-quality: ga dotnet-version: 3.1 @@ -97,9 +97,11 @@ jobs: - if: ${{ env.RELEASE_KEY_SECRET != '' }} run: | + wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5_amd64.deb + sudo dpkg -i libssl1.0.0_1.0.2n-1ubuntu5_amd64.deb curl -L -o /opt/secure-file.zip https://github.com/appveyor/secure-file/releases/download/1.0.1/secure-file.zip unzip /opt/secure-file.zip -d /opt/secure-file - dotnet /opt/secure-file/secure-file.dll -decrypt net/DevExtreme.AspNet.Data/release.snk.enc -secret ${{ env.RELEASE_KEY_SECRET }} + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 dotnet /opt/secure-file/secure-file.dll -decrypt net/DevExtreme.AspNet.Data/release.snk.enc -secret ${{ env.RELEASE_KEY_SECRET }} - run: node build/make-nojquery - run: node build/replace-meta "${{ github.run_number }}" "${{ github.ref }}" "${{ github.repository }}" From 443e06c0e9dfc68a942d655471ecf1bb99bb2c03 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Tue, 21 Jan 2025 10:57:55 +0200 Subject: [PATCH 05/30] CI: Set DOTNET_SYSTEM_GLOBALIZATION_INVARIANT flag for all job steps after #655 (#656) --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 746861d2..ba685273 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -86,6 +86,7 @@ jobs: env: RELEASE_KEY_SECRET: ${{ secrets.RELEASE_KEY_SECRET }} + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: 1 steps: - uses: actions/setup-dotnet@v4 @@ -101,7 +102,7 @@ jobs: sudo dpkg -i libssl1.0.0_1.0.2n-1ubuntu5_amd64.deb curl -L -o /opt/secure-file.zip https://github.com/appveyor/secure-file/releases/download/1.0.1/secure-file.zip unzip /opt/secure-file.zip -d /opt/secure-file - DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 dotnet /opt/secure-file/secure-file.dll -decrypt net/DevExtreme.AspNet.Data/release.snk.enc -secret ${{ env.RELEASE_KEY_SECRET }} + dotnet /opt/secure-file/secure-file.dll -decrypt net/DevExtreme.AspNet.Data/release.snk.enc -secret ${{ env.RELEASE_KEY_SECRET }} - run: node build/make-nojquery - run: node build/replace-meta "${{ github.run_number }}" "${{ github.ref }}" "${{ github.repository }}" From 7b21882dd3e7b9256b6bc8fc95d6ca74c3cd0fa7 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Wed, 12 Feb 2025 17:12:12 +0200 Subject: [PATCH 06/30] Bump System.Linq.Dynamic.Core dep (#657) --- net/Directory.Packages.md | 6 +++--- net/Directory.Packages.props | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index 37be409f..1b46138e 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -144,13 +144,13 @@ TFM: `net472` + + + - - - diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index f7771496..0a2c7d5d 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -18,7 +18,7 @@ - + From ac323a39ec4a939b1c68de7ca8b9a08aff233a2a Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Fri, 14 Feb 2025 13:27:16 +0200 Subject: [PATCH 07/30] CI: Setup net 8, 9 for some jobs on ubuntu-latest (#658) --- .github/actions/dotnet-test-build/action.yml | 2 +- .github/workflows/ci.yml | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/actions/dotnet-test-build/action.yml b/.github/actions/dotnet-test-build/action.yml index a99b8155..3671d08b 100644 --- a/.github/actions/dotnet-test-build/action.yml +++ b/.github/actions/dotnet-test-build/action.yml @@ -5,7 +5,7 @@ runs: using: "composite" steps: - - uses: actions/setup-dotnet@v3 + - uses: actions/setup-dotnet@v4 with: dotnet-quality: ga dotnet-version: 9.0 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ba685273..a83b44a9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -92,7 +92,9 @@ jobs: - uses: actions/setup-dotnet@v4 with: dotnet-quality: ga - dotnet-version: 3.1 + dotnet-version: | + 3.1 + 8.0 - uses: actions/checkout@v4 From d0eef78f2482081cd14f50c5b2a5051dedd2c1c4 Mon Sep 17 00:00:00 2001 From: Vlada Skorokhodova <94827090+vladaskorohodova@users.noreply.github.com> Date: Mon, 24 Feb 2025 17:48:26 +0400 Subject: [PATCH 08/30] Update client-side-without-jquery.md (#653) Co-authored-by: DirkPieterse --- docs/client-side-without-jquery.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/client-side-without-jquery.md b/docs/client-side-without-jquery.md index 45d6cc1e..6f4fdd1b 100644 --- a/docs/client-side-without-jquery.md +++ b/docs/client-side-without-jquery.md @@ -60,4 +60,8 @@ import { DxDataGridModule } from 'devextreme-angular'; bootstrap: [AppComponent] }) export class AppModule { } -``` \ No newline at end of file +``` + +## Intercept HTTP Requests in Angular Applications + +In v24.1, we added the ability to intercept Ajax requests in DevExtreme Angular components. For more information, refer to the following help topic: [Intercept HTTP Requests](https://js.devexpress.com/Angular/Documentation/Guide/Angular_Components/Common_Features/Intercept_HTTP_Requests/). From 442e4837c48b55a68282628518aee7b66d9b44f9 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Fri, 28 Feb 2025 11:56:02 +0200 Subject: [PATCH 09/30] DevExtreme.AspNet.Data.Tests.EFCore10 (#660) --- .github/actions/dotnet-test-build/action.yml | 4 ++- ...vExtreme.AspNet.Data.Tests.EFCore10.csproj | 25 ++++++++++++++ net/DevExtreme.AspNet.Data.sln | 6 ++++ net/Directory.Packages.md | 33 +++++++++++++++++++ 4 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj diff --git a/.github/actions/dotnet-test-build/action.yml b/.github/actions/dotnet-test-build/action.yml index 3671d08b..01f01487 100644 --- a/.github/actions/dotnet-test-build/action.yml +++ b/.github/actions/dotnet-test-build/action.yml @@ -8,7 +8,9 @@ runs: - uses: actions/setup-dotnet@v4 with: dotnet-quality: ga - dotnet-version: 9.0 + dotnet-version: | + 9.0 + 10.0.x - uses: actions/cache@v4 with: diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj new file mode 100644 index 00000000..af164b23 --- /dev/null +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj @@ -0,0 +1,25 @@ + + + + net10.0 + EFCore10 + + + + + + + + + + + + + + + + + + + + diff --git a/net/DevExtreme.AspNet.Data.sln b/net/DevExtreme.AspNet.Data.sln index b336d732..bc7daa75 100644 --- a/net/DevExtreme.AspNet.Data.sln +++ b/net/DevExtreme.AspNet.Data.sln @@ -32,6 +32,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DevExtreme.AspNet.Data.Test EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DevExtreme.AspNet.Data.Tests.EFCore9", "DevExtreme.AspNet.Data.Tests.EFCore9\DevExtreme.AspNet.Data.Tests.EFCore9.csproj", "{613530E9-013E-4FBD-BC3C-17F28B0C78EA}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevExtreme.AspNet.Data.Tests.EFCore10", "DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj", "{E67890C3-C447-394F-F0F9-679CB217BF88}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -82,6 +84,10 @@ Global {613530E9-013E-4FBD-BC3C-17F28B0C78EA}.Debug|Any CPU.Build.0 = Debug|Any CPU {613530E9-013E-4FBD-BC3C-17F28B0C78EA}.Release|Any CPU.ActiveCfg = Release|Any CPU {613530E9-013E-4FBD-BC3C-17F28B0C78EA}.Release|Any CPU.Build.0 = Release|Any CPU + {E67890C3-C447-394F-F0F9-679CB217BF88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E67890C3-C447-394F-F0F9-679CB217BF88}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E67890C3-C447-394F-F0F9-679CB217BF88}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E67890C3-C447-394F-F0F9-679CB217BF88}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index 1b46138e..c7bccd48 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -18,6 +18,10 @@ - tfm: `net472`: [Assemblies: 3, Package References: 7, References: 4](#net-framework-472-dependencies) +[net10.0](#net100-projects) + +- tfm: ``: [Assemblies: 1, Package References: 5 (override version 1)](#net100-dependencies) + [Expected Directory.Packages.props file](expected-directorypackagesprops-file) ## Package References (by Target Framework) @@ -80,6 +84,18 @@ TFM: `net472` - `xunit` - `xunit.runner.visualstudio` +### net10.0 Dependencies + +TFM: `` + +- `LinqKit.Microsoft.EntityFrameworkCore` +- `Microsoft.EntityFrameworkCore.SqlServer` +- `Microsoft.NET.Test.Sdk` +- `xunit` +- `xunit.runner.visualstudio` +--- +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.1.25081.1`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview1250811) + ## Projects (by Target Framework) ### .NET 8.0 Projects @@ -115,6 +131,12 @@ TFM: `net472` - DevExtreme.AspNet.Data.Tests.EF6 (`\DevExtreme.AspNet.Data.Tests.EF6\DevExtreme.AspNet.Data.Tests.EF6.csproj`) - DevExtreme.AspNet.Data.Tests.L2S (`\DevExtreme.AspNet.Data.Tests.L2S\DevExtreme.AspNet.Data.Tests.L2S.csproj`) +### net10.0 Projects + +TFM: `` + +- DevExtreme.AspNet.Data.Tests.EFCore10 (`\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj`) + ## Projects with exact Versions or VersionOverrides ### TFM: `net9.0` @@ -122,6 +144,11 @@ TFM: `net472` #### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`9.0.0` - `\DevExtreme.AspNet.Data.Tests.EFCore9\DevExtreme.AspNet.Data.Tests.EFCore9.csproj` +### TFM: `` + +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.1.25081.1` +- `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` + ## Projects with deprecated packages ### TFM: `net8.0` @@ -173,6 +200,12 @@ TFM: `net472` + + + + + + ``` From fac4efa038b78c5602782e01ecff23556b952000 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Thu, 17 Apr 2025 18:37:54 +0300 Subject: [PATCH 10/30] .NET 10 Preview 3 (#662) --- .../DevExtreme.AspNet.Data.Tests.EFCore10.csproj | 2 +- net/Directory.Packages.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj index af164b23..d14f0097 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj @@ -7,7 +7,7 @@ - + diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index c7bccd48..b733e680 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -94,7 +94,7 @@ TFM: `` - `xunit` - `xunit.runner.visualstudio` --- -- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.1.25081.1`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview1250811) +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.3.25171.6`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview3251716) ## Projects (by Target Framework) @@ -146,7 +146,7 @@ TFM: `` ### TFM: `` -#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.1.25081.1` +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.3.25171.6` - `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` ## Projects with deprecated packages From 3ab3932f43b4af2e89d12e92f4ccaf064fef9061 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:02:34 +0300 Subject: [PATCH 11/30] Add default Write / Serialization functionality / behavior for System.Text.Json converters (#663) --- .../DeserializeTests.cs | 12 ++-- .../SerializeTests.cs | 61 +++++++++++++++++++ .../SerializeTestsEx.cs | 52 ++++++++++++++++ net/DevExtreme.AspNet.Data/Compatibility.cs | 4 +- .../Helpers/DataSourceLoadOptionsParser.cs | 3 + 5 files changed, 123 insertions(+), 9 deletions(-) create mode 100644 net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs create mode 100644 net/DevExtreme.AspNet.Data.Tests/SerializeTestsEx.cs diff --git a/net/DevExtreme.AspNet.Data.Tests/DeserializeTests.cs b/net/DevExtreme.AspNet.Data.Tests/DeserializeTests.cs index 5f57da8d..aecc816c 100644 --- a/net/DevExtreme.AspNet.Data.Tests/DeserializeTests.cs +++ b/net/DevExtreme.AspNet.Data.Tests/DeserializeTests.cs @@ -1,25 +1,23 @@ -using System.Collections; +using DevExtreme.AspNet.Data.Helpers; + +using System.Collections; using System.Text.Json; using Xunit; namespace DevExtreme.AspNet.Data.Tests { public class DeserializeTests { - static readonly JsonSerializerOptions TESTS_DEFAULT_SERIALIZER_OPTIONS = new JsonSerializerOptions(JsonSerializerDefaults.Web) { - Converters = { new ListConverter() } - }; - [Theory] [InlineData(@"[""fieldName"",""="",null]")] [InlineData(@"[[""fieldName1"",""="",""""],""and"",[""fieldName2"",""="",null]]")] public void FilterOperandValueCanBeNull(string rawJsonCriteria) { - var deserializedList = JsonSerializer.Deserialize(rawJsonCriteria, TESTS_DEFAULT_SERIALIZER_OPTIONS); + var deserializedList = JsonSerializer.Deserialize(rawJsonCriteria, DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS); Assert.Equal(3, deserializedList.Count); } [Fact] public void FilterOperandValueCanBeObject() { - var deserializedList = JsonSerializer.Deserialize(@"[""fieldName1"",""="",{""Value"":0}]", TESTS_DEFAULT_SERIALIZER_OPTIONS); + var deserializedList = JsonSerializer.Deserialize(@"[""fieldName1"",""="",{""Value"":0}]", DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS); Assert.Equal(3, deserializedList.Count); Assert.Equal("{\"Value\":0}", deserializedList[2].ToString()); } diff --git a/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs b/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs new file mode 100644 index 00000000..32dee49e --- /dev/null +++ b/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs @@ -0,0 +1,61 @@ +//using DevExtreme.AspNet.Data.Helpers; + +using System; +using System.Collections.Generic; +using System.Text.Json; +using Xunit; + +namespace DevExtreme.AspNet.Data.Tests { + + public class SerializeTests { + [Fact] + public void SerializeEmptyOptions() { + Assert.Equal(@"{""RequireTotalCount"":false,""RequireGroupCount"":false,""IsCountQuery"":false,""IsSummaryQuery"":false,""Skip"":0,""Take"":0,""Sort"":null,""Group"":null,""Filter"":null,""TotalSummary"":null,""GroupSummary"":null,""Select"":null,""PreSelect"":null,""RemoteSelect"":null,""RemoteGrouping"":null,""ExpandLinqSumType"":null,""PrimaryKey"":null,""DefaultSort"":null,""StringToLower"":null,""PaginateViaPrimaryKey"":null,""SortByPrimaryKey"":null,""AllowAsyncOverSync"":false}", + JsonSerializer.Serialize(new DataSourceLoadOptionsBase())); + } + + [Fact] + public void SerializeDeserializeConvertersAffectedOptions() { + var loadOptionsStrGroup = @"""Group"":[{""GroupInterval"":""100"",""IsExpanded"":null,""Selector"":""freight"",""Desc"":false}]"; + var loadOptionsStrFilter = @"""Filter"":[[""orderDate"",""\u003E="",""2011-12-13T14:15:16""],""and"",[""orderDate"",""\u003C"",""2011-12-13T14:15:17""]]"; + + var loadOptions = new DataSourceLoadOptionsBase() { + Group = new GroupingInfo[] { + new GroupingInfo() { + GroupInterval = "100", + Selector = "freight" + } + }, + Filter = new List() { + new List() { "orderDate", ">=", new DateTime(2011, 12, 13, 14, 15, 16) }, + "and", + new List() { "orderDate", "<", new DateTime(2011, 12, 13, 14, 15, 17) } + } + }; + + var loadOptionsSerialized = JsonSerializer.Serialize(loadOptions); + Assert.Contains($"{loadOptionsStrGroup},{loadOptionsStrFilter}", loadOptionsSerialized); + + var loadOptionsDeserialized = JsonSerializer.Deserialize( + loadOptionsSerialized + //, DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS + // does not require options, because deserializes from just serialized instance + ); + Assert.Equal(loadOptions.Group[0].GroupInterval, loadOptionsDeserialized.Group[0].GroupInterval); + Assert.Equal(loadOptions.Group[0].Selector, loadOptionsDeserialized.Group[0].Selector); + Assert.Equal(loadOptions.Filter.Count, loadOptionsDeserialized.Filter.Count); + var filter0Orig = (IList)loadOptions.Filter[0]; + var filter0STJ = (IList)loadOptionsDeserialized.Filter[0]; + Assert.Equal(filter0Orig[0], filter0STJ[0]); + Assert.Equal(filter0Orig[1], filter0STJ[1]); + //TODO: + //https://github.com/dotnet/runtime/issues/31423 + //https://learn.microsoft.com/en-us/dotnet/standard/datetime/system-text-json-support + //https://github.com/DevExpress/DevExtreme.AspNet.Data/blob/master/js/dx.aspnet.data.js -> serializeDate + //Assert.Equal(filter0Orig[2], filter0STJ[2]); + Assert.Equal("2011-12-13T14:15:16", filter0STJ[2]); + + } + } + +} diff --git a/net/DevExtreme.AspNet.Data.Tests/SerializeTestsEx.cs b/net/DevExtreme.AspNet.Data.Tests/SerializeTestsEx.cs new file mode 100644 index 00000000..324e1f02 --- /dev/null +++ b/net/DevExtreme.AspNet.Data.Tests/SerializeTestsEx.cs @@ -0,0 +1,52 @@ +#if NEWTONSOFT_TESTS +using System; +using System.Collections.Generic; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; +using Xunit; + +namespace DevExtreme.AspNet.Data.Tests { + + public class SerializeTestsEx { + [Fact] + public void SerializeEmptyOptions() { + Assert.Equal(@"{""RequireTotalCount"":false,""RequireGroupCount"":false,""IsCountQuery"":false,""IsSummaryQuery"":false,""Skip"":0,""Take"":0,""Sort"":null,""Group"":null,""Filter"":null,""TotalSummary"":null,""GroupSummary"":null,""Select"":null,""PreSelect"":null,""RemoteSelect"":null,""RemoteGrouping"":null,""ExpandLinqSumType"":null,""PrimaryKey"":null,""DefaultSort"":null,""StringToLower"":null,""PaginateViaPrimaryKey"":null,""SortByPrimaryKey"":null,""AllowAsyncOverSync"":false}", + JsonConvert.SerializeObject(new DataSourceLoadOptionsBase())); + } + + [Fact] + public void SerializeDeserializeConvertersAffectedOptions() { + var loadOptionsStrGroup = @"""Group"":[{""GroupInterval"":""100"",""IsExpanded"":null,""Selector"":""freight"",""Desc"":false}]"; + var loadOptionsStrFilter = @"""Filter"":[[""orderDate"","">="",""2011-12-13T14:15:16""],""and"",[""orderDate"",""<"",""2011-12-13T14:15:17""]]"; + + var loadOptions = new DataSourceLoadOptionsBase() { + Group = new GroupingInfo[] { + new GroupingInfo() { + GroupInterval = "100", + Selector = "freight" + } + }, + Filter = new List() { + new List() { "orderDate", ">=", new DateTime(2011, 12, 13, 14, 15, 16) }, + "and", + new List() { "orderDate", "<", new DateTime(2011, 12, 13, 14, 15, 17) } + } + }; + + var loadOptionsSerialized = JsonConvert.SerializeObject(loadOptions); + Assert.Contains($"{loadOptionsStrGroup},{loadOptionsStrFilter}", loadOptionsSerialized); + + var loadOptionsDeserialized = JsonConvert.DeserializeObject(loadOptionsSerialized); + Assert.Equal(loadOptions.Group[0].GroupInterval, loadOptionsDeserialized.Group[0].GroupInterval); + Assert.Equal(loadOptions.Group[0].Selector, loadOptionsDeserialized.Group[0].Selector); + Assert.Equal(loadOptions.Filter.Count, loadOptionsDeserialized.Filter.Count); + var filter0Orig = (IList)loadOptions.Filter[0]; + var filter0NTSF = (JArray)loadOptionsDeserialized.Filter[0]; + Assert.Equal(filter0Orig[0], ((JValue)filter0NTSF[0]).Value); + Assert.Equal(filter0Orig[1], ((JValue)filter0NTSF[1]).Value); + Assert.Equal(filter0Orig[2], ((JValue)filter0NTSF[2]).Value); + } + } + +} +#endif diff --git a/net/DevExtreme.AspNet.Data/Compatibility.cs b/net/DevExtreme.AspNet.Data/Compatibility.cs index ecdc0c6f..af4cc6e8 100644 --- a/net/DevExtreme.AspNet.Data/Compatibility.cs +++ b/net/DevExtreme.AspNet.Data/Compatibility.cs @@ -66,7 +66,7 @@ static object GetNumber(ref Utf8JsonReader reader) { throw new NotImplementedException(); } - public override void Write(Utf8JsonWriter writer, string value, JsonSerializerOptions options) => throw new NotImplementedException(); + public override void Write(Utf8JsonWriter writer, string value, JsonSerializerOptions options) => writer.WriteStringValue(value); } class ListConverter : JsonConverter { @@ -75,7 +75,7 @@ public override IList Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSe return Compatibility.UnwrapList(deserializedList); } - public override void Write(Utf8JsonWriter writer, IList value, JsonSerializerOptions options) => throw new NotImplementedException(); + public override void Write(Utf8JsonWriter writer, IList value, JsonSerializerOptions options) => JsonSerializer.Serialize(writer, value, value.GetType(), options); } } diff --git a/net/DevExtreme.AspNet.Data/Helpers/DataSourceLoadOptionsParser.cs b/net/DevExtreme.AspNet.Data/Helpers/DataSourceLoadOptionsParser.cs index 85403e0f..b9ee9303 100644 --- a/net/DevExtreme.AspNet.Data/Helpers/DataSourceLoadOptionsParser.cs +++ b/net/DevExtreme.AspNet.Data/Helpers/DataSourceLoadOptionsParser.cs @@ -8,6 +8,9 @@ namespace DevExtreme.AspNet.Data.Helpers { /// A parser for the data processing settings. /// public static class DataSourceLoadOptionsParser { +#if DEBUG + internal +#endif static readonly JsonSerializerOptions DEFAULT_SERIALIZER_OPTIONS = new JsonSerializerOptions(JsonSerializerDefaults.Web) { Converters = { new ListConverter() } }; From d20adc20c1b538564f56a331f98c83096578d230 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Tue, 6 May 2025 10:56:51 +0300 Subject: [PATCH 12/30] Refactor tests with JsonSerializerOptions (#664) --- .../CustomFilterCompilersTests.cs | 5 +---- .../FilterExpressionCompilerTests.cs | 11 +++++------ net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs | 1 - 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests/CustomFilterCompilersTests.cs b/net/DevExtreme.AspNet.Data.Tests/CustomFilterCompilersTests.cs index 4f05e5e9..41bbb465 100644 --- a/net/DevExtreme.AspNet.Data.Tests/CustomFilterCompilersTests.cs +++ b/net/DevExtreme.AspNet.Data.Tests/CustomFilterCompilersTests.cs @@ -11,9 +11,6 @@ namespace DevExtreme.AspNet.Data.Tests { public class CustomFilterCompilersTests { - static readonly JsonSerializerOptions TESTS_DEFAULT_SERIALIZER_OPTIONS = new JsonSerializerOptions(JsonSerializerDefaults.Web) { - Converters = { new ListConverter() } - }; [Fact] public void OneToManyContains() { @@ -38,7 +35,7 @@ public void OneToManyContains() { var source = new[] { new Category(), new Category() }; source[0].Products.Add(new Product { Name = "Chai" }); - var filter = JsonSerializer.Deserialize(@"[ ""Products"", ""Contains"", ""ch"" ]", TESTS_DEFAULT_SERIALIZER_OPTIONS); + var filter = JsonSerializer.Deserialize(@"[ ""Products"", ""Contains"", ""ch"" ]", DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS); var loadOptions = new SampleLoadOptions { Filter = filter, diff --git a/net/DevExtreme.AspNet.Data.Tests/FilterExpressionCompilerTests.cs b/net/DevExtreme.AspNet.Data.Tests/FilterExpressionCompilerTests.cs index 9924bafb..4447e2a5 100644 --- a/net/DevExtreme.AspNet.Data.Tests/FilterExpressionCompilerTests.cs +++ b/net/DevExtreme.AspNet.Data.Tests/FilterExpressionCompilerTests.cs @@ -1,4 +1,6 @@ -using System; +using DevExtreme.AspNet.Data.Helpers; + +using System; using System.Collections; using System.Collections.Generic; using System.Linq; @@ -9,9 +11,6 @@ namespace DevExtreme.AspNet.Data.Tests { public class FilterExpressionCompilerTests { - static readonly JsonSerializerOptions TESTS_DEFAULT_SERIALIZER_OPTIONS = new JsonSerializerOptions(JsonSerializerDefaults.Web) { - Converters = { new ListConverter() } - }; class DataItem1 { public int IntProp { get; set; } @@ -146,7 +145,7 @@ public void Not() { [Fact] public void IsUnaryWithJsonCriteria() { - var crit = JsonSerializer.Deserialize("[\"!\", []]", TESTS_DEFAULT_SERIALIZER_OPTIONS); + var crit = JsonSerializer.Deserialize("[\"!\", []]", DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS); var compiler = new FilterExpressionCompiler(typeof(object), false); Assert.True(compiler.IsUnary(crit)); } @@ -243,7 +242,7 @@ public void T105740() { [Fact] public void JsonObjects() { - var crit = JsonSerializer.Deserialize(@"[ [ ""StringProp"", ""abc"" ], [ ""NullableProp"", null ] ]", TESTS_DEFAULT_SERIALIZER_OPTIONS); + var crit = JsonSerializer.Deserialize(@"[ [ ""StringProp"", ""abc"" ], [ ""NullableProp"", null ] ]", DataSourceLoadOptionsParser.DEFAULT_SERIALIZER_OPTIONS); var expr = Compile(crit); Assert.Equal(@"((obj.StringProp == ""abc"") AndAlso (obj.NullableProp == null))", expr.Body.ToString()); } diff --git a/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs b/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs index 32dee49e..34700007 100644 --- a/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs +++ b/net/DevExtreme.AspNet.Data.Tests/SerializeTests.cs @@ -54,7 +54,6 @@ public void SerializeDeserializeConvertersAffectedOptions() { //https://github.com/DevExpress/DevExtreme.AspNet.Data/blob/master/js/dx.aspnet.data.js -> serializeDate //Assert.Equal(filter0Orig[2], filter0STJ[2]); Assert.Equal("2011-12-13T14:15:16", filter0STJ[2]); - } } From 003f29eaf0df4754b3db9f6ffcefcc6a9ecb1b20 Mon Sep 17 00:00:00 2001 From: Vlada Skorokhodova <94827090+vladaskorohodova@users.noreply.github.com> Date: Mon, 16 Jun 2025 13:55:25 +0400 Subject: [PATCH 13/30] Update PaginateViaPrimaryKey API doc (#665) --- .../api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html b/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html index 4652198b..4d3be6ea 100644 --- a/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html +++ b/docs/net/api/DevExtreme.AspNet.Data.DataSourceLoadOptionsBase.html @@ -312,7 +312,7 @@
Property Value

PaginateViaPrimaryKey

-

If this flag is enabled, keys and data are loaded via separate queries. This may result in a more efficient SQL execution plan.

+

If this flag is enabled, keys and data are loaded via separate queries. This may result in a more efficient SQL execution plan.
Avoid using PaginateViaPrimaryKey with a large Take value.

Declaration
From bddb412f7a2666544ec3754d390045ea4dfd457f Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Tue, 17 Jun 2025 18:23:07 +0300 Subject: [PATCH 14/30] Mitigate diagnostics DX0024 (#666) --- .../SqlServerTestDbHelper.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests.Common/SqlServerTestDbHelper.cs b/net/DevExtreme.AspNet.Data.Tests.Common/SqlServerTestDbHelper.cs index f0fd09a1..39f9cae4 100644 --- a/net/DevExtreme.AspNet.Data.Tests.Common/SqlServerTestDbHelper.cs +++ b/net/DevExtreme.AspNet.Data.Tests.Common/SqlServerTestDbHelper.cs @@ -1,9 +1,6 @@ -using System; -using System.Collections.Generic; -using System.Data.SqlClient; +using System.Data.SqlClient; using System.IO; using System.Reflection; -using System.Text; namespace DevExtreme.AspNet.Data.Tests { @@ -32,10 +29,12 @@ public void ResetDatabase() { conn.Open(); void Exec(string sql) { +#pragma warning disable DX0024 // this is assembly with tests using(var cmd = conn.CreateCommand()) { cmd.CommandText = sql; cmd.ExecuteNonQuery(); } +#pragma warning restore DX0024 // this is assembly with tests } try { From 024c596bd3236a44f04d58d27625aebdb83ca041 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Mon, 7 Jul 2025 12:08:26 +0300 Subject: [PATCH 15/30] Bump db deps (Microsoft.EntityFrameworkCore.SqlServer, DevExpress.Xpo) (#667) --- .../DevExtreme.AspNet.Data.Tests.EFCore10.csproj | 2 +- net/Directory.Packages.md | 6 +++--- net/Directory.Packages.props | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj index d14f0097..c681ee93 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj @@ -7,7 +7,7 @@ - + diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index b733e680..ab70087d 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -94,7 +94,7 @@ TFM: `` - `xunit` - `xunit.runner.visualstudio` --- -- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.3.25171.6`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview3251716) +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.5.25277.114`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview525277114) ## Projects (by Target Framework) @@ -146,7 +146,7 @@ TFM: `` ### TFM: `` -#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.3.25171.6` +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.5.25277.114` - `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` ## Projects with deprecated packages @@ -183,7 +183,7 @@ TFM: `` - + diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index 0a2c7d5d..2dc2e5c3 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -5,7 +5,7 @@ - + From fa6c811ac4af60127a3daa10dbe549ff2d7ee137 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Thu, 14 Aug 2025 11:29:51 +0300 Subject: [PATCH 16/30] .NET 10 Preview 7 (#668) --- ...vExtreme.AspNet.Data.Tests.EFCore10.csproj | 4 +- ...evExtreme.AspNet.Data.Tests.EFCore8.csproj | 3 +- ...evExtreme.AspNet.Data.Tests.EFCore9.csproj | 4 +- net/DevExtreme.AspNet.Data.sln | 1 + net/Directory.Packages.md | 91 +++++++++---------- net/Directory.Packages.props | 8 +- net/Sample/Program.cs | 4 +- net/Sample/Sample.csproj | 8 +- 8 files changed, 58 insertions(+), 65 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj index c681ee93..0c76c110 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj @@ -6,8 +6,10 @@ + - + + diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore8/DevExtreme.AspNet.Data.Tests.EFCore8.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore8/DevExtreme.AspNet.Data.Tests.EFCore8.csproj index 0e3bb39c..5f05fb96 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore8/DevExtreme.AspNet.Data.Tests.EFCore8.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore8/DevExtreme.AspNet.Data.Tests.EFCore8.csproj @@ -9,9 +9,8 @@ - + - diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore9/DevExtreme.AspNet.Data.Tests.EFCore9.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore9/DevExtreme.AspNet.Data.Tests.EFCore9.csproj index 2c3c9fe4..d70fc6e3 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore9/DevExtreme.AspNet.Data.Tests.EFCore9.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore9/DevExtreme.AspNet.Data.Tests.EFCore9.csproj @@ -6,8 +6,10 @@ + - + + diff --git a/net/DevExtreme.AspNet.Data.sln b/net/DevExtreme.AspNet.Data.sln index bc7daa75..e0213d15 100644 --- a/net/DevExtreme.AspNet.Data.sln +++ b/net/DevExtreme.AspNet.Data.sln @@ -6,6 +6,7 @@ MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C1FF285C-8342-4DCD-8EAF-01D91D1641E2}" ProjectSection(SolutionItems) = preProject ..\bower.json = ..\bower.json + Directory.Packages.props = Directory.Packages.props ..\js\dx.aspnet.data.js = ..\js\dx.aspnet.data.js ..\js-test\test.js = ..\js-test\test.js EndProjectSection diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index ab70087d..404b15b2 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -2,13 +2,17 @@ ## Summary +[.NET 10.0](#net-100-projects) + +- tfm: `net10.0`: [Assemblies: 2, Package References: 9 (override version 1)](#net-100-dependencies) + [.NET 8.0](#net-80-projects) -- tfm: `net8.0`: [Assemblies: 7, Package References: 20, References: 1](#net-80-dependencies) +- tfm: `net8.0`: [Assemblies: 6, Package References: 16, References: 1](#net-80-dependencies) [.NET 9.0](#net-90-projects) -- tfm: `net9.0`: [Assemblies: 1, Package References: 5 (override version 1)](#net-90-dependencies) +- tfm: `net9.0`: [Assemblies: 1, Package References: 7 (override version 1)](#net-90-dependencies) [.NET Framework 4.6.2](#net-framework-462-projects) @@ -18,14 +22,26 @@ - tfm: `net472`: [Assemblies: 3, Package References: 7, References: 4](#net-framework-472-dependencies) -[net10.0](#net100-projects) - -- tfm: ``: [Assemblies: 1, Package References: 5 (override version 1)](#net100-dependencies) - [Expected Directory.Packages.props file](expected-directorypackagesprops-file) ## Package References (by Target Framework) +### .NET 10.0 Dependencies + +TFM: `net10.0` + +- `Azure.Identity` +- `LinqKit.Microsoft.EntityFrameworkCore` +- `Microsoft.EntityFrameworkCore.SqlServer` +- `Microsoft.IdentityModel.Protocols.OpenIdConnect` +- `Microsoft.NET.Test.Sdk` +- `Microsoft.Web.LibraryManager.Build` +- `Newtonsoft.Json`[Deprecated ->](#newtonsoftjson-tfmnet100) +- `xunit` +- `xunit.runner.visualstudio` +--- +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.7.25380.108`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview725380108) + ### .NET 8.0 Dependencies TFM: `net8.0` @@ -34,14 +50,10 @@ TFM: `net8.0` - `DevExpress.Xpo` - `FluentNHibernate` - `LinqKit.Microsoft.EntityFrameworkCore` -- `Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation` - `Microsoft.EntityFrameworkCore.SqlServer` -- `Microsoft.Identity.Client` +- `Microsoft.IdentityModel.Protocols.OpenIdConnect` - `Microsoft.NET.Test.Sdk` -- `Microsoft.Web.LibraryManager.Build` -- `Newtonsoft.Json`[Deprecated ->](#newtonsoftjson-tfmnet80) - `System.Data.SqlClient` -- `System.Formats.Asn1` - `System.Linq.Dynamic.Core` - `System.Net.Http` - `System.Text.Json` @@ -55,13 +67,15 @@ TFM: `net8.0` TFM: `net9.0` +- `Azure.Identity` - `LinqKit.Microsoft.EntityFrameworkCore` - `Microsoft.EntityFrameworkCore.SqlServer` +- `Microsoft.IdentityModel.Protocols.OpenIdConnect` - `Microsoft.NET.Test.Sdk` - `xunit` - `xunit.runner.visualstudio` --- -- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`9.0.0`[->](#microsoftentityframeworkcoresqlserver-versionoverride900) +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`9.0.8`[->](#microsoftentityframeworkcoresqlserver-versionoverride908) ### .NET Framework 4.6.2 Dependencies @@ -84,19 +98,14 @@ TFM: `net472` - `xunit` - `xunit.runner.visualstudio` -### net10.0 Dependencies +## Projects (by Target Framework) -TFM: `` +### .NET 10.0 Projects -- `LinqKit.Microsoft.EntityFrameworkCore` -- `Microsoft.EntityFrameworkCore.SqlServer` -- `Microsoft.NET.Test.Sdk` -- `xunit` -- `xunit.runner.visualstudio` ---- -- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.5.25277.114`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview525277114) +TFM: `net10.0` -## Projects (by Target Framework) +- DevExtreme.AspNet.Data.Tests.EFCore10 (`\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj`) +- Sample (`\Sample\Sample.csproj`) ### .NET 8.0 Projects @@ -108,7 +117,6 @@ TFM: `net8.0` - DevExtreme.AspNet.Data.Tests.EFCore8 (`\DevExtreme.AspNet.Data.Tests.EFCore8\DevExtreme.AspNet.Data.Tests.EFCore8.csproj`) - DevExtreme.AspNet.Data.Tests.NH (`\DevExtreme.AspNet.Data.Tests.NH\DevExtreme.AspNet.Data.Tests.NH.csproj`) - DevExtreme.AspNet.Data.Tests.Xpo (`\DevExtreme.AspNet.Data.Tests.Xpo\DevExtreme.AspNet.Data.Tests.Xpo.csproj`) -- Sample (`\Sample\Sample.csproj`) ### .NET 9.0 Projects @@ -131,29 +139,24 @@ TFM: `net472` - DevExtreme.AspNet.Data.Tests.EF6 (`\DevExtreme.AspNet.Data.Tests.EF6\DevExtreme.AspNet.Data.Tests.EF6.csproj`) - DevExtreme.AspNet.Data.Tests.L2S (`\DevExtreme.AspNet.Data.Tests.L2S\DevExtreme.AspNet.Data.Tests.L2S.csproj`) -### net10.0 Projects - -TFM: `` +## Projects with exact Versions or VersionOverrides -- DevExtreme.AspNet.Data.Tests.EFCore10 (`\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj`) +### TFM: `net10.0` -## Projects with exact Versions or VersionOverrides +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.7.25380.108` +- `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` +- `\Sample\Sample.csproj` ### TFM: `net9.0` -#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`9.0.0` +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`9.0.8` - `\DevExtreme.AspNet.Data.Tests.EFCore9\DevExtreme.AspNet.Data.Tests.EFCore9.csproj` -### TFM: `` - -#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.5.25277.114` -- `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` - ## Projects with deprecated packages -### TFM: `net8.0` +### TFM: `net10.0` -#### Newtonsoft.Json tfm=`net8.0` +#### Newtonsoft.Json tfm=`net10.0` - `\Sample\Sample.csproj` ### TFM: `net472` @@ -181,17 +184,15 @@ TFM: `` - - + + - - - + + - @@ -200,12 +201,6 @@ TFM: `` - - - - - - ``` diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index 2dc2e5c3..b67bae22 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -4,20 +4,18 @@ true - + - - - + + - diff --git a/net/Sample/Program.cs b/net/Sample/Program.cs index 1e772db3..521cbae8 100644 --- a/net/Sample/Program.cs +++ b/net/Sample/Program.cs @@ -5,9 +5,7 @@ namespace Sample { public class Program { public static void Main(string[] args) { var builder = WebApplication.CreateBuilder(args); - builder.Services - .AddControllersWithViews() - .AddRazorRuntimeCompilation(); + builder.Services.AddControllersWithViews(); builder.Services .AddLogging() .AddEntityFrameworkSqlServer() diff --git a/net/Sample/Sample.csproj b/net/Sample/Sample.csproj index 5ac87710..597d3bc9 100644 --- a/net/Sample/Sample.csproj +++ b/net/Sample/Sample.csproj @@ -1,19 +1,17 @@  - net8.0 + net10.0 enable - - - + + - From e86ac2a1d3bc4eec798324e1001fd10ff4349079 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 21:55:24 +0300 Subject: [PATCH 17/30] Bump braces from 3.0.2 to 3.0.3 (#624) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index dea4b90b..dd06bb18 100644 --- a/package-lock.json +++ b/package-lock.json @@ -960,12 +960,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -1911,9 +1911,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -5756,12 +5756,12 @@ } }, "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" } }, "browserslist": { @@ -6510,9 +6510,9 @@ } }, "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "requires": { "to-regex-range": "^5.0.1" From 8e9588993b83a0b4632fad8a1b4d82c1e41dff13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:16:31 +0300 Subject: [PATCH 18/30] Bump luxon from 1.28.0 to 1.28.1 (#579) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index dd06bb18..1f8d8fba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3108,9 +3108,9 @@ "dev": true }, "node_modules/luxon": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz", - "integrity": "sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ==", + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.1.tgz", + "integrity": "sha512-gYHAa180mKrNIUJCbwpmD0aTu9kV0dREDrwNnuyFAsO1Wt0EVYSZelPnJlbj9HplzXX/YWXHFTL45kvZ53M0pw==", "optional": true, "peer": true, "engines": { @@ -7465,9 +7465,9 @@ } }, "luxon": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz", - "integrity": "sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ==", + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.1.tgz", + "integrity": "sha512-gYHAa180mKrNIUJCbwpmD0aTu9kV0dREDrwNnuyFAsO1Wt0EVYSZelPnJlbj9HplzXX/YWXHFTL45kvZ53M0pw==", "optional": true, "peer": true }, From 53642c4fcc35e30be63fe193cf91d9c2fdcf40a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:22:50 +0300 Subject: [PATCH 19/30] Bump ua-parser-js from 0.7.32 to 0.7.33 (#582) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1f8d8fba..ed19f194 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4397,9 +4397,9 @@ } }, "node_modules/ua-parser-js": { - "version": "0.7.32", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.32.tgz", - "integrity": "sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw==", + "version": "0.7.41", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.41.tgz", + "integrity": "sha512-O3oYyCMPYgNNHuO7Jjk3uacJWZF8loBgwrfd/5LE/HyZ3lUIOdniQ7DNXJcIgZbwioZxk0fLfI4EVnetdiX5jg==", "dev": true, "funding": [ { @@ -4409,8 +4409,15 @@ { "type": "paypal", "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" } ], + "bin": { + "ua-parser-js": "script/cli.js" + }, "engines": { "node": "*" } @@ -8446,9 +8453,9 @@ "dev": true }, "ua-parser-js": { - "version": "0.7.32", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.32.tgz", - "integrity": "sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw==", + "version": "0.7.41", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.41.tgz", + "integrity": "sha512-O3oYyCMPYgNNHuO7Jjk3uacJWZF8loBgwrfd/5LE/HyZ3lUIOdniQ7DNXJcIgZbwioZxk0fLfI4EVnetdiX5jg==", "dev": true }, "universalify": { From 039d0db190dce7119b33786193360061e76ca411 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:31:17 +0300 Subject: [PATCH 20/30] Bump socket.io-parser from 4.2.1 to 4.2.4 (#598) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index ed19f194..70531a8d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4011,9 +4011,9 @@ "dev": true }, "node_modules/socket.io-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.1.tgz", - "integrity": "sha512-V4GrkLy+HeF1F/en3SpUaM+7XxYXpuMUWLGde1kSSh5nQMN4hLrbPIkD+otwh6q9R6NOQBN4AMaOZ2zVjui82g==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", "dev": true, "dependencies": { "@socket.io/component-emitter": "~3.1.0", @@ -8164,9 +8164,9 @@ "dev": true }, "socket.io-parser": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.1.tgz", - "integrity": "sha512-V4GrkLy+HeF1F/en3SpUaM+7XxYXpuMUWLGde1kSSh5nQMN4hLrbPIkD+otwh6q9R6NOQBN4AMaOZ2zVjui82g==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", "dev": true, "requires": { "@socket.io/component-emitter": "~3.1.0", From fb9117ea2433b63816cacf97357e5633bb55ae6e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:38:58 +0300 Subject: [PATCH 21/30] Bump word-wrap from 1.2.3 to 1.2.4 (#600) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 70531a8d..91c8014c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4765,9 +4765,9 @@ "dev": true }, "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8693,9 +8693,9 @@ "dev": true }, "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true }, "wrap-ansi": { From b30dafbdc74a56417e13b2da145031c0d3b03f94 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:45:34 +0300 Subject: [PATCH 22/30] Bump @babel/traverse from 7.19.6 to 7.24.1 (#608) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 348 +++++++++++++++++++--------------------------- 1 file changed, 140 insertions(+), 208 deletions(-) diff --git a/package-lock.json b/package-lock.json index 91c8014c..e044e7fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -40,12 +40,14 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" @@ -112,31 +114,29 @@ } }, "node_modules/@babel/generator": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.19.6.tgz", - "integrity": "sha512-oHGRUQeoX1QrKeJIKVe0hwjGqNnVYsM5Nep5zo0uE0m42sLH+Fsd2pStJ5sRM1bNyTUUoz0pe2lTeMJrb/taTA==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz", + "integrity": "sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==", "dev": true, "dependencies": { - "@babel/types": "^7.19.4", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" + "@babel/parser": "^7.28.3", + "@babel/types": "^7.28.2", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, "node_modules/@babel/helper-compilation-targets": { @@ -175,27 +175,11 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", "dev": true, - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, "engines": { "node": ">=6.9.0" } @@ -256,18 +240,18 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, "engines": { "node": ">=6.9.0" @@ -296,25 +280,14 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "node_modules/@babel/parser": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz", + "integrity": "sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/types": "^7.28.2" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.19.6.tgz", - "integrity": "sha512-h1IUp81s2JYJ3mRkdxJgs4UvmSsRvDrx5ICSJbPvtWYv5i1nTBGcBpnog+89rAFMwvvru6E5NUHdBe01UeSzYA==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -335,49 +308,45 @@ } }, "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.6.tgz", - "integrity": "sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.3.tgz", + "integrity": "sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.19.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.19.6", - "@babel/types": "^7.19.4", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.3", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.3", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.2", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.19.4.tgz", - "integrity": "sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -486,19 +455,19 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.30", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", + "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "node_modules/@socket.io/component-emitter": { @@ -2776,15 +2745,15 @@ } }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-parse-even-better-errors": { @@ -3483,9 +3452,9 @@ "dev": true }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "node_modules/picomatch": { @@ -4313,15 +4282,6 @@ "node": ">=0.6.0" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -5000,12 +4960,14 @@ } }, "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "requires": { - "@babel/highlight": "^7.18.6" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" } }, "@babel/compat-data": { @@ -5052,25 +5014,26 @@ } }, "@babel/generator": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.19.6.tgz", - "integrity": "sha512-oHGRUQeoX1QrKeJIKVe0hwjGqNnVYsM5Nep5zo0uE0m42sLH+Fsd2pStJ5sRM1bNyTUUoz0pe2lTeMJrb/taTA==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz", + "integrity": "sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==", "dev": true, "requires": { - "@babel/types": "^7.19.4", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" + "@babel/parser": "^7.28.3", + "@babel/types": "^7.28.2", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "dependencies": { "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } } } @@ -5101,24 +5064,11 @@ "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true }, - "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", - "dev": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } + "@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true }, "@babel/helper-module-imports": { "version": "7.18.6", @@ -5164,15 +5114,15 @@ } }, "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true }, "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true }, "@babel/helper-validator-option": { @@ -5192,23 +5142,15 @@ "@babel/types": "^7.19.4" } }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "@babel/parser": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz", + "integrity": "sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/types": "^7.28.2" } }, - "@babel/parser": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.19.6.tgz", - "integrity": "sha512-h1IUp81s2JYJ3mRkdxJgs4UvmSsRvDrx5ICSJbPvtWYv5i1nTBGcBpnog+89rAFMwvvru6E5NUHdBe01UeSzYA==", - "dev": true - }, "@babel/runtime": { "version": "7.19.4", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.4.tgz", @@ -5219,43 +5161,39 @@ } }, "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" } }, "@babel/traverse": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.6.tgz", - "integrity": "sha512-6l5HrUCzFM04mfbG09AagtYyR2P0B71B1wN7PfSPiksDPz2k5H9CBC1tcZpz2M8OxbKTPccByoOJ22rUKbpmQQ==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.3.tgz", + "integrity": "sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.19.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.19.6", - "@babel/types": "^7.19.4", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.3", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.3", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.2", + "debug": "^4.3.1" } }, "@babel/types": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.19.4.tgz", - "integrity": "sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", "dev": true, "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" } }, "@colors/colors": { @@ -5342,19 +5280,19 @@ } }, "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.30", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", + "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", "dev": true, "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "@socket.io/component-emitter": { @@ -7195,9 +7133,9 @@ } }, "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true }, "json-parse-even-better-errors": { @@ -7757,9 +7695,9 @@ "dev": true }, "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "picomatch": { @@ -8391,12 +8329,6 @@ "os-tmpdir": "~1.0.2" } }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", From f79e8304aa4ddf44246c9162fe20e4d9f335e032 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 22:53:33 +0300 Subject: [PATCH 23/30] Bump follow-redirects from 1.15.2 to 1.15.6 (#610) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index e044e7fa..d5fbb4eb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1970,9 +1970,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", "dev": true, "funding": [ { @@ -6532,9 +6532,9 @@ "dev": true }, "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", "dev": true }, "fs-access": { From 2fa2175a365cebe1409075cd34672e5f57130dee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Aug 2025 23:14:53 +0300 Subject: [PATCH 24/30] Bump socket.io from 4.5.3 to 4.8.1 (#669) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 152 +++++++++++++++++++++++----------------------- 1 file changed, 77 insertions(+), 75 deletions(-) diff --git a/package-lock.json b/package-lock.json index d5fbb4eb..380904fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -476,17 +476,14 @@ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", "dev": true }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true + "version": "2.8.19", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", + "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } }, "node_modules/@types/eslint": { "version": "8.4.7", @@ -1249,9 +1246,9 @@ "dev": true }, "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "dev": true, "engines": { "node": ">= 0.6" @@ -1522,30 +1519,29 @@ } }, "node_modules/engine.io": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.1.tgz", - "integrity": "sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==", + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", "dev": true, "dependencies": { - "@types/cookie": "^0.4.1", "@types/cors": "^2.8.12", "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "2.0.0", - "cookie": "~0.4.1", + "cookie": "~0.7.2", "cors": "~2.8.5", "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=10.2.0" } }, "node_modules/engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", "dev": true, "engines": { "node": ">=10.0.0" @@ -3957,27 +3953,32 @@ } }, "node_modules/socket.io": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.3.tgz", - "integrity": "sha512-zdpnnKU+H6mOp7nYRXH4GNv1ux6HL6+lHL8g7Ds7Lj8CkdK1jJK/dlwsKDculbyOHifcJ0Pr/yeXnZQ5GeFrcg==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", + "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", "dev": true, "dependencies": { "accepts": "~1.3.4", "base64id": "~2.0.0", + "cors": "~2.8.5", "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.2.0" + "engine.io": "~6.6.0", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" }, "engines": { - "node": ">=10.0.0" + "node": ">=10.2.0" } }, "node_modules/socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.17.1" + } }, "node_modules/socket.io-parser": { "version": "4.2.4", @@ -4838,16 +4839,16 @@ } }, "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "engines": { "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "utf-8-validate": ">=5.0.2" }, "peerDependenciesMeta": { "bufferutil": { @@ -5301,17 +5302,14 @@ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", "dev": true }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true + "version": "2.8.19", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", + "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==", + "dev": true, + "requires": { + "@types/node": "*" + } }, "@types/eslint": { "version": "8.4.7", @@ -5940,9 +5938,9 @@ "dev": true }, "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "dev": true }, "core-js": { @@ -6172,27 +6170,26 @@ "dev": true }, "engine.io": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.1.tgz", - "integrity": "sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==", + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", "dev": true, "requires": { - "@types/cookie": "^0.4.1", "@types/cors": "^2.8.12", "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "2.0.0", - "cookie": "~0.4.1", + "cookie": "~0.7.2", "cors": "~2.8.5", "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" } }, "engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", "dev": true }, "enhanced-resolve": { @@ -8082,24 +8079,29 @@ } }, "socket.io": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.3.tgz", - "integrity": "sha512-zdpnnKU+H6mOp7nYRXH4GNv1ux6HL6+lHL8g7Ds7Lj8CkdK1jJK/dlwsKDculbyOHifcJ0Pr/yeXnZQ5GeFrcg==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", + "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", "dev": true, "requires": { "accepts": "~1.3.4", "base64id": "~2.0.0", + "cors": "~2.8.5", "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.2.0" + "engine.io": "~6.6.0", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" } }, "socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "dev": true, + "requires": { + "debug": "~4.3.4", + "ws": "~8.17.1" + } }, "socket.io-parser": { "version": "4.2.4", @@ -8707,9 +8709,9 @@ } }, "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "requires": {} }, From a994f66f1a831004dd68f22fd4e9ec20efd1d97c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 28 Aug 2025 14:39:52 +0300 Subject: [PATCH 25/30] chore(deps): update dependency jquery to v3.7.1 (#576) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> --- net/Sample/package-lock.json | 2 +- net/Sample/package.json | 2 +- package-lock.json | 28 ++++++++++++++-------------- package.json | 4 ++-- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/net/Sample/package-lock.json b/net/Sample/package-lock.json index fd6a36ce..9b8c7cfc 100644 --- a/net/Sample/package-lock.json +++ b/net/Sample/package-lock.json @@ -7,7 +7,7 @@ "name": "sample", "dependencies": { "devextreme-dist": "~23.2.0", - "jquery": "^3.7.1" + "jquery": "3.7.1" } }, "node_modules/devextreme-dist": { diff --git a/net/Sample/package.json b/net/Sample/package.json index b9c80d0a..efec83f0 100644 --- a/net/Sample/package.json +++ b/net/Sample/package.json @@ -2,6 +2,6 @@ "name": "sample", "dependencies": { "devextreme-dist": "~23.2.0", - "jquery": "^3.7.1" + "jquery": "3.7.1" } } diff --git a/package-lock.json b/package-lock.json index 380904fc..cc20b709 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,9 +9,9 @@ "version": "99.0.0", "license": "MIT", "devDependencies": { - "@types/jquery": "3.5.14", + "@types/jquery": "3.5.33", "eslint": "5.16.0", - "jquery": "3.6.2", + "jquery": "3.7.1", "karma": "6.4.1", "karma-chrome-launcher": "2.2.0", "karma-coverage": "2.2.0", @@ -512,9 +512,9 @@ "dev": true }, "node_modules/@types/jquery": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.14.tgz", - "integrity": "sha512-X1gtMRMbziVQkErhTQmSe2jFwwENA/Zr+PprCkF63vFq+Yt5PZ4AlKqgmeNlwgn7dhsXEK888eIW2520EpC+xg==", + "version": "3.5.33", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.33.tgz", + "integrity": "sha512-SeyVJXlCZpEki5F0ghuYe+L+PprQta6nRZqhONt9F13dWBtR/ftoaIbdRQ7cis7womE+X2LKhsDdDtkkDhJS6g==", "dev": true, "dependencies": { "@types/sizzle": "*" @@ -2716,9 +2716,9 @@ } }, "node_modules/jquery": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.2.tgz", - "integrity": "sha512-/e7ulNIEEYk1Z/l4X0vpxGt+B/dNsV8ghOPAWZaJs8pkGvsSC0tm33aMGylXcj/U7y4IcvwtMXPMyBFZn/gK9A==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", "dev": true }, "node_modules/js-tokens": { @@ -5338,9 +5338,9 @@ "dev": true }, "@types/jquery": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.14.tgz", - "integrity": "sha512-X1gtMRMbziVQkErhTQmSe2jFwwENA/Zr+PprCkF63vFq+Yt5PZ4AlKqgmeNlwgn7dhsXEK888eIW2520EpC+xg==", + "version": "3.5.33", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.33.tgz", + "integrity": "sha512-SeyVJXlCZpEki5F0ghuYe+L+PprQta6nRZqhONt9F13dWBtR/ftoaIbdRQ7cis7womE+X2LKhsDdDtkkDhJS6g==", "dev": true, "requires": { "@types/sizzle": "*" @@ -7108,9 +7108,9 @@ } }, "jquery": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.2.tgz", - "integrity": "sha512-/e7ulNIEEYk1Z/l4X0vpxGt+B/dNsV8ghOPAWZaJs8pkGvsSC0tm33aMGylXcj/U7y4IcvwtMXPMyBFZn/gK9A==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", "dev": true }, "js-tokens": { diff --git a/package.json b/package.json index c0617830..c5f645e2 100644 --- a/package.json +++ b/package.json @@ -18,9 +18,9 @@ "devextreme": ">=18.1.0" }, "devDependencies": { - "@types/jquery": "3.5.14", + "@types/jquery": "3.5.33", "eslint": "5.16.0", - "jquery": "3.6.2", + "jquery": "3.7.1", "karma": "6.4.1", "karma-chrome-launcher": "2.2.0", "karma-coverage": "2.2.0", From 3b1c5fe3f4cbe8db38d19722436179961718b1b5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 28 Aug 2025 14:57:26 +0300 Subject: [PATCH 26/30] chore(deps): update dependency devexpress.xpo to 25.1.4 (#670) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- net/Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index b67bae22..8a8d834b 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -5,7 +5,7 @@ - + From a5de50fa205e37c0e693e827d5f098eeda6a130f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 28 Aug 2025 16:40:47 +0300 Subject: [PATCH 27/30] chore(deps): update dependency fluentnhibernate to 3.4.1 (#671) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- net/Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/Directory.Packages.props b/net/Directory.Packages.props index 8a8d834b..208c9dc7 100644 --- a/net/Directory.Packages.props +++ b/net/Directory.Packages.props @@ -7,7 +7,7 @@ - + From 770d749a7a41f2a432d702b69fe902387ea75122 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 28 Aug 2025 17:23:19 +0300 Subject: [PATCH 28/30] chore(deps): update dependency karma to v6.4.4 (#672) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package-lock.json | 41 ++++++++++++++++++----------------------- package.json | 2 +- 2 files changed, 19 insertions(+), 24 deletions(-) diff --git a/package-lock.json b/package-lock.json index cc20b709..ee244b0e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,7 @@ "@types/jquery": "3.5.33", "eslint": "5.16.0", "jquery": "3.7.1", - "karma": "6.4.1", + "karma": "6.4.4", "karma-chrome-launcher": "2.2.0", "karma-coverage": "2.2.0", "karma-qunit": "2.1.0", @@ -2792,9 +2792,9 @@ } }, "node_modules/karma": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz", - "integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==", + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz", + "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==", "dev": true, "dependencies": { "@colors/colors": "1.5.0", @@ -2816,7 +2816,7 @@ "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^4.4.1", + "socket.io": "^4.7.2", "source-map": "^0.6.1", "tmp": "^0.2.1", "ua-parser-js": "^0.7.30", @@ -2898,6 +2898,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -2936,15 +2937,12 @@ } }, "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, "engines": { - "node": ">=8.17.0" + "node": ">=14.14" } }, "node_modules/karma/node_modules/yargs": { @@ -7175,9 +7173,9 @@ } }, "karma": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz", - "integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==", + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz", + "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==", "dev": true, "requires": { "@colors/colors": "1.5.0", @@ -7199,7 +7197,7 @@ "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^4.4.1", + "socket.io": "^4.7.2", "source-map": "^0.6.1", "tmp": "^0.2.1", "ua-parser-js": "^0.7.30", @@ -7259,13 +7257,10 @@ } }, "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true }, "yargs": { "version": "16.2.0", diff --git a/package.json b/package.json index c5f645e2..da6f36dc 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "@types/jquery": "3.5.33", "eslint": "5.16.0", "jquery": "3.7.1", - "karma": "6.4.1", + "karma": "6.4.4", "karma-chrome-launcher": "2.2.0", "karma-coverage": "2.2.0", "karma-qunit": "2.1.0", From ef49cbcab25ab343edb58e289dd904ef40775a45 Mon Sep 17 00:00:00 2001 From: Andrei Kharitonov Date: Wed, 10 Sep 2025 12:50:48 +0200 Subject: [PATCH 29/30] Security deps lock: npm i -> ci (#679) --- .github/actions/dotnet-test-build/action.yml | 2 +- .github/workflows/ci.yml | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/actions/dotnet-test-build/action.yml b/.github/actions/dotnet-test-build/action.yml index 01f01487..1a791a48 100644 --- a/.github/actions/dotnet-test-build/action.yml +++ b/.github/actions/dotnet-test-build/action.yml @@ -19,7 +19,7 @@ runs: path: ~/.nuget/packages - shell: bash - run: cd net/Sample && npm i + run: cd net/Sample && npm ci - shell: bash run: dotnet build -c Debug net/DevExtreme.AspNet.Data.sln diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a83b44a9..1d4b0239 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,10 @@ jobs: - run: curl -L https://github.com/editorconfig-checker/editorconfig-checker/releases/download/2.3.5/ec-linux-amd64.tar.gz | tar xzf - -C /opt - run: /opt/bin/ec-linux-amd64 -v - - run: npm i eslint + - name: Install ESLint + run: | + ESLINT_VERSION=$(node -p "require('./package-lock.json').packages['node_modules/eslint'].version") + npm i --no-save eslint@$ESLINT_VERSION - run: npm run eslint test-js: @@ -50,9 +53,9 @@ jobs: - run: node build/make-nojquery - - run: npm i --omit=peer + - run: npm ci --omit=peer - run: npm i --no-save "devextreme@${{ matrix.version }}" - - name: Instal devextreme-dist + - name: Install devextreme-dist if: ${{ matrix.version == '>=23.1.0' }} run: npm i --no-save "devextreme-dist@${{ matrix.version }}" - run: npm run dts From e396a9d93e3d22ef7365124ad9de5f8fb6acf490 Mon Sep 17 00:00:00 2001 From: Mikhail Preyskurantov <5574159+mpreyskurantov@users.noreply.github.com> Date: Mon, 22 Sep 2025 15:40:26 +0300 Subject: [PATCH 30/30] .NET10 RC1 (#680) --- .../DevExtreme.AspNet.Data.Tests.EFCore10.csproj | 2 +- net/Directory.Packages.md | 8 ++++---- net/Sample/Sample.csproj | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj index 0c76c110..3320fc6e 100644 --- a/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj +++ b/net/DevExtreme.AspNet.Data.Tests.EFCore10/DevExtreme.AspNet.Data.Tests.EFCore10.csproj @@ -8,7 +8,7 @@ - + diff --git a/net/Directory.Packages.md b/net/Directory.Packages.md index 404b15b2..d5c26cd8 100644 --- a/net/Directory.Packages.md +++ b/net/Directory.Packages.md @@ -40,7 +40,7 @@ TFM: `net10.0` - `xunit` - `xunit.runner.visualstudio` --- -- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.7.25380.108`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-preview725380108) +- `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-rc.1.25451.107`[->](#microsoftentityframeworkcoresqlserver-versionoverride1000-rc125451107) ### .NET 8.0 Dependencies @@ -143,7 +143,7 @@ TFM: `net472` ### TFM: `net10.0` -#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-preview.7.25380.108` +#### `Microsoft.EntityFrameworkCore.SqlServer` VersionOverride=`10.0.0-rc.1.25451.107` - `\DevExtreme.AspNet.Data.Tests.EFCore10\DevExtreme.AspNet.Data.Tests.EFCore10.csproj` - `\Sample\Sample.csproj` @@ -186,8 +186,8 @@ TFM: `net472` - - + + diff --git a/net/Sample/Sample.csproj b/net/Sample/Sample.csproj index 597d3bc9..c53c0828 100644 --- a/net/Sample/Sample.csproj +++ b/net/Sample/Sample.csproj @@ -8,7 +8,7 @@ - +