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

Top 120 - 240

watchfiles ✓ proto-plus ✓ rsa ✓ keyring ✓ distlib ✓ opentelemetry-instrumentation ✓ openpyxl ✓ et-xmlfile ✓ huggingface-hub ✓ google-genai ✓ jaraco-classes ✓ editables ✓ opentelemetry-exporter-otlp-proto-common ✓ jeepney ✓ secretstorage ✓ requests-toolbelt ✓ dnspython ✓ grpcio-tools ✓ mcp ✓ opentelemetry-exporter-otlp-proto-grpc ✓ sglang ✓ coverage ✓ jaraco-functools ✓ websocket-client ✓ jaraco-context ✓ wcwidth ✓ mypy-extensions ✓ gitpython ✓ google-cloud-storage ✓ python-discovery ✓ psycopg2-binary ✓ pyopenssl ✓ networkx ✓ werkzeug ✓ smmap ✓ ruff ✓ msgpack ✓ sse-starlette ✓ pytest-json-ctrf ✓ pynacl ✓ sortedcontainers ✓ redis ✓ docstring-parser ✓ decorator ✓ gitdb ✓ docutils ✓ fonttools ✓ azure-identity ✓ ptyprocess ✓ azure-core ✓ docker ✓ pexpect ✓ isodate ✓ tabulate ✓ multiprocess ✓ pytest-asyncio ✓ matplotlib ✓ prompt-toolkit ✓ httptools ✓ scikit-learn ✓ hf-xet ✓ google-cloud-core ✓ itsdangerous ✓ bcrypt ✓ email-validator ✓ flask ✓ uvloop ✓ kiwisolver ✓ msal ✓ pytest-cov ✓ joblib ✓ defusedxml ✓ httpx-sse ✓ dill ✓ orjson ✓ alembic ✓ contourpy ✓ ruamel-yaml ✓ tiktoken ✓ google-resumable-media ✓ tokenizers ✓ ydb ✓ snowflake-connector-python ✓ threadpoolctl ✓ google-crc32c ✓ kubernetes ✓ deprecated ✓ chardet ✓ opentelemetry-instrumentation-requests ✓ pydantic-graph ✓ tzlocal ✓ uv ✓ blinker ✓ mako ✓ google-api-python-client ✓ databricks-sql-connector ✓ opentelemetry-exporter-otlp ✓ opentelemetry-util-http ✓ langchain-core ✓ zstandard ✓ async-timeout ✓ cycler ✓ google-cloud-bigquery ✓ rapidfuzz ✓ rich-toolkit ✓ google-cloud-secret-manager ✓ uritemplate ✓ nodeenv ✓ google-cloud-aiplatform ✓ google-auth-httplib2 ✓ asn1crypto ✓ prometheus-client ✓ toml ✓ google-cloud-batch ✓ mypy ✓ weaviate-client ✓ pyproject-hooks ✓ google-auth-oauthlib ✓ jsonpointer ✓ httplib2 ✓

Top 240 - 360

poetry-core ✓ xxhash ✓ paramiko ✓ ipython ✓ identify ✓ pre-commit ✓ transformers ✓ cfgv ✓ traitlets ✓ sympy ✓ build ✓ h2 ✓ google-cloud-kms ✓ hyperframe ✓ aiofiles ✓ hpack ✓ google-analytics-admin ✓ fastjsonschema ✓ google-cloud-compute ✓ backoff ✓ msal-extensions ✓ types-requests ✓ sqlparse ✓ azure-storage-blob ✓ authlib ✓ gcsfs ✓ joserfc ✓ jedi ✓ executing ✓ parso ✓ mpmath ✓ anthropic ✓ marshmallow ✓ cloudpickle ✓ sentry-sdk ✓ black ✓ babel ✓ gunicorn ✓ matplotlib-inline ✓ datasets ✓ durationpy ✓ asttokens ✓ jsonpatch ✓ grpc-google-iam-v1 ✓ setuptools-scm ✓ cython ✓ pytest-xdist ✓ webencodings ✓ asgiref ✓ databricks-sdk ✓ google-cloud-dlp ✓ xmltodict ✓ pandas-stubs ✓ typedload ✓ pure-eval ✓ stack-data ✓ execnet ✓ tornado ✓ google-cloud-texttospeech ✓ tree-sitter ✓ google-cloud-speech ✓ python-json-logger ✓ dbt-adapters ✓ google-cloud-pubsub ✓ py4j ✓ nest-asyncio ✓ termcolor ✓ pymongo ✓ cachecontrol ✓ watchdog ✓ librt ✓ cyclopts ✓ importlib-resources ✓ dbt-core ✓ markdown ✓ opentelemetry-instrumentation-threading ✓ vcs-versioning ✓ aioitertools ✓ isort ✓ pyperclip ✓ structlog ✓ pyzmq ✓ llama-parse ✓ asyncpg ✓ llama-cloud-services ✓ debugpy ✓ google-cloud-tasks ✓ jsonschema-path ✓ tinycss2 ✓ typing-inspect ✓ google-cloud-monitoring ✓ mdit-py-plugins ✓ pytest-mock ✓ dulwich ✓ slack-sdk ✓ grpcio-health-checking ✓ snowflake-snowpark-python ✓ pycryptodome ✓ lz4 ✓ msrest ✓ langsmith ✓ pymysql ✓ google-cloud-bigtable ✓ flatbuffers ✓ sphinx ✓ google-cloud-logging ✓ pypdf ✓ pathable ✓ pkginfo ✓ awswrangler ✓ linkify-it-py ✓ pytokens ✓ xlsxwriter ✓ torch ✓ keyrings-google-artifactregistry-auth ✓ google-cloud-vision ✓ rich-rst ✓ jsonref ✓ ruamel-yaml-clib ✓ narwhals ✓

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.