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

BUG: fix write/read roundtrips with empty Table dumped to ECSV #15885

Merged

Conversation

neutrinoceros
Copy link
Contributor

Description

Fixes #13191

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

Copy link

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.

Copy link

👋 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 io/ascii/ecsv/bug/empty_table_roundtrip branch from 8305441 to 451f438 Compare January 15, 2024 14:46
@neutrinoceros neutrinoceros changed the title BUG: fix write/read roundtrip with empty Table dumped to ECSV BUG: fix write/read roundtrips with empty Table dumped to ECSV Jan 15, 2024
@neutrinoceros neutrinoceros marked this pull request as ready for review January 15, 2024 15:15
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.

Thanks, that looks good! Just a request to actually check that the re-read table is empty

# see https://github.com/astropy/astropy/issues/13191
sfile = tmp_path / "x.ecsv"
Table().write(sfile)
Table.read(sfile)
Copy link
Contributor

Choose a reason for hiding this comment

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

Could we add a

t = Table.read(sfile)
assert len(t) == 0
assert len(t.colnames) == 0

Copy link
Contributor Author

Choose a reason for hiding this comment

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

done !

@neutrinoceros neutrinoceros force-pushed the io/ascii/ecsv/bug/empty_table_roundtrip branch from 451f438 to 70e210d Compare January 15, 2024 17:42
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.

Thanks!

@mhvk mhvk merged commit cfe3789 into astropy:main Jan 15, 2024
24 of 26 checks passed
@neutrinoceros neutrinoceros deleted the io/ascii/ecsv/bug/empty_table_roundtrip branch January 15, 2024 19:03
@pllim pllim added Bug backport-v6.0.x on-merge: backport to v6.0.x labels Jan 16, 2024
@pllim pllim added this to the v6.0.1 milestone Jan 16, 2024
@pllim
Copy link
Member

pllim commented Jan 16, 2024

Thanks!

@meeseeksdev backport to v6.0.x

meeseeksmachine pushed a commit to meeseeksmachine/astropy that referenced this pull request Jan 16, 2024
pllim added a commit that referenced this pull request Jan 16, 2024
…885-on-v6.0.x

Backport PR #15885 on branch v6.0.x (BUG: fix write/read roundtrips with empty Table dumped to ECSV)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-v6.0.x on-merge: backport to v6.0.x Bug io.ascii
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Reading an empty table generates a "StopIteration" error
3 participants