You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
IFileSystem moved to a separate nuget, creating a dependency hell in my project #1337
I have an issue with a project I work on,
My project depends on a third party that uses TestableIO ver 22.
My project also depends on another third party that uses TestableIO ver 21.
In the build directory I have ver 22.
When trying to execute code that uses ver 21 I get an exception:
System.TypeLoadException: 'Could not load type 'System.IO.Abstractions.IFileSystem' from assembly 'TestableIO.System.IO.Abstractions, Version=22.0.15.0, Culture=neutral, PublicKeyToken=96bf224d23c43e59'.'
Would I have to publish a new v21 version with this information or would I have to add this attribute to the a new v22 version?
If it helps, I am open for a pull request, @borisf94
The change is required in v22 assemblies. Once the code compiled against v21 runs with v22, it will try to resolve IFileSystem from TestableIO.System.IO.Abstractions.dll then it will find that the type was redirected to Testably.Abstractions.FileSystem.Interface.dll and will be able to resolve it from there.
@borisf94 : I released a pre-release version v22.0.16-pre.1. Can you check if this solves your dependency problem or if you need to redirect more interfaces?
Thanks @vbreuss. checked the version, the IFileSystem related error is gone. But it seems I'm indeed missing more classes :(
Could you please hint on the interfaces and classes that were moved?
@borisf94 : The list in #1340 looked complete.
I merged this PR and created a new pre-release version v22.0.16-pre.2. Can you check if this solves your dependency problem?
Activity
vbreuss commentedon Sep 12, 2025
I never used the TypeForwardedToAttribute. How would I go about adding this?
Would I have to publish a new v21 version with this information or would I have to add this attribute to the a new v22 version?
If it helps, I am open for a pull request, @borisf94
borisf94 commentedon Sep 12, 2025
Hey @vbreuss,
Thanks for your attention :)
I've created a PR: #1338
The change is required in v22 assemblies. Once the code compiled against v21 runs with v22, it will try to resolve
IFileSystemfromTestableIO.System.IO.Abstractions.dllthen it will find that the type was redirected toTestably.Abstractions.FileSystem.Interface.dlland will be able to resolve it from there.vbreuss commentedon Sep 13, 2025
@borisf94 : I released a pre-release version v22.0.16-pre.1. Can you check if this solves your dependency problem or if you need to redirect more interfaces?
borisf94 commentedon Sep 13, 2025
Thanks @vbreuss. checked the version, the
IFileSystemrelated error is gone. But it seems I'm indeed missing more classes :(Could you please hint on the interfaces and classes that were moved?
There is this PR: #1196
Please let me know if there were other files as well. Will post a new PR to add those.
Thanks
borisf94 commentedon Sep 13, 2025
@vbreuss #1340
vbreuss commentedon Sep 14, 2025
@borisf94 : The list in #1340 looked complete.
I merged this PR and created a new pre-release version v22.0.16-pre.2. Can you check if this solves your dependency problem?
borisf94 commentedon Sep 14, 2025
Hurray! The issue solved for me 👍
Thanks @vbreuss will you be publishing a stable version anytime soon?
vbreuss commentedon Sep 14, 2025
Great to hear, @borisf94!
Of course, v22.0.16 is already published 😄