-
Notifications
You must be signed in to change notification settings - Fork 752
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
Incompatibility between System.Reactive.Core and System.Reactive.Windows.Threading 3.1.1 NuGet packages #305
Comments
These are the files I extracted from the NuGet packages:
Inspecting System.Reactive.Windows.Threading.dll in a disassembler, it references // System.Reactive.Core, Version=3.0.1000.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263 Yet the copy of System.Reactive.Core.dll is a different assembly version
Compare 3.0.1000.0 vs 3.0.3000.0 |
Any ideas, what's going on? |
As per #205, this is expected. MSBuild should be generating binding redirects for you though. Do you have |
Hi, I've encountered a similar issue . Here is a nimimal example where you can see the issue: Issue305.zip (just launch the project)
The project is targeting .NET framework 4.6. With 4.5 you won't have the issue as version will be 3.0.1000 for all assemblies. |
Agreed. This is situation is absolutely ridiculous. Please fix the disparate packages nightmare ! |
This has been fixed in the v4.0 alpha's on the MyGet feed |
Thank you onovotny. Great! |
Hello @onovotny , |
@DanielMue Rx 4 is still a ways off right now. The binding redirects for 3.1.1 are still the recommended approach as releasing the consolidated library is a major change that may impact some downstream users in a negative way. It's still being sorted out. Does your project have the |
@onovotny thanks for your fast reply. We've already tried this workaround without success (test projects and projects with nested package dependencies still require a manually added/edited App.Config): <?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Reactive.Interfaces" publicKeyToken="94bc3704cddfc263" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.1000.0" newVersion="3.0.1000.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration> It is a runtime exception, the library/application is partially working - that's why we think this is a major issue (our automated test coverage made it visible and prevented a rollout into production). PS: We are using |
Can you try with NuGet. I don't know what Paket is doing and how that might impact generation of binding redirects. |
I tried to convert a small repository to NuGet-only but without success. Your hint using As far as I understand; setting Using |
is there any real fix without upgrading to the 4.0 prerelease? I have added the following
also turn on to true, my build still complains
it still throws runtime exception. the only solution I am currently using is: NOT use anything from System.Reactive.Windows.Threading, for example, |
Hi, I am having this problem after migrating from packages.config to project references? is there any fix please? |
We are close to releasing 4.0. Can you please try the latest version on NuGet? |
I might be wrong, but I believe there's an incompatibility between the System.Reactive.Core and System.Reactive.Windows.Threading 3.1.1 NuGet packages
Projects in my solution reference both
System.Reactive.Core
andSystem.Reactive.Windows.Threading
. I extracted the assemblies from the NuGet packages. When I build my solution, it gives a build warning:With diagnostic logging on it gave a bit more information:
At runtime it gives this error:
The text was updated successfully, but these errors were encountered: