blob: 146bab968693092257151389e9db90ce7883b6ff [file] [log] [blame]
.. note::
Libcloud depends on the ``requests`` library for performing HTTP(s) requests.
Prior to ``requests`` v2.26.0, ``requests`` depended on ``chardet`` library
which is licensed under LGPL (requests library itself is licensed under the
Apache License 2.0 license).
Since Libcloud is not an application, but a library which is usually used
along many other libraries in the same (virtual) environment, we can't have
a strict dependency on requests >= 2.26.0 since that would break a lot of
installations where users already depend on and have an older version of
requests installed.
If you are using requests < 2.26.0 along the Libcloud library you are using
version of chardet library (chardet is a direct dependency of the requests
library) which license is not compatible with Apache Libcloud.
If using a LGPL dependency is a problem for your application, you should
ensure you are using requests >= 2.26.0.
It's also worth noting that Apache Libcloud doesn't bundle any 3rd party
dependencies with our release artifacts - we only provide source code
artifacts on our website.
When installing Libcloud from PyPi using pip, pip will also download and use
the latest version of requests without the problematic chardet dependency,
unless you already have older version of the requests library installed in
the same environment where you also want to use Libcloud - in that case,
Libcloud will use the dependency which is already available and installed.