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

Fix line numbers in errors for scripts starting with leading comments or whitespace #2686

Merged
merged 4 commits into from
Aug 8, 2023

Conversation

lihaoyi
Copy link
Member

@lihaoyi lihaoyi commented Aug 7, 2023

This is basically a port of the following fix in the Ammonite repo com-lihaoyi/Ammonite#1361. There were some changes when the logic was first ported from Ammonite to Mill, resulting in a much smaller code change than was necessary in the Ammonite repo

There are two related follow up PRs that AFAICT do not apply to Mill: com-lihaoyi/Ammonite#1363
and com-lihaoyi/Ammonite#1369. Both have to do with the special handling of multi-statement top-level-blocks {...}, that is a thing in the Ammonite REPL (to allow multiple top-level declarations to be entered into the REPL before submitting it) but doesn't apply to Mill scripts.

I have updated the integration tests to include a bunch of random comments and imports to reproduce the problem causing the tests to fail, and verified the fix causes the tests to pass. Also this caused a previously passing test to fail (2-custom-build-logic), which on inspection appears like it was asserting the wrong thing, so I fixed the assert

Fixes #2681

@lihaoyi lihaoyi changed the title Fix line numbers for scripts starting with leading comments or whitespace Fix line numbers in errors for scripts starting with leading comments or whitespace Aug 7, 2023
@lihaoyi lihaoyi requested review from lolgab and lefou August 7, 2023 14:08
@lihaoyi lihaoyi merged commit 6d8cb70 into com-lihaoyi:main Aug 8, 2023
@lefou lefou added this to the 0.11.2 milestone Aug 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Source locators are incorrect in error messages
2 participants