Aaron Meyers created LUCENENET-608:
--------------------------------------
Summary: Add strong-naming to Lucene.Net to comply with Microsoft
guidelines
Key: LUCENENET-608
URL: https://issues.apache.org/jira/browse/LUCENENET-608
Project: Lucene.Net
Issue Type: Improvement
Affects Versions: Lucene.Net 4.8.0
Reporter: Aaron Meyers
Fix For: Lucene.Net 4.8.0
As discussed on the dev mailing list, I would like to submit a PR to add
strong-naming to all the Lucene.Net assemblies.
Rationale:
Microsoft still recommends that libraries (but not applications) use
strong-names. Modern frameworks like .NET Core/Xamarin/UWP have relaxed the
assembly binding policy so that pain point is gone moving forward, but .NET
Core still strong-names its assemblies which effectively means this ship has
sailed (if anything was going to change further it would have changed in .NET
Core).
I would strongly advocate that we follow the published guidance on this:
[https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/strong-naming]
specifically:
You should strong name your open-source .NET libraries. Strong naming an
assembly ensures the most people can use it, and strict assembly loading only
affects the .NET Framework.
This guidance is specific to publicly distributed .NET libraries, such as .NET
libraries published on NuGet.org. Strong naming is not required by most .NET
applications and should not be done by default.
Also:
DO NOT publish strong-named and non-strong-named versions of your library. For
example, Contoso.Api and Contoso.Api.StrongNamed.
Publishing two packages forks your developer eco-system. Also, if an
application ends up depending on both packages the developer can encounter type
name conflicts. As far as .NET is concerned they are different types in
different assemblies.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)