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

Top 120 - 240

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

Top 240 - 360

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

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.