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

Remove an erroneous special case from search_around_3d() #16280

Merged
merged 2 commits into from Apr 12, 2024

Conversation

eerovaher
Copy link
Member

Description

In search_around_3d() if coord1.distance, coord2.distance and distlimit have incompatible units (e.g. distlimit is a length, but coords1 or coords2 has a distance with dimensionless_unscaled) then it will raise an UnitConversionError, unless at least one of the input coordinates is empty. I cannot think of a good reason why such a special case should exist, and in some cases this behavior can be the cause of a UnitConversionError somewhere else in the code, depending on what the unit of coords1.distance is.

I expect the automatic backport to fail because of recent changes to the tests.

  • By checking this box, the PR author has requested that maintainers do NOT use the "Squash and Merge" button. Maintainers should respect this when possible; however, the final decision is at the discretion of the maintainer that merges the PR.

`search_around_3d()` expects the search radius to be a length and it
expects its input coordinates to have physical distances (i.e. not with
the unit `dimensionless_unscaled`). If that is not the case a
`UnitConversionError` is raised, unless at least one of the coords is
empty. The new tests reveal the erroneous special case.
The function now raises the expected `UnitConversionError` if the units
of the distances of the input coordinates and the search limit do not
agree even if one of the input coordinates is empty.
@eerovaher eerovaher added Bug coordinates backport-v6.1.x on-merge: backport to v6.1.x labels Apr 8, 2024
@eerovaher eerovaher added this to the v6.1.1 milestone Apr 8, 2024
@eerovaher eerovaher requested a review from mhvk April 8, 2024 21:25
Copy link

github-actions bot commented Apr 8, 2024

Thank you for your contribution to Astropy! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.

  • Do the proposed changes actually accomplish desired goals?
  • Do the proposed changes follow the Astropy coding guidelines?
  • Are tests added/updated as required? If so, do they follow the Astropy testing guidelines?
  • Are docs added/updated as required? If so, do they follow the Astropy documentation guidelines?
  • Is rebase and/or squash necessary? If so, please provide the author with appropriate instructions. Also see instructions for rebase and squash.
  • Did the CI pass? If no, are the failures related? If you need to run daily and weekly cron jobs as part of the PR, please apply the "Extra CI" label. Codestyle issues can be fixed by the bot.
  • Is a change log needed? If yes, did the change log check pass? If no, add the "no-changelog-entry-needed" label. If this is a manual backport, use the "skip-changelog-checks" label unless special changelog handling is necessary.
  • Is this a big PR that makes a "What's new?" entry worthwhile and if so, is (1) a "what's new" entry included in this PR and (2) the "whatsnew-needed" label applied?
  • At the time of adding the milestone, if the milestone set requires a backport to release branch(es), apply the appropriate "backport-X.Y.x" label(s) before merge.

Copy link
Contributor

@mhvk mhvk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, agreed! And good in general to get rid of special cases; it just causes inconsistencies like you found here.

@mhvk
Copy link
Contributor

mhvk commented Apr 9, 2024

I think the readthedocs failure has been solved, but perhaps that is not quite worth running all CI again for - so, maybe @pllim can wave the magic merge wand?

@pllim
Copy link
Member

pllim commented Apr 12, 2024

Sorry for the delay. I was away watching a rock passing in front of a ball of gas. 😆

@pllim pllim merged commit 9dff116 into astropy:main Apr 12, 2024
27 of 29 checks passed

This comment was marked as resolved.

@pllim

This comment was marked as resolved.

@mhvk
Copy link
Contributor

mhvk commented Apr 12, 2024

I was away watching a rock passing in front of a ball of gas.

Wasn't it just spectacular?!!

@eerovaher eerovaher deleted the search_around_3d-no-dist-input branch April 12, 2024 12:12
eerovaher pushed a commit to eerovaher/astropy that referenced this pull request Apr 12, 2024
eerovaher pushed a commit to eerovaher/astropy that referenced this pull request Apr 12, 2024
pllim added a commit that referenced this pull request Apr 12, 2024
Backport PR #16280 on branch v6.1.x (Remove an erroneous special case from search_around_3d())
@pllim
Copy link
Member

pllim commented Apr 12, 2024

Wasn't it just spectacular?!!

Yes!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-v6.1.x on-merge: backport to v6.1.x Bug coordinates
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants