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

StrongNamed version of the assembly #481

Open
tonyredondo opened this issue Jul 11, 2021 · 8 comments
Open

StrongNamed version of the assembly #481

tonyredondo opened this issue Jul 11, 2021 · 8 comments
Labels
feature ⭐ top feature Top feature request. ⭐ top issue Top issue.

Comments

@tonyredondo
Copy link

tonyredondo commented Jul 11, 2021

Is your feature request related to a problem? Please describe.
A codebase with a lot of use of InternalsVisibleTo so all assemblies must be signed.

Describe the solution you'd like
Either sign the final assembly or have a signed nuget version as some other libs do.

Describe alternatives you've considered
Is not possible to load a non signed assembly from a signed assembly, at compile time at least...

Additional context


Please upvote 👍 this issue if you are interested in it.

@kevingosse
Copy link

Hello,

I'm bumping this issue, as we're about to start the work on a new CLI tool, and we'd really like to base it on Spectre.Console.

Is there any way we could contribute to make this happen? If the only blocker is time, then we could push a PR to update your publish pipeline.

@patriksvensson
Copy link
Contributor

@kevingosse Would a tool such as StrongNamer help in this situation?

Afaik there is no benefit of strong naming .NET Core assemblies since the signature isn't validated or used for assembly binding. I think we would need to have a conversation within the team about the pros and cons when it comes to providing this.

@kevingosse
Copy link

I have no prior experience with StrongNamer but I'll give it a try 👍

@sebastienros
Copy link

Main benefit is that users who have to use a strong named assembly can use yours.
https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/strong-naming

Until nobody is using it anymore I'd recommend to ship the package strongly named. It's as easy as adding the .snk file to the repos and add a tag in the csproj.

@daxian-dbw
Copy link

daxian-dbw commented Jan 11, 2022

+1 to @sebastienros' comment.

Afaik there is no benefit of strong naming .NET Core assemblies since the signature isn't validated or used for assembly binding

@patriksvensson The Spectre.Console package also targets .NETStandard 2.0, which means it's designed to be useable to a .NET Framework application as well. It's quite common for a .NET Framework application to be strong named, and thus it makes it unnecessarily hard to use this package for a .NET Framework application.

In .NET Core world, there may not be benefit from the technical perspective, but there is also no harm to have it strong named. And for applications that still have to be strong named (e.g. PowerShell), it would also make it a lot easier to depend on Spectre.Console. So, overall, I think there is benefits to have this assembly strong named. Please re-consider doing this, thanks!

@deepchoudhery
Copy link

deepchoudhery commented Apr 7, 2023

Any updates on this? Am planning to use this for a dotnet commandline tool prototype but blocked on this currently.

@daxian-dbw
Copy link

Any updates on this issue?

@sebastienros
Copy link

@daxian-dbw I think there is a package named StrongNamer on Nuget that can be used to convert any library to strong named, maybe you can try that?

@github-actions github-actions bot added ⭐ top issue Top issue. ⭐ top feature Top feature request. labels Apr 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature ⭐ top feature Top feature request. ⭐ top issue Top issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants