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 ✓ urllib3 ✓ botocore ✓ aiobotocore ✓ typing-extensions ✓ requests ✓ certifi ✓ setuptools ✓ idna ✓ packaging ✓ charset-normalizer ✓ grpcio-status ✓ python-dateutil ✓ numpy ✓ six ✓ s3transfer ✓ s3fs ✓ fsspec ✓ cryptography ✓ pyyaml ✓ pydantic ✓ cffi ✓ pandas ✓ protobuf ✓ pluggy ✓ pygments ✓ pycparser ✓ click ✓ pydantic-core ✓ attrs ✓ pytest ✓ importlib-metadata ✓ rsa ✓ pip ✓ platformdirs ✓ h11 ✓ markupsafe ✓ anyio ✓ iniconfig ✓ jmespath ✓ pytz ✗ pyasn1 ✓ cachetools ✓ annotated-types ✓ filelock ✓ jinja2 ✓ google-auth ✓ tzdata ✓ awscli ✓ zipp ✓ wheel ✓ pyasn1-modules ✓ pyjwt ✓ typing-inspection ✓ opentelemetry-proto ✓ httpx ✓ google-api-core ✓ opentelemetry-exporter-otlp-proto-grpc ✓ httpcore ✓ yandexcloud ✓ aiohttp ✓ google-genai ✓ scipy ✓ requests-oauthlib ✓ virtualenv ✓ yarl ✓ jsonschema ✓ grpcio-tools ✓ multidict ✓ python-dotenv ✓ colorama ✓ pyarrow ✓ googleapis-common-protos ✓ rich ✓ tqdm ✓ sqlalchemy ✓ frozenlist ✓ wrapt ✓ tomli ✓ greenlet ✓ opentelemetry-sdk ✓ markdown-it-py ✓ aiosignal ✓ opentelemetry-exporter-otlp-proto-http ✓ propcache ✓ psutil ✓ pillow ✓ oauthlib ✓ mdurl ✓ rpds-py ✓ opentelemetry-exporter-otlp ✓ grpcio ✓ referencing ✓ pyparsing ✓ jsonschema-specifications ✓ pathspec ✓ et-xmlfile ✓ openpyxl ✓ starlette ✓ uvicorn ✓ aiohappyeyeballs ✓ trove-classifiers ✓ soupsieve ✓ beautifulsoup4 ✓ distlib ✓ fastapi ✓ opentelemetry-exporter-otlp-proto-common ✓ lxml ✓ pyopenssl ✓ tomlkit ✓ huggingface-hub ✓ tenacity ✓ websocket-client ✓ exceptiongroup ✓ docutils ✓ requests-toolbelt ✓ sniffio ✓ proto-plus ✓ flask ✓ google-cloud-storage ✓

Top 120 - 240

isodate ✓ regex ✓ sortedcontainers ✓ pynacl ✓ psycopg2-binary ✓ opentelemetry-semantic-conventions ✓ scikit-learn ✓ opentelemetry-api ✓ cloudpickle ✓ werkzeug ✓ shellingham ✓ more-itertools ✓ networkx ✓ pexpect ✓ ptyprocess ✓ azure-core ✓ decorator ✓ hatchling ✓ azure-identity ✓ msgpack ✓ msal ✓ mypy-extensions ✓ snowflake-connector-python ✓ threadpoolctl ✓ joblib ✓ python-multipart ✓ websockets ✓ async-timeout ✓ asn1crypto ✓ bcrypt ✓ pyzmq ✓ coverage ✓ textual ✓ gitpython ✓ dnspython ✓ wcwidth ✓ openai ✓ google-cloud-core ✓ distro ✓ tabulate ✓ smmap ✓ annotated-doc ✓ gitdb ✓ redis ✓ ruamel-yaml ✓ paramiko ✓ matplotlib ✓ deprecated ✓ google-resumable-media ✓ langsmith ✓ google-cloud-bigquery ✓ google-crc32c ✓ google-api-python-client ✓ fonttools ✓ google-auth-oauthlib ✓ keyring ✓ itsdangerous ✓ chardet ✓ alembic ✓ poetry-core ✓ kubernetes ✓ tzlocal ✓ prompt-toolkit ✓ dill ✓ google-cloud-batch ✓ pydantic-settings ✓ jiter ✓ kiwisolver ✓ transformers ✓ aliyun-python-sdk-core ✓ google-auth-httplib2 ✓ backoff ✓ setuptools-scm ✓ blinker ✓ langchain ✓ typer ✓ google-cloud-secret-manager ✓ secretstorage ✓ msal-extensions ✓ uritemplate ✓ pyproject-hooks ✓ jaraco-classes ✓ google-analytics-admin ✓ httplib2 ✓ azure-storage-blob ✓ cycler ✓ pytest-asyncio ✓ py4j ✓ zstandard ✓ jeepney ✓ opentelemetry-exporter-prometheus ✓ grpcio-health-checking ✓ ruff ✓ fastjsonschema ✓ ruamel-yaml-clib ✓ sympy ✓ defusedxml ✓ orjson ✓ rapidfuzz ✓ opentelemetry-instrumentation ✓ marshmallow ✓ nodeenv ✓ prometheus-client ✓ contourpy ✓ build ✓ tokenizers ✓ jaraco-functools ✓ mpmath ✓ pytest-cov ✓ sqlparse ✓ cython ✓ importlib-resources ✓ docker ✓ xmltodict ✓ types-requests ✓ editables ✓ jaraco-context ✓ ipython ✓ pre-commit ✓ hf-xet ✓

