-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
ci: Timeline to drop Xenial + Python 2 support #10606
Comments
I will propose either October 26th, 2019 or April 26th, 2020 as an arbitrary date to switch off the last Xenial build with the turndown beginning three to six months before the chosen date. |
Also need a date for Python 2. Ideally, Jan. 1, 2020, since that's its EOL. |
I think dropping Xenial toward the end of 2019 is a good goal (Oct 26th is fine). That will make room for working toward 20.04 LTS support after the new year. |
Per f2f, should define a date to make Should also consider when to make platforms default to using Python 3. Could happen before or at the same time as build job switch. Min. 3 months before removing Python 2 support. EDIT: Will be highly coupled to what our ROS1 support is. |
@EricCousineau-TRI notable for the TRI side, we should endeavor to move past GCC-6 on Bionic internally, prior to GCC-5 (Xenial) disappearing from Drake's CI. If Drake CI only has GCC-7, we don't want to be firefighting GCC-6 issues in our internal CI. GCC-7 had major C++17 improvements, so GCC-6 and GCC-7 are relatively dissimilar. |
Notes from f2f Kitware meeting: Might also be able to push up Python 2 deprecation on Mac. Possibly just make Mojave images be Python 3 only? |
Question from @jamiesnape, relevant to #11380:
My personal vote: |
My vote: |
@peteflorence asked "Does anybody know what the ROS’s Python 2 —>3 plan is?" Could we spell out any implications for ROS users here? |
You can get it to (mostly) work if you build from source, otherwise time to migrate to ROS 2. |
Yup, that's what we do in Anzu for things that require C extensions like Regarding Python 2 vs 3 defaulting in Slack discussion: I would say we initially try to target July 15. I will add a checkbox above. |
Given votes and per discussion in #11729, updated timeline to push up Python 2 removal to the same date as Xenial. |
When we drop Python 2, we should use Director's Python 3 (changing branch, etc.). |
CI will be switching defaults either later today or tomorrow. I just need to create Mac |
Jamie mentioned that CI is now switched over to Python 3 default. Just need to fixup merge in #11733. |
Just saw this ROS discourse post recently, but to @peteflorence's question about Python 2 + ROS1: I haven't yet figured out what that means for Drake; my ideal minimum-effort solution is that we still only accommodate Python 3 after the October deadline, meaning that it would cut off use of ROS1 prebuilt binaries with Drake. However, from my experience in Anzu with our limited use of ROS1, it seems like most core pure Python ROS1 packages support Python 3, and most C extension libraries (e.g. On the ROS 2 front, it seems to be up and coming, but the translation is still not completely trivial, and there are some remaining RViz features to be ported that had stopped me during my spike test. There is some active work on this, and I will revisit it later either this quarter or next. In short: It's, uh, complicated, given ROS1's scheduling having dead-time to support Python 3 after Python 2's EOL, and possibly not supporting 16.04 / 18.04 for Noetic... :( |
Note, I need to wait for a release to switch off most of Mac Python 2 support (same goes for High Sierra). |
Ah, I didn't notice that Oct 1 was a drop date for that support. I'll aim for a release in a next couple days, then. |
The v0.11.0 release is pushed; I think we can start turning down Python 2 on macOS now. |
Python 3.8 is out. We assume 3.7 for Mac in various places, so that will need fixing ASAP. More fun (for me). |
Watching Homebrew/homebrew-core#45337. |
Given that we have tracking issues for the remaining two items (Catalina + Director), closing this given that we've generally dropped Python 2 + Xenial. |
Should determine when to remove support, and remove it.
Current timelines:
--config=python2
#11728 Ensure that it's easy to still use--config=python2
2019-10-01: director, drake_visualizer: Support Python 3 #12046 Ensure that we can use Python 3 Director (possibly use it, or wait)2019-10-01: Drop Mac Python 2 support2019-10-01: ci: Timeline to drop Mac High Sierra + Mac Python 2 support #11692 Switch to Mac Catalina2020-01-01: Remove support for Python 2 except Director #12243 Drop support for Python 2, coupled withits EOLdropping Xenial.Add'l actions:
Put into support roadmapThis will be kept open until timelines are complete.
\cc @jamiesnape
The text was updated successfully, but these errors were encountered: