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. 312 green packages (86.7%) have dropped support for Python 3.5;
  2. 48 white packages (13.3%) still support Python 3.5.

Package 'x' is white. 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 ✓ botocore ✓ urllib3 ✓ wheel ✓ requests ✓ typing-extensions ✓ certifi ✓ idna ✗ charset-normalizer ✓ setuptools ✓ pip ✓ python-dateutil ✗ packaging ✓ s3transfer ✓ aiobotocore ✓ pyyaml ✓ six ✓ numpy ✓ s3fs ✓ fsspec ✓ cryptography ✓ google-api-core ✓ cffi ✓ grpcio-status ✓ pycparser ✓ pandas ✓ importlib-metadata ✓ pyasn1 ✓ zipp ✓ rsa ✓ attrs ✓ click ✓ pydantic ✓ protobuf ✓ jmespath ✓ pytz ✗ markupsafe ✓ jinja2 ✓ platformdirs ✓ awscli ✓ pyjwt ✓ colorama ✓ tomli ✓ googleapis-common-protos ✓ filelock ✓ google-auth ✓ wrapt ✓ cachetools ✓ requests-oauthlib ✗ pluggy ✓ virtualenv ✓ oauthlib ✓ pyarrow ✓ jsonschema ✓ docutils ✓ exceptiongroup ✓ pytest ✓ pyasn1-modules ✓ aiohttp ✓ sqlalchemy ✓ pyparsing ✓ scipy ✓ multidict ✓ isodate ✓ psutil ✓ yarl ✓ iniconfig ✓ soupsieve ✓ pygments ✓ pyopenssl ✓ async-timeout ✓ decorator ✗ beautifulsoup4 ✓ frozenlist ✓ aiosignal ✓ tqdm ✓ grpcio ✓ pillow ✓ greenlet ✓ pydantic-core ✓ tzdata ✓ requests-toolbelt ✗ werkzeug ✓ openpyxl ✓ lxml ✓ et-xmlfile ✓ importlib-resources ✓ proto-plus ✓ pynacl ✓ coverage ✓ tomlkit ✓ asn1crypto ✗ azure-core ✓ distlib ✓ deprecated ✗ websocket-client ✓ flask ✓ annotated-types ✓ google-cloud-storage ✓ sniffio ✓ more-itertools ✓ msgpack ✓ h11 ✓ referencing ✓ pexpect ✓ ptyprocess ✓ scikit-learn ✓ rpds-py ✓ anyio ✓ jsonschema-specifications ✓ psycopg2-binary ✓ google-cloud-core ✓ google-resumable-media ✓ tabulate ✓ msal ✓ backoff ✓ matplotlib ✓ itsdangerous ✓ chardet ✓ wcwidth ✗

Top 120 - 240

