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

Top 120 - 240

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

Top 240 - 360

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

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.