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. 340 green packages (94.4%) have dropped support for Python 3.5;
  2. 20 uncolored packages (5.6%) 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 ✓ urllib3 ✓ requests ✓ certifi ✓ typing-extensions ✓ botocore ✓ idna ✓ charset-normalizer ✓ aiobotocore ✓ packaging ✓ setuptools ✓ python-dateutil ✗ six ✓ grpcio-status ✓ numpy ✓ s3transfer ✓ pyyaml ✓ cryptography ✓ s3fs ✓ cffi ✓ fsspec ✓ pydantic ✓ protobuf ✓ pluggy ✓ pycparser ✓ pygments ✓ pandas ✓ click ✓ attrs ✓ pydantic-core ✓ pytest ✓ platformdirs ✓ markupsafe ✓ pip ✓ anyio ✓ iniconfig ✓ h11 ✓ pytz ✗ opentelemetry-proto ✓ jmespath ✓ annotated-types ✓ filelock ✓ jinja2 ✓ importlib-metadata ✓ opentelemetry-exporter-otlp-proto-grpc ✓ rsa ✓ zipp ✓ tzdata ✓ pyasn1 ✓ grpcio ✓ pathspec ✓ opentelemetry-exporter-otlp-proto-http ✓ pyjwt ✓ opentelemetry-sdk ✓ typing-inspection ✓ httpx ✓ awscli ✓ httpcore ✓ opentelemetry-exporter-otlp ✓ wheel ✓ aiohttp ✓ google-api-core ✓ yandexcloud ✓ jsonschema ✓ virtualenv ✓ python-dotenv ✓ google-auth ✓ opentelemetry-exporter-otlp-proto-common ✓ requests-oauthlib ✗ colorama ✓ multidict ✓ yarl ✓ googleapis-common-protos ✓ tomli ✓ pyarrow ✓ wrapt ✓ rich ✓ pyasn1-modules ✓ scipy ✓ frozenlist ✓ sqlalchemy ✓ greenlet ✓ tqdm ✓ aiosignal ✓ propcache ✓ psutil ✓ rpds-py ✓ markdown-it-py ✓ referencing ✓ pyparsing ✓ trove-classifiers ✓ oauthlib ✓ jsonschema-specifications ✓ google-genai ✓ mdurl ✓ pillow ✓ grpcio-tools ✓ starlette ✓ et-xmlfile ✓ openpyxl ✓ aiohappyeyeballs ✓ distlib ✓ uvicorn ✓ fastapi ✓ tomlkit ✓ tenacity ✓ soupsieve ✓ beautifulsoup4 ✓ lxml ✓ websocket-client ✓ opentelemetry-semantic-conventions ✓ cachetools ✓ pyopenssl ✓ requests-toolbelt ✗ opentelemetry-api ✓ regex ✓ sniffio ✓ google-cloud-storage ✓ docutils ✓ pynacl ✓

Top 120 - 240