python-dotenv ✓ pathspec ✓ bcrypt ✓ gitpython ✓ tenacity ✓ regex ✓ poetry-core ✓ mypy-extensions ✗ rich ✓ httpcore ✓ httpx ✓ poetry-plugin-export ✓ py ✗ threadpoolctl ✓ paramiko ✓ google-auth-oauthlib ✓ ruamel-yaml ✓ dill ✓ joblib ✓ gitdb ✓ keyring ✓ smmap ✓ snowflake-connector-python ✓ networkx ✓ kiwisolver ✓ markdown-it-py ✓ sortedcontainers ✗ google-crc32c ✓ cycler ✓ portalocker ✓ azure-storage-blob ✓ mdurl ✓ build ✓ shellingham ✓ pymysql ✓ py4j ✗ sqlparse ✓ tzlocal ✓ jaraco-classes ✓ nest-asyncio ✗ fonttools ✓ secretstorage ✓ fastjsonschema ✗ pytest-cov ✓ jeepney ✓ msal-extensions ✓ awswrangler ✓ google-api-python-client ✓ grpcio-tools ✓ marshmallow ✓ pkginfo ✓ trove-classifiers ✓ cython ✗ prompt-toolkit ✓ pyproject-hooks ✓ xmltodict ✗ rapidfuzz ✓ azure-identity ✓ google-cloud-bigquery ✓ scramp ✓ cloudpickle ✓ toml ✗ uritemplate ✓ ruamel-yaml-clib ✓ traitlets ✓ httplib2 ✗ distro ✓ ipython ✓ pyrsistent ✓ defusedxml ✗ google-auth-httplib2 ✓ termcolor ✓ ply ✓ docker ✓ dnspython ✓ blinker ✓ cachecontrol ✓ requests-aws4auth ✗ mccabe ✓ markdown ✓ tornado ✓ babel ✓ msrest ✓ azure-common ✗ gunicorn ✓ contourpy ✓ alembic ✓ jedi ✓ jsonpointer ✓ poetry ✓ redis ✓ redshift-connector ✓ matplotlib-inline ✓ webencodings ✗ future ✗ toolz ✓ parso ✓ pycryptodomex ✗ tb-nightly ✓ huggingface-hub ✓ pg8000 ✓ prometheus-client ✓ isort ✓ crashtest ✓ jsonpath-ng ✓ pycodestyle ✓ dulwich ✓ pygithub ✓ typedload ✓ pendulum ✓ cleo ✓ pyzmq ✓ datadog ✓ mako ✓ black ✓ fastapi ✓ kubernetes ✓ retry ✓ grpc-google-iam-v1 ✓ pkgutil-resolve-name ✓

Top 240 - 360

installer ✓ types-requests ✓ python-json-logger ✓ google-pasta ✗ jupyter-core ✓ pycryptodome ✗ jsonpatch ✓ multiprocess ✓ sentry-sdk ✓ tensorboard ✓ argcomplete ✓ arrow ✓ progressbar2 ✓ opensearch-py ✓ torch ✓ jupyter-client ✓ aioitertools ✓ asttokens ✗ pyspark ✓ pytzdata ✗ ipykernel ✓ executing ✗ pymongo ✓ transformers ✓ pytest-runner ✓ setuptools-scm ✓ appdirs ✗ typing-inspect ✗ stack-data ✗ sagemaker ✓ pure-eval ✗ jupyter-server ✓ websockets ✓ asgiref ✓ types-python-dateutil ✓ elasticsearch ✓ absl-py ✓ debugpy ✓ oscrypto ✗ python-utils ✓ pyodbc ✓ bs4 ✓ nbformat ✓ nbconvert ✓ starlette ✓ typer ✓ aenum ✗ uvicorn ✓ zope-interface ✓ pyflakes ✓ loguru ✗ tokenizers ✓ rfc3339-validator ✗ smart-open ✓ google-cloud-pubsub ✓ notebook ✓ shapely ✓ altair ✓ adal ✗ opentelemetry-api ✓ snowflake-sqlalchemy ✓ google-cloud-secret-manager ✓ orjson ✓ flake8 ✓ apache-airflow ✓ humanfriendly ✗ mistune ✓ orbax-checkpoint ✓ tensorflow ✓ tinycss2 ✓ h5py ✓ xlrd ✓ requests-file ✓ comm ✓ imageio ✓ sentencepiece ✓ asynctest ✗ typeguard ✓ openai ✓ structlog ✓ bleach ✓ astroid ✓ jupyterlab-server ✓ mysql-connector-python ✓ pysocks ✗ nltk ✓ nbclient ✓ sympy ✓ mpmath ✗ pylint ✓ pytest-xdist ✓ cattrs ✓ gremlinpython ✓ great-expectations ✓ argon2-cffi ✓ pbr ✗ tensorstore ✓ send2trash ✓ watchdog ✓ jupyterlab ✓ oauth2client ✗ gast ✗ flatbuffers ✓ argon2-cffi-bindings ✓ xgboost ✓ xlsxwriter ✓ execnet ✓ slack-sdk ✓ setproctitle ✓ overrides ✓ google-cloud-bigquery-storage ✓ json5 ✓ notebook-shim ✓ mypy ✓ croniter ✗ monotonic ✓ opentelemetry-sdk ✓ contextlib2 ✓ text-unidecode ✗ responses ✓

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.