Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
2b8ab12
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 3, 2026
86867d0
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 4, 2026
cc2ac60
Merge commit '23aa0d93cdb7b3e77f87db23add2236ff0271dfd'
Aug 5, 2026
53a8db2
Merge commit '264641c48536c2cfe4fdbc00410df628d0200c2e'
Aug 5, 2026
74c4bc7
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 5, 2026
1294e25
Merge commit 'a96d00ebc4609fe9b365b82a2285a3be4066b99a'
Aug 5, 2026
caef31b
Merge commit 'f848952abb97826e22dd6bbb0acb5b4abf70ace4'
Aug 6, 2026
b466515
Merged PR 62623: [release/8.0] Fix(gRPC): properly validate segments …
DeagleGross Aug 6, 2026
94b4efe
Merge commit 'f994cf0123d47ce953897a864425a336d3735007'
Aug 6, 2026
5ae9e5a
Merged PR 63342: [release/8.0] Fix unbounded request decompression on…
Aug 6, 2026
f7ba041
Merged PR 63742: Update identity redirect handling
javiercn Aug 10, 2026
4f39e08
Merged PR 63481: [8.0] Restrict JavaScript root component operations
javiercn Aug 10, 2026
42fcce2
Merge commit 'dd53338763b39c4d7eb6b25c16447e74336baec0'
Aug 11, 2026
b74d5fd
Merge commit '2aac9eb61d27b38e58288883782bd99ef4c7f86a'
Aug 11, 2026
4e69502
Merge commit '30baaef9f81a312c6573f984c19e098dbfbae353'
Aug 11, 2026
d2b8d67
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 11, 2026
d44b623
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 12, 2026
99f147f
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 13, 2026
177bc80
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 13, 2026
3781c14
Merged PR 63496: [internal/release/8.0] Update dependencies from dnce…
Aug 13, 2026
fa4238a
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 13, 2026
d1dbcb5
Merged PR 63977: [internal/release/8.0] Update dependencies from dnce…
Aug 13, 2026
db19187
Merge commit 'ed803af6b8a5a3a8d4b0d5c6ece96ecccfca47e0'
Aug 13, 2026
d90a1e0
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 21, 2026
133d3f0
Merged PR 64305: [internal/release/8.0] Update dependencies from dnce…
Aug 21, 2026
a0797b0
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-bot Aug 21, 2026
5e392da
Merged PR 64321: [internal/release/8.0] Update dependencies from dnce…
Aug 22, 2026
067fe4b
Merge commit '5e392da7379de101db58a36123c38effeba3edef' into internal…
dotnet-bot Sep 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions NuGet.config
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@
<!-- Begin: Package sources from dotnet-extensions -->
<!-- End: Package sources from dotnet-extensions -->
<!-- Begin: Package sources from dotnet-efcore -->
<add key="darc-int-dotnet-efcore-4caf9ee" value="https://pkgs.dev.azure.com/dnceng/internal/_packaging/darc-int-dotnet-efcore-4caf9eec/nuget/v3/index.json" />
<!-- End: Package sources from dotnet-efcore -->
<!-- Begin: Package sources from dotnet-runtime -->
<add key="darc-int-dotnet-runtime-1219a42" value="https://pkgs.dev.azure.com/dnceng/internal/_packaging/darc-int-dotnet-runtime-1219a421/nuget/v3/index.json" />
<!-- End: Package sources from dotnet-runtime -->
<!--End: Package sources managed by Dependency Flow automation. Do not edit the sources above.-->
<add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" />
Expand All @@ -28,8 +30,10 @@
<clear />
<!--Begin: Package sources managed by Dependency Flow automation. Do not edit the sources below.-->
<!-- Begin: Package sources from dotnet-efcore -->
<add key="darc-int-dotnet-efcore-4caf9ee" value="true" />
<!-- End: Package sources from dotnet-efcore -->
<!-- Begin: Package sources from dotnet-runtime -->
<add key="darc-int-dotnet-runtime-1219a42" value="true" />
<!-- End: Package sources from dotnet-runtime -->
<!--End: Package sources managed by Dependency Flow automation. Do not edit the sources above.-->
</disabledPackageSources>
Expand Down
72 changes: 36 additions & 36 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,37 +9,37 @@
-->
<Dependencies>
<ProductDependencies>
<Dependency Name="dotnet-ef" Version="8.0.30">
<Dependency Name="dotnet-ef" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.EntityFrameworkCore.Design" Version="8.0.30">
<Dependency Name="Microsoft.EntityFrameworkCore.Design" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-efcore</Uri>
<Sha>03e24496b0b7317a04a0d999a310e323c370e88d</Sha>
<Sha>4caf9eeca38ab8bbc8857b975a8f0ad29ad2ea7f</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Caching.Abstractions" Version="8.0.0">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
Expand Down Expand Up @@ -121,9 +121,9 @@
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>5535e31a712343a63f5d7d796cd874e563e5ac14</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="8.0.30-servicing.26367.20">
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="8.0.31-servicing.26420.15">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Hosting.Abstractions" Version="8.0.1">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
Expand Down Expand Up @@ -185,9 +185,9 @@
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>5535e31a712343a63f5d7d796cd874e563e5ac14</Sha>
</Dependency>
<Dependency Name="Microsoft.Internal.Runtime.AspNetCore.Transport" Version="8.0.30-servicing.26367.20">
<Dependency Name="Microsoft.Internal.Runtime.AspNetCore.Transport" Version="8.0.31-servicing.26420.15">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-externals" Version="8.0.0-alpha.1.26451.1">
<Uri>https://github.com/dotnet/source-build-externals</Uri>
Expand Down Expand Up @@ -275,17 +275,17 @@
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>81cabf2857a01351e5ab578947c7403a5b128ad1</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.30">
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.NET.Runtime.MonoAOTCompiler.Task" Version="8.0.30">
<Dependency Name="Microsoft.NET.Runtime.MonoAOTCompiler.Task" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.NET.Runtime.WebAssembly.Sdk" Version="8.0.30">
<Dependency Name="Microsoft.NET.Runtime.WebAssembly.Sdk" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.Bcl.AsyncInterfaces" Version="8.0.0">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
Expand Down Expand Up @@ -316,22 +316,22 @@
Win-x64 is used here because we have picked an arbitrary runtime identifier to flow the version of the latest NETCore.App runtime.
All Runtime.$rid packages should have the same version.
-->
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="8.0.30">
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.SourceBuild.Intermediate.runtime.linux-x64" Version="8.0.30-servicing.26367.20">
<Dependency Name="Microsoft.SourceBuild.Intermediate.runtime.linux-x64" Version="8.0.31-servicing.26420.15">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
<SourceBuild RepoName="runtime" ManagedOnly="false" />
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm" Version="8.0.30">
<Dependency Name="Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm" Version="8.0.31">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="8.0.30-servicing.26367.20">
<Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="8.0.31-servicing.26420.15">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="Microsoft.Web.Xdt" Version="7.0.0-preview.22423.2">
<Uri>https://github.com/dotnet/xdt</Uri>
Expand Down Expand Up @@ -368,9 +368,9 @@
</ProductDependencies>
<ToolsetDependencies>
<!-- Listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
<Dependency Name="Microsoft.NETCore.Platforms" Version="8.0.30-servicing.26367.20">
<Dependency Name="Microsoft.NETCore.Platforms" Version="8.0.31-servicing.26420.15">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-runtime</Uri>
<Sha>a83db3e0eb2defb6220e15dae2f1a0462fdbf99f</Sha>
<Sha>1219a42122cf5190c7f512850557e38c422430dc</Sha>
</Dependency>
<Dependency Name="System.Drawing.Common" Version="8.0.0-rtm.23520.14">
<Uri>https://github.com/dotnet/winforms</Uri>
Expand Down
36 changes: 18 additions & 18 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,12 @@
<PropertyGroup Label="Automated">
<!-- Packages from dotnet/runtime -->
<MicrosoftExtensionsDependencyModelVersion>8.0.2</MicrosoftExtensionsDependencyModelVersion>
<MicrosoftNETCoreAppRefVersion>8.0.30</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCoreAppRuntimewinx64Version>8.0.30</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftNETRuntimeMonoAOTCompilerTaskVersion>8.0.30</MicrosoftNETRuntimeMonoAOTCompilerTaskVersion>
<MicrosoftNETRuntimeWebAssemblySdkVersion>8.0.30</MicrosoftNETRuntimeWebAssemblySdkVersion>
<MicrosoftNETCoreAppRuntimeAOTwinx64CrossbrowserwasmVersion>8.0.30</MicrosoftNETCoreAppRuntimeAOTwinx64CrossbrowserwasmVersion>
<MicrosoftNETCoreBrowserDebugHostTransportVersion>8.0.30-servicing.26367.20</MicrosoftNETCoreBrowserDebugHostTransportVersion>
<MicrosoftNETCoreAppRefVersion>8.0.31</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCoreAppRuntimewinx64Version>8.0.31</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftNETRuntimeMonoAOTCompilerTaskVersion>8.0.31</MicrosoftNETRuntimeMonoAOTCompilerTaskVersion>
<MicrosoftNETRuntimeWebAssemblySdkVersion>8.0.31</MicrosoftNETRuntimeWebAssemblySdkVersion>
<MicrosoftNETCoreAppRuntimeAOTwinx64CrossbrowserwasmVersion>8.0.31</MicrosoftNETCoreAppRuntimeAOTwinx64CrossbrowserwasmVersion>
<MicrosoftNETCoreBrowserDebugHostTransportVersion>8.0.31-servicing.26420.15</MicrosoftNETCoreBrowserDebugHostTransportVersion>
<MicrosoftExtensionsCachingAbstractionsVersion>8.0.0</MicrosoftExtensionsCachingAbstractionsVersion>
<MicrosoftExtensionsCachingMemoryVersion>8.0.1</MicrosoftExtensionsCachingMemoryVersion>
<MicrosoftExtensionsConfigurationAbstractionsVersion>8.0.0</MicrosoftExtensionsConfigurationAbstractionsVersion>
Expand All @@ -92,7 +92,7 @@
<MicrosoftExtensionsFileProvidersCompositeVersion>8.0.0</MicrosoftExtensionsFileProvidersCompositeVersion>
<MicrosoftExtensionsFileProvidersPhysicalVersion>8.0.0</MicrosoftExtensionsFileProvidersPhysicalVersion>
<MicrosoftExtensionsFileSystemGlobbingVersion>8.0.0</MicrosoftExtensionsFileSystemGlobbingVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>8.0.30-servicing.26367.20</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>8.0.31-servicing.26420.15</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsHostingAbstractionsVersion>8.0.1</MicrosoftExtensionsHostingAbstractionsVersion>
<MicrosoftExtensionsHostingVersion>8.0.1</MicrosoftExtensionsHostingVersion>
<MicrosoftExtensionsHttpVersion>8.0.1</MicrosoftExtensionsHttpVersion>
Expand All @@ -108,7 +108,7 @@
<MicrosoftExtensionsOptionsDataAnnotationsVersion>8.0.0</MicrosoftExtensionsOptionsDataAnnotationsVersion>
<MicrosoftExtensionsOptionsVersion>8.0.2</MicrosoftExtensionsOptionsVersion>
<MicrosoftExtensionsPrimitivesVersion>8.0.0</MicrosoftExtensionsPrimitivesVersion>
<MicrosoftInternalRuntimeAspNetCoreTransportVersion>8.0.30-servicing.26367.20</MicrosoftInternalRuntimeAspNetCoreTransportVersion>
<MicrosoftInternalRuntimeAspNetCoreTransportVersion>8.0.31-servicing.26420.15</MicrosoftInternalRuntimeAspNetCoreTransportVersion>
<SystemConfigurationConfigurationManagerVersion>8.0.1</SystemConfigurationConfigurationManagerVersion>
<SystemDiagnosticsDiagnosticSourceVersion>8.0.1</SystemDiagnosticsDiagnosticSourceVersion>
<SystemDiagnosticsEventLogVersion>8.0.2</SystemDiagnosticsEventLogVersion>
Expand All @@ -128,9 +128,9 @@
<SystemThreadingAccessControlVersion>8.0.0</SystemThreadingAccessControlVersion>
<SystemThreadingChannelsVersion>8.0.0</SystemThreadingChannelsVersion>
<SystemThreadingRateLimitingVersion>8.0.0</SystemThreadingRateLimitingVersion>
<MicrosoftSourceBuildIntermediateruntimelinuxx64Version>8.0.30-servicing.26367.20</MicrosoftSourceBuildIntermediateruntimelinuxx64Version>
<MicrosoftSourceBuildIntermediateruntimelinuxx64Version>8.0.31-servicing.26420.15</MicrosoftSourceBuildIntermediateruntimelinuxx64Version>
<!-- Only listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
<MicrosoftNETCorePlatformsVersion>8.0.30-servicing.26367.20</MicrosoftNETCorePlatformsVersion>
<MicrosoftNETCorePlatformsVersion>8.0.31-servicing.26420.15</MicrosoftNETCorePlatformsVersion>
<MicrosoftBclAsyncInterfacesVersion>8.0.0</MicrosoftBclAsyncInterfacesVersion>
<!-- Transitive package to provide coherency in dotnet/extensions -->
<MicrosoftBclTimeProviderVersion>8.0.1</MicrosoftBclTimeProviderVersion>
Expand All @@ -142,14 +142,14 @@
<MicrosoftExtensionsDiagnosticsTestingVersion>9.0.0-preview.9.24518.1</MicrosoftExtensionsDiagnosticsTestingVersion>
<MicrosoftExtensionsTimeProviderTestingVersion>9.0.0-preview.9.24518.1</MicrosoftExtensionsTimeProviderTestingVersion>
<!-- Packages from dotnet/efcore -->
<dotnetefVersion>8.0.30</dotnetefVersion>
<MicrosoftEntityFrameworkCoreInMemoryVersion>8.0.30</MicrosoftEntityFrameworkCoreInMemoryVersion>
<MicrosoftEntityFrameworkCoreRelationalVersion>8.0.30</MicrosoftEntityFrameworkCoreRelationalVersion>
<MicrosoftEntityFrameworkCoreSqliteVersion>8.0.30</MicrosoftEntityFrameworkCoreSqliteVersion>
<MicrosoftEntityFrameworkCoreSqlServerVersion>8.0.30</MicrosoftEntityFrameworkCoreSqlServerVersion>
<MicrosoftEntityFrameworkCoreToolsVersion>8.0.30</MicrosoftEntityFrameworkCoreToolsVersion>
<MicrosoftEntityFrameworkCoreVersion>8.0.30</MicrosoftEntityFrameworkCoreVersion>
<MicrosoftEntityFrameworkCoreDesignVersion>8.0.30</MicrosoftEntityFrameworkCoreDesignVersion>
<dotnetefVersion>8.0.31</dotnetefVersion>
<MicrosoftEntityFrameworkCoreInMemoryVersion>8.0.31</MicrosoftEntityFrameworkCoreInMemoryVersion>
<MicrosoftEntityFrameworkCoreRelationalVersion>8.0.31</MicrosoftEntityFrameworkCoreRelationalVersion>
<MicrosoftEntityFrameworkCoreSqliteVersion>8.0.31</MicrosoftEntityFrameworkCoreSqliteVersion>
<MicrosoftEntityFrameworkCoreSqlServerVersion>8.0.31</MicrosoftEntityFrameworkCoreSqlServerVersion>
<MicrosoftEntityFrameworkCoreToolsVersion>8.0.31</MicrosoftEntityFrameworkCoreToolsVersion>
<MicrosoftEntityFrameworkCoreVersion>8.0.31</MicrosoftEntityFrameworkCoreVersion>
<MicrosoftEntityFrameworkCoreDesignVersion>8.0.31</MicrosoftEntityFrameworkCoreDesignVersion>
<!-- Packages from dotnet/roslyn -->
<MicrosoftCodeAnalysisCommonVersion>4.8.0-7.24574.2</MicrosoftCodeAnalysisCommonVersion>
<MicrosoftCodeAnalysisExternalAccessAspNetCoreVersion>4.8.0-7.24574.2</MicrosoftCodeAnalysisExternalAccessAspNetCoreVersion>
Expand Down
21 changes: 19 additions & 2 deletions src/Components/Web/src/JSComponents/JSComponentInterop.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ static JSComponentInterop()
}

