Python 2.7 Readiness

Python 2.7 support graph for the 360 most popular Python packages!

What is this about?

Python 2.7 is a version of Python that is past its End Of Life . This site shows Python 2.7 support for the 360 most downloaded packages on PyPI:

  1. 169 green packages (46.9%) have dropped support for Python 2.7;
  2. 191 white packages (53.1%) still support Python 2.7.

Package 'x' is white. What can I do?

There can be many reasons a package is still supporting Python 2.7:

  • If you are package maintainer, it's time to start dropping support (if you haven't already). Here is an in-depth guide to Dropping support for older Python versions. If you are not able to give the time needed, please seek for help from the community.

  • If you are user of the package, send a friendly note to the package maintainer. Or fork it, and send a pull request to help move the project towards dropping Python 2.7 support.

How do you identify Python 2.7 support?

We look for the Programming Language :: Python :: 2.7 classifier on the latest release of the project, via PyPI's JSON API.

Top 120

botocore ✓ s3transfer ✓ colorama ✗ urllib3 ✗ six ✓ python-dateutil ✗ awscli ✓ pyyaml ✓ futures ✗ jmespath ✗ rsa ✓ pyasn1 ✗ docutils ✗ setuptools ✓ requests ✗ pip ✓ boto3 ✓ certifi ✓ idna ✓ chardet ✗ wheel ✗ enum34 ✗ pytz ✗ cffi ✗ cryptography ✓ ipaddress ✗ typing ✗ pycparser ✗ markupsafe ✓ jinja2 ✓ protobuf ✓ pyparsing ✗ configparser ✓ numpy ✓ pathlib2 ✗ packaging ✓ scandir ✗ contextlib2 ✓ importlib-metadata ✓ zipp ✓ pyasn1-modules ✗ singledispatch ✗ future ✗ pyopenssl ✗ cachetools ✓ grpcio ✓ google-auth ✓ ansible ✗ paramiko ✗ mock ✓ click ✓ boto ✗ pandas ✓ backports-functools-lru-cache ✗ google-api-core ✓ virtualenv ✗ importlib-resources ✓ funcsigs ✗ redis ✗ distlib ✗ psutil ✗ googleapis-common-protos ✓ websocket-client ✓ cython ✗ docker ✓ filelock ✓ mozrunner ✗ scipy ✓ mozlog ✗ pytest ✓ attrs ✗ distro ✗ platformdirs ✓ monotonic ✓ geocoder ✗ bcrypt ✓ pymongo ✗ currencyconverter ✗ python-jose ✓ pycpfcnpj ✗ pynacl ✗ werkzeug ✓ pbr ✗ itsdangerous ✓ s3cmd ✗ functools32 ✓ backports-entry-points-selectable ✓ psycopg2 ✓ httplib2 ✗ flask ✓ decorator ✓ lxml ✗ pymysql ✓ google-cloud-core ✓ setuptools-scm ✓ pyjwt ✓ wrapt ✗ more-itertools ✓ py ✗ oauthlib ✓ backports-ssl-match-hostname ✗ tenacity ✓ scapy ✗ geopy ✓ wcwidth ✗ xmltodict ✗ sqlalchemy ✗ tabulate ✗ pluggy ✓ statsd ✗ oauth2client ✗ requests-oauthlib ✗ coverage ✓ datadog ✗ atomicwrites ✗ lockfile ✗ scikit-learn ✓ pygments ✓ blessings ✗ python-daemon ✓

Top 120 - 240

