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

Top 120 - 240

distro ✓ pydantic-ai-slim ✓ langchain ✓ rsa ✓ proto-plus ✓ distlib ✓ openpyxl ✓ opentelemetry-exporter-otlp-proto-http ✓ editables ✓ et-xmlfile ✓ sse-starlette ✓ google-genai ✓ mypy-extensions ✓ dnspython ✓ sglang ✓ wcwidth ✓ coverage ✓ grpcio-tools ✓ ptyprocess ✓ pexpect ✓ huggingface-hub ✓ redis ✓ docker ✓ werkzeug ✓ networkx ✓ msgpack ✓ psycopg2-binary ✓ python-discovery ✓ ruff ✓ pyopenssl ✓ google-cloud-storage ✓ docutils ✓ gitpython ✓ opentelemetry-exporter-otlp-proto-grpc ✓ decorator ✓ opentelemetry-exporter-otlp-proto-common ✓ opentelemetry-instrumentation ✓ httptools ✓ uvloop ✓ pynacl ✓ smmap ✓ keyring ✓ sortedcontainers ✓ docstring-parser ✓ fonttools ✓ httpx-sse ✓ jaraco-classes ✓ azure-core ✓ tabulate ✓ isodate ✓ azure-identity ✓ jeepney ✓ secretstorage ✓ jaraco-functools ✓ prompt-toolkit ✓ gitdb ✓ pytest-json-ctrf ✓ matplotlib ✓ scikit-learn ✓ async-timeout ✓ jaraco-context ✓ bcrypt ✓ flask ✓ itsdangerous ✓ hf-xet ✓ kubernetes ✓ multiprocess ✓ email-validator ✓ pytest-cov ✓ kiwisolver ✓ google-cloud-core ✓ joblib ✓ pytest-asyncio ✓ dill ✓ alembic ✓ msal ✓ defusedxml ✓ ruamel-yaml ✓ contourpy ✓ deprecated ✓ threadpoolctl ✓ pydantic-graph ✓ orjson ✓ snowflake-connector-python ✓ tiktoken ✓ google-cloud-aiplatform ✓ mako ✓ blinker ✓ tzlocal ✓ google-resumable-media ✓ ydb ✓ google-crc32c ✓ tokenizers ✓ databricks-sql-connector ✓ uv ✓ google-api-python-client ✓ chardet ✓ cycler ✓ rapidfuzz ✓ types-requests ✓ google-cloud-secret-manager ✓ weaviate-client ✓ google-cloud-batch ✓ opentelemetry-exporter-otlp ✓ prometheus-client ✓ pyproject-hooks ✓ google-auth-oauthlib ✓ uritemplate ✓ google-auth-httplib2 ✓ durationpy ✓ mypy ✓ ipython ✓ asn1crypto ✓ xxhash ✓ zstandard ✓ opentelemetry-instrumentation-requests ✓ nodeenv ✓ paramiko ✓ poetry-core ✓ traitlets ✓

Top 240 - 360

opentelemetry-util-http ✓ toml ✓ httplib2 ✓ build ✓ aiofiles ✓ jsonpointer ✓ google-cloud-bigquery ✓ google-analytics-admin ✓ sympy ✓ jedi ✓ parso ✓ fastjsonschema ✓ executing ✓ transformers ✓ backoff ✓ identify ✓ google-cloud-kms ✓ pre-commit ✓ google-cloud-compute ✓ h2 ✓ marshmallow ✓ authlib ✓ matplotlib-inline ✓ sqlparse ✓ hyperframe ✓ hpack ✓ msal-extensions ✓ cfgv ✓ azure-storage-blob ✓ mpmath ✓ gcsfs ✓ asttokens ✓ setuptools-scm ✓ anthropic ✓ babel ✓ gunicorn ✓ langchain-core ✓ cloudpickle ✓ pure-eval ✓ stack-data ✓ sentry-sdk ✓ databricks-sdk ✓ black ✓ tornado ✓ pytest-xdist ✓ webencodings ✓ asgiref ✓ datasets ✓ xmltodict ✓ google-cloud-dlp ✓ pandas-stubs ✓ nest-asyncio ✓ execnet ✓ cython ✓ python-json-logger ✓ grpc-google-iam-v1 ✓ google-cloud-speech ✓ dbt-core ✓ google-cloud-texttospeech ✓ pyee ✓ jsonpatch ✓ joserfc ✓ termcolor ✓ cachecontrol ✓ pyzmq ✓ py4j ✓ google-cloud-pubsub ✓ playwright ✓ watchdog ✓ markdown ✓ rich-toolkit ✓ importlib-resources ✓ pymongo ✓ vcs-versioning ✓ dbt-adapters ✓ debugpy ✓ llama-parse ✓ llama-cloud-services ✓ tree-sitter ✓ librt ✓ typing-inspect ✓ aioitertools ✓ google-cloud-tasks ✓ structlog ✓ cyclopts ✓ asyncpg ✓ tinycss2 ✓ google-cloud-monitoring ✓ google-cloud-bigtable ✓ jsonschema-path ✓ isort ✓ dulwich ✓ jupyter-core ✓ langsmith ✓ pytest-mock ✓ narwhals ✓ slack-sdk ✓ google-cloud-logging ✓ pkginfo ✓ pycryptodome ✓ pymysql ✓ mdit-py-plugins ✓ msrest ✓ google-cloud-vision ✓ torch ✓ sphinx ✓ jupyter-client ✓ grpcio-health-checking ✓ rich-rst ✓ snowflake-snowpark-python ✓ lz4 ✓ ruamel-yaml-clib ✓ flatbuffers ✓ psycopg ✓ semver ✓ pymupdf ✓ pyperclip ✓ pathable ✓ sqlalchemy-bigquery ✓ google-cloud-language ✓

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.