Skip to content

bug: Local docs build doesn't generate API docs for .NET 10 #430

Open

Description

@VaclavElias

Two issues:

  1. The build fails if sources/assets/Stride.Core.Assets/Stride.Core.Assets.csproj is present in the en/docfx.json.
  2. If the above is removed, the build doesn't generate APIs docs, most likely because of the error below

Test:

docfx metadata en/docfx.json

or run run.bat, select en, select y.

Tested on my dev PC and also on clean PC with Windows 11 + VS 2026.

Error:

Identical errors listed below..

warning: [Failure] Msbuild failed when processing the file 'C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj' with message: SDK Resolver Failure: "The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed while attempting to resolve the SDK "Microsoft.NET.Sdk". Exception: "System.MissingMethodException: Method not found: 'Void System.Text.Json.Utf8JsonReader..ctor(System.ReadOnlySpan1<Byte>, Boolean, System.Text.Json.JsonReaderState)'. at Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadManifestReader.Utf8JsonStreamReader..ctor(Stream stream, JsonReaderOptions readerOptions) at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.GlobalJsonReader.GetWorkloadVersionFromGlobalJson(String globalJsonPath, Nullable1& shouldUseWorkloadSets)
at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.RefreshWorkloadManifests()
at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider..ctor(String sdkRootPath, String sdkVersion, Func2 getEnvironmentVariable, String userProfileDir, String globalJsonPath, String workloadSetVersion) at Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver.CachingWorkloadResolver.Resolve(String sdkReferenceName, String dotnetRootPath, String sdkVersion, String userProfileDir, String globalJsonPath) at Microsoft.DotNet.MSBuildSdkResolver.DotNetMSBuildSdkResolver.Resolve(SdkReference sdkReference, SdkResolverContext context, SdkResultFactory factory) at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.TryResolveSdkUsingSpecifiedResolvers(IReadOnlyList1 resolvers, Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, SdkResult& sdkResult, IEnumerable1& errors, IEnumerable1& warnings)"" C:\Projects\GitHub\stride\sources\targets\Stride.Core.props

Possible issue:
All projects are pointing to sources\targets\Stride.Core.props which might be causing an issue.

Multiple identical errors:

Only some are listed..

C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj : warning NU1510: PackageReference System.ValueTuple will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary.
  All projects are up-to-date for restore.
