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

Strong names #285

Open
BlackGad opened this issue Mar 30, 2024 · 5 comments
Open

Strong names #285

BlackGad opened this issue Mar 30, 2024 · 5 comments
Assignees

Comments

@BlackGad
Copy link

Can strong names be assigned to all Nito packages? From what I gather, they were available previously.

@StephenCleary
Copy link
Owner

Why do you want strong-named packages?

@StephenCleary StephenCleary self-assigned this Mar 30, 2024
@BlackGad
Copy link
Author

Our packages utilize strong naming, yet we encounter warnings because the Nito assemblies we reference are not signed. Specifically, the warnings pertain to Nito.AsyncEx.Coordination and Nito.AsyncEx.Tasks, both of which lack a strong name. Signing these assemblies would be highly beneficial and appreciated, considering their quality.

Starting with .NET 5+, strong names no longer offer advantages, leaving warnings as the only concern.

@StephenCleary
Copy link
Owner

Strong naming causes numerous serious maintenance issues for package maintainers, and for this reason I'm not going to strong name any of my libraries. For more details, see #229 (comment)

My real question is, why do you strong-name? What benefit of strong naming are you depending on?

@BlackGad
Copy link
Author

BlackGad commented Apr 1, 2024

Previously, the focus was on .NET Framework and some GAC usage. However, you make a valid argument. Perhaps now is the opportune moment to move away from using strong names.

@CZEMacLeod
Copy link

As a reason to use strong names (out-with those of us still maintaining large net framework based applications), we use them to identify assemblies containing injectable services that we develop (rather than scanning all assemblies), and to filter and list assemblies that are part of the product, separately from those that are our framework or 'third' party, such as for About pages, or to list dependent licenses and acknowledgements etc.
We use the Brutal Strongnamer to handle the few packages which don't supply a strong named package, or just copy the required classes to a utilities package which we strong name (but this doesn't allow us to easily track updates, security issues, or easily assign the correct rights and licencing to the code beyond the source level).

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

No branches or pull requests

3 participants