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

Add a fallback for detailed diff replaces where we fail to identify a key to be replaced #2674

Open
VenelinMartinov opened this issue Nov 26, 2024 · 1 comment
Labels
kind/engineering Work that is not visible to an external user

Comments

@VenelinMartinov
Copy link
Contributor

VenelinMartinov commented Nov 26, 2024

We should consider adding a fallback for when the detailed diff algorithm fails to identify a property to be replaced but we know the resource must be replaced. We should also add a fallback for the reverse - we have identified a replace but one should not be present.

The engine trusts the detailed diff for these decisions.

Having the fallback which does a second pass over the detailed diff depending on the Update/Replace decision will make the detailed diff algorithm purely presentational.

The old detailed diff algorithm has a fallback for one side of this:

replaces = append(replaces, "__meta")

@VenelinMartinov VenelinMartinov added the kind/engineering Work that is not visible to an external user label Nov 26, 2024
@pulumi-bot pulumi-bot added the needs-triage Needs attention from the triage team label Nov 26, 2024
@VenelinMartinov VenelinMartinov changed the title Add a fallback for replaces where we fail to identify a key to be replaced Add a fallback for detailed diff replaces where we fail to identify a key to be replaced Nov 26, 2024
@guineveresaenger guineveresaenger removed the needs-triage Needs attention from the triage team label Nov 26, 2024
@VenelinMartinov
Copy link
Contributor Author

We should also add a fallback for the reverse - we have identified a replace but one should not be present.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/engineering Work that is not visible to an external user
Projects
None yet
Development

No branches or pull requests

3 participants