Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reference Assemblies for .NET Framwork 3.5 #1137

Closed
krafs opened this issue Nov 6, 2019 · 16 comments · Fixed by dotnet/sdk#17465
Closed

Reference Assemblies for .NET Framwork 3.5 #1137

krafs opened this issue Nov 6, 2019 · 16 comments · Fixed by dotnet/sdk#17465
Assignees

Comments

@krafs
Copy link

krafs commented Nov 6, 2019

Are there any plans to add reference assemblies for .NET Framework 3.5 into Microsoft.NETFramework.ReferenceAssemblies?

@gjuttla
Copy link

gjuttla commented Dec 12, 2019

Unfortunately, it does not seem like that based on the comments on dotnet/installer#2022.
But there is a package available by @jnm2 to support .NET Framework 3.5 reference assemblies: https://www.nuget.org/packages/jnm2.ReferenceAssemblies.net35

@jnm2
Copy link
Contributor

jnm2 commented Dec 12, 2019

It appears to be an arbitrary policy decision since no technical limitations have come to light. I'm not sure where it originates, but it is communicated to us by Immo Landwerth at dotnet/designs#33 (comment):

Why not? And why is dotnet/installer#2022 still active then?

Because our general policy is that we don't add new features to support older versions of the .NET platform. The reason we're supporting .NET Framework 2.0 is rooted in internal requirements driven by the compiler team. Otherwise we would have cut off at 4.5, which is what the spec originally suggested

Earlier conversation: dotnet/designs#33 (comment)

@krafs
Copy link
Author

krafs commented Dec 19, 2019

The NuGet by @jnm2 seems to work well, so I'm content. I understand one has to draw the line for legacy software somewhere, but people obviously come up with unofficial solutions anyway, so why not just release an official package to go along with the other ones? Anyway, thanks!

@RussKie
Copy link
Member

RussKie commented Dec 20, 2019

I have no stakes here, just my 2c. Even biggest companies don't have infinite resources. To release "just another package" means there have to be extra resources assigned to this (likely multiple people, build pipelines, storage) and the package has to undergo verifications, and, once we ship it, we need to provide support for it as well.

What our customer (like yourself) see is just a tip of the iceberg, building and shipping the framework is an intensely involved process. And that's why we need to draw lines somewhere. Even though these lines may look arbitrary.

@rstm-sf
Copy link

rstm-sf commented Apr 15, 2021

Another option https://www.nuget.org/packages/JetBrains.NETFramework.ReferenceAssemblies.net35/

@krafs krafs closed this as completed Apr 22, 2021
@NikolaMilosavljevic
Copy link
Member

@krafs, was this closed by accident? The issue is still assigned to me and being considered.

@KirillOsenkov
Copy link
Member

Yes, please, let's not close this and still fix this if at all possible.

@krafs
Copy link
Author

krafs commented Apr 22, 2021

I'm sorry, I got the impression the issue had been abandoned. My bad.

@krafs krafs reopened this Apr 22, 2021
@jnm2
Copy link
Contributor

jnm2 commented Apr 22, 2021

I had the same impression.

@NikolaMilosavljevic
Copy link
Member

New version of .NET reference assembly nuget packages have just been published to nuget.org. It includes .NET 3.5 😃

https://www.nuget.org/packages/Microsoft.NETFramework.ReferenceAssemblies/

@jnm2
Copy link
Contributor

jnm2 commented May 5, 2021

@NikolaMilosavljevic I see a problem with your net35 package that was fixed on request by a user of jnm2.ReferenceAssemblies.net35. The casing on one filename is System.configuration.dll and this causes it to fail to be found on non-Windows OSs.

@NikolaMilosavljevic
Copy link
Member

@NikolaMilosavljevic I see a problem with your net35 package that was fixed on request by a user of jnm2.ReferenceAssemblies.net35. The casing on one filename is System.configuration.dll and this causes it to fail to be found on non-Windows OSs.

Thanks @jnm2 - I'll work on a fix.

@bording
Copy link

bording commented May 5, 2021

Since the SDK now adds an implicit reference to the reference assemblies package as needed, is there something that needs to be done on that side for it to use the new version, or will that be picked up automatically?

@jnm2
Copy link
Contributor

jnm2 commented May 6, 2021

Looks like the version is hardcoded to 1.0.0, but you can override it yourself or just specify the package reference. I would like to know if .NET 6 will update that version to 1.0.2 (containing the fix that @NikolaMilosavljevic is working on).

https://github.com/dotnet/sdk/blob/v6.0.100-preview.3.21201.24/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props#L104

(More: https://github.com/dotnet/sdk/blob/v6.0.100-preview.3.21201.24/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets#L354-L379)

@NikolaMilosavljevic
Copy link
Member

I think we would need to prepare the PR to rev the reference in .NET SDK. @dsplaisted do you know if this would be the right model?

@NikolaMilosavljevic
Copy link
Member

Version 1.0.2 has been published - it includes the fix for filename casing of System.Configuration.dll assembly. @dsplaisted can we get the version updated in sdk?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants