Python 2.4 Readiness

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

What is this about?

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

  1. 354 green packages (98.3%) have dropped support for Python 2.4;
  2. 6 uncolored packages (1.7%) still support Python 2.4.

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

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

  • 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.4 support.

How do you identify Python 2.4 support?

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

Top 120

pip ✓ botocore ✓ python-dateutil ✓ s3transfer ✓ urllib3 ✓ six ✓ jmespath ✓ requests ✓ colorama ✓ certifi ✓ idna ✓ chardet ✓ setuptools ✓ pyyaml ✓ enum34 ✗ awscli ✓ pytz ✗ typing ✓ futures ✓ boto3 ✓ wheel ✓ numpy ✓ pyasn1 ✓ pathlib2 ✓ scandir ✓ docutils ✓ configparser ✓ rsa ✓ ipaddress ✓ contextlib2 ✓ lockfile ✓ python-daemon ✓ zipp ✓ pyparsing ✓ pystache ✓ cffi ✓ importlib-metadata ✓ lxml ✓ pycparser ✓ cryptography ✓ backports-functools-lru-cache ✓ jinja2 ✓ markupsafe ✓ pandas ✓ packaging ✓ click ✓ future ✓ singledispatch ✓ funcsigs ✓ requests-oauthlib ✓ pyasn1-modules ✓ websocket-client ✓ setuptools-scm ✓ attrs ✓ wcwidth ✓ protobuf ✓ werkzeug ✓ boto ✓ flask ✓ pexpect ✓ ptyprocess ✓ paramiko ✓ cython ✓ importlib-resources ✓ py ✓ itsdangerous ✓ mock ✓ cachetools ✓ decorator ✓ redis ✓ sqlalchemy ✓ google-auth ✓ pbr ✓ scipy ✓ oauthlib ✓ bcrypt ✓ kubernetes ✓ more-itertools ✓ pluggy ✓ atomicwrites ✓ pynacl ✓ pytest ✓ psutil ✓ subprocess32 ✓ pillow ✓ functools32 ✓ grpcio ✓ pyopenssl ✓ pymongo ✓ spotinst-agent ✓ defusedxml ✓ supervisor ✓ pycryptodome ✓ distlib ✓ virtualenv ✓ beautifulsoup4 ✓ httplib2 ✓ google-cloud-core ✓ python-magic ✓ cycler ✓ pygments ✓ zope-interface ✓ matplotlib ✓ google-resumable-media ✓ toml ✓ jsonschema ✓ webencodings ✓ coverage ✓ google-cloud-storage ✓ kiwisolver ✓ filelock ✓ tornado ✓ pyjwt ✓ backports-abc ✓ wrapt ✓ scikit-learn ✓ google-api-core ✓ platformdirs ✓ tqdm ✓ googleapis-common-protos ✓

Top 120 - 240

monotonic ✓ tzdata ✓ soupsieve ✓ asn1crypto ✓ requests-toolbelt ✓ django ✓ xlrd ✓ s3cmd ✓ pickleshare ✓ nose ✓ netaddr ✓ google-auth-httplib2 ✓ backports-ssl-match-hostname ✗ isodate ✓ ipython-genutils ✓ argparse ✗ backports-shutil-get-terminal-size ✓ billiard ✓ ipython ✓ uritemplate ✓ simplejson ✓ traitlets ✓ kombu ✓ prometheus-client ✓ prompt-toolkit ✓ mccabe ✓ datadog ✓ elasticsearch ✓ crcmod ✗ celery ✓ simplegeneric ✗ ply ✓ google-api-python-client ✓ amqp ✓ pycrypto ✓ twisted ✓ pypandoc ✓ docker ✓ dnspython ✓ gitpython ✓ pykcs11 ✓ xmltodict ✓ oauth2client ✓ html5lib ✓ ecdsa ✓ smmap ✓ gitdb2 ✓ tabulate ✓ xlsxwriter ✓ python-dotenv ✓ pysftp ✓ unidecode ✓ retrying ✓ pycurl ✓ psycopg2 ✓ pycodestyle ✓ pypcap ✓ babel ✓ smmap2 ✓ google-auth-oauthlib ✓ selenium ✓ vine ✓ pyzmq ✓ marshmallow ✓ greenlet ✓ pytest-runner ✓ jdcal ✓ deprecated ✓ pyflakes ✓ entrypoints ✓ bleach ✓ et-xmlfile ✓ openpyxl ✓ mistune ✓ scrapy ✓ jupyter-core ✓ docopt ✓ smart-open ✓ text-unidecode ✓ google-cloud-datastore ✓ gunicorn ✓ pandocfilters ✓ flake8 ✓ jupyter-client ✓ pytest-cov ✓ tzlocal ✓ dill ✓ ansible ✓ mysql-python ✓ ipykernel ✓ sentry-sdk ✓ jsonpointer ✓ cached-property ✓ nbformat ✓ sortedcontainers ✓ mysql-connector-python ✓ pymysql ✓ nbconvert ✓ send2trash ✓ nltk ✓ pypdf2 ✓ ldap3 ✓ testpath ✓ notebook ✓ flask-httpauth ✓ statistics ✓ appdirs ✓ gevent ✓ terminado ✓ requests-file ✓ azure-nspkg ✓ slacker ✓ psycopg2-binary ✓ snowballstemmer ✓ flask-marshmallow ✓ isort ✓ google-compute-engine ✓ typing-extensions ✓ jsonpickle ✓ reportlab ✓

Top 240 - 360

numexpr ✓ regex ✓ ipywidgets ✓ widgetsnbextension ✓ olefile ✓ joblib ✓ pyserial ✓ pycryptodomex ✓ bz2file ✓ py4j ✓ lazy-object-proxy ✓ msgpack ✓ azure-common ✓ azure-core ✓ pathlib ✓ imagesize ✓ bs4 ✓ pika ✓ msrest ✓ fasteners ✓ argcomplete ✓ sphinx ✓ pylint ✓ cassandra-driver ✓ poetry-core ✓ tldextract ✓ pyodbc ✓ dicttoxml ✓ incremental ✓ astroid ✓ multiprocessing ✓ sshtunnel ✓ markdown ✓ alabaster ✓ python-crfsuite ✓ docker-pycreds ✓ python-snappy ✓ mechanize ✓ blinker ✓ passlib ✓ geomet ✓ probableparsing ✓ mako ✓ usaddress ✓ sqlparse ✓ jira ✓ termcolor ✓ tenacity ✓ google-apitools ✓ unicodecsv ✓ pysocks ✓ google-cloud-bigquery ✓ grpcio-tools ✓ python-ldap ✓ patsy ✓ pyarrow ✓ elasticsearch-dsl ✓ python-jose ✓ beautifulsoup ✓ google-gax ✓ mysql-connector ✓ flask-cors ✓ pyrsistent ✓ pure-eval ✓ jellyfish ✓ stack-data ✓ statsmodels ✓ stevedore ✓ deepdiff ✓ scapy ✓ dumbyaml ✓ mypy-extensions ✓ grpc-google-pubsub-v1 ✓ grpc-google-logging-v2 ✓ gcloud ✓ gax-google-pubsub-v1 ✓ gax-google-logging-v2 ✓ luigi ✓ setuptools-markdown ✓ zope-event ✓ alembic ✓ croniter ✓ cvxopt ✓ retry-decorator ✓ gcs-oauth2-boto-plugin ✓ google-reauth ✓ networkx ✓ pyu2f ✓ fpdf2 ✓ gsutil ✓ mysqlclient ✓ gender-guesser ✓ msal ✓ pypi ✓ pystaticconfiguration ✓ jupyter ✓ pyrtf3 ✓ flask-sqlalchemy ✓ jsonpatch ✓ rjsmin ✓ python-bidi ✓ enum ✓ aniso8601 ✓ xhtml2pdf ✓ redis-py-cluster ✓ nodeenv ✓ mpmath ✓ inspect2 ✓ thrift ✓ python-gflags ✓ datetime ✓ namedlist ✓ uvicorn ✓ mongoengine ✓ hyperlink ✓ arabic-reshaper ✓ azure-storage-blob ✓ python-docx ✓ anytree ✓ python-editor ✓

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.