Top 240 - 360

tornado ✓ mako ✓ uv ✓ cfgv ✓ identify ✓ awswrangler ✓ jsonpointer ✓ pandas-stubs ✓ aiofiles ✓ traitlets ✓ email-validator ✓ toml ✓ jedi ✓ babel ✓ parso ✓ typedload ✓ nest-asyncio ✓ matplotlib-inline ✓ pymupdf ✓ black ✓ executing ✓ grpc-google-iam-v1 ✓ durationpy ✓ asttokens ✓ ply ✓ dbt-core ✓ tiktoken ✓ sentry-sdk ✓ argcomplete ✓ langchain-core ✓ webencodings ✓ pymongo ✓ sphinx ✓ mypy ✓ litellm ✓ gym-notices ✓ dbt-common ✓ markdown ✓ termcolor ✓ snowflake-sqlalchemy ✓ stack-data ✓ pure-eval ✓ docstring-parser ✓ opentelemetry-util-http ✓ pymysql ✓ asgiref ✓ google-cloud-vision ✓ aioitertools ✓ watchfiles ✓ google-cloud-monitoring ✓ dbt-adapters ✓ google-cloud-dlp ✓ google-cloud-tasks ✓ google-cloud-speech ✓ torch ✓ python-json-logger ✓ msrest ✓ gunicorn ✓ databricks-sdk ✓ uvloop ✓ google-cloud-compute ✓ typing-inspect ✓ google-cloud-language ✓ google-cloud-workflows ✓ jsonpatch ✓ opentelemetry-instrumentation-requests ✓ shapely ✓ cachecontrol ✓ pytest-xdist ✓ google-cloud-dataform ✓ google-cloud-videointelligence ✓ pendulum ✓ jsonpath-ng ✓ mcp ✓ execnet ✓ azure-common ✓ google-cloud-os-login ✓ google-cloud-bigtable ✓ pkginfo ✓ pycryptodome ✓ debugpy ✓ google-cloud-redis ✓ watchdog ✓ datadog ✓ multiprocess ✓ isort ✓ httptools ✓ notebook ✓ scramp ✓ google-cloud-memcache ✓ future ✓ lz4 ✓ mccabe ✓ slack-sdk ✓ h2 ✓ hyperframe ✓ hpack ✓ requests-file ✓ jupyter-core ✓ wsproto ✓ pycodestyle ✓ ray ✓ cattrs ✓ google-cloud-logging ✓ httpx-sse ✓ google-cloud-kms ✓ dataclasses-json ✓ opensearch-py ✓ datasets ✓ smart-open ✓ google-cloud-aiplatform ✓ ipykernel ✓ jupyter-client ✓ tree-sitter ✓ pygithub ✓ pysocks ✓ tinycss2 ✓ deepdiff ✓ backports-tarfile ✓ selenium ✓

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.