xoofx / markdig

A fast, powerful, CommonMark compliant, extensible Markdown processor for .NET
BSD 2-Clause "Simplified" License
4.38k stars 453 forks source link

Strong name? #11

Closed cyotek closed 7 years ago

cyotek commented 8 years ago

Hello,

I was looking at using Markdig as a replacement for CommonMark in one project and MarkdownDeep in another, however Markdig isn't strongly named. Does you have any plans on strong naming the Markdig library (or perhaps offer two packages, one signed, one unsigned (the way YamlDotNet does it), which will satisfy both stubborn-as-mules camps)?

Thanks; Richard Moss

jeremydmiller commented 8 years ago

You can always use Strongnamer: https://github.com/dsplaisted/strongnamer

xoofx commented 8 years ago

Oh, nice this strongnamer, thanks @jeremydmiller (and @dsplaisted!)

@cyotek If you can live with strongnamer that would be great... I dislike strong naming specially for a library that provides a plugin API, as you have either to deal with assembly redirect or to "trick" your assembly/file version that will be different to the NuGet version to avoid assembly redirect binding (which is typically not great for minor versions, as you would still want your clients to work in the same way, without having to recompile anything)

cyotek commented 8 years ago

Thanks for the replies. I tried that strongnamer and can confirm it worked (at least as far as the example goes) but it's not a solution I'd like to use. At the same time I understand the reluctance of some library maintainers to add strong names (and I'm just as stubborn about using them it seems :))

synhershko commented 8 years ago

From a library author to another, please don't go the route of strong naming. I'd rather we strong arm the community.

dotnetchris commented 8 years ago

:-1: for strong naming the project

tynorton commented 8 years ago

Would be convenient for those of us with strong name requirements if there were 2 NuGet packages available. MarkDig, and MarkDig.Signed. Should satisfy everyone, no?

dsplaisted commented 8 years ago

Would be convenient for those of us with strong name requirements if there were 2 NuGet packages available. MarkDig, and MarkDig.Signed. Should satisfy everyone, no?

This causes problems if there are other NuGet packages that depend on MarkDig. Each of those NuGet packages would have to also publish a signed and nonsigned version, or else the version of MarkDig that you want to use might not work with packages that depend on it.

gsaralms commented 7 years ago

Would be convenient for those of us with strong name requirements if there were 2 NuGet packages available. MarkDig, and MarkDig.Signed. Should satisfy everyone, no?

This is a really great idea, we also want to use MarkDig but are currently blocked only because this is not signed

xoofx commented 7 years ago

@gsaralms Yes, I will add a Markdig.Signed nuget package.

gsaralms commented 7 years ago

@xoofx : thanks a lot, it will help us a lot

xoofx commented 7 years ago

So the NuGet package Markdig.Signed should now provide signed assemblies.

mdahamiwal commented 7 years ago

Thanks a ton @xoofx :)