private const int MaxParameters = 100;
private readonly HashSet<int> _jsComponentIds = new();
private WebRenderer? _renderer;

internal JSComponentConfigurationStore Configuration { get; }
Expand Down Expand Up @@ -70,7 +71,9 @@ protected internal virtual int AddRootComponent(string identifier, string domEle
throw new ArgumentException($"There is no registered JS component with identifier '{identifier}'.");
}

return Renderer.AddRootComponent(componentType, domElementSelector);
var componentId = Renderer.AddRootComponent(componentType, domElementSelector);
_jsComponentIds.Add(componentId);
return componentId;
}

/// <summary>
Expand All @@ -80,6 +83,8 @@ protected internal virtual int AddRootComponent(string identifier, string domEle
Justification = "OpenComponent already has the right set of attributes")]
protected internal void SetRootComponentParameters(int componentId, int parameterCount, JsonElement parametersJson, JsonSerializerOptions jsonOptions)
{
EnsureValidJSComponentId(componentId);

// In case the client misreports the number of parameters, impose bounds so we know the amount
// of work done is limited to a fixed, low amount.
if (parameterCount < 0 || parameterCount > MaxParameters)
Expand Down Expand Up @@ -153,7 +158,11 @@ protected internal void SetRootComponentParameters(int componentId, int paramete
/// For framework use only.
/// </summary>
protected internal virtual void RemoveRootComponent(int componentId)
=> Renderer.RemoveRootComponent(componentId);
{
EnsureValidJSComponentId(componentId);
Renderer.RemoveRootComponent(componentId);
_jsComponentIds.Remove(componentId);
}

internal static ParameterTypeCache GetComponentParameters(Type componentType)
=> ParameterTypeCaches.GetOrAdd(componentType, static type => new ParameterTypeCache(type));
Expand Down Expand Up @@ -192,6 +201,14 @@ private static bool TryGetComponentParameterInfo(Type componentType, string para
return cacheForComponent.ParameterInfoByName.TryGetValue(parameterName, out parameterInfo);
}

private void EnsureValidJSComponentId(int componentId)
{
if (!_jsComponentIds.Contains(componentId))
{
throw new InvalidOperationException($"Root component with ID '{componentId}' was not added by JavaScript.");
}
}

internal readonly struct ParameterTypeCache
{
public readonly Dictionary<string, ParameterInfo> ParameterInfoByName;
Expand Down
Loading
Loading