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

Fix member mixin lists #2157

Merged

Conversation

JordonPhillips
Copy link
Contributor

Background

  • What do these changes do?

    Fixes two bugs regarding member shapes that have multiple mixins:

    1. Fixes a bug where mixed members that also applied local traits would drop all but the last mixin from their list of mixins.
    2. Fixes a bug where shape constructors attempting to fix missing mixins from member mixin lists would drop all but the last mixin from the list.
  • Why are they important?

    Correctness is a virtue.

Testing

  • How did you test these changes?

    The specific customer case was tested manually, unit tests derived from that were added.

Links


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

This fixes a bug where a member that sources traits from multiple
mixins would have all but the last of those mixins dropped from its
list, *if* it also happened to apply new traits locally.
Shape builders have a saftey feature to fix members whose mixin list
doesn't match the expected list based on the container's mixin list.
This fixes a bug in that where it would drop all but the last mixin
from that "fixed" list.
@JordonPhillips JordonPhillips requested a review from a team as a code owner February 22, 2024 15:08
@JordonPhillips JordonPhillips requested a review from syall February 22, 2024 15:08
@JordonPhillips JordonPhillips merged commit 1a8241c into smithy-lang:main Feb 22, 2024
10 checks passed
@JordonPhillips JordonPhillips deleted the fix-member-mixin-lists branch February 22, 2024 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Loading via Smithy and Json produces different result
2 participants