As announced in June 2017, Python2 is end of life. https://lists.linaro.org/pipermail/lava-announce/2017-June/000032.html

However, the outline of the timeframe needs a few changes as Debian Jessie will lose security support around June this year and all LAVA instances will need to be running Stretch before that happens. It has proved to be impractical to support LAVA using Python3 on Debian Jessie and the completion of the migration has meant that lava-server is ready for Python3 ahead of schedule.

Therefore, the pending 2018.1 release will **deprecate Jessie** and move the recommended installation of LAVA to Debian Stretch.

The 2018.2 release of LAVA will add Python3 support to support developers and contributors using Python3.

This means that the 2018.2 LAVA packages will contain python code in both the existing Python2 directories: /usr/lib/python2.7/dist-packages/ as well as the Python3 directories: /usr/lib/python3/dist-packages/ and will therefore bring in both Python2 dependencies *and* Python3 builds of those same dependencies.

Installing 2018.2 will therefore bring in python3-django and a bunch of other Python3 packages, enough to run all the unit tests successfully on Debian Stretch using Python3, using stretch-backports.

These are not yet used for runtime operations in LAVA, only for development and testing.

A future release of LAVA will switch to using Python3 at runtime, dropping support for Python2 at the same time which will also drop support for Debian Jessie. This will happen *before* Jessie loses security support. As Stretch will be the minimum requirement for installation, this version would also move to requiring django 1.11 instead of 1.8 from Jessie.

This creates a window for all LAVA instances to upgrade to Stretch using Python2 ahead of the separate move to Python3.

To update the summary proposed in June 2017:

Summary
=======
June 17th, 2017 - Debian 9 Stretch release

November 2017 - removal of V1 codebase
January 2018 - migration of Cambridge lab to Debian Stretch instead of Jessie
January 2018 - testing with django 1.11 LTS
2018.1 - testing with python3
2018.2 - add python3 support
Q2 2018 - Release with python3 support, end of support for jessie-backports and drop python2.7 support. Move to minimum django version of 1.11
April 2019 - release of django 2.2LTS
Actions
=======

*ALL* LAVA instances should migrate to Debian Stretch support as soon as practical but certainly in the next three months.

All development related to LAVA must support Python3 as of the release of 2018.1.

--