Skip to content

Fix ds.merge to prevent altering original object depending on join value #10596

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

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

jsignell
Copy link
Contributor

@jsignell jsignell commented Aug 1, 2025

So far this PR just adds some tests demonstrating how Using certain join values ("exact" and "override") on merge can alter the original objects.

I discovered this in the context of #10062 (comment) but it's not really related to changes in that PR.

  • Closes #xxxx
  • Tests added
  • User visible changes (including notable bug fixes) are documented in whats-new.rst
  • New functions/methods are listed in api.rst

@jsignell
Copy link
Contributor Author

jsignell commented Aug 1, 2025

@dcherian I am taking a look and will report back findings.

@dcherian
Copy link
Contributor

dcherian commented Aug 1, 2025

Thanks! we have had this kind of issue before: #10330 Maybe a helper function is in order

@jsignell
Copy link
Contributor Author

jsignell commented Aug 1, 2025

#7736 mentions regression so we will want to make sure that we don't solve this by just copying aggressively.

@jsignell
Copy link
Contributor Author

jsignell commented Aug 1, 2025

Thanks for the pointer to #10330! I just took that logic and moved it outside the if block so that everybody has to go through it. I think the remaining tests are the same that are failing on main.

@jsignell
Copy link
Contributor Author

jsignell commented Aug 1, 2025

See #10599 for fixes to doctests and mypy.

@jsignell
Copy link
Contributor Author

jsignell commented Aug 1, 2025

It would probably be a good idea to run benchmarks on this PR.

@jsignell jsignell changed the title ds.merge can alter original object depending on join value Fix ds.merge to prevent altering original object depending on join value Aug 4, 2025
@jsignell jsignell added the run-benchmark Run the ASV benchmark workflow label Aug 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
run-benchmark Run the ASV benchmark workflow
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants