Python 3.1 Readiness

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

What is this about?

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

  1. 359 green packages (99.7%) have dropped support for Python 3.1;
  2. 1 uncolored packages (0.3%) still support Python 3.1.

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

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

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

How do you identify Python 3.1 support?

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

Top 120

boto3 ✓ aiobotocore ✓ urllib3 ✓ botocore ✓ typing-extensions ✓ requests ✓ certifi ✓ idna ✓ charset-normalizer ✓ setuptools ✓ grpcio-status ✓ packaging ✓ s3fs ✓ python-dateutil ✓ s3transfer ✓ six ✓ cryptography ✓ numpy ✓ fsspec ✓ pyyaml ✓ pydantic ✓ cffi ✓ pandas ✓ pip ✓ pycparser ✓ pydantic-core ✓ click ✓ attrs ✓ protobuf ✓ markupsafe ✓ rsa ✓ platformdirs ✓ h11 ✓ anyio ✓ jmespath ✓ pytz ✗ sniffio ✓ jinja2 ✓ pygments ✓ pluggy ✓ importlib-metadata ✓ annotated-types ✓ pyasn1 ✓ zipp ✓ cachetools ✓ tzdata ✓ filelock ✓ wheel ✓ httpx ✓ google-auth ✓ httpcore ✓ google-api-core ✓ colorama ✓ pyjwt ✓ typing-inspection ✓ pyasn1-modules ✓ pytest ✓ awscli ✓ aiohttp ✓ jsonschema ✓ virtualenv ✓ googleapis-common-protos ✓ iniconfig ✓ multidict ✓ yarl ✓ tqdm ✓ python-dotenv ✓ wrapt ✓ pyarrow ✓ scipy ✓ psutil ✓ rich ✓ requests-oauthlib ✓ frozenlist ✓ pathspec ✓ grpcio-tools ✓ pillow ✓ sqlalchemy ✓ aiosignal ✓ tomli ✓ greenlet ✓ markdown-it-py ✓ propcache ✓ rpds-py ✓ grpcio ✓ referencing ✓ pyparsing ✓ jsonschema-specifications ✓ starlette ✓ mdurl ✓ oauthlib ✓ tomlkit ✓ openpyxl ✓ fastapi ✓ et-xmlfile ✓ aiohappyeyeballs ✓ yandexcloud ✓ lxml ✓ beautifulsoup4 ✓ uvicorn ✓ pyopenssl ✓ docutils ✓ soupsieve ✓ requests-toolbelt ✓ trove-classifiers ✓ distlib ✓ google-genai ✓ werkzeug ✓ shellingham ✓ isodate ✓ exceptiongroup ✓ regex ✓ flask ✓ more-itertools ✓ opentelemetry-sdk ✓ msgpack ✓ snowflake-connector-python ✓ opentelemetry-proto ✓ proto-plus ✓ websocket-client ✓

Top 120 - 240

