Skip to content

Fix @quantity_input unit conversion for Column inputs - #20523

Open
Arun-sunny23 wants to merge 5 commits into
astropy:mainfrom
Arun-sunny23:fix-quantity-input-column
Open

Arun-sunny23 wants to merge 5 commits into
astropy:mainfrom
Arun-sunny23:fix-quantity-input-column

Conversation

@Arun-sunny23

@Arun-sunny23 Arun-sunny23 commented Oct 2, 2026 •

Copy link
Copy Markdown

Description

This pull request is to address an issue where @quantity_input skipped automatic unit conversion for arguments that were not direct Quantity instances (such as astropy.table.Column), causing an UnboundLocalError in astropy/units/decorators.py. This PR updates QuantityInput to properly handle non-Quantity objects implementing .to(), ensuring unit conversion occurs before arguments are passed to the wrapped function.

Fixes #20515

AI Disclosure

Google Gemini was used for error log analysis and initial debugging logic of the UnboundLocalError. All code implementation, unit test creation, and local pytest verification were performed manually by the author.

  • I certify that I am human and that I take full responsibility for this pull request including all interactions with reviewers.

Merge method

  • 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.

@github-actions github-actions Bot added the units label Oct 2, 2026
@github-actions

github-actions Bot commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

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.

@pllim

This comment was marked as resolved.

@pllim pllim added this to the v8.1.0 milestone Oct 2, 2026
@Arun-sunny23

Copy link
Copy Markdown
Author

Thanks @pllim, I've updated the PR description with the disclosure!

@pllim

This comment was marked as resolved.

@Arun-sunny23

Copy link
Copy Markdown
Author

"Updated! Thanks for pointing that out @pllim, description is aligned with the template now."

This branch has not been deployed

No deployments
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.

quantity_input should convert Column to Quantity

2 participants