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

Top 120 - 240

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

Top 240 - 360

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

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.