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

Top 120 - 240

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

Top 240 - 360

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