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. 342 green packages (95.0%) have dropped support for Python 3.5;
  2. 18 uncolored packages (5.0%) 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 ✓ setuptools ✓ certifi ✓ typing-extensions ✓ botocore ✓ idna ✓ charset-normalizer ✓ cryptography ✓ aiobotocore ✓ python-dateutil ✗ six ✓ numpy ✓ cffi ✓ grpcio-status ✓ pyyaml ✓ pygments ✓ pydantic ✓ pycparser ✓ s3transfer ✓ click ✓ pluggy ✓ attrs ✓ anyio ✓ pydantic-core ✓ protobuf ✓ fsspec ✓ pandas ✓ h11 ✓ annotated-types ✓ pytest ✓ s3fs ✓ markupsafe ✓ iniconfig ✓ platformdirs ✓ httpx ✓ typing-inspection ✓ httpcore ✓ pyjwt ✓ jmespath ✓ jinja2 ✓ pip ✓ importlib-metadata ✓ filelock ✓ python-dotenv ✓ wheel ✓ zipp ✓ pytz ✗ pathspec ✓ aiohttp ✓ rich ✓ pyasn1 ✓ jsonschema ✓ markdown-it-py ✓ google-auth ✓ googleapis-common-protos ✓ yarl ✓ google-api-core ✓ multidict ✓ mdurl ✓ tqdm ✓ starlette ✓ virtualenv ✓ uvicorn ✓ rpds-py ✓ tzdata ✓ referencing ✓ pillow ✓ scipy ✓ frozenlist ✓ propcache ✓ jsonschema-specifications ✓ aiosignal ✓ tomli ✓ pyasn1-modules ✓ colorama ✓ grpcio ✓ requests-oauthlib ✗ wrapt ✓ greenlet ✓ fastapi ✓ awscli ✓ grpcio-tools ✓ opentelemetry-api ✓ aiohappyeyeballs ✓ pyarrow ✓ sqlalchemy ✓ pyparsing ✓ trove-classifiers ✓ opentelemetry-semantic-conventions ✓ annotated-doc ✓ tenacity ✓ oauthlib ✓ opentelemetry-sdk ✓ psutil ✓ shellingham ✓ rsa ✓ sniffio ✓ cachetools ✓ regex ✓ beautifulsoup4 ✓ more-itertools ✓ exceptiongroup ✓ soupsieve ✓ websockets ✓ tomlkit ✓ hatchling ✓ docutils ✓ lxml ✓ distlib ✓ openpyxl ✓ et-xmlfile ✓ typer ✓ proto-plus ✓ requests-toolbelt ✗ networkx ✓ python-multipart ✓ pydantic-settings ✓

Top 120 - 240

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

Top 240 - 360

httptools ✓ databricks-sdk ✓ babel ✓ opentelemetry-instrumentation-requests ✓ gunicorn ✓ tornado ✓ opentelemetry-util-http ✓ sentry-sdk ✓ authlib ✓ parso ✓ azure-storage-blob ✓ google-cloud-secret-manager ✓ identify ✓ pre-commit ✓ vcs-versioning ✓ traitlets ✓ aiofiles ✓ cython ✓ executing ✓ grpc-google-iam-v1 ✓ jedi ✓ cfgv ✓ black ✓ langchain-core ✓ xmltodict ✓ pydantic-ai-slim ✓ asttokens ✓ google-cloud-batch ✓ py4j ✓ asgiref ✓ matplotlib-inline ✓ importlib-resources ✓ durationpy ✓ xxhash ✓ google-analytics-admin ✓ python-json-logger ✓ litellm ✓ pytest-xdist ✓ h2 ✓ cachecontrol ✓ pure-eval ✓ webencodings ✗ stack-data ✗ typing-inspect ✗ hpack ✓ hyperframe ✓ markdown ✓ execnet ✓ nest-asyncio ✗ dbt-core ✓ termcolor ✓ tree-sitter ✓ jsonpatch ✓ pymongo ✓ jsonschema-path ✓ anthropic ✓ grpcio-health-checking ✓ dbt-adapters ✓ watchdog ✓ dulwich ✓ dataclasses-json ✓ pandas-stubs ✓ pydantic-graph ✓ debugpy ✓ pkginfo ✓ pymysql ✓ datasets ✓ awswrangler ✓ pathable ✓ lz4 ✓ aioitertools ✓ isort ✓ pytest-mock ✓ torch ✓ pyperclip ✗ pyzmq ✓ weaviate-client ✓ jsonpath-ng ✓ slack-sdk ✓ flatbuffers ✓ pycryptodome ✓ poetry ✓ mccabe ✓ dbt-common ✓ databricks-sql-connector ✓ sglang ✓ deepdiff ✓ gcsfs ✓ rich-toolkit ✓ langsmith ✓ smart-open ✓ librt ✓ narwhals ✓ tinycss2 ✓ rfc3339-validator ✗ pygithub ✓ beartype ✓ xlsxwriter ✓ jsonref ✓ google-cloud-monitoring ✓ cleo ✓ semver ✓ msrest ✓ crashtest ✓ installer ✓ pymupdf ✓ sphinx ✓ pytest-json-ctrf ✓ invoke ✓ pendulum ✓ ruamel-yaml-clib ✓ loguru ✗ cyclopts ✓ arrow ✓ fastmcp ✓ notebook ✓ typedload ✓ backports-tarfile ✓ text-unidecode ✗ google-cloud-compute ✓

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.