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

Additional default parameter for Made creation public API introduced binary incompatibility.. #236

Closed
ryoasai opened this issue Mar 12, 2020 · 4 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@ryoasai
Copy link

ryoasai commented Mar 12, 2020

Hello.

I found that many DLLs (including DryIoc.MefAttributeModel.dll 5.0.0, Prism.DryIoc v7.2.0.1422) that depend on DryIoc stopped working since DryIoc 4.1.0 release.
With the latest version of DryIoc they all give the following runtime Exception:

System.MissingMethodException: 'Method not found: 'DryIoc.Made DryIoc.Made.Of(DryIoc.FactoryMethodSelector, DryIoc.ParameterSelector, DryIoc.PropertiesAndFieldsSelector, Boolean)'.'

I suspect that this is caused by the binary incompatibility introduced by an additional default parameter bool isImplMemberDependsOnRequest = false in one of the Made factory methods.

I found that was introduced by the following commit.
https://github.com/dadhi/DryIoc/commit/7a54f4c8d3e6f942597e740f6f80556c9f753f4e

Since this change is made to a fundamental API, Made.of(), I suppose you should keep binary compatibility at least for the time being.

Can you reinstate the original four parameter method for keep the latest version compatible with them. Or can you release a new MefAttributeModel.dll ?

Thank you.

@dadhi
Copy link
Owner

dadhi commented Mar 12, 2020

Thanks for the notifying. Will check what is simpler to do.

@dadhi dadhi closed this as completed in d5a9410 Mar 12, 2020
@dadhi dadhi self-assigned this Mar 12, 2020
@dadhi dadhi added the bug Something isn't working label Mar 12, 2020
@dadhi dadhi added this to the 4.1.2 milestone Mar 12, 2020
@ryoasai
Copy link
Author

ryoasai commented Mar 12, 2020

Thank you very much for your quick reply!

@dadhi
Copy link
Owner

dadhi commented Mar 12, 2020

v4.1.2 is out on NuGet

@ryoasai
Copy link
Author

ryoasai commented Mar 13, 2020

I upgraded DryIoc to 4.1.2 and I verified the problem was fixed.
Thank you again for the quick fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants