Skip to content
New issue

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

[bug] RequestsDependencyWarning: urllib3 (1.26.6) or chardet (3.0.4) doesn't match a supported version #9561

Closed
puetzk opened this issue Sep 8, 2021 · 2 comments
Milestone

Comments

@puetzk
Copy link

puetzk commented Sep 8, 2021

version constraints in conans/requirements.txt are inconsistent.

#9405 (629813b) bumped up the urllib3 version to >=1.26.6, <1.27, but Left requests unchanged at requests>=2.8.1, <3.0.0

Ubuntu 20.04 packaged python3-requests 2.22.0, which requires urllib3>=1.21.1,<1.26,!=1.25.0,!=1.25.1. However, since requests was already installed, and met the version that conan asked for, pip left it unchanged (and didn't actually consult its setup.py).

Requests didn't get support for urllib3 v1.26 until its own 2.25.0: psf/requests@03957eb.
So in order to get a consistent set, conan 1.40.x should have required requests>=2.25, <3.0.0 to go along with requiring urllib3 >= 1.26

Obviously one can patch this up with pip upgrading requests, but I would think "default install on the latest ubuntu LTS produces warnings" is worth fixing.

Environment Details (include every applicable attribute)

  • Operating System+version: Ubuntu 20.04.3 LTS (Focal Fossa)
  • Conan version: 1.40.0
  • Python version: 3.8.10

Steps to reproduce (Include if Applicable)

apt-get install -y python3-pip
pip3 install "conan==1.40.0"

Logs (Executed commands with output) (Include/Attach if Applicable)

Stdout from pip3 install
+ pip3 install conan==1.40.0
Collecting conan==1.40.0
  Downloading conan-1.40.0.tar.gz (694 kB)
Requirement already satisfied: Jinja2<3,>=2.9 in /usr/lib/python3/dist-packages (from conan==1.40.0) (2.10.1)
Requirement already satisfied: PyJWT<2.0.0,>=1.4.0 in /usr/lib/python3/dist-packages (from conan==1.40.0) (1.7.1)
Requirement already satisfied: PyYAML<6.0,>=3.11 in /usr/lib/python3/dist-packages (from conan==1.40.0) (5.3.1)
Collecting bottle<0.13,>=0.12.8
  Downloading bottle-0.12.19-py3-none-any.whl (89 kB)
Requirement already satisfied: colorama<0.5.0,>=0.3.3 in /usr/lib/python3/dist-packages (from conan==1.40.0) (0.4.3)
Requirement already satisfied: distro<=1.6.0,>=1.0.2 in /usr/lib/python3/dist-packages (from conan==1.40.0) (1.4.0)
Collecting fasteners>=0.14.1
  Downloading fasteners-0.16.3-py2.py3-none-any.whl (28 kB)
Collecting future<0.19.0,>=0.16.0
  Downloading future-0.18.2.tar.gz (829 kB)
Collecting node-semver==0.6.1
  Downloading node_semver-0.6.1-py3-none-any.whl (10 kB)
Collecting patch-ng<1.18,>=1.17.4
  Downloading patch-ng-1.17.4.tar.gz (17 kB)
Collecting pluginbase>=0.5
  Downloading pluginbase-1.0.1.tar.gz (43 kB)
Collecting pygments<3.0,>=2.0
  Downloading Pygments-2.10.0-py3-none-any.whl (1.0 MB)
Collecting python-dateutil<3,>=2.7.0
  Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Requirement already satisfied: requests<3.0.0,>=2.8.1 in /usr/lib/python3/dist-packages (from conan==1.40.0) (2.22.0)
Requirement already satisfied: six<=1.16.0,>=1.10.0 in /usr/lib/python3/dist-packages (from conan==1.40.0) (1.14.0)
Collecting tqdm<5,>=4.28.1
  Downloading tqdm-4.62.2-py2.py3-none-any.whl (76 kB)
Collecting urllib3<1.27,>=1.26.6
  Downloading urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
Building wheels for collected packages: conan, future, patch-ng, pluginbase
  Building wheel for conan (setup.py): started
  Building wheel for conan (setup.py): finished with status 'done'
  Created wheel for conan: filename=conan-1.40.0-py3-none-any.whl size=821307 sha256=36828738f1ec5e6daafcb7affe205323e685fc332675cd26701b8b47f67828ea
  Stored in directory: /root/.cache/pip/wheels/03/e3/4c/798e70d36d395c5b2b5d9a783c108c143da6ec1c8f84bcc07f
  Building wheel for future (setup.py): started
  Building wheel for future (setup.py): finished with status 'done'
  Created wheel for future: filename=future-0.18.2-py3-none-any.whl size=491058 sha256=dbf4d94c6d2c94671db81637b5fa4061c538796bf2d29918d70d09a12c61051a
  Stored in directory: /root/.cache/pip/wheels/8e/70/28/3d6ccd6e315f65f245da085482a2e1c7d14b90b30f239e2cf4
  Building wheel for patch-ng (setup.py): started
  Building wheel for patch-ng (setup.py): finished with status 'done'
  Created wheel for patch-ng: filename=patch_ng-1.17.4-py3-none-any.whl size=16093 sha256=d1b24b0f59c6ee909f134d52e0c0433d39c72b01af3ccb2b4c8806a54eec0776
  Stored in directory: /root/.cache/pip/wheels/3e/7d/0c/8b312f72847c8301f68a74eba1379133509a9ef17f26b62cc8
  Building wheel for pluginbase (setup.py): started
  Building wheel for pluginbase (setup.py): finished with status 'done'
  Created wheel for pluginbase: filename=pluginbase-1.0.1-py3-none-any.whl size=7803 sha256=df4ab6db8a7ffd7e5896b0c0c11353b24dbe2f2153761e153d0110ecb322fc35
  Stored in directory: /root/.cache/pip/wheels/bb/71/26/2f3e72b4172ff0f5bc50ef537d739901bffd1d00efda221390
Successfully built conan future patch-ng pluginbase
Installing collected packages: bottle, fasteners, future, node-semver, patch-ng, pluginbase, pygments, python-dateutil, tqdm, urllib3, conan
  Attempting uninstall: urllib3
    Found existing installation: urllib3 1.25.8
    Not uninstalling urllib3 at /usr/lib/python3/dist-packages, outside environment /usr
    Can't uninstall 'urllib3'. No files were found to uninstall.
Successfully installed bottle-0.12.19 conan-1.40.0 fasteners-0.16.3 future-0.18.2 node-semver-0.6.1 patch-ng-1.17.4 pluginbase-1.0.1 pygments-2.10.0 python-dateutil-2.8.2 tqdm-4.62.2 urllib3-1.26.6
`dpkg -l python3-*`
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                          Version                  Architecture Description
+++-=============================-========================-============-=============================================================================
ii  python3                       3.8.2-0ubuntu2           amd64        interactive high-level object-oriented language (default python3 version)
un  python3-all                   <none>                   <none>       (no description available)
ii  python3-apport                2.20.11-0ubuntu27.18     all          Python 3 library for Apport crash report handling
ii  python3-apt                   2.0.0ubuntu0.20.04.6     amd64        Python 3 interface to libapt-pkg
un  python3-apt-dbg               <none>                   <none>       (no description available)
un  python3-aptdaemon.pkcompat    <none>                   <none>       (no description available)
ii  python3-attr                  19.3.0-2                 all          Attributes without boilerplate (Python 3)
ii  python3-automat               0.8.0-1ubuntu1           all          Self-service finite-state machines for the programmer on the go
ii  python3-blinker               1.4+dfsg1-0.3ubuntu1     all          fast, simple object-to-object and broadcast signaling library
un  python3-boto                  <none>                   <none>       (no description available)
ii  python3-cairo:amd64           1.16.2-2ubuntu2          amd64        Python3 bindings for the Cairo vector graphics library
ii  python3-certifi               2019.11.28-1             all          root certificates for validating SSL certs and verifying TLS hosts (python3)
ii  python3-cffi-backend          1.14.0-1build1           amd64        Foreign Function Interface for Python 3 calling C code - runtime
un  python3-cffi-backend-api-9729 <none>                   <none>       (no description available)
un  python3-cffi-backend-api-max  <none>                   <none>       (no description available)
un  python3-cffi-backend-api-min  <none>                   <none>       (no description available)
ii  python3-chardet               3.0.4-4build1            all          universal character encoding detector for Python3
ii  python3-click                 7.0-3                    all          Wrapper around optparse for command line utilities - Python 3.x
ii  python3-colorama              0.4.3-1build1            all          Cross-platform colored terminal text in Python - Python 3.x
ii  python3-commandnotfound       20.04.4                  all          Python 3 bindings for command-not-found.
ii  python3-configobj             5.0.6-4                  all          simple but powerful config file reader and writer for Python 3
ii  python3-constantly            15.1.0-1build1           all          Symbolic constants in Python
un  python3-crypto                <none>                   <none>       (no description available)
ii  python3-cryptography          2.8-3ubuntu0.1           amd64        Python library exposing cryptographic recipes and primitives (Python 3)
un  python3-cryptography-vectors  <none>                   <none>       (no description available)
ii  python3-dbus                  1.2.16-1build1           amd64        simple interprocess messaging system (Python 3 interface)
un  python3-dbus-dbg              <none>                   <none>       (no description available)
un  python3-dbusmock              <none>                   <none>       (no description available)
ii  python3-debconf               1.5.73                   all          interact with debconf from Python 3
ii  python3-debian                0.1.36ubuntu1            all          Python 3 modules to work with Debian-related data formats
ii  python3-dev                   3.8.2-0ubuntu2           amd64        header files and a static library for Python (default)
ii  python3-distro                1.4.0-1                  all          Linux OS platform information API
ii  python3-distro-info           0.23ubuntu1              all          information about distributions' releases (Python 3 module)
ii  python3-distupgrade           1:20.04.36               all          manage release upgrades
ii  python3-distutils             3.8.10-0ubuntu1~20.04    all          distutils package for Python 3.x
un  python3-doc                   <none>                   <none>       (no description available)
ii  python3-entrypoints           0.3-2ubuntu1             all          Discover and load entry points from installed packages (Python 3)
ii  python3-gdbm:amd64            3.8.10-0ubuntu1~20.04    amd64        GNU dbm database support for Python 3.x
un  python3-gdbm-dbg              <none>                   <none>       (no description available)
ii  python3-gi                    3.36.0-1                 amd64        Python 3 bindings for gobject-introspection libraries
ii  python3-gi-cairo              3.36.0-1                 amd64        Python 3 Cairo bindings for the GObject library
un  python3-h2                    <none>                   <none>       (no description available)
ii  python3-hamcrest              1.9.0-3                  all          Hamcrest framework for matcher objects (Python 3)
ii  python3-httplib2              0.14.0-1ubuntu1          all          comprehensive HTTP client library written for Python3
ii  python3-hyperlink             19.0.0-1                 all          Immutable, Pythonic, correct URLs.
ii  python3-idna                  2.8-1                    all          Python IDNA2008 (RFC 5891) handling (Python 3)
un  python3-imaplib2              <none>                   <none>       (no description available)
ii  python3-importlib-metadata    1.5.0-1                  all          library to access the metadata for a Python package - Python 3.x
ii  python3-incremental           16.10.1-3.2              all          Library for versioning Python projects.
ii  python3-jinja2                2.10.1-2                 all          small but fast and easy to use stand-alone template engine
ii  python3-json-pointer          2.0-0ubuntu1             all          resolve JSON pointers - Python 3.x
ii  python3-jsonpatch             1.23-3                   all          library to apply JSON patches - Python 3.x
ii  python3-jsonschema            3.2.0-0ubuntu2           all          An(other) implementation of JSON Schema (Draft 3 and 4) - Python 3.x
ii  python3-jwt                   1.7.1-2ubuntu2           all          Python 3 implementation of JSON Web Token
ii  python3-keyring               18.0.1-2ubuntu1          all          store and access your passwords safely - Python 3 version of the package
un  python3-keyrings.alt          <none>                   <none>       (no description available)
ii  python3-launchpadlib          1.10.13-1                all          Launchpad web services client library (Python 3)
ii  python3-lazr.restfulclient    0.14.2-2build1           all          client for lazr.restful-based web services (Python 3)
ii  python3-lazr.uri              1.0.3-4build1            all          library for parsing, manipulating, and generating URIs
ii  python3-lib2to3               3.8.10-0ubuntu1~20.04    all          Interactive high-level object-oriented language (lib2to3)
ii  python3-lldb-11               1:11.0.0-2~ubuntu20.04.1 amd64        Next generation, high-performance debugger, python3 lib
un  python3-lldb-x.y              <none>                   <none>       (no description available)
ii  python3-markupsafe            1.1.0-1build2            amd64        HTML/XHTML/XML string library for Python 3
un  python3-migrate               <none>                   <none>       (no description available)
ii  python3-minimal               3.8.2-0ubuntu2           amd64        minimal subset of the Python language (default python3 version)
ii  python3-more-itertools        4.2.0-1build1            all          library with routines for operating on iterables, beyond itertools (Python 3)
ii  python3-nacl                  1.3.0-5                  amd64        Python bindings to libsodium (Python 3)
ii  python3-netifaces             0.10.4-1ubuntu4          amd64        portable network interface information - Python 3.x
ii  python3-newt:amd64            0.52.21-4ubuntu2         amd64        NEWT module for Python3
ii  python3-oauthlib              3.1.0-1ubuntu2           all          generic, spec-compliant implementation of OAuth for Python3
ii  python3-openssl               19.0.0-1build1           all          Python 3 wrapper around the OpenSSL library
un  python3-openssl-dbg           <none>                   <none>       (no description available)
un  python3-pampy                 <none>                   <none>       (no description available)
ii  python3-pexpect               4.6.0-1build1            all          Python 3 module for automating interactive applications
ii  python3-pip                   20.0.2-5ubuntu1.6        all          Python package installer
ii  python3-pkg-resources         45.2.0-1                 all          Package Discovery and Resource Access using pkg_resources
ii  python3-problem-report        2.20.11-0ubuntu27.18     all          Python 3 library to handle problem reports
un  python3-profiler              <none>                   <none>       (no description available)
ii  python3-ptyprocess            0.6.0-1ubuntu1           all          Run a subprocess in a pseudo terminal from Python 3
ii  python3-pyasn1                0.4.2-3build1            all          ASN.1 library for Python (Python 3 module)
ii  python3-pyasn1-modules        0.2.1-0.2build1          all          Collection of protocols modules written in ASN.1 language (Python 3)
ii  python3-pygments              2.3.1+dfsg-1ubuntu2.2    all          syntax highlighting package written in Python 3
ii  python3-pymacaroons           0.13.0-3                 all          Macaroon library for Python 3
ii  python3-pyrsistent:amd64      0.15.5-1build1           amd64        persistent/functional/immutable data structures for Python
un  python3-pysimplesoap          <none>                   <none>       (no description available)
un  python3-pysnmp4               <none>                   <none>       (no description available)
un  python3-qt4                   <none>                   <none>       (no description available)
ii  python3-requests              2.22.0-2ubuntu1          all          elegant and simple HTTP library for Python3, built for human beings
ii  python3-requests-unixsocket   0.2.0-2                  all          Use requests to talk HTTP via a UNIX domain socket - Python 3.x
ii  python3-secretstorage         2.3.1-2ubuntu1           all          Python module for storing secrets - Python 3.x version
ii  python3-serial                3.4-5.1                  all          pyserial - module encapsulating access for the serial port
ii  python3-service-identity      18.1.0-5build1           all          Service identity verification for pyOpenSSL (Python 3 module)
ii  python3-setuptools            45.2.0-1                 all          Python3 Distutils Enhancements
ii  python3-simplejson            3.16.0-2ubuntu2          amd64        simple, fast, extensible JSON encoder/decoder for Python 3.x
ii  python3-six                   1.14.0-2                 all          Python 2 and 3 compatibility library (Python 3 interface)
un  python3-socks                 <none>                   <none>       (no description available)
ii  python3-software-properties   0.98.9.5                 all          manage the repositories that you install software from
ii  python3-systemd               234-3build2              amd64        Python 3 bindings for systemd
un  python3-testresources         <none>                   <none>       (no description available)
un  python3-tk                    <none>                   <none>       (no description available)
ii  python3-twisted               18.9.0-11ubuntu0.20.04.1 all          Event-based framework for internet applications
ii  python3-twisted-bin:amd64     18.9.0-11ubuntu0.20.04.1 amd64        Event-based framework for internet applications
un  python3-twisted-bin-dbg       <none>                   <none>       (no description available)
un  python3-twisted-experimental  <none>                   <none>       (no description available)
ii  python3-update-manager        1:20.04.10.7             all          python 3.x module for update-manager
ii  python3-urllib3               1.25.8-2ubuntu0.1        all          HTTP library with thread-safe connection pooling for Python3
ii  python3-venv                  3.8.2-0ubuntu2           amd64        pyvenv-3 binary for python3 (default python3 version)
un  python3-virtualenv            <none>                   <none>       (no description available)
ii  python3-wadllib               1.3.3-3build1            all          Python 3 library for navigating WADL files
ii  python3-wheel                 0.34.2-1                 all          built-package format for Python
un  python3-wxgtk                 <none>                   <none>       (no description available)
un  python3-wxgtk2.8              <none>                   <none>       (no description available)
un  python3-wxgtk3.0              <none>                   <none>       (no description available)
ii  python3-xkit                  0.5.0ubuntu4             all          library for the manipulation of xorg.conf files (Python 3)
ii  python3-yaml                  5.3.1-1ubuntu0.1         amd64        YAML parser and emitter for Python3
ii  python3-zipp                  1.0.0-1                  all          pathlib-compatible Zipfile object wrapper - Python 3.x
un  python3-zope                  <none>                   <none>       (no description available)
ii  python3-zope.interface        4.7.1-1                  amd64        Interfaces for Python3
un  python3.1                     <none>                   <none>       (no description available)
un  python3.6-2to3                <none>                   <none>       (no description available)
un  python3.7-2to3                <none>                   <none>       (no description available)
ii  python3.8                     3.8.10-0ubuntu1~20.04    amd64        Interactive high-level object-oriented language (version 3.8)
un  python3.8-apt                 <none>                   <none>       (no description available)
un  python3.8-cairo               <none>                   <none>       (no description available)
un  python3.8-dbus                <none>                   <none>       (no description available)
ii  python3.8-dev                 3.8.10-0ubuntu1~20.04    amd64        Header files and a static library for Python (v3.8)
un  python3.8-distutils           <none>                   <none>       (no description available)
un  python3.8-doc                 <none>                   <none>       (no description available)
un  python3.8-gdbm                <none>                   <none>       (no description available)
un  python3.8-lib2to3             <none>                   <none>       (no description available)
ii  python3.8-minimal             3.8.10-0ubuntu1~20.04    amd64        Minimal subset of the Python language (version 3.8)
un  python3.8-newt                <none>                   <none>       (no description available)
ii  python3.8-venv                3.8.10-0ubuntu1~20.04    amd64        Interactive high-level object-oriented language (pyvenv binary, version 3.8)
un  python3.8-zope.interface      <none>                   <none>       (no description available)
un  python3.9-distutils           <none>                   <none>       (no description available)
un  python3.9-gdbm                <none>                   <none>       (no description available)
un  python3.9-lib2to3             <none>                   <none>       (no description available)
@memsharded memsharded added this to the 1.40.1 milestone Sep 8, 2021
@memsharded
Copy link
Member

Thanks very much @puetzk for reporting this. You are right, this needs to be bumped to requests>=2.25, <3.0.0. Specially as the urllib upgrade was necessary from the security point of view, downgrading it wouldn't be an option, so lets upgrade the requests minimum version.

@memsharded
Copy link
Member

Fixed by #9562, to be released in 1.40.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants