We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Cloudlift fails to run on Python 3.12 due to dependency issues related to the removed distutils module. The error manifests in two ways:
distutils
six.moves
six
LooseVersion
cloudlift/config/environment_configuration.py
pip install .
cloudlift --version
Now if we remove six==1.10.0 from the dependencies, and then reinstall and run cloudlift version check, we get:
six==1.10.0
Add setuptools as a dependency, which provides the removed distutils functionality. With updated requirements.txt:
setuptools
requirements.txt
The changed requirements.txt file should look like the following:
boto3==1.34.111 awscli==1.32.111 certifi==2017.7.27.1 cfn-flip==1.0.3 chardet==3.0.4 click==6.7 colorclass==2.2.2 dictdiffer==0.7.0 docutils==0.14 future==0.16.0 futures==3.1.1 idna==2.6 jmespath==0.9.3 jsonschema==2.6.0 python-dateutil==2.8.2 requests>=2.20.0 stringcase==1.0.6 terminaltables==3.1.0 troposphere==4.5.2 awacs==2.4.0 botocore==1.34.111 setuptools==75.6.0 # Added to provide distutils functionality # Removed: six==1.10.0
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Issue Description
Cloudlift fails to run on Python 3.12 due to dependency issues related to the removed
distutils
module. The error manifests in two ways:six.moves
import error.six
dependency, fails with missingdistutils
module error.Root Cause
distutils
was deprecated in Python 3.10 and removed in Python 3.12. See: https://docs.python.org/3.12/library/distutils.html#module-distutils.LooseVersion
fromdistutils
incloudlift/config/environment_configuration.py
(line 6)Steps to Reproduce
pip install .
cloudlift --version
Now if we remove
six==1.10.0
from the dependencies, and then reinstall and run cloudlift version check, we get:Solution
Add
setuptools
as a dependency, which provides the removeddistutils
functionality. With updatedrequirements.txt
:The changed
requirements.txt
file should look like the following:The text was updated successfully, but these errors were encountered: