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

Top 120 - 240

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

Top 240 - 360

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

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.