Archi
Expert
Posts: 19
Joined: Wed May 03, 2017 11:13 pm

.NET standard mix-up when targetting .NET framework [SOLVED]

Mon May 22, 2017 12:02 am

Hello.

After migration to .NET standard it's no longer possible to install your libraries without having to include all .NET standard dependencies, even if application is targetting .NET framework.

This is impossible to do as .NET standard packages conflict with .NET framework packages and render entire application unusable e.g. in Mono environment. Screenshot

If you want to maintain .NET framework compatibility then you must specify that .NET standard references should only apply to .NET standard, like in this example, so .NET framework version is free out of .NET standard references.

For more information you can check out similar problem in another project.

Thank you in advance for looking into that!

User avatar
Leslie
Lead Software Architect
Posts: 353
Joined: Fri Sep 14, 2012 12:20 pm
Contact: Website

Re: .NET standard packages mix-up when targetting .NET frame

Mon May 22, 2017 9:19 am

Slept at 2 AM and woke up at 4 AM to check the notifications on my mobile and I saw this post. The team members are probably asleep now. The irony being today the team had planned to complete the migration to .NET Standard.

I am honestly glad that you've made the post and reported the issue on time. Because a lot of organizations have dived in and have based their IPs on our frameworks this report is priority 1.

In addition to the solution link you've provided, due to the project planning and management structure here, I have spent hours already looking to find the minimal amount of changes the team would have to make in the shortest interval of time to the current project repositories to address this. I had a strange hunch of hitting something down the line when the team mentioned that .NET Standard 1.0 was a total replacement for PCL Profile 259 and it would save a lot of project management time if we just switched to .NET Standard.

Being the Lead, I am taking the liberty of officially postponing the .NET Standard migration date to 26th of May.

In the meantime, as I am traveling, I shall ask the team to revert back the NuGet packages by deleting the previously published NuGet packages which should essentially force referencing of PCL Profile based libraries.

Archi
Expert
Posts: 19
Joined: Wed May 03, 2017 11:13 pm

Re: .NET standard packages mix-up when targetting .NET frame

Mon May 22, 2017 9:45 am

I'm very happy that I managed to help, yeah I've stumbled upon this problem several times now, so don't worry, you're not the first one that is being confused why such thing is happening, as you can see in links above :).

At the same time I'd like to say that I'm grateful for everything you're doing as a team, I'm patiently waiting for .NET standard integration as your software is really great and I love using it. Once again, thanks for everything!

User avatar
Fantom
Help & Support
Posts: 303
Joined: Fri Oct 25, 2013 9:20 pm

Re: .NET standard packages mix-up when targetting .NET frame

Fri May 26, 2017 6:58 pm

Created a Test package Syn.Deployment.Test in NuGet to test deployment behaviour. Archi when you get time can you check if you can reference this library via NuGet successfully without conflicts in a mono project ? I have tested it in a Mono console application and referencing Syn.Deployment.Test is referenced successfully without conflicts. ;)

Archi
Expert
Posts: 19
Joined: Wed May 03, 2017 11:13 pm

Re: .NET standard packages mix-up when targetting .NET frame

Fri May 26, 2017 11:18 pm

Hey FranzZ.

Yes, I verified the package and it's being installed flawlessly - this is because .NET Framework 4.5+ version doesn't reference NETStandard library like previously, so when installing this package in app targetting .NET framework, no extra dependencies are being installed.
Dependencies
.NETFramework 4.5
No dependencies.
.NETStandard 1.0
NETStandard.Library (>= 1.6.1)
Thank you a lot! :)

Archi
Expert
Posts: 19
Joined: Wed May 03, 2017 11:13 pm

Re: .NET standard packages mix-up when targetting .NET frame

Sat May 27, 2017 5:14 pm

I noticed that you uploaded beta01 already, I installed it and looked at the dependencies.

Everything looks good, but I'm not sure if explicit reference to System.Runtime packages is required on .NET framework 4.5 in Syn.Neuro package:

https://www.nuget.org/packages/Syn.Neuro/
Dependencies
.NETFramework 4.5
Syn.Log (>= 1.0.7)
System.Runtime.Serialization.Json (>= 4.3.0)
System.Runtime.Serialization.Primitives (>= 4.3.0)
I'm pretty sure that that System.Runtime ones can be omitted on .NET framework, as they're available in 4.5+, but please ensure that it's the case :). It should be.

User avatar
Fantom
Help & Support
Posts: 303
Joined: Fri Oct 25, 2013 9:20 pm

Re: .NET standard packages mix-up when targetting .NET frame

Sat May 27, 2017 7:16 pm

done ;) Added conditional dependencies for .netstandard 1.0 and 1.3 in Syn.Neuro. Also updated reference in Syn.Bot 2.1.0-beta-002.

Please give Syn.Bot.2.1.0-beta-002 a try and let me know.

JeffersonStack
Pro
Posts: 44
Joined: Fri Apr 05, 2013 1:20 am

Re: .NET standard packages mix-up when targetting .NET frame

Sun May 28, 2017 2:27 am

finally! .Net core support :D lookin forward to full release...

Archi
Expert
Posts: 19
Joined: Wed May 03, 2017 11:13 pm

Re: .NET standard packages mix-up when targetting .NET frame

Mon May 29, 2017 1:21 am

I didn't find any problems with that version, thank you a lot for your support! :)

Return to “Report Bugs and Issues”

Who is online

Users browsing this forum: No registered users and 1 guest