proto-plus ✓ exceptiongroup ✓ werkzeug ✓ psycopg2-binary ✓ sortedcontainers ✗ flask ✓ huggingface-hub ✓ isodate ✓ shellingham ✓ more-itertools ✓ mypy-extensions ✓ decorator ✓ networkx ✓ websockets ✓ hatchling ✓ scikit-learn ✓ msgpack ✓ azure-core ✓ pexpect ✓ opensearch-py ✓ ptyprocess ✓ msal ✓ coverage ✓ wcwidth ✓ joblib ✓ requests-aws4auth ✓ azure-identity ✓ langchain ✓ snowflake-connector-python ✓ bcrypt ✓ threadpoolctl ✓ gitpython ✓ python-multipart ✓ async-timeout ✓ asn1crypto ✗ google-cloud-core ✓ openai ✓ distro ✓ dnspython ✓ poetry-core ✓ tabulate ✓ ruamel-yaml ✓ redis ✓ deprecated ✗ events ✗ smmap ✓ matplotlib ✓ annotated-doc ✓ itsdangerous ✓ gitdb ✓ keyring ✓ prompt-toolkit ✓ pytest-asyncio ✓ paramiko ✓ kubernetes ✓ alembic ✓ fonttools ✓ pydantic-settings ✓ textual ✓ google-resumable-media ✓ google-crc32c ✓ google-api-python-client ✓ langsmith ✓ tzlocal ✓ kiwisolver ✓ backoff ✓ blinker ✓ ruff ✓ jaraco-classes ✓ opentelemetry-instrumentation ✓ jiter ✓ secretstorage ✓ chardet ✓ zstandard ✓ google-auth-oauthlib ✓ nodeenv ✓ jeepney ✓ typer ✓ opensearch-protobufs ✓ pyproject-hooks ✓ cycler ✓ msal-extensions ✓ dill ✓ prometheus-client ✓ fastjsonschema ✗ gcsfs ✓ httplib2 ✓ azure-storage-blob ✓ identify ✓ defusedxml ✗ google-auth-httplib2 ✓ build ✓ google-cloud-bigquery ✓ uritemplate ✓ pre-commit ✓ rapidfuzz ✓ setuptools-scm ✓ jaraco-context ✓ cloudpickle ✓ cfgv ✓ types-requests ✓ jaraco-functools ✓ pytest-cov ✓ contourpy ✓ orjson ✓ transformers ✓ ipython ✓ sympy ✓ marshmallow ✓ editables ✓ opentelemetry-exporter-prometheus ✓ aliyun-python-sdk-core ✓ google-cloud-secret-manager ✓ sqlparse ✓ mako ✓ py4j ✓ importlib-resources ✓ traitlets ✓ tokenizers ✓ tornado ✓

Top 240 - 360

mpmath ✗ jedi ✓ parso ✓ google-cloud-batch ✓ xmltodict ✓ cython ✓ babel ✓ nest-asyncio ✗ docker ✓ matplotlib-inline ✓ jsonpointer ✓ aiofiles ✓ executing ✓ google-analytics-admin ✓ grpcio-health-checking ✓ durationpy ✓ hf-xet ✓ asttokens ✓ black ✓ email-validator ✓ opentelemetry-util-http ✓ ply ✓ toml ✗ typedload ✓ awswrangler ✓ uv ✓ mypy ✓ opentelemetry-instrumentation-requests ✓ stack-data ✗ pure-eval ✓ watchfiles ✓ dbt-core ✓ webencodings ✗ sentry-sdk ✓ grpc-google-iam-v1 ✓ asgiref ✓ langchain-core ✓ markdown ✓ docstring-parser ✓ pymongo ✓ uvloop ✓ python-json-logger ✓ termcolor ✓ gunicorn ✓ cachecontrol ✓ tiktoken ✓ aioitertools ✓ pyzmq ✓ dbt-adapters ✓ pymysql ✓ pandas-stubs ✓ jsonpath-ng ✓ pytest-xdist ✓ msrest ✓ pkginfo ✓ execnet ✓ debugpy ✓ typing-inspect ✗ httptools ✓ botocore-stubs ✓ dbt-common ✓ snowflake-sqlalchemy ✓ types-awscrt ✓ databricks-sdk ✓ watchdog ✓ google-cloud-aiplatform ✓ jsonpatch ✓ types-s3transfer ✓ boto3-stubs ✓ torch ✓ shapely ✓ pycryptodome ✓ isort ✓ ruamel-yaml-clib ✓ azure-common ✗ h2 ✓ sse-starlette ✓ hyperframe ✓ jupyter-core ✓ dulwich ✓ hpack ✓ mccabe ✓ notebook ✓ requests-file ✓ lz4 ✓ pendulum ✓ httpx-sse ✓ mcp ✓ sphinx ✓ google-cloud-monitoring ✓ poetry ✓ datadog ✓ ipykernel ✓ scramp ✓ pygithub ✓ jupyter-client ✓ future ✗ comm ✓ google-cloud-vision ✓ mypy-boto3-s3 ✓ tinycss2 ✓ slack-sdk ✓ google-cloud-bigtable ✓ smart-open ✓ google-cloud-speech ✓ google-cloud-tasks ✓ wsproto ✓ pysocks ✗ arrow ✓ google-cloud-compute ✓ crashtest ✓ dataclasses-json ✓ google-cloud-kms ✓ google-cloud-dlp ✓ rfc3339-validator ✗ invoke ✓ cleo ✓ pytest-mock ✓ semver ✓ installer ✓

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.