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

Top 120 - 240

more-itertools ✓ websocket-client ✓ openpyxl ✓ google-cloud-storage ✓ docutils ✓ et-xmlfile ✓ huggingface-hub ✓ tomlkit ✓ grpcio-tools ✓ requests-toolbelt ✗ watchfiles ✓ gitpython ✓ mypy-extensions ✓ opentelemetry-exporter-otlp-proto-http ✓ wcwidth ✓ langchain ✓ docker ✓ networkx ✓ werkzeug ✓ smmap ✓ editables ✓ ptyprocess ✓ pyopenssl ✓ python-discovery ✓ decorator ✓ pexpect ✓ msgpack ✓ psycopg2-binary ✓ dnspython ✓ matplotlib ✓ mcp ✓ pynacl ✓ coverage ✓ fonttools ✓ opentelemetry-exporter-otlp-proto-common ✓ google-genai ✓ google-cloud-core ✓ gitdb ✓ sortedcontainers ✗ opentelemetry-exporter-otlp-proto-grpc ✓ tabulate ✓ kiwisolver ✓ pydantic-ai-slim ✓ docstring-parser ✓ opentelemetry-instrumentation ✓ scikit-learn ✓ prompt-toolkit ✓ contourpy ✓ sse-starlette ✓ flask ✓ hf-xet ✓ google-crc32c ✓ google-resumable-media ✓ dill ✓ itsdangerous ✓ keyring ✓ isodate ✓ chardet ✓ ruff ✓ redis ✓ async-timeout ✓ azure-core ✓ toml ✗ joblib ✓ azure-identity ✓ tokenizers ✓ bcrypt ✓ jaraco-classes ✓ cycler ✓ threadpoolctl ✓ jeepney ✓ secretstorage ✓ alembic ✓ zstandard ✓ snowflake-connector-python ✓ kubernetes ✓ blinker ✓ jaraco-context ✓ msal ✓ ipython ✓ orjson ✓ deprecated ✗ jaraco-functools ✓ pytest-asyncio ✓ pytest-cov ✓ transformers ✓ tiktoken ✓ xxhash ✓ google-cloud-bigquery ✓ nodeenv ✓ tzlocal ✓ ruamel-yaml ✓ email-validator ✓ defusedxml ✗ uvloop ✓ mako ✓ google-api-python-client ✓ httptools ✓ httpx-sse ✓ uv ✓ mypy ✓ traitlets ✓ parso ✓ jedi ✓ identify ✓ pre-commit ✓ h2 ✓ asn1crypto ✗ google-auth-oauthlib ✓ hyperframe ✓ executing ✓ hpack ✓ cfgv ✓ uritemplate ✓ prometheus-client ✓ rapidfuzz ✓ databricks-sql-connector ✓ grpc-google-iam-v1 ✓ google-auth-httplib2 ✓ sympy ✓

Top 240 - 360

paramiko ✓ asttokens ✓ opentelemetry-exporter-otlp ✓ matplotlib-inline ✓ httplib2 ✓ pyproject-hooks ✓ google-cloud-aiplatform ✓ poetry-core ✓ datasets ✓ opentelemetry-instrumentation-requests ✓ backoff ✓ mpmath ✓ pure-eval ✓ stack-data ✗ types-requests ✓ google-cloud-secret-manager ✓ aiofiles ✓ build ✓ opentelemetry-util-http ✓ pytest-json-ctrf ✓ durationpy ✓ jsonpointer ✓ marshmallow ✓ sqlparse ✓ setuptools-scm ✓ cloudpickle ✓ termcolor ✓ fastjsonschema ✗ google-cloud-batch ✓ msal-extensions ✓ pydantic-graph ✓ anthropic ✓ tree-sitter ✓ weaviate-client ✓ pytest-xdist ✓ azure-storage-blob ✓ gunicorn ✓ babel ✓ ydb ✓ execnet ✓ google-analytics-admin ✓ sentry-sdk ✓ py4j ✓ markdown ✓ tornado ✓ nest-asyncio ✗ asgiref ✓ cython ✓ xmltodict ✓ authlib ✓ librt ✓ webencodings ✗ databricks-sdk ✓ google-cloud-compute ✓ black ✓ google-cloud-kms ✓ dbt-core ✓ gcsfs ✓ importlib-resources ✓ vcs-versioning ✓ jsonpatch ✓ langchain-core ✓ cachecontrol ✓ pyzmq ✓ python-json-logger ✓ pymongo ✓ debugpy ✓ google-cloud-dlp ✓ typing-inspect ✗ google-cloud-speech ✓ watchdog ✓ pandas-stubs ✓ google-cloud-pubsub ✓ joserfc ✓ aioitertools ✓ slack-sdk ✓ google-cloud-texttospeech ✓ mdit-py-plugins ✓ flatbuffers ✓ dbt-adapters ✓ lz4 ✓ pycryptodome ✓ cbor2 ✓ torch ✓ pymysql ✓ awswrangler ✓ tinycss2 ✓ linkify-it-py ✓ jsonschema-path ✓ types-toml ✓ dulwich ✓ grpcio-health-checking ✓ pytest-mock ✓ uc-micro-py ✓ xlsxwriter ✓ msrest ✓ typedload ✓ google-cloud-monitoring ✓ safetensors ✓ rich-toolkit ✓ cyclopts ✓ pymupdf ✓ google-cloud-tasks ✓ jupyter-core ✓ pkginfo ✓ narwhals ✓ isort ✓ setproctitle ✓ dbt-common ✓ google-cloud-logging ✓ asyncpg ✓ dataclasses-json ✓ deepdiff ✓ cattrs ✓ semver ✓ structlog ✓ llama-parse ✓ google-cloud-bigtable ✓ pyperclip ✗ jupyter-client ✓

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.