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. 264 green packages (73.3%) have dropped support for Python 2.7;
  2. 96 white packages (26.7%) 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 ✓ pip ✓ colorama ✗ urllib3 ✓ six ✓ python-dateutil ✗ setuptools ✓ requests ✓ idna ✓ boto3 ✓ futures ✗ chardet ✓ certifi ✓ typing ✗ jmespath ✓ awscli ✓ wheel ✓ pyyaml ✓ docutils ✓ pyasn1 ✓ pytz ✗ rsa ✓ configparser ✓ pathlib2 ✗ numpy ✓ enum34 ✗ scandir ✗ contextlib2 ✓ zipp ✓ future ✗ pyparsing ✓ jinja2 ✓ markupsafe ✓ importlib-metadata ✓ cryptography ✓ backports-functools-lru-cache ✓ cffi ✓ click ✓ lockfile ✗ ipaddress ✗ python-daemon ✓ pandas ✓ pycparser ✓ attrs ✓ pystache ✓ importlib-resources ✓ boto ✗ packaging ✓ singledispatch ✓ datadog ✗ protobuf ✓ werkzeug ✓ scipy ✓ pyopenssl ✓ funcsigs ✗ decorator ✓ tqdm ✓ mock ✓ flask ✓ pbr ✗ setuptools-scm ✓ itsdangerous ✓ redis ✓ wcwidth ✗ pyasn1-modules ✓ websocket-client ✓ dill ✓ sqlalchemy ✓ grpcio ✓ functools32 ✓ google-auth ✓ subprocess32 ✗ paramiko ✓ bz2file ✗ cython ✗ py ✗ wrapt ✓ promise ✗ cachetools ✓ tensorflow-metadata ✓ tensorflow-datasets ✓ scikit-learn ✓ pexpect ✗ pillow ✓ ptyprocess ✗ pypandoc ✓ virtualenv ✓ matplotlib ✓ cycler ✓ python-jose ✓ python-magic ✗ psutil ✗ bleach ✓ monotonic ✓ httplib2 ✗ more-itertools ✓ kiwisolver ✓ distlib ✗ lxml ✓ docopt ✗ oauthlib ✓ google-cloud-core ✓ pygments ✓ beautifulsoup4 ✓ requests-oauthlib ✓ pluggy ✓ html5lib ✗ filelock ✓ supervisor ✗ pytest ✓ bcrypt ✓ atomicwrites ✗ pynacl ✓ statsd ✓ spotinst-agent ✗ jsonschema ✓ google-resumable-media ✓ s3cmd ✗ platformdirs ✓

Top 120 - 240

psycopg2 ✓ nltk ✓ tornado ✓ billiard ✓ ansible ✓ backports-abc ✓ pyjwt ✓ celery ✓ kombu ✓ defusedxml ✗ amqp ✓ py4j ✗ google-cloud-storage ✓ google-api-core ✓ sentry-sdk ✓ tenacity ✓ mccabe ✓ babel ✓ unicodecsv ✗ webencodings ✗ prometheus-client ✓ snowballstemmer ✗ termcolor ✓ oauth2client ✗ markdown ✓ django ✓ unidecode ✓ asn1crypto ✗ googleapis-common-protos ✓ coverage ✓ pymongo ✓ pyspark ✓ gitpython ✓ gunicorn ✓ cached-property ✓ smmap ✓ gitdb2 ✓ soupsieve ✓ toml ✗ kazoo ✓ smmap2 ✓ xlrd ✗ pickleshare ✗ backports-shutil-get-terminal-size ✗ zope-interface ✓ simplejson ✗ backports-ssl-match-hostname ✗ backports-weakref ✗ docker ✓ h5py ✓ ipython ✓ ipython-genutils ✗ prompt-toolkit ✓ crcmod ✗ traitlets ✓ simplegeneric ✗ pycodestyle ✓ networkx ✓ pyflakes ✓ pycrypto ✓ kubernetes ✓ gast ✗ marshmallow ✓ isodate ✓ dnspython ✓ vine ✓ astor ✗ tensorflow ✓ absl-py ✓ requests-toolbelt ✗ keras ✓ tensorboard ✓ torch ✓ entrypoints ✓ google-auth-httplib2 ✓ gevent ✓ argparse ✗ netaddr ✓ pyzmq ✓ greenlet ✓ webob ✗ ecdsa ✗ resolvelib ✓ google-cloud-datastore ✓ ansible-core ✓ tabulate ✓ flake8 ✓ msgpack ✓ google-api-python-client ✓ psycopg2-binary ✓ xlsxwriter ✓ nose ✓ mistune ✓ findspark ✓ pytest-runner ✓ torchvision ✓ retrying ✓ python-ldap ✓ xmltodict ✓ regex ✓ slacker ✗ text-unidecode ✗ statistics ✗ jupyter-core ✓ orderedmultidict ✗ flask-httpauth ✓ uritemplate ✓ jupyter-client ✓ docker-pycreds ✗ pycryptodome ✗ jieba ✗ lazy-object-proxy ✓ pandocfilters ✗ bs4 ✓ tinysegmenter ✓ openpyxl ✓ ipykernel ✓ flask-marshmallow ✓ mysql-python ✓ google-compute-engine ✗

