Some fixes for Python 3
Python 3 compatibility fixes as discussed in https://github.com/nodejs/node/issues/23659#issuecomment-429669030
These changes get the test scores equivalent on the following two tests.
- python2 -m flake8 . --exclude=./deps/v8,./deps/npm/node_modules/node-gyp --count --show-source --statistics --select=E901,E999,F821,F822,F823
- python3 -m flake8 . --exclude=./deps/v8,./deps/npm/node_modules/node-gyp --count --show-source --statistics --select=E901,E999,F821,F822,F823
E901,E999,F821,F822,F823 are the "showstopper" flake8 issues that can halt the runtime with a SyntaxError, NameError, etc. Most other flake8 issues are merely "style violations" -- useful for readability but they do not effect runtime safety.
- F821: undefined name
name
- F822: undefined name
name
in__all__
- F823: local variable name referenced before assignment
- E901: SyntaxError or IndentationError
- E999: SyntaxError -- failed to compile a file into an Abstract Syntax Tree