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

[release/7.0] Fix Binding with IList<>, ICollection and IDictionary<,> implementer types #78118

Merged
merged 5 commits into from
Nov 11, 2022

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Nov 9, 2022

Backport of #77857 and #77582 to release/7.0

/cc @tarekgh

Customer Impact

Customers using configurations which bind to the types IList<T> and ICollection<T> and try to add items to the produced collection objects will get exception telling Unhandled exception. System.NotSupportedException: Collection was of a fixed size.. Also, binding using types implement IDictionary<,> interface (but not a Dictionary<,>) will not work as expected. It will end up not adding the configuration data to that object. These issues are reported by R9 in the issue #77725 and IDictionary issue reported by other user in the issue #77246

Testing

I spent enough time testing these cases manually and ensuring we are not missing any related cases. Also, I have added more tests to validate such fix and to ensure will not run into similar regressions in the future.

Risk

Medium, although there is some risk when touching the configuration code, but I spent enough time testing the change to mitigate the risk. The change is good enough to proceed with.

@tarekgh tarekgh changed the title [release/7.0] Fix Binding with IDictionary<,> implementer types [release/7.0] Fix Binding with IList<>, ICollection and IDictionary<,> implementer types Nov 9, 2022
@ghost
Copy link

ghost commented Nov 9, 2022

Tagging subscribers to this area: @dotnet/area-extensions-configuration
See info in area-owners.md if you want to be subscribed.

Issue Details

Backport of #77582 to release/7.0

/cc @tarekgh

Customer Impact

Testing

Risk

IMPORTANT: Is this backport for a servicing release? If so and this change touches code that ships in a NuGet package, please make certain that you have added any necessary package authoring and gotten it explicitly reviewed.

Author: github-actions[bot]
Assignees: -
Labels:

area-Extensions-Configuration

Milestone: -

@tarekgh tarekgh added the Servicing-consider Issue for next servicing release review label Nov 9, 2022
@tarekgh tarekgh requested a review from eerhardt November 9, 2022 19:26
@ericstj ericstj added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Nov 10, 2022
@ericstj ericstj added this to the 7.0.1 milestone Nov 10, 2022
@ericstj
Copy link
Member

ericstj commented Nov 10, 2022

Approved over email

@tarekgh tarekgh self-assigned this Nov 10, 2022
@carlossanlop
Copy link
Member

CI failure is known and unrelated: #77988

OOB package authoring changes look good. Approved by Tactics. Signed off by area owner. Ready to merge. :shipit:

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

Successfully merging this pull request may close these issues.

4 participants