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 ✓ typing-extensions ✓ idna ✓ certifi ✓ urllib3 ✓ requests ✓ charset-normalizer ✓ cryptography ✓ cffi ✓ pygments ✓ pycparser ✓ pyyaml ✓ python-dateutil ✗ pydantic ✓ six ✓ pluggy ✓ pydantic-core ✓ setuptools ✓ numpy ✓ click ✓ iniconfig ✓ anyio ✓ pytest ✓ botocore ✓ annotated-types ✓ typing-inspection ✓ h11 ✓ attrs ✓ markupsafe ✓ httpx ✓ httpcore ✓ s3transfer ✓ pillow ✓ pyjwt ✓ python-dotenv ✓ protobuf ✓ aiobotocore ✓ pandas ✓ jinja2 ✓ platformdirs ✓ starlette ✓ fsspec ✓ opentelemetry-api ✓ uvicorn ✓ pathspec ✓ rpds-py ✓ filelock ✓ jsonschema ✓ jmespath ✓ referencing ✓ jsonschema-specifications ✓ multidict ✓ rich ✓ markdown-it-py ✓ aiohttp ✓ tomlkit ✓ yarl ✓ mdurl ✓ annotated-doc ✓ propcache ✓ fastapi ✓ tzdata ✓ websockets ✓ pytz ✗ frozenlist ✓ tqdm ✓ googleapis-common-protos ✓ aiosignal ✓ aiohappyeyeballs ✓ sniffio ✓ pyasn1 ✓ pip ✓ pydantic-settings ✓ python-multipart ✓ wrapt ✓ pyarrow ✓ google-auth ✓ lxml ✓ trove-classifiers ✓ tenacity ✓ zipp ✓ sqlalchemy ✓ pyasn1-modules ✓ ruff ✓ greenlet ✓ importlib-metadata ✓ jiter ✓ wheel ✓ pyparsing ✓ hatchling ✓ grpcio-status ✓ regex ✓ openai ✓ truststore ✓ grpcio ✓ watchfiles ✓ scipy ✓ google-api-core ✓ openpyxl ✓ et-xmlfile ✓ psutil ✓ soupsieve ✓ httpx2 ✓ httpcore2 ✓ s3fs ✓ opentelemetry-semantic-conventions ✓ distro ✓ opentelemetry-sdk ✓ beautifulsoup4 ✓ coverage ✓ shellingham ✓ sse-starlette ✓ typer ✓ mypy-extensions ✓ mcp ✓ httptools ✓ colorama ✓ proto-plus ✓ huggingface-hub ✓

Top 120 - 240

requests-oauthlib ✗ dnspython ✓ uvloop ✓ docstring-parser ✓ tomli ✓ pytest-asyncio ✓ editables ✓ wcwidth ✓ opentelemetry-proto ✓ werkzeug ✓ cachetools ✓ oauthlib ✓ sortedcontainers ✗ more-itertools ✓ virtualenv ✓ exceptiongroup ✓ opentelemetry-exporter-otlp-proto-common ✓ defusedxml ✗ redis ✓ hf-xet ✓ pytest-cov ✓ networkx ✓ fonttools ✓ psycopg2-binary ✓ distlib ✓ itsdangerous ✓ msgpack ✓ opentelemetry-exporter-otlp-proto-http ✓ mako ✓ alembic ✓ requests-toolbelt ✗ orjson ✓ tiktoken ✓ scikit-learn ✓ prompt-toolkit ✓ rsa ✓ tokenizers ✓ cloudpickle ✓ threadpoolctl ✓ flask ✓ anthropic ✓ pyopenssl ✓ isodate ✓ email-validator ✓ blinker ✓ websocket-client ✓ matplotlib ✓ mypy ✓ h2 ✓ hpack ✓ joblib ✓ psycopg ✓ hyperframe ✓ httpx-sse ✓ zstandard ✓ nodeenv ✓ python-discovery ✓ tzlocal ✓ azure-core ✓ google-cloud-core ✓ pynacl ✓ kiwisolver ✓ psycopg-binary ✓ execnet ✓ pytest-xdist ✓ pypdf ✓ google-cloud-storage ✓ ruamel-yaml ✓ google-cloud-bigquery ✓ contourpy ✓ bcrypt ✓ opentelemetry-instrumentation ✓ msal ✓ cycler ✓ langchain ✓ tabulate ✓ xlsxwriter ✓ grpcio-tools ✓ langchain-core ✓ keyring ✓ pytest-json-ctrf ✓ google-crc32c ✓ google-genai ✓ chardet ✓ jaraco-classes ✓ prometheus-client ✓ google-resumable-media ✓ jaraco-functools ✓ jeepney ✓ librt ✓ dill ✓ secretstorage ✓ jaraco-context ✓ identify ✓ sentry-sdk ✓ pre-commit ✓ jsonpointer ✓ sympy ✓ cfgv ✓ deprecated ✓ decorator ✓ asn1crypto ✗ mpmath ✓ uv ✓ xxhash ✓ docutils ✓ webencodings ✓ toml ✗ asgiref ✓ backoff ✓ gitpython ✓ docker ✓ uritemplate ✓ narwhals ✓ smmap ✓ aiofiles ✓ asyncpg ✓ azure-identity ✓ traitlets ✓ google-api-python-client ✓