warning: [Failure] Msbuild failed when processing the file 'C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj' with message: SDK Resolver Failure: "The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed while attempting to resolve the SDK "Microsoft.NET.Sdk". Exception: "System.MissingMethodException: Method not found: 'Void System.Text.Json.Utf8JsonReader..ctor(System.ReadOnlySpan`1<Byte>, Boolean, System.Text.Json.JsonReaderState)'.
   at Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadManifestReader.Utf8JsonStreamReader..ctor(Stream stream, JsonReaderOptions readerOptions)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.GlobalJsonReader.GetWorkloadVersionFromGlobalJson(String globalJsonPath, Nullable`1& shouldUseWorkloadSets)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.RefreshWorkloadManifests()
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider..ctor(String sdkRootPath, String sdkVersion, Func`2 getEnvironmentVariable, String userProfileDir, String globalJsonPath, String workloadSetVersion)
   at Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver.CachingWorkloadResolver.Resolve(String sdkReferenceName, String dotnetRootPath, String sdkVersion, String userProfileDir, String globalJsonPath)
   at Microsoft.DotNet.MSBuildSdkResolver.DotNetMSBuildSdkResolver.Resolve(SdkReference sdkReference, SdkResolverContext context, SdkResultFactory factory)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.TryResolveSdkUsingSpecifiedResolvers(IReadOnlyList`1 resolvers, Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, SdkResult& sdkResult, IEnumerable`1& errors, IEnumerable`1& warnings)""  C:\Projects\GitHub\stride\sources\targets\Stride.Core.props
Loading project C:/Projects/GitHub/stride/sources/core/Stride.Core.IO/Stride.Core.IO.csproj
  Determining projects to restore...
C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj : warning NU1510: PackageReference System.ValueTuple will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. [C:\Projects\GitHub\stride\sources\core\Stride.Core.IO\Stride.Core.IO.csproj]
  All projects are up-to-date for restore.
warning: [Failure] Msbuild failed when processing the file 'C:\Projects\GitHub\stride\sources\core\Stride.Core.IO\Stride.Core.IO.csproj' with message: SDK Resolver Failure: "The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed while attempting to resolve the SDK "Microsoft.NET.Sdk". Exception: "System.MissingMethodException: Method not found: 'Void System.Text.Json.Utf8JsonReader..ctor(System.ReadOnlySpan`1<Byte>, Boolean, System.Text.Json.JsonReaderState)'.
   at Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadManifestReader.Utf8JsonStreamReader..ctor(Stream stream, JsonReaderOptions readerOptions)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.GlobalJsonReader.GetWorkloadVersionFromGlobalJson(String globalJsonPath, Nullable`1& shouldUseWorkloadSets)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.RefreshWorkloadManifests()
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider..ctor(String sdkRootPath, String sdkVersion, Func`2 getEnvironmentVariable, String userProfileDir, String globalJsonPath, String workloadSetVersion)
   at Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver.CachingWorkloadResolver.Resolve(String sdkReferenceName, String dotnetRootPath, String sdkVersion, String userProfileDir, String globalJsonPath)
   at Microsoft.DotNet.MSBuildSdkResolver.DotNetMSBuildSdkResolver.Resolve(SdkReference sdkReference, SdkResolverContext context, SdkResultFactory factory)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.TryResolveSdkUsingSpecifiedResolvers(IReadOnlyList`1 resolvers, Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, SdkResult& sdkResult, IEnumerable`1& errors, IEnumerable`1& warnings)""  C:\Projects\GitHub\stride\sources\targets\Stride.Core.props
Loading project C:/Projects/GitHub/stride/sources/core/Stride.Core.Mathematics/Stride.Core.Mathematics.csproj
  Determining projects to restore...
C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj : warning NU1510: PackageReference System.ValueTuple will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. [C:\Projects\GitHub\stride\sources\core\Stride.Core.Mathematics\Stride.Core.Mathematics.csproj]
  All projects are up-to-date for restore.
warning: [Failure] Msbuild failed when processing the file 'C:\Projects\GitHub\stride\sources\core\Stride.Core.Mathematics\Stride.Core.Mathematics.csproj' with message: SDK Resolver Failure: "The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed while attempting to resolve the SDK "Microsoft.NET.Sdk". Exception: "System.MissingMethodException: Method not found: 'Void System.Text.Json.Utf8JsonReader..ctor(System.ReadOnlySpan`1<Byte>, Boolean, System.Text.Json.JsonReaderState)'.
   at Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadManifestReader.Utf8JsonStreamReader..ctor(Stream stream, JsonReaderOptions readerOptions)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.GlobalJsonReader.GetWorkloadVersionFromGlobalJson(String globalJsonPath, Nullable`1& shouldUseWorkloadSets)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.RefreshWorkloadManifests()
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider..ctor(String sdkRootPath, String sdkVersion, Func`2 getEnvironmentVariable, String userProfileDir, String globalJsonPath, String workloadSetVersion)
   at Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver.CachingWorkloadResolver.Resolve(String sdkReferenceName, String dotnetRootPath, String sdkVersion, String userProfileDir, String globalJsonPath)
   at Microsoft.DotNet.MSBuildSdkResolver.DotNetMSBuildSdkResolver.Resolve(SdkReference sdkReference, SdkResolverContext context, SdkResultFactory factory)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.TryResolveSdkUsingSpecifiedResolvers(IReadOnlyList`1 resolvers, Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, SdkResult& sdkResult, IEnumerable`1& errors, IEnumerable`1& warnings)""  C:\Projects\GitHub\stride\sources\targets\Stride.Core.props
Loading project C:/Projects/GitHub/stride/sources/core/Stride.Core.MicroThreading/Stride.Core.MicroThreading.csproj
  Determining projects to restore...
C:\Projects\GitHub\stride\sources\core\Stride.Core\Stride.Core.csproj : warning NU1510: PackageReference System.ValueTuple will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. [C:\Projects\GitHub\stride\sources\core\Stride.Core.MicroThreading\Stride.Core.MicroThreading.csproj]
  All projects are up-to-date for restore.
warning: [Failure] Msbuild failed when processing the file 'C:\Projects\GitHub\stride\sources\core\Stride.Core.MicroThreading\Stride.Core.MicroThreading.csproj' with message: SDK Resolver Failure: "The SDK resolver "Microsoft.DotNet.MSBuildSdkResolver" failed while attempting to resolve the SDK "Microsoft.NET.Sdk". Exception: "System.MissingMethodException: Method not found: 'Void System.Text.Json.Utf8JsonReader..ctor(System.ReadOnlySpan`1<Byte>, Boolean, System.Text.Json.JsonReaderState)'.
   at Microsoft.NET.Sdk.WorkloadManifestReader.WorkloadManifestReader.Utf8JsonStreamReader..ctor(Stream stream, JsonReaderOptions readerOptions)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.GlobalJsonReader.GetWorkloadVersionFromGlobalJson(String globalJsonPath, Nullable`1& shouldUseWorkloadSets)
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider.RefreshWorkloadManifests()
   at Microsoft.NET.Sdk.WorkloadManifestReader.SdkDirectoryWorkloadManifestProvider..ctor(String sdkRootPath, String sdkVersion, Func`2 getEnvironmentVariable, String userProfileDir, String globalJsonPath, String workloadSetVersion)
   at Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver.CachingWorkloadResolver.Resolve(String sdkReferenceName, String dotnetRootPath, String sdkVersion, String userProfileDir, String globalJsonPath)
   at Microsoft.DotNet.MSBuildSdkResolver.DotNetMSBuildSdkResolver.Resolve(SdkReference sdkReference, SdkResolverContext context, SdkResultFactory factory)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.TryResolveSdkUsingSpecifiedResolvers(IReadOnlyList`1 resolvers, Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, SdkResult& sdkResult, IEnumerable`1& errors, IEnumerable`1& warnings)""  C:\Projects\GitHub\stride\sources\targets\Stride.Core.props
Loading project C:/Projects/GitHub/stride/sources/core/Stride.Core.Serialization/Stride.Core.Serialization.csproj
  Determining projects to restore...

Activity

  1. added theissue type on Nov 12, 2025
  2. VaclavElias commented on Nov 12, 2025

    @VaclavElias
    ContributorAuthor

    I am getting this error on GitHub Action, it might be related but different errors.

    Note, that I was running the workflow from my branch feat-net10-upgrade.

    https://github.com/VaclavElias/stride-docs/actions/runs/19294872442

    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(251,33): error CS8795: Partial method 'ConsoleLogListener.AttachConsole(int)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(260,33): error CS8795: Partial method 'ConsoleLogListener.FreeConsole()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(269,33): error CS8795: Partial method 'ConsoleLogListener.AllocConsole()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(277,35): error CS8795: Partial method 'ConsoleLogListener.GetConsoleWindow()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(286,33): error CS8795: Partial method 'ConsoleLogListener.ShowWindow(nint, int)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(294,35): error CS8795: Partial method 'ConsoleLogListener.GetStdHandle(uint)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(302,33): error CS8795: Partial method 'ConsoleLogListener.SetStdHandle(uint, nint)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(310,32): error CS8795: Partial method 'ConsoleLogListener.GetFileType(SafeFileHandle)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\ConsoleLogListener.cs(319,33): error CS8795: Partial method 'ConsoleLogListener.GetConsoleMode(nint, out int)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(145,33): error CS8795: Partial method 'VTuneProfiler.__itt_resume()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(154,33): error CS8795: Partial method 'VTuneProfiler.__itt_pause()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(163,33): error CS8795: Partial method 'VTuneProfiler.__itt_frame_begin_v3(VTuneProfiler.Domain, nint)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(172,33): error CS8795: Partial method 'VTuneProfiler.__itt_frame_end_v3(VTuneProfiler.Domain, nint)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(181,35): error CS8795: Partial method 'VTuneProfiler.__itt_domain_createW(string)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(190,34): error CS8795: Partial method 'VTuneProfiler.__itt_event_createW(string, int)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(199,32): error CS8795: Partial method 'VTuneProfiler.__itt_event_start(VTuneProfiler.Event)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(208,32): error CS8795: Partial method 'VTuneProfiler.__itt_event_end(VTuneProfiler.Event)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(217,41): error CS8795: Partial method 'VTuneProfiler.__itt_string_handle_createW(string)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(226,33): error CS8795: Partial method 'VTuneProfiler.__itt_task_begin(VTuneProfiler.Domain, VTuneProfiler.IttId, VTuneProfiler.IttId, VTuneProfiler.StringHandle)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core\Diagnostics\VTuneProfiler.cs(235,33): error CS8795: Partial method 'VTuneProfiler.__itt_task_end(VTuneProfiler.Domain)' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core.Serialization\Serialization\Contents\ContentIndexMap.cs(149,34): error CS8795: Partial method 'ContentIndexMap.RegexEntry()' must have an implementation part because it has accessibility modifiers.
    error: D:\a\stride-docs\stride-docs\stride\sources\core\Stride.Core.Serialization\Serialization\Contents\ContentIndexMap.cs(151,34): error CS8795: Partial method 'ContentIndexMap.RegexEntrySpace()' must have an implementation part because it has accessibility modifiers.
    
  3. VaclavElias commented on Nov 14, 2025

    @VaclavElias
    ContributorAuthor

    This is currently resolved with temporary solution. I will keep this open so we can revert it, once the official docfx is updated

    # Temporary solution till the new docfx is available
    - name: Checkout DocFX PR Branch
      uses: actions/checkout@v5
      with:
        repository: filzrev/docfx
        ref: feat-add-net10-support
        path: docfx-build
    
    - name: Restore npm dependencies
      run: npm install
      working-directory:  docfx-build/templates
    
    - name: Build site templates
      run: npm run build
      working-directory:  docfx-build/templates
    
    - name: Build DocFX from PR
      run: dotnet pack src/docfx -c Release /p:Version=2.9-stride -o drop/nuget
      working-directory: docfx-build
      shell: pwsh
    
    - name: Build Install DocFX
      run: dotnet tool install -g docfx --version 2.9-stride --add-source drop/nuget
      working-directory: docfx-build
      shell: pwsh
      # End of Temporary solution
      
    #- name: Install DocFX
      # This installs the latest version of DocFX and may introduce breaking changes
      # run: dotnet tool update -g docfx
      # This installs a specific, tested version of DocFX.
      #run: dotnet tool update -g docfx --version 2.78.3
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions