Python 3.5 Readiness

Python 3.5 support graph for the 360 most popular Python packages!

What is this about?

Python 3.5 is a version of Python that is past its End Of Life. This site shows Python 3.5 support for the 360 most downloaded packages on PyPI:

  1. 344 green packages (95.6%) have dropped support for Python 3.5;
  2. 16 uncolored packages (4.4%) still support Python 3.5.

Package 'x' is uncolored. What can I do?

There can be many reasons a package is still supporting Python 3.5:

  • 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.5 support.

How do you identify Python 3.5 support?

We look for the Programming Language :: Python :: 3.5 classifier on the latest release of the project, via PyPI's JSON API.

Top 120

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

Top 120 - 240

hatchling ✓ pydantic-settings ✓ google-genai ✓ werkzeug ✓ distro ✓ networkx ✓ google-cloud-storage ✓ opentelemetry-proto ✓ pyopenssl ✓ dnspython ✓ mypy-extensions ✓ huggingface-hub ✓ coverage ✓ psycopg2-binary ✓ sglang ✓ msgpack ✓ smmap ✓ pynacl ✓ opentelemetry-exporter-otlp-proto-http ✓ fonttools ✓ jiter ✓ decorator ✓ watchfiles ✓ wcwidth ✓ mcp ✓ pexpect ✓ ptyprocess ✓ sortedcontainers ✗ gitpython ✓ tabulate ✓ matplotlib ✓ flask ✓ scikit-learn ✓ textual ✓ python-discovery ✓ isodate ✓ docker ✓ kiwisolver ✓ keyring ✓ opentelemetry-exporter-otlp-proto-grpc ✓ opentelemetry-exporter-otlp-proto-common ✓ joblib ✓ contourpy ✓ gitdb ✓ redis ✓ azure-identity ✓ sse-starlette ✓ bcrypt ✓ google-cloud-core ✓ multiprocess ✓ jaraco-classes ✓ async-timeout ✓ azure-core ✓ itsdangerous ✓ litellm ✓ snowflake-connector-python ✓ secretstorage ✓ threadpoolctl ✓ jeepney ✓ opentelemetry-instrumentation ✓ google-cloud-aiplatform ✓ ruff ✓ prompt-toolkit ✓ msal ✓ alembic ✓ jaraco-context ✓ docstring-parser ✓ chardet ✓ kubernetes ✓ jaraco-functools ✓ google-resumable-media ✓ editables ✓ cycler ✓ hf-xet ✓ tzlocal ✓ orjson ✓ blinker ✓ dill ✓ deprecated ✗ google-crc32c ✓ pytest-cov ✓ zstandard ✓ email-validator ✓ types-requests ✓ defusedxml ✗ ruamel-yaml ✓ google-api-python-client ✓ uv ✓ asn1crypto ✗ poetry-core ✓ pytest-asyncio ✓ ipython ✓ google-auth-oauthlib ✓ sympy ✓ tokenizers ✓ mako ✓ rapidfuzz ✓ prometheus-client ✓ google-auth-httplib2 ✓ backoff ✓ setuptools-scm ✓ mpmath ✓ paramiko ✓ tiktoken ✓ google-cloud-bigquery ✓ uritemplate ✓ httpx-sse ✓ nodeenv ✓ toml ✗ opentelemetry-exporter-otlp ✓ uvloop ✓ cloudpickle ✓ httplib2 ✓ pyproject-hooks ✓ marshmallow ✓ pydantic-ai-slim ✓ transformers ✓ databricks-sdk ✓ durationpy ✓ build ✓

Top 240 - 360

identify ✓ sqlparse ✓ tree-sitter ✓ google-cloud-secret-manager ✓ pre-commit ✓ traitlets ✓ parso ✓ cfgv ✓ google-cloud-batch ✓ msal-extensions ✓ opentelemetry-instrumentation-requests ✓ fastjsonschema ✗ httptools ✓ executing ✓ jedi ✓ xxhash ✓ opentelemetry-util-http ✓ mypy ✓ azure-storage-blob ✓ gunicorn ✓ jsonpointer ✓ google-analytics-admin ✓ asttokens ✓ grpc-google-iam-v1 ✓ matplotlib-inline ✓ h2 ✓ babel ✓ aiofiles ✓ hyperframe ✓ hpack ✓ cython ✓ pure-eval ✓ stack-data ✗ tornado ✓ py4j ✓ langchain-core ✓ termcolor ✓ black ✓ pytest-xdist ✓ weaviate-client ✓ authlib ✓ xmltodict ✓ vcs-versioning ✓ asgiref ✓ importlib-resources ✓ execnet ✓ markdown ✓ python-json-logger ✓ sentry-sdk ✓ dbt-core ✓ datasets ✓ webencodings ✗ nest-asyncio ✗ anthropic ✓ pandas-stubs ✓ cachecontrol ✓ typing-inspect ✗ pydantic-graph ✓ grpcio-health-checking ✓ pytest-json-ctrf ✓ pymongo ✓ jsonpatch ✓ tree-sitter-languages ✓ dbt-adapters ✓ pymysql ✓ awswrangler ✓ jsonschema-path ✓ aioitertools ✓ gcsfs ✓ databricks-sql-connector ✓ torch ✓ debugpy ✓ watchdog ✓ lz4 ✓ google-cloud-compute ✓ pycryptodome ✓ jsonpath-ng ✓ typedload ✓ pyzmq ✓ google-cloud-kms ✓ google-cloud-monitoring ✓ dataclasses-json ✓ rich-toolkit ✓ slack-sdk ✓ pytest-mock ✓ pyperclip ✗ google-cloud-speech ✓ msrest ✓ flatbuffers ✓ pymupdf ✓ pathable ✓ dbt-common ✓ dulwich ✓ isort ✓ pkginfo ✓ langsmith ✓ google-cloud-dlp ✓ deepdiff ✓ pygithub ✓ narwhals ✓ google-cloud-vision ✓ google-cloud-tasks ✓ smart-open ✓ sphinx ✓ google-cloud-bigtable ✓ pendulum ✓ notebook ✓ tinycss2 ✓ loguru ✗ xlsxwriter ✓ google-cloud-language ✓ google-cloud-videointelligence ✓ cattrs ✓ google-cloud-workflows ✓ invoke ✓ mccabe ✓ sqlalchemy-bigquery ✓ safetensors ✓ jsonref ✓ google-cloud-redis ✓

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.