sentry-sdk ✗ beautifulsoup4 ✓ asn1crypto ✗ pycrypto ✓ scp ✗ ansible-core ✗ resolvelib ✓ avro ✗ google-api-python-client ✓ kazoo ✗ mozprocess ✗ mozdevice ✗ pillow ✓ mozinfo ✗ h5py ✓ mozprofile ✗ mozfile ✗ mozterm ✗ jsonschema ✓ markdown ✓ azure-common ✗ pycairo ✓ pyxdg ✗ uritemplate ✓ pygobject ✓ docopt ✗ pycodestyle ✗ pexpect ✗ hvac ✗ fuzzywuzzy ✗ retrying ✗ ptyprocess ✗ azure-nspkg ✗ termcolor ✓ raven ✗ pyvmomi ✗ subprocess32 ✗ keras-applications ✗ google-auth-httplib2 ✗ keras-preprocessing ✗ tqdm ✗ elasticsearch ✗ pytesseract ✓ zope-interface ✗ tornado ✓ google-resumable-media ✓ yq ✓ pyarrow ✓ ecdsa ✗ soupsieve ✓ python-magic ✗ simplejson ✗ cerberus-python-client ✓ isort ✓ bs4 ✓ tensorboard ✓ mccabe ✗ pystache ✗ scrapy ✓ fasteners ✗ py4j ✗ redis-py-cluster ✗ regex ✓ cached-property ✗ tensorflow ✓ grpcio-tools ✓ scrapy-splash ✗ txaws ✓ backports-weakref ✗ html5-parser ✓ checkdigit ✓ pkgconfig ✓ toml ✗ argparse ✗ pyrsistent ✓ babel ✗ absl-py ✗ greenlet ✗ pycryptodomex ✗ azure-storage-nspkg ✗ google-cloud-storage ✗ bz2file ✗ dill ✗ isodate ✗ matplotlib ✓ amqp ✓ azure-storage-blob ✗ kombu ✓ backports-shutil-get-terminal-size ✗ unicodecsv ✗ pyflakes ✗ dnspython ✓ astor ✗ gast ✗ azure-storage-common ✗ awscli-cwlogs ✗ requests-toolbelt ✗ plotly ✓ ipython ✓ appdirs ✗ msgpack ✗ mypy-protobuf ✓ backports-abc ✓ grpc-google-iam-v1 ✗ celery ✓ pytest-runner ✓ defusedxml ✗ prompt-toolkit ✓ netaddr ✗ jsonpickle ✗ google-cloud-datastore ✓ billiard ✗ kiwisolver ✓ xgboost ✓ flake8 ✓ nose ✓ xlrd ✗ sortedcontainers ✗ gitpython ✓ prometheus-client ✗

Top 240 - 360

cycler ✗ psycopg2-binary ✓ gevent ✗ ijson ✗ django ✓ webob ✗ crcmod ✗ selenium ✓ semantic-version ✗ backoff ✗ traitlets ✓ lazy-object-proxy ✗ kubernetes ✓ mysql-connector-python ✓ tzlocal ✓ gitdb2 ✓ promise ✗ smmap ✓ html5lib ✗ webencodings ✗ smmap2 ✓ ansible-tower-cli ✗ snowflake-connector-python ✓ tensorflow-metadata ✓ tensorflow-datasets ✓ xlsxwriter ✓ sh ✗ mysql-python ✓ pyzmq ✓ python-gflags ✗ ruamel-ordereddict ✓ pickleshare ✗ google-cloud-bigquery ✓ pylint ✓ ipython-genutils ✗ unittest2 ✗ vine ✓ thrift ✓ simplegeneric ✗ linecache2 ✗ texttable ✗ orderedmultidict ✗ docker-pycreds ✗ keras ✓ bleach ✓ traceback2 ✗ htpasswd ✓ slackclient ✓ google-auth-oauthlib ✓ tensorflow-estimator ✓ gunicorn ✓ jdcal ✗ msrest ✗ graphviz ✓ pathspec ✗ oscrypto ✗ astroid ✓ stevedore ✓ execnet ✗ pycryptodome ✗ supervisor ✗ pylru ✗ semver ✗ reportlab ✓ docker-compose ✓ influxdb ✗ ply ✓ openpyxl ✓ smart-open ✓ networkx ✓ suntime ✓ et-xmlfile ✓ presto-python-client ✗ mako ✓ pyodbc ✗ pytest-xdist ✓ ruamel-yaml-clib ✓ dockerpty ✓ virtualenv-clone ✗ pytest-cov ✓ python-consul ✗ deprecated ✗ python-dotenv ✓ kafka-python ✗ sqlparse ✓ ujson ✓ zope-event ✗ nltk ✓ addict ✗ google-pasta ✗ s3fs ✓ deepdiff ✓ pytest-forked ✗ google-cloud-pubsub ✓ yamllint ✓ configobj ✗ requests-aws4auth ✓ ruamel-yaml ✓ google-apitools ✗ pymemcache ✗ azure-core ✗ python-gnupg ✗ statsmodels ✓ unidecode ✓ luigi ✓ maxminddb ✓ passlib ✓ curlify ✗ azure-mgmt-resource ✗ pydot ✗ python-editor ✗ joblib ✓ beautifulsoup ✗ fabric ✗ patsy ✗ anyjson ✗ argcomplete ✗ mysqlclient ✓ pathlib ✗ python-mimeparse ✓

Thanks

This is derivative work from py3readiness.org, a site that tracks general compatibility with Python 3, which in turn is a derivative of pythonwheels.com, a site that tracks which Python distributions ship the wheel distribution.

Fork me on GitHub