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

Top 120 - 240

typer ✓ et-xmlfile ✓ opentelemetry-exporter-otlp-proto-common ✓ ruff ✓ oauthlib ✓ sse-starlette ✓ coverage ✓ dnspython ✓ more-itertools ✓ exceptiongroup ✓ cachetools ✓ mypy-extensions ✓ wcwidth ✓ distlib ✓ google-genai ✓ hf-xet ✓ pytest-asyncio ✓ python-discovery ✓ requests-toolbelt ✗ opentelemetry-exporter-otlp-proto-grpc ✓ docstring-parser ✓ uvloop ✓ httptools ✓ pyopenssl ✓ rsa ✓ sortedcontainers ✗ psycopg2-binary ✓ tiktoken ✓ networkx ✓ msgpack ✓ redis ✓ tokenizers ✓ werkzeug ✓ grpcio-tools ✓ httpx-sse ✓ truststore ✓ defusedxml ✗ google-cloud-storage ✓ httpx2 ✓ opentelemetry-instrumentation-requests ✓ fonttools ✓ prompt-toolkit ✓ types-requests ✓ multiprocess ✓ scikit-learn ✓ langchain ✓ orjson ✓ httpcore2 ✓ pynacl ✓ pytest-cov ✓ isodate ✓ email-validator ✓ gitpython ✓ azure-core ✓ tzlocal ✓ opentelemetry-util-http ✓ websocket-client ✓ azure-identity ✓ joblib ✓ keyring ✓ alembic ✓ tabulate ✓ smmap ✓ threadpoolctl ✓ matplotlib ✓ ruamel-yaml ✓ mako ✓ jaraco-classes ✓ jeepney ✓ google-cloud-core ✓ itsdangerous ✓ secretstorage ✓ uv ✓ gitdb ✓ anthropic ✓ bcrypt ✓ msal ✓ jaraco-functools ✓ mypy ✓ dill ✓ chardet ✓ opentelemetry-instrumentation-threading ✓ jaraco-context ✓ docutils ✓ nodeenv ✓ zstandard ✓ transformers ✓ kiwisolver ✓ flask ✓ h2 ✓ decorator ✓ contourpy ✓ google-resumable-media ✓ hpack ✓ google-crc32c ✓ google-api-python-client ✓ pytest-json-ctrf ✓ cycler ✓ hyperframe ✓ uritemplate ✓ docker ✓ xxhash ✓ pre-commit ✓ blinker ✓ google-auth-httplib2 ✓ toml ✗ identify ✓ ptyprocess ✓ cfgv ✓ backoff ✓ google-cloud-bigquery ✓ snowflake-connector-python ✓ prometheus-client ✓ google-auth-oauthlib ✓ pexpect ✓ deprecated ✗ sentry-sdk ✓ sympy ✓ langchain-core ✓ httplib2 ✓

Top 240 - 360

mpmath ✓ rapidfuzz ✓ opentelemetry-exporter-otlp ✓ black ✓ asn1crypto ✗ ydb ✓ jsonpointer ✓ msal-extensions ✓ narwhals ✓ pytest-xdist ✓ aiofiles ✓ async-timeout ✓ google-cloud-secret-manager ✓ pypdf ✓ sglang ✓ execnet ✓ webencodings ✓ ipython ✓ datasets ✓ cloudpickle ✓ fastjsonschema ✓ awscli ✓ librt ✓ sqlparse ✓ paramiko ✓ databricks-sdk ✓ traitlets ✓ asgiref ✓ pyproject-hooks ✓ grpc-google-iam-v1 ✓ authlib ✓ pydantic-ai-slim ✓ psycopg ✓ poetry-core ✓ joserfc ✓ gunicorn ✓ build ✓ gcsfs ✓ azure-storage-blob ✓ isort ✓ google-cloud-batch ✓ babel ✓ jsonpatch ✓ psycopg-binary ✓ executing ✓ setuptools-scm ✓ google-cloud-aiplatform ✓ markdown ✓ jedi ✓ parso ✓ asttokens ✓ cachecontrol ✓ vcs-versioning ✓ langsmith ✓ asyncpg ✓ xmltodict ✓ cython ✓ google-cloud-kms ✓ matplotlib-inline ✓ python-json-logger ✓ google-analytics-admin ✓ marshmallow ✓ pydantic-graph ✓ tornado ✓ google-cloud-compute ✓ watchdog ✓ stack-data ✗ pure-eval ✓ python-docx ✓ structlog ✓ safetensors ✓ tinycss2 ✓ playwright ✓ kubernetes ✓ fastuuid ✓ google-cloud-dlp ✓ google-cloud-pubsub ✓ lz4 ✓ pymupdf ✓ google-cloud-speech ✓ pytokens ✓ dbt-adapters ✓ termcolor ✓ google-cloud-texttospeech ✓ aioitertools ✓ pyee ✓ xlsxwriter ✓ pytest-timeout ✓ google-cloud-logging ✓ pymongo ✓ pymysql ✓ py4j ✓ pyzmq ✓ flatbuffers ✓ pytest-mock ✓ typedload ✓ brotli ✗ croniter ✓ nest-asyncio ✗ mdit-py-plugins ✓ debugpy ✓ opentelemetry-instrumentation-fastapi ✓ slack-sdk ✓ griffelib ✓ tomli-w ✓ loguru ✗ fastmcp ✓ reportlab ✓ dbt-core ✓ linkify-it-py ✓ pycryptodome ✓ deprecation ✗ tree-sitter ✓ opentelemetry-instrumentation-asgi ✓ pyperclip ✗ torch ✓ ast-serialize ✓ google-cloud-monitoring ✓ uc-micro-py ✓ importlib-resources ✓

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.