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

Correct parsing of CDS units in the presence of multiple divisions #14369

Merged
merged 3 commits into from Feb 10, 2023

Conversation

mhvk
Copy link
Contributor

@mhvk mhvk commented Feb 6, 2023

Description

This pull request is to address the fact that units with multiple divisions, like "km/s/Mpc", are currently incorrectly parsed in the CDS format (as equivalent to "km Mpc/s" instead of "km/(s.Mpc)").

Fixes #14355

@mhvk mhvk added io.ascii units Bug 💤 backport-v5.0.x on-merge: backport to v5.0.x 💤 backport-v5.2.x on-merge: backport to v5.2.x labels Feb 6, 2023
@mhvk mhvk added this to the v5.0.6 milestone Feb 6, 2023
@github-actions
Copy link

github-actions bot commented Feb 6, 2023

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 "When to rebase and squash commits".
  • 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?
  • Is a milestone set? Milestone must be set but we cannot check for it on Actions; do not let the green checkmark fool you.
  • 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.

@@ -0,0 +1,2 @@
CDS and MRT tables with units that contain with multiple divisions, such as
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Note that I thought this change was worthwhile specifically mentioning under io.ascii, since it affects that package most. I have not included a specific test, since I couldn't easily find an existing table that had multiple solidi.

Copy link
Member

Choose a reason for hiding this comment

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

What about that table given in #14355 ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'd prefer to use an actually published table... Note that I used the unit that causes the problems in the tests, so the table from #14355 is now fine.

Copy link
Member

@pllim pllim left a comment

Choose a reason for hiding this comment

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

I don't grok the parsing internals but I trust the tests. I am not sure if you are waiting for original bug report author to review or not, so I am approving but will let you merge when you are ready. Thanks for the quick fix!

@mhvk
Copy link
Contributor Author

mhvk commented Feb 7, 2023

@jensmelinder - did you encounter an existing table in which the units had double slashes? If so, I'd be happy to add its readme to the tests. If not, I will merge this. Thanks!

@mhvk mhvk merged commit 6fda4d5 into astropy:main Feb 10, 2023
@mhvk mhvk deleted the units-cds-correct-division branch February 10, 2023 02:48
meeseeksmachine pushed a commit to meeseeksmachine/astropy that referenced this pull request Feb 10, 2023
meeseeksmachine pushed a commit to meeseeksmachine/astropy that referenced this pull request Feb 10, 2023
pllim added a commit that referenced this pull request Feb 10, 2023
…369-on-v5.0.x

Backport PR #14369 on branch v5.0.x (Correct parsing of CDS units in the presence of multiple divisions)
pllim added a commit that referenced this pull request Feb 10, 2023
…369-on-v5.2.x

Backport PR #14369 on branch v5.2.x (Correct parsing of CDS units in the presence of multiple divisions)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Incorrect units read from MRT (CDS format) files with astropy.table
2 participants