Top 240 - 360

opentelemetry-util-http ✓ google-auth-httplib2 ✓ gitdb ✓ ptyprocess ✓ rapidfuzz ✓ httplib2 ✓ fastjsonschema ✓ authlib ✓ msal-extensions ✓ pexpect ✓ python-pptx ✓ python-docx ✓ jsonpatch ✓ playwright ✓ google-auth-oauthlib ✓ executing ✓ pyee ✓ opentelemetry-exporter-otlp-proto-grpc ✓ black ✓ joserfc ✓ tinycss2 ✓ sqlparse ✓ async-timeout ✓ markdown ✓ babel ✓ snowflake-connector-python ✓ transformers ✓ paramiko ✓ tornado ✓ gunicorn ✓ structlog ✓ grpc-google-iam-v1 ✓ pymupdf ✓ mcp-types ✓ jedi ✓ parso ✓ xmltodict ✓ pytest-timeout ✓ ipython ✓ asttokens ✓ azure-storage-blob ✓ aioitertools ✓ brotli ✗ watchdog ✓ litellm ✓ pyzmq ✓ matplotlib-inline ✓ pyproject-hooks ✓ google-cloud-aiplatform ✓ cachecontrol ✓ ast-serialize ✓ pure-eval ✓ flatbuffers ✓ python-json-logger ✓ nbformat ✓ griffelib ✓ stack-data ✗ onnxruntime ✓ build ✓ beartype ✓ typedload ✓ awscli ✓ isort ✓ jupyter-core ✓ croniter ✓ databricks-sdk ✓ marshmallow ✓ pypdfium2 ✓ awswrangler ✓ safetensors ✓ langsmith ✓ slack-sdk ✓ cython ✓ multiprocess ✓ pytest-mock ✓ types-pyyaml ✓ debugpy ✓ setuptools-scm ✓ nest-asyncio ✗ kubernetes ✓ opentelemetry-instrumentation-asgi ✓ sqlglot ✓ lz4 ✓ lark ✓ opentelemetry-instrumentation-fastapi ✓ pycryptodome ✓ cyclopts ✓ jupyter-client ✓ jsonref ✓ uuid-utils ✓ pytokens ✓ reportlab ✓ vcs-versioning ✓ tomli-w ✓ pyperclip ✗ poetry-core ✓ pymysql ✓ rich-rst ✓ pathable ✓ jsonschema-path ✓ argon2-cffi-bindings ✓ cbor2 ✓ fastuuid ✓ argon2-cffi ✓ xlrd ✓ shapely ✓ text-unidecode ✗ types-requests ✓ py-key-value-aio ✓ deprecation ✗ requests-file ✓ python-slugify ✓ toolz ✓ wsproto ✓ py4j ✓ rfc3339-validator ✗ termcolor ✓ graphql-core ✓ psycopg2 ✓ bleach ✓

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.