Serge Guelton via llvm-dev
2020-Oct-13 12:03 UTC
[llvm-dev] [RFC] Python 2 / Python 3 status, final step(s)
Hi Folks, Now that LLVM 11.0.0 has been released, it's time to prepare for the final step envisionned in the previous RFC named *[RFC] Python 2 / Python 3 status* [0], ie. requiring Python3.6 for LLVM 12.0.0, to be released in 2021. At least Fedora already only ships Python3 and we didn't have much bugs reported wrt. Python compatibility for the LLVM toolchain. Indeed, all Python scripts should now be at least compatible with both python2 (py2) and python3 (py3), some of them already are already py3 only. The build system still depends on Python in a few place, but it explicitly mentions Python3_EXECUTABLE, and the main dependency (llvm-build) is currently being removed in D89142. The shebangs have already been harmonized in D83857: some mention /usr/bin/env python, some mention /usr/bin/env python3, and none mention python2 anymore. It would be great to have all script use the same shebang, PEP394 [1] makes it (relatively) clear that in our case, explicitly requiring python3 is the way to go. So basically, next step would be to update the documentation, remove the Python2 fallback in root CMakeLists.txt and update shebangs. Anyone seeing an issue with that approach? I'm still a bit worried about buildbots still running on py2 (?) Serge [0] http://lists.llvm.org/pipermail/llvm-dev/2020-January/138730.html [1] https://www.python.org/dev/peps/pep-0394/
James Y Knight via llvm-dev
2020-Oct-13 14:18 UTC
[llvm-dev] [RFC] Python 2 / Python 3 status, final step(s)
Yay, thanks for persevering with this migration! On Tue, Oct 13, 2020 at 8:04 AM Serge Guelton via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi Folks, > > Now that LLVM 11.0.0 has been released, it's time to prepare for the final > step > envisionned in the previous RFC named *[RFC] Python 2 / Python 3 status* > [0], > ie. requiring Python3.6 for LLVM 12.0.0, to be released in 2021. > At least Fedora already only ships Python3 and we didn't have much bugs > reported > wrt. Python compatibility for the LLVM toolchain. > > Indeed, all Python scripts should now be at least compatible with both > python2 (py2) > and python3 (py3), some of them already are already py3 only. > > The build system still depends on Python in a few place, but it explicitly > mentions Python3_EXECUTABLE, and the main dependency (llvm-build) is > currently > being removed in D89142. > > The shebangs have already been harmonized in D83857: some mention > /usr/bin/env > python, some mention /usr/bin/env python3, and none mention python2 > anymore. It > would be great to have all script use the same shebang, PEP394 [1] makes it > (relatively) clear that in our case, explicitly requiring python3 is the > way to > go. > > So basically, next step would be to update the documentation, remove the > Python2 > fallback in root CMakeLists.txt and update shebangs. > > Anyone seeing an issue with that approach? I'm still a bit worried about > buildbots still running on py2 (?) > > Serge > > [0] http://lists.llvm.org/pipermail/llvm-dev/2020-January/138730.html > [1] https://www.python.org/dev/peps/pep-0394/ > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20201013/dc85c152/attachment.html>
David Blaikie via llvm-dev
2020-Oct-13 18:49 UTC
[llvm-dev] [RFC] Python 2 / Python 3 status, final step(s)
*thumbs up* Re: out of date buildbots: maybe stage the shebang changes in a time/way that's easy to rollback (or even intended to rollback after a small time window (few hours) off-peak) to flush out the buildbots. Then after that rollout, go over the buildbot failures and follow-up with buildbot owners to get them cleaned up before a more intended-to-stick rollout is done. On Tue, Oct 13, 2020 at 7:18 AM James Y Knight via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Yay, thanks for persevering with this migration! > > On Tue, Oct 13, 2020 at 8:04 AM Serge Guelton via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Hi Folks, >> >> Now that LLVM 11.0.0 has been released, it's time to prepare for the >> final step >> envisionned in the previous RFC named *[RFC] Python 2 / Python 3 status* >> [0], >> ie. requiring Python3.6 for LLVM 12.0.0, to be released in 2021. >> At least Fedora already only ships Python3 and we didn't have much bugs >> reported >> wrt. Python compatibility for the LLVM toolchain. >> >> Indeed, all Python scripts should now be at least compatible with both >> python2 (py2) >> and python3 (py3), some of them already are already py3 only. >> >> The build system still depends on Python in a few place, but it explicitly >> mentions Python3_EXECUTABLE, and the main dependency (llvm-build) is >> currently >> being removed in D89142. >> >> The shebangs have already been harmonized in D83857: some mention >> /usr/bin/env >> python, some mention /usr/bin/env python3, and none mention python2 >> anymore. It >> would be great to have all script use the same shebang, PEP394 [1] makes >> it >> (relatively) clear that in our case, explicitly requiring python3 is the >> way to >> go. >> >> So basically, next step would be to update the documentation, remove the >> Python2 >> fallback in root CMakeLists.txt and update shebangs. >> >> Anyone seeing an issue with that approach? I'm still a bit worried about >> buildbots still running on py2 (?) >> >> Serge >> >> [0] http://lists.llvm.org/pipermail/llvm-dev/2020-January/138730.html >> [1] https://www.python.org/dev/peps/pep-0394/ >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20201013/0b1c0228/attachment.html>