Skip to content

Comments

STY: semi-manual fix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits)#17619

Closed
neutrinoceros wants to merge 1 commit intoastropy:mainfrom
neutrinoceros:io.fits/sty/FURB188
Closed

STY: semi-manual fix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits)#17619
neutrinoceros wants to merge 1 commit intoastropy:mainfrom
neutrinoceros:io.fits/sty/FURB188

Conversation

@neutrinoceros
Copy link
Contributor

Description

ref #17615
doc FURB188

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

@neutrinoceros neutrinoceros requested a review from saimn as a code owner January 9, 2025 15:00
@neutrinoceros neutrinoceros added this to the v7.1.0 milestone Jan 9, 2025
@neutrinoceros neutrinoceros changed the title STY: autofix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits) STY: autofix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits) Jan 9, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 2025

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.

Comment on lines 258 to 259
tform = compressed_coldefs[column_name].format
if tform.startswith("1"):
tform = tform[1:]
tform = tform.removeprefix("1")
Copy link
Member

Choose a reason for hiding this comment

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

At the very least

-    tform = compressed_coldefs[column_name].format
-    if tform.startswith("1"):
-        tform = tform[1:]
+    tform = compressed_coldefs[column_name].format.removeprefix("1")

That being said, it's not clear to me why this function prefers to write out a long if-elif-elif chain instead of doing a simple dictionary lookup.

Copy link
Member

Choose a reason for hiding this comment

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

Looks like it was introduced in #14430 , performance work by @Cadair and @astrofrog

Copy link
Member

Choose a reason for hiding this comment

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

I haven't looked at this in detail, but if this is meant to be performance-critical then it is quite surprising to see indexing in all of the elif statements.

@neutrinoceros neutrinoceros changed the title STY: autofix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits) STY: semi-manual fix for FURB188 (slice-to-remove-prefix-or-suffix) (io.fits) Jan 9, 2025
@pllim pllim closed this in #17843 Mar 4, 2025
@neutrinoceros neutrinoceros deleted the io.fits/sty/FURB188 branch March 5, 2025 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants