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 it's End Of Life . This site shows Python 2.7 support for the 360 most downloaded packages on PyPI:

  1. Green packages have dropped support for Python 2.7;
  2. White packages 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 ✗ urllib3 ✗ s3transfer ✗ six ✓ pyyaml ✗ awscli ✗ python-dateutil ✗ rsa ✓ docutils ✗ pip ✓ jmespath ✗ futures ✗ pyasn1 ✗ colorama ✗ setuptools ✓ requests ✗ certifi ✓ chardet ✗ idna ✓ wheel ✗ boto3 ✗ argparse ✗ simplejson ✗ ordereddict ✓ cryptography ✓ pyparsing ✗ pytz ✗ enum34 ✗ cffi ✗ packaging ✗ jinja2 ✗ typing ✗ click ✓ ipaddress ✗ markupsafe ✗ pycparser ✗ numpy ✓ configparser ✓ protobuf ✗ redis ✗ lockfile ✗ contextlib2 ✗ geopy ✓ setuptools-scm ✓ boto ✗ toml ✗ ansible ✗ pathlib2 ✗ importlib-metadata ✓ paramiko ✗ msgpack ✗ backports-functools-lru-cache ✗ scandir ✗ zipp ✓ pyopenssl ✗ python-gflags ✗ future ✗ addict ✗ mock ✓ singledispatch ✗ mozrunner ✗ mozlog ✗ pyasn1-modules ✗ pkginfo ✗ pip-tools ✓ funcsigs ✗ cachecontrol ✗ pandas ✓ bcrypt ✓ pbr ✗ attrs ✗ importlib-resources ✓ websocket-client ✗ pynacl ✗ cachetools ✓ decorator ✓ google-auth ✗ psutil ✗ pytest ✓ virtualenv ✗ docker ✓ psycopg2 ✗ distro ✗ httplib2 ✗ py ✗ werkzeug ✗ scipy ✓ cython ✗ lxml ✗ pyjwt ✓ functools32 ✓ pycrypto ✓ s3cmd ✗ google-api-python-client ✓ sqlalchemy ✗ wrapt ✗ google-api-core ✗ monotonic ✓ prometheus-client ✗ appdirs ✗ coverage ✗ google-auth-httplib2 ✗ oauthlib ✗ datadog ✗ itsdangerous ✗ uritemplate ✗ beautifulsoup4 ✗ googleapis-common-protos ✓ wcwidth ✗ google-cloud-core ✗ more-itertools ✓ ansible-base ✗ filelock ✗ mozdevice ✗ grpcio ✗ pymysql ✓ requests-oauthlib ✗ mozinfo ✗ mozprocess ✗ mozprofile ✗

Top 120 - 240

pluggy ✗ python-jose ✗ atomicwrites ✗ pygments ✓ flask ✗ backports-ssl-match-hostname ✗ blessings ✗ python-daemon ✓ tabulate ✗ mozfile ✗ mozterm ✗ ujson ✓ distlib ✗ jsonschema ✗ scikit-learn ✓ oauth2client ✗ incremental ✗ python-consul ✗ currencyconverter ✗ tornado ✓ asn1crypto ✗ tenacity ✗ pymongo ✗ docopt ✗ kafka-python ✗ pytest-runner ✓ avro ✗ pillow ✓ mysql-connector-python ✗ soupsieve ✓ pyrsistent ✓ nltk ✓ retrying ✗ pycairo ✓ pyxdg ✗ pygobject ✓ tld ✗ scp ✗ scapy ✗ pexpect ✗ pystache ✗ pycpfcnpj ✗ google-resumable-media ✗ h5py ✓ azure-common ✗ babel ✗ ptyprocess ✗ thrift ✓ subprocess32 ✗ requests-file ✗ tldextract ✓ pycodestyle ✗ statsd ✗ mccabe ✗ google-cloud-storage ✗ isodate ✗ markdown ✓ awscli-cwlogs ✗ defusedxml ✗ xlsxwriter ✗ cached-property ✗ python-magic ✗ nose ✓ pycryptodome ✗ redis-py-cluster ✗ azure-nspkg ✗ django ✓ zope-interface ✗ xmltodict ✗ tqdm ✗ termcolor ✓ backports-weakref ✗ isort ✓ bz2file ✗ geocoder ✗ regex ✓ ipython ✓ elasticsearch ✗ pyflakes ✗ py4j ✗ netaddr ✗ html5lib ✗ tensorflow ✓ fuzzywuzzy ✗ pyvmomi ✗ sentry-sdk ✗ backports-abc ✓ networkx ✓ slackclient ✓ kazoo ✗ crcmod ✗ sortedcontainers ✗ keras-applications ✗ keras-preprocessing ✗ flake8 ✗ pylint ✓ google-auth-oauthlib ✓ iso8601 ✓ tensorboard ✗ requests-toolbelt ✗ backports-shutil-get-terminal-size ✗ dnspython ✓ ecdsa ✗ hvac ✗ matplotlib ✓ pickleshare ✗ supervisor ✗ maxminddb ✓ gast ✗ greenlet ✗ absl-py ✗ google-cloud-bigquery ✓ webencodings ✗ pycryptodomex ✗ raven ✗ jsonpickle ✗ selenium ✗ pyarrow ✓ prompt-toolkit ✓ lazy-object-proxy ✗

Top 240 - 360

astor ✗ unicodecsv ✗ traitlets ✓ kiwisolver ✓ xgboost ✓ azure-storage-nspkg ✗ gunicorn ✓ pathspec ✗ smart-open ✓ pyzmq ✓ dill ✗ gevent ✗ pytest-cov ✗ azure-storage-blob ✗ twisted ✓ docker-pycreds ✗ ua-parser ✗ tzlocal ✗ ipython-genutils ✗ semantic-version ✗ astroid ✓ celery ✓ cycler ✗ psycopg2-binary ✗ ply ✓ xlrd ✗ vcrpy ✓ tensorflow-estimator ✓ azure-storage-common ✗ pygithub ✓ linecache2 ✗ stevedore ✓ gitpython ✓ kombu ✓ unittest2 ✗ simplegeneric ✗ bleach ✗ cerberus-python-client ✓ mysqlclient ✓ ndg-httpsclient ✗ beautifulsoup ✗ amqp ✓ deprecated ✗ google-pasta ✗ plotly ✗ webob ✗ text-unidecode ✗ joblib ✓ graphviz ✗ yamllint ✓ texttable ✗ newrelic ✗ sh ✗ cssselect ✗ pyodbc ✗ fastavro ✓ modernize ✓ service-identity ✗ geoip2 ✓ fasteners ✗ virtualenv-clone ✗ gitdb2 ✓ semver ✗ bs4 ✓ docker-compose ✓ ruamel-yaml ✓ ddtrace ✗ smmap ✓ ruamel-ordereddict ✓ dockerpty ✓ msrest ✗ smmap2 ✓ sphinx ✓ promise ✗ ijson ✗ snowflake-connector-python ✓ execnet ✗ azure-mgmt-resource ✗ pytest-xdist ✓ google-cloud-datastore ✓ django-extensions ✓ entrypoints ✓ alabaster ✗ tensorflow-metadata ✓ tensorflow-datasets ✓ apipkg ✗ mako ✓ passlib ✓ billiard ✗ traceback2 ✗ mysql-python ✓ imagesize ✗ pycurl ✓ pytest-forked ✗ faker ✓ requests-mock ✗ oyaml ✓ oscrypto ✗ queuelib ✗ requests-aws4auth ✗ stripe ✗ s3fs ✓ w3lib ✗ venusian ✓ m3u8 ✓ humanfriendly ✗ parsel ✗ anyjson ✗ openpyxl ✓ demjson ✓ scrapy ✓ pydispatcher ✓ jdcal ✗ seaborn ✓ arrow ✓ inflect ✓ pytesseract ✓ lightgbm ✓ html5-parser ✓ jsonpointer ✗

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