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

Top 120 - 240

proto-plus ✓ psycopg2-binary ✓ exceptiongroup ✓ pynacl ✓ isodate ✓ decorator ✓ networkx ✓ msgpack ✓ wcwidth ✓ coverage ✓ huggingface-hub ✓ hatchling ✓ azure-core ✓ cloudpickle ✓ flask ✓ scikit-learn ✓ distro ✓ msal ✓ openai ✓ python-multipart ✓ joblib ✓ ruamel-yaml ✓ bcrypt ✓ pexpect ✓ ptyprocess ✓ tabulate ✓ poetry-core ✓ gitpython ✓ async-timeout ✓ google-cloud-core ✓ dnspython ✓ pydantic-settings ✓ asn1crypto ✓ opentelemetry-instrumentation ✓ snowflake-connector-python ✓ opentelemetry-exporter-otlp-proto-http ✓ threadpoolctl ✓ redis ✓ opentelemetry-exporter-otlp-proto-common ✓ itsdangerous ✓ keyring ✓ matplotlib ✓ prompt-toolkit ✓ deprecated ✓ typer ✓ ruff ✓ fonttools ✓ smmap ✓ alembic ✓ gitdb ✓ paramiko ✓ opentelemetry-exporter-otlp-proto-grpc ✓ jiter ✓ blinker ✓ google-resumable-media ✓ google-crc32c ✓ zstandard ✓ tzlocal ✓ azure-identity ✓ google-genai ✓ annotated-doc ✓ jaraco-classes ✓ secretstorage ✓ chardet ✓ rapidfuzz ✓ jeepney ✓ kiwisolver ✓ build ✓ types-requests ✓ pytest-asyncio ✓ pyproject-hooks ✓ dill ✓ backoff ✓ fastjsonschema ✓ pytest-cov ✓ google-cloud-bigquery ✓ orjson ✓ kubernetes ✓ docker ✓ prometheus-client ✓ google-api-python-client ✓ msal-extensions ✓ cycler ✓ defusedxml ✓ nodeenv ✓ yandexcloud ✓ setuptools-scm ✓ jaraco-functools ✓ jaraco-context ✓ azure-storage-blob ✓ contourpy ✓ editables ✓ google-auth-oauthlib ✓ opentelemetry-instrumentation-requests ✓ uritemplate ✓ marshmallow ✓ httplib2 ✓ sqlparse ✓ transformers ✓ mako ✓ langsmith ✓ google-auth-httplib2 ✓ pre-commit ✓ tokenizers ✓ sympy ✓ identify ✓ tornado ✓ ipython ✓ cfgv ✓ babel ✓ xmltodict ✓ opentelemetry-util-http ✓ jsonpointer ✓ py4j ✓ typedload ✓ traitlets ✓ uv ✓ mpmath ✓ importlib-resources ✓ jedi ✓

Top 240 - 360

parso ✓ mypy ✓ hf-xet ✓ aiofiles ✓ watchfiles ✓ executing ✓ toml ✓ matplotlib-inline ✓ cython ✓ nest-asyncio ✓ gunicorn ✓ asttokens ✓ uvloop ✓ mcp ✓ ply ✓ langchain-core ✓ python-json-logger ✓ docstring-parser ✓ opentelemetry-exporter-otlp ✓ cachecontrol ✓ black ✓ sentry-sdk ✓ tiktoken ✓ stack-data ✓ pure-eval ✓ webencodings ✓ asgiref ✓ markdown ✓ watchdog ✓ dbt-core ✓ grpc-google-iam-v1 ✓ pkginfo ✓ email-validator ✓ ruamel-yaml-clib ✓ awswrangler ✓ httptools ✓ dulwich ✓ typing-inspect ✓ httpx-sse ✓ sse-starlette ✓ dbt-adapters ✓ aioitertools ✓ debugpy ✓ pymysql ✓ botocore-stubs ✓ termcolor ✓ durationpy ✓ pyzmq ✓ google-cloud-aiplatform ✓ types-awscrt ✓ jsonpatch ✓ databricks-sdk ✓ poetry ✓ boto3-stubs ✓ types-s3transfer ✓ multiprocess ✓ datasets ✓ execnet ✓ msrest ✓ isort ✓ pycryptodome ✓ dbt-common ✓ jsonpath-ng ✓ pytest-xdist ✓ torch ✓ h2 ✓ pymongo ✓ hyperframe ✓ gcsfs ✓ hpack ✓ notebook ✓ poetry-plugin-export ✓ installer ✓ cleo ✓ mccabe ✓ google-cloud-secret-manager ✓ crashtest ✓ requests-file ✓ arrow ✓ pytest-mock ✓ lz4 ✓ slack-sdk ✓ jupyter-core ✓ xxhash ✓ datadog ✓ rfc3339-validator ✓ deepdiff ✓ azure-common ✓ pysocks ✓ invoke ✓ dataclasses-json ✓ pendulum ✓ ipykernel ✓ jupyter-client ✓ smart-open ✓ mypy-boto3-s3 ✓ shapely ✓ comm ✓ tinycss2 ✓ py ✓ litellm ✓ scramp ✓ argcomplete ✓ pycodestyle ✓ wsproto ✓ future ✓ pygithub ✓ narwhals ✓ simplejson ✓ mistune ✓ xlsxwriter ✓ humanfriendly ✓ typer-slim ✓ loguru ✓ semver ✓ pbs-installer ✓ lark ✓ text-unidecode ✓ safetensors ✓ typeguard ✓

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.