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

bpo-40334: Catch E_EOF error when the tokenizer returns ERRORTOKEN #19743

Merged
merged 1 commit into from Apr 28, 2020

Conversation

lysnikolaou
Copy link
Contributor

@lysnikolaou lysnikolaou commented Apr 27, 2020

An E_EOF error was only being caught after the parser exited before
this PR. There are some cases though, where the tokenizer returns
ERRORTOKEN and has set an E_EOF error (like when EOF directly
follows a line continuation character) which weren't correctly
handled before.

https://bugs.python.org/issue40334

An E_EOF error was only being caught after the parser exited before
this PR. There are some cases though, where the tokenizer returns
ERRORTOKEN *and* has set an E_EOF error (like when EOF directly
follows a line continuation character) which weren't correctly
handled before.
Copy link
Member

@gvanrossum gvanrossum left a comment

A nice improvement.

(I presume @ambv has already cut the alpha6 release though?)

@pablogsal
Copy link
Member

pablogsal commented Apr 27, 2020

(I presume @ambv has already cut the alpha6 release though?)

The tag is still not here:

https://github.com/python/cpython/releases

but who knows ¯_(ツ)_/¯

@gvanrossum
Copy link
Member

gvanrossum commented Apr 27, 2020

The tag is still not here:

https://github.com/python/cpython/releases

Doesn't mean a thing -- I checked for that for something I wanted in the previous alpha, but IIUC the release managers first agree on a commit to build, then all build it locally, compare results, and finally push the tag upstream.

@ambv
Copy link
Contributor

ambv commented Apr 27, 2020

(I presume @ambv has already cut the alpha6 release though?)

Unfortunately so: https://github.com/ambv/cpython/tree/v3.9.0a6

@pablogsal
Copy link
Member

pablogsal commented Apr 28, 2020

Doesn't mean a thing -- I checked for that for something I wanted in the previous alpha, but IIUC the release managers first agree on a commit to build, then all build it locally, compare results, and finally push the tag upstream.

Ohhhh, that makes sense.

@pablogsal pablogsal merged commit d55133f into python:master Apr 28, 2020
4 checks passed
@ambv
Copy link
Contributor

ambv commented Apr 28, 2020

Yes, the point is: I put the tag on my tree, Steve and Ned build installers for their respective systems. It's not common but it did happen in the past that building those installers surfaced bugs and I had to move the tag. So I always wait with tagging until everything got cleanly built and tested (we also install the installers and run tests).

@pablogsal
Copy link
Member

pablogsal commented Apr 28, 2020

Yes, the point is: I put the tag on my tree, Steve and Ned build installers for their respective systems. It's not common but it did happen in the past that building those installers surfaced bugs and I had to move the tag. So I always wait with tagging until everything got cleanly built and tested (we also install the installers and run tests).

Cool! Thanks for the explanation :)

@lysnikolaou lysnikolaou deleted the fix-test-eof branch May 8, 2020
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.

None yet

5 participants