6 ms·
Ask HN: Contradicting licensing information on .NET / Visual Studio libraries
- janosdebugs 3y agoHey HN, I'm evaluating the use of C#/.NET as a programming language. In light of Mono being merged into .NET, I was downloading the SDK and was quite surprised that it contains DLLs that are explicitly licensed under a commercial license and, in fact, seems to require the purchase of a Visual Studio Professional license. I have no problem paying for licenses, but this one seems to require a) a monthly subscription and b) is advertised on Microsoft's own site as free/open source. Any help from all you internet lawyers out there? Thank you.
- layer8 3y agoMaybe it’s multi-licensed? You can freely choose which one you use if more than one license exists for a given product.
- janosdebugs 3y agoIt doesn't seem like it, the language seems to be pretty explicit. To me it reads like the Windows .NET SDK builds including proprietary DLLs and they didn't quite sort out their licensing.
- andyjohnson0 3y ago> In light of Mono being merged into .NET I appreciate that this is tangential to your question about licencing, but I wasn't aware of this merge and a cursory search isn't very revealing. Any pointers? I thought the situation was that Microsoft's .NET implementation now natively targets Windows, Linux, and Mac. And Mono still exists in parallel to this. What am I missing?
- janjones 3y agoMono is developed by Xamarin which was acquired by Microsoft: https://blogs.microsoft.com/blog/2016/02/24/microsoft-to-acquire-xamarin-and-empower-more-developers-to-build-apps-on-any-device/ https://blogs.microsoft.com/blog/2016/02/24/microsoft-to-acq...
- andyjohnson0 3y agoYes, I know. And I appreciate that Xamarin Forms probably contributed to Maui, which is part of .NET. But I was specifically asking about Mono.
- Merad 3y agoYou are correct. Mono is still an alternative runtime for .Net. It hasn't been merged into .Net and I'm not aware of any plans to do so.
- lewispollard 3y agoThe mono code is part of the runtime since .NET 6
- janosdebugs 3y agoYou seem to be correct, I have read contradictory information. At the same time, if all of Microsoft's might is standing behind .NET, can mono be a full alternative? Edit: at the very least, Godot (game engine) has moved from Mono to .NET.
- MarkSweep 3y agoJust as Microsoft forked .NET Framework to make CoreCLR, they forked Mono. Both live in the http://github.com/dotnet/runtime http://github.com/dotnet/runtime repository. Both share most of the same C# code base for their runtime libraries. Mono is used for Blazor (WASM), iOS, and Android. This merging was announced as part of .NET 5 but I recall that it was not complete till .NET 6. https://devblogs.microsoft.com/dotnet/introducing-net-5/ https://devblogs.microsoft.com/dotnet/introducing-net-5/
- pjc50 3y agoThis is clearly wrong since they're not chasing people for licenses, and the licensing of the whole thing is "free to use". It might be closed source, I'd have to check a DIY build from github to see whether it is included in that. It's not a mono "merge" but a mono replacement; the whole ".NET core" ecosystem is a new(ish) multi-platform runtime and compiler. Possibly file a ticket on their github to clarify this?
- tailspin2019 3y ago> Possibly file a ticket on their github to clarify this? At the time of writing the link on this submission is a ticket which they seem to have opened. And based on the link in that ticket to this… https://github.com/dotnet/core/blob/main/license-information-windows.md https://github.com/dotnet/core/blob/main/license-information... … I don’t think what they’re saying is clearly wrong. I can see why they’re seeking some clarification.
- janosdebugs 3y agoThe link on this post leads to that ticket. That's where the GitHub issue form lead me.
- deleted 3y ago[deleted]
- andyjohnson0 3y agoRather than in a comment, your question should go in the submission's textbox. As comments get addedand move up and down, it's now no longer clear that your comment original [1] represents what you're asking the hive mind. [1] https://news.ycombinator.com/item?id=35985833 https://news.ycombinator.com/item?id=35985833
- janosdebugs 3y agoThank you, I entered both a link and a text, that seems to have messed things up.
- 60654 3y agoIn short: .NET multiplatform itself is open source as I'm sure you've seen here: https://learn.microsoft.com/en-us/dotnet/core/introduction https://learn.microsoft.com/en-us/dotnet/core/introduction A few specific DLLs like Visual C++ redistributables are not open source, but they are separately licensed for redistribution. VS Pro is not needed. Hope this helps!
- tailspin2019 3y agoI think part of the confusion is coming specifically from this bit of the license information file which OP linked to: > The following binaries are licensed with the Visual Studio 2019 License (not as a "trial") I can’t work out what this means, other than that you must have a VS 2019 licence (and not a trial licence)? Is that the wrong interpretation of that wording?
- ghuntley 3y ago.NET isn’t really “open” see https://www.isdotnetopen.com https://www.isdotnetopen.com also https://ghuntley.com/fracture https://ghuntley.com/fracture which is related.
- pjc50 3y agoSSL failure on the first? (Firefox Windows)
- midasuni 3y agoLooks fine for me, and ssllabs are happy, at least with the first server it tested
- capableweb 3y agoWorks fine for me on Firefox 112.0.2 (64-bit) Windows 11. Maybe your ISP have some collaboration with Microsoft going and tries to intercept the site? What certificate error you get? Should show a error code somewhere.
- pjc50 3y agoPR_CONNECT_RESET_ERROR. Probably work firewall, I guess.
- GiorgioG 3y ago"Open" does not mean that Microsoft can't make commercial tooling for .NET. Nobody is forcing folks to use VS Code, nor should Microsoft be forced to contribute unlimited resources to "open" projects. There are community editions of Visual Studio that folks are free to use. Alternatively, JetBrains makes Rider, my IDE of choice for doing .NET development on Mac/Linux.
- capableweb 3y agoIf you constantly use "Microsoft <3 Open Source" as your main marketing method for reaching developers and then continues to push the platform you own further and further away from FOSS, people are bound to be upset at your methodology. Seems Microsoft has learned nothing.
- GiorgioG 3y agoUnless you are distributing the files in https://github.com/dotnet/core/blob/main/license-information-windows.md https://github.com/dotnet/core/blob/main/license-information... (and in general you shouldn't be), it's not something you need concern yourself with. I have used .NET Core in plenty of enterprises and we've never needed a license to develop against the SDK or distribute our applications.
- pjc50 3y agoIf you build a "self-contained" distribution, you'll get all of those files as required parts of the distribution. (I think this is basically the same as the "vc_redist" problem for people building native Windows apps; it's copyright Microsoft but they expect you to redistribute it)
- GiorgioG 3y agoYou're right (I just tested this myself.) I'm going to reach out to MS to get clarification.
- meibo 3y agoThese DLLs count as redistributables, which the VS2019 license in question, linked in the GitHub page in your post, explicitly allows you to distribute. https://visualstudio.microsoft.com/license-terms/mlt031619/ https://visualstudio.microsoft.com/license-terms/mlt031619/
- janosdebugs 3y agoThank you for this, but I can't seem to find the Microsoft.DiaSymReader.Native.{x86|amd64|arm|arm64}.dll file in the list from the license terms: https://aka.ms/vs/16/redistribution https://aka.ms/vs/16/redistribution Which package would that be in?