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

Top 120 - 240

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

Top 240 - 360

traitlets ✓ cloudpickle ✓ pydantic-ai-slim ✓ parso ✓ pytest-xdist ✓ opentelemetry-util-http ✓ sqlparse ✓ tornado ✓ jedi ✓ identify ✓ executing ✓ opentelemetry-instrumentation-requests ✓ jsonpointer ✓ execnet ✓ pre-commit ✓ cfgv ✓ msal-extensions ✓ babel ✓ asttokens ✓ gunicorn ✓ transformers ✓ opensearch-py ✓ matplotlib-inline ✓ aiofiles ✓ grpc-google-iam-v1 ✓ cython ✓ tree-sitter-languages ✓ asgiref ✓ xxhash ✓ h2 ✓ azure-storage-blob ✓ pure-eval ✓ stack-data ✗ hyperframe ✓ hpack ✓ google-cloud-secret-manager ✓ xmltodict ✓ durationpy ✓ sentry-sdk ✓ requests-aws4auth ✓ black ✓ markdown ✓ nest-asyncio ✗ importlib-resources ✓ vcs-versioning ✓ webencodings ✗ pyee ✓ py4j ✓ langchain-core ✓ python-json-logger ✓ anthropic ✓ google-cloud-batch ✓ termcolor ✓ databricks-sdk ✓ cachecontrol ✓ weaviate-client ✓ events ✗ debugpy ✓ playwright ✓ jsonschema-path ✓ watchdog ✓ google-analytics-admin ✓ datasets ✓ dbt-core ✓ jsonpatch ✓ typing-inspect ✗ librt ✓ pyzmq ✓ dbt-adapters ✓ pathable ✓ pyperclip ✗ gcsfs ✓ pytest-mock ✓ pymongo ✓ jsonref ✓ aioitertools ✓ dulwich ✓ google-cloud-compute ✓ pkginfo ✓ ujson ✓ isort ✓ beartype ✓ typedload ✓ google-cloud-kms ✓ fastmcp ✓ pandas-stubs ✓ slack-sdk ✓ pycryptodome ✓ lz4 ✓ databricks-sql-connector ✓ tinycss2 ✓ narwhals ✓ flatbuffers ✓ pymysql ✓ deepdiff ✓ cyclopts ✓ mccabe ✓ grpcio-health-checking ✓ jsonpath-ng ✓ pytest-json-ctrf ✓ dataclasses-json ✓ opensearch-protobufs ✓ jupyter-core ✓ awswrangler ✓ poetry ✓ msrest ✓ ydb ✓ dbt-common ✓ rich-rst ✓ langsmith ✓ ipykernel ✓ google-cloud-dlp ✓ pygithub ✓ jupyter-client ✓ google-cloud-speech ✓ rfc3339-validator ✗ argcomplete ✓ rich-toolkit ✓ ruamel-yaml-clib ✓ semver ✓

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.