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

Top 120 - 240

shellingham ✓ proto-plus ✓ snowflake-connector-python ✓ google-cloud-storage ✓ mypy-extensions ✓ opentelemetry-exporter-otlp-proto-grpc ✓ opentelemetry-api ✓ websocket-client ✓ psycopg2-binary ✓ tenacity ✓ decorator ✓ opentelemetry-semantic-conventions ✓ coverage ✓ opentelemetry-exporter-otlp-proto-common ✓ scikit-learn ✓ sortedcontainers ✓ azure-core ✓ opentelemetry-exporter-otlp ✓ azure-identity ✓ msal ✓ wcwidth ✓ networkx ✓ python-multipart ✓ bcrypt ✓ async-timeout ✓ gitpython ✓ openai ✓ dnspython ✓ websockets ✓ huggingface-hub ✓ google-cloud-core ✓ threadpoolctl ✓ asn1crypto ✓ deprecated ✓ smmap ✓ hatchling ✓ gitdb ✓ joblib ✓ zstandard ✓ annotated-doc ✓ keyring ✓ matplotlib ✓ tabulate ✓ cloudpickle ✓ distro ✓ itsdangerous ✓ poetry-core ✓ fonttools ✓ paramiko ✓ prompt-toolkit ✓ ruamel-yaml ✓ secretstorage ✓ langsmith ✓ google-api-python-client ✓ jaraco-classes ✓ chardet ✓ redis ✓ google-resumable-media ✓ fastjsonschema ✓ jeepney ✓ google-crc32c ✓ transformers ✓ kiwisolver ✓ pyzmq ✓ rapidfuzz ✓ build ✓ dill ✓ google-auth-oauthlib ✓ backoff ✓ setuptools-scm ✓ blinker ✓ pyproject-hooks ✓ alembic ✓ google-cloud-bigquery ✓ defusedxml ✓ jiter ✓ orjson ✓ pydantic-settings ✓ msal-extensions ✓ cycler ✓ jaraco-functools ✓ uritemplate ✓ google-auth-httplib2 ✓ typer ✓ google-cloud-secret-manager ✓ pytest-cov ✓ ruff ✓ httplib2 ✓ tzlocal ✓ contourpy ✓ google-cloud-batch ✓ jaraco-context ✓ marshmallow ✓ grpcio-health-checking ✓ xmltodict ✓ ruamel-yaml-clib ✓ langchain ✓ py4j ✓ sqlparse ✓ ipython ✓ types-requests ✓ prometheus-client ✓ importlib-resources ✓ docker ✓ azure-storage-blob ✓ google-analytics-admin ✓ aliyun-python-sdk-core ✓ tokenizers ✓ black ✓ babel ✓ mako ✓ typedload ✓ traitlets ✓ jsonpointer ✓ parso ✓ jedi ✓ cython ✓ tornado ✓ email-validator ✓ pymupdf ✓

Top 240 - 360

matplotlib-inline ✓ uv ✓ nest-asyncio ✓ kubernetes ✓ executing ✓ sympy ✓ awswrangler ✓ aiofiles ✓ editables ✓ pytest-asyncio ✓ toml ✓ snowflake-sqlalchemy ✓ sentry-sdk ✓ mypy ✓ cachecontrol ✓ opentelemetry-instrumentation ✓ asttokens ✓ langchain-core ✓ webencodings ✓ markdown ✓ sphinx ✓ grpc-google-iam-v1 ✓ hf-xet ✓ pkginfo ✓ mpmath ✓ stack-data ✓ pure-eval ✓ ply ✓ gunicorn ✓ dbt-common ✓ argcomplete ✓ termcolor ✓ typing-inspect ✓ pymysql ✓ nodeenv ✓ pytest-xdist ✓ asgiref ✓ uvloop ✓ torch ✓ execnet ✓ pymongo ✓ watchfiles ✓ dbt-core ✓ python-json-logger ✓ dulwich ✓ isort ✓ docstring-parser ✓ poetry ✓ jsonpatch ✓ shapely ✓ mccabe ✓ debugpy ✓ dbt-adapters ✓ tiktoken ✓ aioitertools ✓ pre-commit ✓ google-cloud-vision ✓ watchdog ✓ opentelemetry-util-http ✓ identify ✓ google-cloud-kms ✓ datadog ✓ httptools ✓ msrest ✓ pycodestyle ✓ crashtest ✓ installer ✓ databricks-sdk ✓ cleo ✓ google-cloud-speech ✓ google-cloud-monitoring ✓ pendulum ✓ future ✓ google-cloud-compute ✓ google-cloud-tasks ✓ google-cloud-dlp ✓ pycryptodome ✓ cfgv ✓ slack-sdk ✓ lz4 ✓ google-cloud-workflows ✓ multiprocess ✓ google-cloud-language ✓ databricks-sql-connector ✓ notebook ✓ dataclasses-json ✓ rfc3339-validator ✓ cattrs ✓ jsonpath-ng ✓ google-cloud-dataform ✓ jupyter-core ✓ backports-tarfile ✓ bashlex ✓ google-cloud-videointelligence ✓ ipykernel ✓ azure-common ✓ pygithub ✓ arrow ✓ semver ✓ google-cloud-os-login ✓ tinycss2 ✓ requests-file ✓ smart-open ✓ pytest-mock ✓ swe-rex ✓ opentelemetry-instrumentation-requests ✓ httpx-sse ✓ mcp ✓ deepdiff ✓ google-cloud-redis ✓ jupyter-client ✓ google-cloud-aiplatform ✓ py ✓ google-cloud-logging ✓ comm ✓ google-cloud-memcache ✓ mistune ✓ zope-interface ✓ scramp ✓ opensearch-py ✓

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.