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 ✓ packaging ✓ typing-extensions ✓ idna ✓ urllib3 ✓ certifi ✓ requests ✓ charset-normalizer ✓ cryptography ✓ pygments ✓ cffi ✓ pyyaml ✓ setuptools ✓ python-dateutil ✓ pluggy ✓ six ✓ pydantic ✓ pycparser ✓ botocore ✓ click ✓ numpy ✓ anyio ✓ pydantic-core ✓ pytest ✓ iniconfig ✓ annotated-types ✓ h11 ✓ typing-inspection ✓ attrs ✓ httpx ✓ httpcore ✓ aiobotocore ✓ s3transfer ✓ protobuf ✓ markupsafe ✓ pyjwt ✓ python-dotenv ✓ fsspec ✓ pandas ✓ platformdirs ✓ starlette ✓ jinja2 ✓ uvicorn ✓ pathspec ✓ filelock ✓ jmespath ✓ jsonschema ✓ multidict ✓ rpds-py ✓ yarl ✓ referencing ✓ rich ✓ tomlkit ✓ aiohttp ✓ jsonschema-specifications ✓ markdown-it-py ✓ propcache ✓ opentelemetry-api ✓ pillow ✓ mdurl ✓ tqdm ✓ frozenlist ✓ googleapis-common-protos ✓ annotated-doc ✓ aiosignal ✓ pip ✓ websockets ✓ pyasn1 ✓ aiohappyeyeballs ✓ sniffio ✓ pytz ✗ tzdata ✓ wrapt ✓ fastapi ✓ trove-classifiers ✓ google-auth ✓ pydantic-settings ✓ python-multipart ✓ zipp ✓ greenlet ✓ importlib-metadata ✓ hatchling ✓ grpcio-status ✓ pyarrow ✓ wheel ✓ tenacity ✓ pyasn1-modules ✓ sqlalchemy ✓ jiter ✓ pyparsing ✓ grpcio ✓ watchfiles ✓ lxml ✓ openai ✓ s3fs ✓ ruff ✓ regex ✓ scipy ✓ soupsieve ✓ google-api-core ✓ psutil ✓ beautifulsoup4 ✓ openpyxl ✓ et-xmlfile ✓ distro ✓ coverage ✓ opentelemetry-semantic-conventions ✓ shellingham ✓ opentelemetry-sdk ✓ httpx2 ✓ httpcore2 ✓ truststore ✓ mypy-extensions ✓ typer ✓ requests-oauthlib ✓ proto-plus ✓ huggingface-hub ✓ colorama ✓ sse-starlette ✓ tomli ✓

Top 120 - 240

mcp ✓ wcwidth ✓ exceptiongroup ✓ pytest-asyncio ✓ dnspython ✓ virtualenv ✓ editables ✓ opentelemetry-proto ✓ cachetools ✓ oauthlib ✓ docstring-parser ✓ httptools ✓ uvloop ✓ more-itertools ✓ sortedcontainers ✓ opentelemetry-exporter-otlp-proto-common ✓ psycopg2-binary ✓ distlib ✓ redis ✓ defusedxml ✓ networkx ✓ pytest-cov ✓ hf-xet ✓ requests-toolbelt ✓ msgpack ✓ scikit-learn ✓ fonttools ✓ opentelemetry-exporter-otlp-proto-http ✓ rsa ✓ mako ✓ werkzeug ✓ prompt-toolkit ✓ threadpoolctl ✓ langchain ✓ tiktoken ✓ alembic ✓ orjson ✓ pyopenssl ✓ isodate ✓ tokenizers ✓ cloudpickle ✓ httpx-sse ✓ websocket-client ✓ email-validator ✓ mypy ✓ pynacl ✓ python-discovery ✓ nodeenv ✓ anthropic ✓ azure-core ✓ joblib ✓ matplotlib ✓ tzlocal ✓ itsdangerous ✓ grpcio-tools ✓ google-cloud-core ✓ google-cloud-bigquery ✓ msal ✓ tabulate ✓ zstandard ✓ ruamel-yaml ✓ bcrypt ✓ google-cloud-storage ✓ kiwisolver ✓ chardet ✓ langchain-core ✓ keyring ✓ dill ✓ jaraco-classes ✓ google-genai ✓ uv ✓ opentelemetry-instrumentation ✓ decorator ✓ jeepney ✓ jaraco-functools ✓ gitpython ✓ google-crc32c ✓ psycopg ✓ pytest-xdist ✓ execnet ✓ docutils ✓ secretstorage ✓ cycler ✓ jaraco-context ✓ backoff ✓ pytest-json-ctrf ✓ asn1crypto ✓ google-resumable-media ✓ identify ✓ h2 ✓ hpack ✓ contourpy ✓ pre-commit ✓ psycopg-binary ✓ cfgv ✓ smmap ✓ hyperframe ✓ flask ✓ prometheus-client ✓ pypdf ✓ sentry-sdk ✓ librt ✓ gitdb ✓ sympy ✓ xxhash ✓ uritemplate ✓ docker ✓ toml ✓ mpmath ✓ ptyprocess ✓ google-api-python-client ✓ blinker ✓ deprecated ✓ jsonpointer ✓ traitlets ✓ pexpect ✓ google-auth-httplib2 ✓ aiofiles ✓ async-timeout ✓ asgiref ✓