psycopg2-binary ✓ google-cloud-storage ✓ pynacl ✓ mypy-extensions ✓ tenacity ✓ sortedcontainers ✓ opentelemetry-api ✓ scikit-learn ✓ opentelemetry-semantic-conventions ✓ decorator ✓ azure-core ✓ coverage ✓ huggingface-hub ✓ msal ✓ pexpect ✓ ptyprocess ✓ openai ✓ bcrypt ✓ gitpython ✓ wcwidth ✓ opentelemetry-exporter-otlp-proto-http ✓ networkx ✓ azure-identity ✓ async-timeout ✓ threadpoolctl ✓ asn1crypto ✓ websockets ✓ opentelemetry-exporter-otlp-proto-grpc ✓ smmap ✓ joblib ✓ gitdb ✓ dnspython ✓ google-cloud-core ✓ matplotlib ✓ transformers ✓ deprecated ✓ tabulate ✓ opentelemetry-exporter-otlp-proto-common ✓ distro ✓ fonttools ✓ keyring ✓ zstandard ✓ paramiko ✓ hatchling ✓ chardet ✓ typer ✓ ruamel-yaml ✓ itsdangerous ✓ dill ✓ langsmith ✓ google-api-python-client ✓ prompt-toolkit ✓ jaraco-classes ✓ poetry-core ✓ google-auth-oauthlib ✓ secretstorage ✓ python-multipart ✓ kiwisolver ✓ redis ✓ google-resumable-media ✓ jeepney ✓ google-cloud-bigquery ✓ fastjsonschema ✓ google-crc32c ✓ build ✓ blinker ✓ rapidfuzz ✓ pyproject-hooks ✓ opentelemetry-exporter-otlp ✓ sqlparse ✓ annotated-doc ✓ backoff ✓ setuptools-scm ✓ cycler ✓ defusedxml ✓ alembic ✓ msal-extensions ✓ uritemplate ✓ jiter ✓ py4j ✓ contourpy ✓ google-auth-httplib2 ✓ jaraco-functools ✓ httplib2 ✓ tzlocal ✓ pytest-cov ✓ xmltodict ✓ importlib-resources ✓ orjson ✓ ruamel-yaml-clib ✓ ruff ✓ marshmallow ✓ prometheus-client ✓ langchain ✓ jaraco-context ✓ pydantic-settings ✓ docker ✓ cloudpickle ✓ google-cloud-secret-manager ✓ tokenizers ✓ azure-storage-blob ✓ ipython ✓ types-requests ✓ grpcio-health-checking ✓ babel ✓ google-cloud-batch ✓ cython ✓ opentelemetry-instrumentation ✓ mako ✓ jsonpointer ✓ traitlets ✓ sentry-sdk ✓ black ✓ typedload ✓ sympy ✓ jedi ✓ parso ✓ awswrangler ✓ tornado ✓ nest-asyncio ✓

Top 240 - 360

google-analytics-admin ✓ snowflake-sqlalchemy ✓ toml ✓ asgiref ✓ kubernetes ✓ matplotlib-inline ✓ email-validator ✓ executing ✓ aiofiles ✓ hf-xet ✓ pyzmq ✓ markdown ✓ langchain-core ✓ mypy ✓ cachecontrol ✓ dbt-common ✓ pkginfo ✓ aliyun-python-sdk-core ✓ pymupdf ✓ mpmath ✓ grpc-google-iam-v1 ✓ termcolor ✓ editables ✓ asttokens ✓ webencodings ✓ ply ✓ gunicorn ✓ argcomplete ✓ uv ✓ torch ✓ pytest-asyncio ✓ dbt-core ✓ pymysql ✓ sphinx ✓ stack-data ✓ pure-eval ✓ typing-inspect ✓ nodeenv ✓ uvloop ✓ watchfiles ✓ opentelemetry-util-http ✓ pytest-xdist ✓ mccabe ✓ python-json-logger ✓ pymongo ✓ isort ✓ multiprocess ✓ dbt-adapters ✓ dulwich ✓ watchdog ✓ pycodestyle ✓ pendulum ✓ tiktoken ✓ execnet ✓ docstring-parser ✓ jsonpatch ✓ poetry ✓ identify ✓ pre-commit ✓ shapely ✓ aioitertools ✓ databricks-sdk ✓ pycryptodome ✓ debugpy ✓ msrest ✓ installer ✓ future ✓ httptools ✓ cfgv ✓ crashtest ✓ datadog ✓ cleo ✓ lz4 ✓ opentelemetry-instrumentation-requests ✓ notebook ✓ jsonpath-ng ✓ google-cloud-vision ✓ google-cloud-kms ✓ azure-common ✓ slack-sdk ✓ smart-open ✓ arrow ✓ requests-file ✓ databricks-sql-connector ✓ rfc3339-validator ✓ google-cloud-monitoring ✓ dataclasses-json ✓ google-cloud-speech ✓ google-cloud-compute ✓ google-cloud-tasks ✓ jupyter-core ✓ deepdiff ✓ backports-tarfile ✓ google-cloud-dlp ✓ semver ✓ cattrs ✓ pytest-mock ✓ pygithub ✓ ipykernel ✓ google-cloud-language ✓ google-cloud-workflows ✓ tinycss2 ✓ scramp ✓ py ✓ google-cloud-dataform ✓ nvidia-nccl-cu12 ✓ google-cloud-videointelligence ✓ httpx-sse ✓ jupyter-client ✓ text-unidecode ✓ mcp ✓ google-cloud-os-login ✓ google-cloud-aiplatform ✓ opensearch-py ✓ poetry-plugin-export ✓ mistune ✓ safetensors ✓ redshift-connector ✓ invoke ✓ h2 ✓

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.