First, thank you very much for this reply, Omair. I appreciate the time you took to walk me through the issues. This is one of the things I love about Fedora: the community is very helpful. On Wed, Jan 6, 2021 at 1:13 PM Omair Majid <omajid@xxxxxxxxxx> wrote: > Jerry James <loganjerry@xxxxxxxxx> writes: > > > Antlr4 4.9.1 is out. This is mostly a small change from version 4.9, > > except that the mono runtime has changed drastically. > > That's a little brave for a patch release.... Well, antlr4 is primarily a Java project. That part didn't change much in this patch release, so you shouldn't expect to see much difference in the generated parsers. Upstream also supports a number of language runtimes so that the generated parsers can be used with those languages. So while this is a big, possibly even drastic, change for the Mono runtime, it doesn't affect the python runtime, or the C++ runtime, etc. > Locally, maybe. Most likely, It won't work in koji: `dotnet build` > downloads nuget packages at build time. I expect this to break when > network is not available (which is the case in koji). I'm building in mock, with the network off. That's why I had to remove netstandard2.0 support, because it wanted to download stuff and failed due to the missing network. But building against netstandard2.1 works without a network. > Here's the thing with modern .NET (including .NET Core 3.1 and the > recently released .NET 5): there's no Global Assembly Cache (GAC). Even > if you managed to install the `.dll` files into the cache, they wont be > used. .NET Core really wants you to use nuget packages (`.nupkg` files) > as the dependency mechanism. It's as if Java moved from managing > dependencies via `.class` files (similar to `.dll` files) to `.jar` > files (similar to `.nupkg` files). > > I suggest you think about packaging up the `.nupkg` files and shipping > those in the RPM package (assuming you can get past the build-offline > issues). > > As for strong name signing, some projects (such as .NET Core itself) > have a "open" snk file that they use for "public-signing": > > https://github.com/dotnet/arcade/blob/master/src/Microsoft.DotNet.Arcade.Sdk/tools/snk/Open.snk > > Here's an example of how it's being used: > > https://github.com/dotnet/arcade/blob/5bc6a0c39d9e8a89f4da5de53f1a2f9b3a6fe5db/src/Microsoft.DotNet.Arcade.Sdk/tools/StrongName.targets#L55-L67 That's *very* helpful information. Thank you! > I think you need to talk to upstream and tell them that this breaks > building Antlr4 for some prominent Linux distributions that don't allow > access to the nuget repository via the network (which `dotnet` uses by > default). This sounds like a big regression for a minor patch release. > > Longer term, by moving to .NET Core, you should think about moving to > `nupkg` files instead of the GAC. My other option is to remove the mono subpackage and tell the community that anybody who wants it back has to figure out how to build it. :-) I'm trying to avoid that option, but if I can't get anything else to work, that's what we'll have to do. Regards, -- Jerry James http://www.jamezone.org/ _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx