Skip to content

BUG: fix a bug where astropy.utils.console.Spinner would leak newlines for messages longer than terminal width - #16040

Merged
pllim merged 1 commit into
astropy:mainfrom
neutrinoceros:utils/console/fix_spinner_leakage
Feb 15, 2024
Merged

pllim merged 1 commit into
astropy:mainfrom
neutrinoceros:utils/console/fix_spinner_leakage

Conversation

@neutrinoceros

Copy link
Copy Markdown
Contributor

Description

Fixes #11556
This use case, as this whole module, is difficult to test systematically, and Spinner in particular only has one dedicated unit test, so I'm assuming it's okay to not include a test for this one.

Instead, here's a MWE, marginally simpler than the one included in the issue:

from astropy.utils.console import Spinner

with Spinner('this is a long string '*10) as s:
    for item in range(1000000):
        s.update()
  • 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 utils label Feb 14, 2024
@github-actions

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

@github-actions

Copy link
Copy Markdown
Contributor

👋 Thank you for your draft pull request! Do you know that you can use [ci skip] or [skip ci] in your commit messages to skip running continuous integration tests until you are ready?

@neutrinoceros
neutrinoceros force-pushed the utils/console/fix_spinner_leakage branch from a9984eb to c0eea35 Compare February 14, 2024 16:03
@neutrinoceros
neutrinoceros marked this pull request as ready for review February 14, 2024 16:19
@pllim
pllim self-requested a review February 14, 2024 17:11
@pllim pllim added this to the v6.0.1 milestone Feb 14, 2024
@pllim

pllim commented Feb 14, 2024

Copy link
Copy Markdown
Member

If Stuart has his way, he would get rid of this altogether and use something else out there, but that is out of scope. Thanks for the fix! I will put this in my queue but probably won't get to it today.

@pllim pllim left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Solution is simple and seems to work. Thanks!

@pllim
pllim merged commit 18344e6 into astropy:main Feb 15, 2024
meeseeksmachine pushed a commit to meeseeksmachine/astropy that referenced this pull request Feb 15, 2024
….Spinner would leak newlines for messages longer than terminal width
pllim added a commit that referenced this pull request Feb 15, 2024
…040-on-v6.0.x

Backport PR #16040 on branch v6.0.x (BUG: fix a bug where astropy.utils.console.Spinner would leak newlines for messages longer than terminal width)
@neutrinoceros
neutrinoceros deleted the utils/console/fix_spinner_leakage branch February 16, 2024 06:49
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.

ProgressBarOrSpinner - spinner creates newlines in terminal when msg is longer then terminal width

2 participants