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

Top 120 - 240

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

Top 240 - 360

tornado ✓ hf-xet ✓ xmltodict ✓ traitlets ✓ durationpy ✓ google-cloud-aiplatform ✓ email-validator ✓ jedi ✓ parso ✓ toml ✗ babel ✓ aiofiles ✓ jsonpointer ✓ black ✓ executing ✓ matplotlib-inline ✓ uv ✓ typedload ✓ opentelemetry-util-http ✓ asttokens ✓ nest-asyncio ✗ mypy ✓ pandas-stubs ✓ watchfiles ✓ ply ✓ grpc-google-iam-v1 ✓ awswrangler ✓ tiktoken ✓ opentelemetry-instrumentation-requests ✓ docstring-parser ✓ langchain-core ✓ stack-data ✗ pure-eval ✓ asgiref ✓ sentry-sdk ✓ pymongo ✓ uvloop ✓ markdown ✓ webencodings ✗ termcolor ✓ gunicorn ✓ python-json-logger ✓ cachecontrol ✓ dbt-core ✓ pytest-xdist ✓ pyzmq ✓ execnet ✓ typing-inspect ✗ msrest ✓ dbt-adapters ✓ pkginfo ✓ snowflake-sqlalchemy ✓ aioitertools ✓ pymysql ✓ dbt-common ✓ watchdog ✓ sphinx ✓ databricks-sdk ✓ httptools ✓ botocore-stubs ✓ multiprocess ✓ ruamel-yaml-clib ✓ jsonpatch ✓ jsonpath-ng ✓ types-awscrt ✓ debugpy ✓ mcp ✓ google-cloud-monitoring ✓ h2 ✓ torch ✓ types-s3transfer ✓ hpack ✓ hyperframe ✓ isort ✓ google-cloud-vision ✓ google-cloud-compute ✓ boto3-stubs ✓ google-cloud-tasks ✓ google-cloud-speech ✓ pycryptodome ✓ google-cloud-bigtable ✓ httpx-sse ✓ google-cloud-dlp ✓ google-cloud-workflows ✓ datasets ✓ google-cloud-kms ✓ azure-common ✗ litellm ✓ google-cloud-language ✓ requests-file ✓ datadog ✓ pygithub ✓ pysocks ✗ google-cloud-dataform ✓ lz4 ✓ dulwich ✓ slack-sdk ✓ shapely ✓ pendulum ✓ xxhash ✓ mccabe ✓ google-cloud-videointelligence ✓ sse-starlette ✓ google-cloud-os-login ✓ poetry ✓ jupyter-core ✓ argcomplete ✓ crashtest ✓ dataclasses-json ✓ notebook ✓ semver ✓ mypy-boto3-s3 ✓ scramp ✓ backports-tarfile ✓ google-cloud-redis ✓ jupyter-client ✓ ipykernel ✓ smart-open ✓ cleo ✓ 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.