-
Notifications
You must be signed in to change notification settings - Fork 30k
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
build: find Python 3 or Python 2 in configure #25878
Conversation
996d6df
to
613bacd
Compare
2b5b7ac
to
e2b02a5
Compare
Added blocked label as per original description. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apart from the reasons mentioned in the original description, all the dependencies should be Python 3 compatible for this to work. Blocking this PR by requesting changes (I am okay with the changes proposed actually) till we get there.
Ping @cclauss |
@BridgeAR What do you want me to do? |
I should have read the reasons why there was a -1. Sorry for the ping. |
A precursor to nodejs#25878
c0e2c18
to
d4d7354
Compare
871393b
to
c380b43
Compare
Some experimentation here says that we will face an issue with Python 3.7 because async is a reserved word in Python >= 3.7 #29326 so using that word in the wrong context is a Python syntax error. So for initial experimentation, I plan to start with Python 3.6.7. |
I don't think this is blocked by #25878, its blocked by using a python version that won't actually work for configure, isn't it? The steps to python3 are --- these can be done in parallel, they don't block each other 2 - convert configure to use python3 when available, falling back on python2 if not. This is probably backwards compatible, and will cause the python3 installed in 3 - remove python2 support (after a while, possibly in the next major release post-python2.7 EOL) |
6af005d
to
ac457a9
Compare
Removing the blocked label based on #25878 (comment) and the lack of a response to #25878 (comment) |
ac457a9
to
7326086
Compare
|
#29414 allow legacy Python to continue to use cStringIO.StringIO |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like the comment about Travis to be clear to people who read it in the future, but other than that, I think this is ready to land.
_=[ 'exec' '/bin/sh' '-c' ''' | ||
test ${TRAVIS} && exec python "$0" "$@" # workaround for pyenv on Travis CI |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could this comment be more informative? I think it should be
# On Travis, pyenv arranges for the requested python version to be available as
# plain "python". In other environments, prefer the version specific executable names.
But I might misunderstand its purpose.
@thefourtheye I think your requested change was done, can you please re-review? |
@thefourtheye Sorry, I found your requested change:
I don't agree that this is a pre-req for this to land on master. Its blocked from 12.x, but on master it does no harm, it just changes a "no supported python 2.7 found" error to (possibly) an python3 incompatibility error. It causes no harm (or change) to a system that already would have built. |
2142d55
to
1897e56
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I rebased, squashed, etc.
@thefourtheye , please re-review |
Is something blocking us from landing this one? |
@thefourtheye has a blocking review, but doesn't seem to be resonding to request to relook. @nodejs/tsc, is 5 days with no response enough to dismiss a review, or should we wait more? What is the convention here? |
@sam-github There's no set rule, but 5 days of non-responsiveness strikes me as a reasonable amount of time to wait before dismissing the request-for-changes. |
Not necessary, but it may be a reasonable courtesy to also email the Collaborator who hasn't responded and then wait, say, 48 hours. Sometimes people just don't see stuff because of overwhelming GitHub notifications. |
I just emailed @thefourtheye now. |
Sorry, this was blocked because of me. I just re-reviewd now and LGTM. |
Landed in be926c7 |
PR-URL: #25878 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
PR-URL: nodejs#25878 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Blocked by #28537, nodejs/build#1399, and/or nodejs/build#1674Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passes