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

Top 120 - 240

pydantic-settings ✓ proto-plus ✓ google-cloud-storage ✓ pyopenssl ✓ flask ✓ msgpack ✓ opentelemetry-exporter-otlp-proto-grpc ✓ werkzeug ✓ openai ✓ yandexcloud ✓ pynacl ✓ opensearch-py ✓ dnspython ✓ mypy-extensions ✓ python-multipart ✓ coverage ✓ psycopg2-binary ✓ opentelemetry-exporter-otlp-proto-http ✓ requests-aws4auth ✓ isodate ✓ distro ✓ opentelemetry-exporter-otlp-proto-common ✓ networkx ✓ wcwidth ✓ huggingface-hub ✓ sortedcontainers ✗ decorator ✓ events ✗ azure-core ✓ pexpect ✓ scikit-learn ✓ keyring ✓ ptyprocess ✓ poetry-core ✓ azure-identity ✓ matplotlib ✓ fonttools ✓ bcrypt ✓ textual ✓ joblib ✓ msal ✓ redis ✓ ruff ✓ gitpython ✓ editables ✓ opensearch-protobufs ✓ jaraco-classes ✓ jiter ✓ secretstorage ✓ snowflake-connector-python ✓ google-cloud-core ✓ jeepney ✓ kiwisolver ✓ ruamel-yaml ✓ watchfiles ✓ defusedxml ✗ zstandard ✓ itsdangerous ✓ jaraco-context ✓ async-timeout ✓ google-cloud-bigquery ✓ alembic ✓ google-cloud-aiplatform ✓ threadpoolctl ✓ jaraco-functools ✓ tabulate ✓ prompt-toolkit ✓ kubernetes ✓ smmap ✓ types-requests ✓ contourpy ✓ opentelemetry-exporter-otlp ✓ gitdb ✓ docker ✓ email-validator ✓ rapidfuzz ✓ deprecated ✗ opentelemetry-instrumentation ✓ google-crc32c ✓ tzlocal ✓ orjson ✓ google-resumable-media ✓ pytest-cov ✓ asn1crypto ✗ paramiko ✓ setuptools-scm ✓ blinker ✓ google-api-python-client ✓ chardet ✓ pytest-asyncio ✓ google-auth-oauthlib ✓ backoff ✓ prometheus-client ✓ dill ✓ pyproject-hooks ✓ docstring-parser ✓ cycler ✓ mako ✓ build ✓ uritemplate ✓ fastjsonschema ✗ marshmallow ✓ python-discovery ✓ google-auth-httplib2 ✓ uv ✓ hf-xet ✓ msal-extensions ✓ httplib2 ✓ transformers ✓ azure-storage-blob ✓ tokenizers ✓ jsonpointer ✓ sympy ✓ google-cloud-secret-manager ✓ sqlparse ✓ babel ✓ sse-starlette ✓ uvloop ✓ google-cloud-batch ✓ xmltodict ✓

Top 240 - 360

aiofiles ✓ ipython ✓ nodeenv ✓ mcp ✓ grpcio-health-checking ✓ litellm ✓ durationpy ✓ mypy ✓ google-analytics-admin ✓ mpmath ✓ isort ✓ tiktoken ✓ parso ✓ py4j ✓ tornado ✓ opentelemetry-util-http ✓ cloudpickle ✓ traitlets ✓ httpx-sse ✓ toml ✗ opentelemetry-instrumentation-requests ✓ pre-commit ✓ gcsfs ✓ jedi ✓ databricks-sdk ✓ black ✓ httptools ✓ gunicorn ✓ importlib-resources ✓ executing ✓ cython ✓ identify ✓ langchain-core ✓ asttokens ✓ markdown ✓ matplotlib-inline ✓ asgiref ✓ sentry-sdk ✓ cfgv ✓ grpc-google-iam-v1 ✓ dbt-core ✓ authlib ✓ nest-asyncio ✗ python-json-logger ✓ webencodings ✗ cattrs ✓ cachecontrol ✓ stack-data ✗ pure-eval ✓ pandas-stubs ✓ xxhash ✓ pytest-xdist ✓ jsonpatch ✓ pymongo ✓ execnet ✓ typing-inspect ✗ aioitertools ✓ aliyun-python-sdk-core ✓ debugpy ✓ awswrangler ✓ watchdog ✓ pymysql ✓ h2 ✓ hyperframe ✓ hpack ✓ termcolor ✓ dulwich ✓ pkginfo ✓ dbt-adapters ✓ pyzmq ✓ opentelemetry-exporter-prometheus ✓ jsonschema-path ✓ typedload ✓ msrest ✓ tree-sitter ✓ pytest-mock ✓ ruamel-yaml-clib ✓ dataclasses-json ✓ lz4 ✓ deepdiff ✓ pycryptodome ✓ mccabe ✓ poetry ✓ rich-toolkit ✓ invoke ✓ smart-open ✓ torch ✓ langsmith ✓ dbt-common ✓ google-cloud-monitoring ✓ rfc3339-validator ✗ slack-sdk ✓ multiprocess ✓ google-cloud-vision ✓ pygithub ✓ google-cloud-speech ✓ sphinx ✓ google-cloud-kms ✓ google-cloud-compute ✓ pendulum ✓ tinycss2 ✓ snowflake-sqlalchemy ✓ arrow ✓ databricks-sql-connector ✓ portalocker ✓ jupyter-core ✓ anthropic ✓ semver ✓ pyperclip ✗ notebook ✓ google-cloud-dlp ✓ google-cloud-tasks ✓ pycodestyle ✓ future ✗ jsonpath-ng ✓ requests-file ✓ argcomplete ✓ pathable ✓ shapely ✓ google-cloud-videointelligence ✓

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.