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

Top 120 - 240

mcp ✓ typer ✓ opentelemetry-exporter-otlp-proto-common ✓ ruff ✓ oauthlib ✓ exceptiongroup ✓ sse-starlette ✓ coverage ✓ mypy-extensions ✓ dnspython ✓ cachetools ✓ wcwidth ✓ more-itertools ✓ distlib ✓ hf-xet ✓ pytest-asyncio ✓ google-genai ✓ python-discovery ✓ sortedcontainers ✓ requests-toolbelt ✓ uvloop ✓ truststore ✓ opentelemetry-exporter-otlp-proto-grpc ✓ docstring-parser ✓ httptools ✓ httpx2 ✓ pyopenssl ✓ rsa ✓ psycopg2-binary ✓ tiktoken ✓ httpcore2 ✓ grpcio-tools ✓ networkx ✓ werkzeug ✓ tokenizers ✓ msgpack ✓ redis ✓ langchain ✓ scikit-learn ✓ google-cloud-storage ✓ defusedxml ✓ multiprocess ✓ fonttools ✓ types-requests ✓ httpx-sse ✓ isodate ✓ websocket-client ✓ azure-core ✓ pytest-cov ✓ prompt-toolkit ✓ opentelemetry-instrumentation-requests ✓ gitpython ✓ orjson ✓ pynacl ✓ alembic ✓ joblib ✓ threadpoolctl ✓ azure-identity ✓ email-validator ✓ itsdangerous ✓ smmap ✓ mako ✓ opentelemetry-util-http ✓ tabulate ✓ matplotlib ✓ anthropic ✓ tzlocal ✓ google-cloud-core ✓ gitdb ✓ keyring ✓ bcrypt ✓ chardet ✓ ruamel-yaml ✓ msal ✓ transformers ✓ pytest-json-ctrf ✓ jaraco-classes ✓ uv ✓ dill ✓ flask ✓ jeepney ✓ docutils ✓ mypy ✓ nodeenv ✓ secretstorage ✓ kiwisolver ✓ zstandard ✓ jaraco-functools ✓ opentelemetry-instrumentation-threading ✓ jaraco-context ✓ contourpy ✓ h2 ✓ google-crc32c ✓ google-resumable-media ✓ hpack ✓ blinker ✓ decorator ✓ google-api-python-client ✓ cycler ✓ hyperframe ✓ docker ✓ google-cloud-bigquery ✓ uritemplate ✓ pre-commit ✓ identify ✓ toml ✓ langchain-core ✓ cfgv ✓ google-auth-httplib2 ✓ sympy ✓ xxhash ✓ ptyprocess ✓ mpmath ✓ prometheus-client ✓ backoff ✓ google-auth-oauthlib ✓ snowflake-connector-python ✓ black ✓ pexpect ✓ deprecated ✓

Top 240 - 360

ydb ✓ opentelemetry-exporter-otlp ✓ httplib2 ✓ sentry-sdk ✓ asn1crypto ✓ async-timeout ✓ rapidfuzz ✓ datasets ✓ jsonpointer ✓ narwhals ✓ msal-extensions ✓ databricks-sdk ✓ pypdf ✓ google-cloud-secret-manager ✓ aiofiles ✓ pytest-xdist ✓ cloudpickle ✓ ipython ✓ sqlparse ✓ sglang ✓ execnet ✓ paramiko ✓ awscli ✓ pydantic-ai-slim ✓ librt ✓ fastjsonschema ✓ traitlets ✓ webencodings ✓ asgiref ✓ psycopg ✓ grpc-google-iam-v1 ✓ authlib ✓ gunicorn ✓ pyproject-hooks ✓ google-cloud-batch ✓ azure-storage-blob ✓ gcsfs ✓ isort ✓ psycopg-binary ✓ joserfc ✓ poetry-core ✓ jsonpatch ✓ setuptools-scm ✓ babel ✓ executing ✓ build ✓ vcs-versioning ✓ asttokens ✓ jedi ✓ parso ✓ markdown ✓ google-cloud-aiplatform ✓ langsmith ✓ google-cloud-kms ✓ pydantic-graph ✓ google-analytics-admin ✓ cython ✓ asyncpg ✓ cachecontrol ✓ marshmallow ✓ xmltodict ✓ google-cloud-compute ✓ matplotlib-inline ✓ tornado ✓ python-docx ✓ python-json-logger ✓ stack-data ✓ pure-eval ✓ watchdog ✓ structlog ✓ safetensors ✓ google-cloud-dlp ✓ tinycss2 ✓ playwright ✓ google-cloud-speech ✓ google-cloud-pubsub ✓ fastuuid ✓ google-cloud-texttospeech ✓ lz4 ✓ kubernetes ✓ pymupdf ✓ xlsxwriter ✓ pytokens ✓ pyzmq ✓ pyee ✓ termcolor ✓ py4j ✓ pymysql ✓ aioitertools ✓ google-cloud-logging ✓ dbt-adapters ✓ nest-asyncio ✓ pymongo ✓ wsproto ✓ flatbuffers ✓ pytest-mock ✓ reportlab ✓ brotli ✓ pytest-timeout ✓ debugpy ✓ croniter ✓ loguru ✓ slack-sdk ✓ deprecation ✓ opentelemetry-instrumentation-fastapi ✓ sqlglot ✓ pycryptodome ✓ tomli-w ✓ torch ✓ jupyter-core ✓ cbor2 ✓ google-cloud-tasks ✓ awswrangler ✓ importlib-resources ✓ google-cloud-monitoring ✓ opentelemetry-exporter-prometheus ✓ weaviate-client ✓ xlrd ✓ llama-cloud-services ✓ ast-serialize ✓

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.