Top 240 - 360

htpasswd ✓ nbformat ✓ google-cloud-bigquery ✓ trino ✓ deprecated ✗ google-auth-oauthlib ✓ send2trash ✗ pyrsistent ✓ nbconvert ✓ joblib ✓ isort ✓ testpath ✓ notebook ✓ terminado ✓ azure-nspkg ✗ cerberus-python-client ✓ sqlparse ✓ astroid ✓ pymysql ✓ tzdata ✓ pylint ✓ xgboost ✓ mako ✓ jdcal ✗ ipywidgets ✓ incremental ✓ python-dotenv ✓ s3fs ✓ scapy ✓ multiprocessing ✓ webtest ✓ appdirs ✗ widgetsnbextension ✓ et-xmlfile ✓ numexpr ✓ pypcap ✓ ply ✓ pip-system-certs ✓ pytest-cov ✓ pysftp ✗ waitress ✓ pathlib ✗ newrelic-telemetry-sdk ✓ anyjson ✗ tzlocal ✓ namedlist ✗ azure-common ✗ virtualenv-clone ✗ pykcs11 ✓ keras-preprocessing ✗ elasticsearch ✓ pyscaffold ✓ typing-extensions ✓ mysqlclient ✓ docker-py ✗ pycryptodomex ✗ pika ✓ patsy ✓ distro ✓ dj-database-url ✓ keras-applications ✗ influxdb ✗ argcomplete ✓ rollbar ✓ python-openid ✓ flask-cors ✓ django-celery-beat ✓ pyodbc ✓ jsonpointer ✓ pyarrow ✓ statsmodels ✓ faker ✓ smart-open ✓ python-crontab ✓ kafka ✗ imagesize ✗ azure-core ✓ jupyter ✓ plotly ✓ stevedore ✓ django-celery-results ✓ snowflake-connector-python ✓ uwsgi ✓ sphinx ✓ poetry-core ✓ validate-email ✓ plumbum ✓ alabaster ✓ pyhocon ✗ selenium ✓ aniso8601 ✗ django-picklefield ✓ graphviz ✓ thrift ✓ azure-storage-blob ✓ msrest ✓ alembic ✓ python-etcd ✓ hyperlink ✗ blessings ✗ mysql-connector-python ✓ django-auth-ldap ✓ django-ses ✓ sortedcontainers ✗ beautifulsoup ✗ pysocks ✗ python-gnupg ✗ django-webtest ✓ python-editor ✗ python-snappy ✓ texttable ✗ passlib ✓ gspread ✓ ruamel-yaml ✓ jupyter-console ✓ python-gflags ✗ seaborn ✓ kafka-python ✗ flask-restful ✗ zope-event ✓

Thanks

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