Actions
Feature #10937
closedMigrate Klever to Python 3.10
Start date:
09/10/2021
Due date:
% Done:
0%
Estimated time:
Published in build:
Description
At the moment Klever is run by Python 3.7 that was released ~3 years ago. Soon there will be Python 3.10. Let's try to use it. In case of considerable issues, the fallback is Python 3.9 or just remain everything as is.
In addition, it has sense to update all Python packages.
Updated by Evgeny Novikov about 3 years ago
- Blocked by Feature #10934: Test and fix if necessary deployment of Klever on Debian 10/11, Ubuntu 20.04 and openSUSE 15.3 added
Updated by Evgeny Novikov almost 3 years ago
- Target version deleted (
3.4)
There is too little sense to do these issues.
Updated by Evgeny Novikov over 2 years ago
- Blocks Feature #11460: Update Django from 3.0.6 to 4.0.3 added
Updated by Evgeny Novikov over 2 years ago
- Status changed from New to Resolved
I did this in branch switch-to-python-3.10. Now it is necessary to update LDV Dev (Debian 11 + Python 3.10, #10936) to run tests.
Updated by Evgeny Novikov over 2 years ago
- Status changed from Resolved to Closed
After everything was set up and tested, I merged the branch to master in d1891272c. Users should take into account the following things:
- From now Klever deployment is not officially supported for Debian 9/10 and openSUSE 15.2. A bit earlier we dropped a support for Fedora completely. Nevertheless, most likely you will be able to make necessary things yourself to bring everything back if you do need this.
- If you want to keep existing data collected thus far and simultaneously use the most recent version of Klever, you can update existing local Klever instances deployed earlier at Ubuntu or openSUSE in the following way:
- Stop Klever services:
sudo systemctl stop klever-*
- Remove a formerly used Python virtual environment. Additionally, you can completely remove Python 3.7 located at "/usr/local/python3-klever".
- Do next steps according to the new deployment documentation. It will be regenerated here in a while.
- Download and unpack Python 3.10.
- Create the new Python virtual environment using Python 3.10.
- Install necessary Python packages as usual. Don't forget to use "-e" if you used it earlier and take care about adding one more package "setuptools_scm" to be installed in advance.
- You may need to manually specify Python 3.10 instead of Python 3.7 in "/etc/default/klever". I had to do that only on openSUSE.
- Update Klever instance as usual. After this you can do everything in a standard way.
- Stop Klever services:
- Deployment of instances within OpenStack changed so considerably, that you should likely create new ones rather than to migrate existing ones. Hopefully, data formats didn't change and you can download/upload job/mark archives from previously deployed instances.
- Take care about necessary updates of PyCharm settings according to the developer documentation if you use PyCharm for development of Klever.
Actions