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

Top 120 - 240

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

Top 240 - 360

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

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.