Uploaded image for project: 'Lucene.Net'
  1. Lucene.Net
  2. LUCENENET-608

Add strong-naming to Lucene.Net to comply with Microsoft guidelines

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • Lucene.Net 4.8.0
    • Lucene.Net 4.8.0
    • None
    • None

    Description

      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.

      Attachments

        Activity

          People

            Unassigned Unassigned
            aaron-meyers Aaron Meyers
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: