Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Symbol package validation failing for NUnit.ConsoleRunner.NetCore #1096

Closed
CharliePoole opened this issue Jan 16, 2022 · 6 comments · Fixed by #1127
Closed

Symbol package validation failing for NUnit.ConsoleRunner.NetCore #1096

CharliePoole opened this issue Jan 16, 2022 · 6 comments · Fixed by #1127

Comments

@CharliePoole
Copy link
Collaborator

"The uploaded symbols package contains pdb(s) for a corresponding dll(s) not found in the nuget package."

@CharliePoole
Copy link
Collaborator Author

I examined the packages and I do not find any extra pdb files in the .snupkg.

Based on research, this appears to be a spurious error message due to multiple duplicate uploads. The needed confirmation will involve setting up a project with a package reference to NUnit.ConsoleRunner.NetCore and checking that the source is available from the nuget.org source server. If it is, this can be closed.

@CharliePoole CharliePoole removed this from the 3.15.0 milestone Jan 17, 2022
@mikkelbu
Copy link
Member

I tried to do this, but one cannot have package references to NUnit.ConsoleRunner.NetCore. This gives the warning Error NU1212 Invalid project-package combination for NUnit.ConsoleRunner.NetCore 3.14.0. DotnetToolReference project style can only contain references of the DotnetTool type.

Then I followed https://blog.maartenballiauw.be/post/2020/04/22/referencing-specific-assembly-nuget-package.html and was able via

  <ItemGroup>
    <PackageReference Include="NUnit.ConsoleRunner.NetCore" Version="3.14.0" IncludeAssets="None" ExcludeAssets="All" PrivateAssets="None" GeneratePathProperty="true"/>
  </ItemGroup>

  <ItemGroup>
    <Reference Include="nunit.engine.core, Version=3.14.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb">
      <HintPath>$(PkgNunit_consolerunner_netcore)\tools\netcoreapp3.1\any\nunit.engine.core.dll</HintPath>
    </Reference>
  </ItemGroup>

to get a reference to nunit.engine.core.dll. But looking into the global nuget cache on my machine ......\.nuget\packages\nunit.consolerunner.netcore\ I could not see any pdb files in the folders.

I also tried to create a dummy program that referred to an interface within nunit.engine.core, but I could only access the decompiled source and not the original source code.

    public class Class1
    {
        public static void Main(string[] args) {
            ITestRunnerFactory factory;
        }
    }

and when I made a test inside the project I was still not able to step into the source. So I'm not sure how to test this.

@CharliePoole
Copy link
Collaborator Author

Do you think we should just drop the source package for this package so we stop getting the warning from nuget.org?

@mikkelbu
Copy link
Member

I haven't seen the warning, but I think it is fine to drop it, given that it is very hard to use the package as a NuGet dependency. So I doubt that anyone are going to miss the symbols.

@CharliePoole CharliePoole added this to the 3.15.0 milestone Feb 6, 2022
@CharliePoole
Copy link
Collaborator Author

This is due to the fact that the package is created from the same binaries as are used for the NUnit.ConsoleRunner package, resulting in duplicate assembly errors on nuget.org. Removed creation of source package for this package.

@CharliePoole
Copy link
Collaborator Author

This issue has been resolved in version 3.15.0-beta1

The release is available on:
GitHub.
NuGet packages are also available NuGet.org and
Chocolatey Packages may be found at Chocolatey.org

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants