[Gluster-users] Gluster project's intentions to move to python3 as default.

Amar Tumballi atumball at redhat.com
Thu Jul 12 06:51:30 UTC 2018


Hi all,

GlusterFS as a project is not a core python based project, but many of its
features (like geo-replication, eventsapi etc), are dependent on some of
the python scripts. With many Linux distributions moving towards python3 as
the default shipped python version in their environment, Gluster project
too is planning to move towards python3 as the default.

More on this activity can be tracked down to Github issue #411
<https://github.com/gluster/glusterfs/issues/411>

But for all the components which have valid regression tests to validate
the scripts they have, we will continue to support functionality on CentOS7
(ie, python2).

For making sure we have support for python3 completely, we will run
regressions/smoke on fedora28 (where python3 is the default).
<https://hackmd.io/os2Kmd6iTpuG4hO6Qcvc2A?both#What-it-means-to-our-users>What
it means to our users?

   - Till Gluster release 4.1 (which is the current latest), python2 would
   be supported by default.
   - From future releases (5.0 onwards), Gluster will default work only on
   python3 (if you install from source).
   - The package maintainers of particular distributions can choose to make
   minor modifications to work on python2.

As of our current analysis, all the existing python files needed minimum
changes to work on both python2 and python3. Hence, for few more releases
we would be happy to give assistance to make relevant changes to support
python2 if some users want it that way.

In Summary, we don’t see any issues for our users who are using python2 or
python3. The experience would continue to be smooth.
<https://hackmd.io/os2Kmd6iTpuG4hO6Qcvc2A?both#What-it-means-for-our-developers>What
it means for our developers?

   - If a developer wants to make changes to existing python file, he would
   need to be considerate of compatibility on python2 setup.
      - It would fail tests on centos7 if its already automated.
   - If a developer wants to write a new file, then it is expected to be
   python3 format, and python2 compatibility is not mandatory.
      - Developer gets a chance to run a test on only python3 or only
      python2 (or both). He has to provide a test case with the commit.
   - We would be having automated check for all the python files modified
   in the repository to be python3 syntax friendly. So, advised to develop and
   test your new scripts in python3 environment.

If you have further questions on this, happy to discuss on email, or on
github issue pointed above.

Regards,
Amar Tumballi (amarts)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gluster.org/pipermail/gluster-users/attachments/20180712/77146dfc/attachment.html>


More information about the Gluster-users mailing list