Background: Python 2 will be deprecated in 2020. Python 3 has been
available in all major Linux distros for years.
Of course, Python 2 is *also* available in all major Linux distros, but
this is not going to be true for much longer. It will be deprecated and
eventually removed.
Migration, then, is going to happen - it's just a question of "when".
Given that Python 3 is available now, and will be supported for many
years, as opposed to Python 2 which will be going away and will not be
supported, the need to migrate our Python code to Python 3 will only
become more urgent, not less.
Ceph contains the following Python code (please correct me if this list
is not complete):
Python bindings (already migrated, i.e. Python 3 bindings are available)
MGR modules (migration in progress; no testing with Python 3, though)
ceph-volume (migration status: ?)
ceph-detect-init (migration status: ?)
ceph-disk (migration status: ?, deprecated, will be removed in Nautilus)
Python scripts needed for "make check" (migration in progress)
Python scripts needed for QA/teuthology (migration status: ?)
Other Python scripts (not packaged)
Ideally this email would spark a discussion on how to perform the
transition. In my imagination, the transition could go like this:
Mimic - after a "best effort" to migrate, some Python code still runs on
Python 2, but Shaman has a Python 3 build flavor and teuthology is
capable of testing in Python 3-only environment.
Nautilus - all remaining packaged Python code has been migrated and
explicitly runs (and is tested) on Python 3. Python 2 versions of our
code do not need to be provided or packaged, because all target
platforms support Python 3. There might still be some Python 2 scripts
in the git repo, but these are either special cases or for developer use
only, and are not packaged.
Nathan
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html