◐ Shell
reader mode source ↗
Skip to content

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

Merged
pablogsal merged 1 commit into
python:masterfrom
lysnikolaou:fix-test-eof
Apr 28, 2020
Merged

bpo-40334: Catch E_EOF error when the tokenizer returns ERRORTOKEN#19743
pablogsal merged 1 commit into
python:masterfrom
lysnikolaou:fix-test-eof

Conversation

@lysnikolaou

@lysnikolaou lysnikolaou commented Apr 27, 2020

Copy link
Copy Markdown
Member

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.

@gvanrossum gvanrossum 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.

Hide comment

A nice improvement.

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

@pablogsal

Copy link
Copy Markdown
Member

(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
Copy Markdown
Member

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

ambv commented Apr 27, 2020

Copy link
Copy Markdown
Contributor

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

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

@pablogsal

Copy link
Copy Markdown
Member

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
@ambv

ambv commented Apr 28, 2020

Copy link
Copy Markdown
Contributor

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
Copy Markdown
Member

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 12:00
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.

5 participants