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

Top 120 - 240

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

Top 240 - 360

narwhals ✓ azure-identity ✓ httplib2 ✓ traitlets ✓ black ✓ librt ✓ psycopg-binary ✓ aiofiles ✓ sqlparse ✓ asgiref ✓ msal-extensions ✓ fastjsonschema ✓ jsonpatch ✓ pypdf ✓ paramiko ✓ snowflake-connector-python ✓ babel ✓ transformers ✓ opentelemetry-exporter-otlp-proto-grpc ✓ typedload ✓ authlib ✓ gunicorn ✓ azure-storage-blob ✓ opentelemetry-instrumentation-requests ✓ executing ✓ asyncpg ✓ markdown ✓ ipython ✓ awscli ✓ google-cloud-aiplatform ✓ awswrangler ✓ grpc-google-iam-v1 ✓ xmltodict ✓ structlog ✓ setuptools-scm ✓ tornado ✓ parso ✓ jedi ✓ databricks-sdk ✓ datasets ✓ joserfc ✓ asttokens ✓ marshmallow ✓ tinycss2 ✓ matplotlib-inline ✓ build ✓ pyproject-hooks ✓ cbor2 ✓ litellm ✓ vcs-versioning ✓ playwright ✓ poetry-core ✓ aioitertools ✓ python-json-logger ✓ pyzmq ✓ isort ✓ stack-data ✓ pure-eval ✓ python-docx ✓ cachecontrol ✓ langsmith ✓ xlsxwriter ✓ pyee ✓ watchdog ✓ cython ✓ pytest-mock ✓ pymupdf ✓ types-toml ✓ nbformat ✓ pytest-timeout ✓ nest-asyncio ✓ pymysql ✓ types-requests ✓ grpclib ✓ brotli ✓ lz4 ✓ debugpy ✓ slack-sdk ✓ fastuuid ✓ kubernetes ✓ reportlab ✓ croniter ✓ jupyter-core ✓ types-certifi ✓ safetensors ✓ py4j ✓ uuid-utils ✓ termcolor ✓ sqlglot ✓ flatbuffers ✓ modal ✓ synchronicity ✓ jupyter-client ✓ ast-serialize ✓ types-pyyaml ✓ importlib-resources ✓ typing-inspect ✓ pytokens ✓ pycryptodome ✓ loguru ✓ text-unidecode ✓ mccabe ✓ graphql-core ✓ opentelemetry-instrumentation-fastapi ✓ psycopg2 ✓ tomli-w ✓ xlrd ✓ scramp ✓ wsproto ✓ torch ✓ deprecation ✓ griffelib ✓ requests-file ✓ ruamel-yaml-clib ✓ pymongo ✓ lark ✓ mistune ✓ mdit-py-plugins ✓ linkify-it-py ✓ python-slugify ✓

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.