Top 240 - 360

webencodings ✓ httplib2 ✓ azure-identity ✓ opentelemetry-exporter-otlp-proto-grpc ✓ rapidfuzz ✓ narwhals ✓ google-auth-oauthlib ✓ msal-extensions ✓ fastjsonschema ✓ sqlparse ✓ black ✓ authlib ✓ asyncpg ✓ opentelemetry-util-http ✓ executing ✓ transformers ✓ paramiko ✓ tornado ✓ snowflake-connector-python ✓ litellm ✓ jsonpatch ✓ babel ✓ playwright ✓ azure-storage-blob ✓ grpc-google-iam-v1 ✓ python-docx ✓ ipython ✓ parso ✓ jedi ✓ joserfc ✓ asttokens ✓ structlog ✓ gunicorn ✓ typedload ✓ pyzmq ✓ tinycss2 ✓ xlsxwriter ✓ matplotlib-inline ✓ pyee ✓ google-cloud-aiplatform ✓ pure-eval ✓ markdown ✓ pyproject-hooks ✓ xmltodict ✓ stack-data ✓ awswrangler ✓ aioitertools ✓ isort ✓ python-json-logger ✓ nest-asyncio ✓ pytest-timeout ✓ watchdog ✓ brotli ✓ marshmallow ✓ build ✓ databricks-sdk ✓ mcp-types ✓ pymupdf ✓ multiprocess ✓ awscli ✓ nbformat ✓ jupyter-core ✓ cachecontrol ✓ safetensors ✓ debugpy ✓ ast-serialize ✓ pytest-mock ✓ lz4 ✓ poetry-core ✓ pymysql ✓ setuptools-scm ✓ jupyter-client ✓ flatbuffers ✓ griffelib ✓ langsmith ✓ kubernetes ✓ pytokens ✓ cython ✓ croniter ✓ types-pyyaml ✓ slack-sdk ✓ types-requests ✓ sqlglot ✓ tomli-w ✓ vcs-versioning ✓ jsonref ✓ py4j ✓ onnxruntime ✓ pycryptodome ✓ pyperclip ✓ termcolor ✓ beartype ✓ psycopg2 ✓ loguru ✓ uuid-utils ✓ cyclopts ✓ lark ✓ opentelemetry-instrumentation-fastapi ✓ semver ✓ xlrd ✓ text-unidecode ✓ cbor2 ✓ fastuuid ✓ python-slugify ✓ faker ✓ importlib-resources ✓ opentelemetry-instrumentation-asgi ✓ pymongo ✓ aiosqlite ✓ mistune ✓ scramp ✓ pypdfium2 ✓ mccabe ✓ pathable ✓ bleach ✓ jsonschema-path ✓ opentelemetry-instrumentation-requests ✓ opentelemetry-exporter-otlp ✓ deprecation ✓ typing-inspect ✓

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.