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

Top 120 - 240

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

Top 240 - 360

jupyter-core ✓ sagemaker ✓ grpc-google-iam-v1 ✓ setuptools-scm ✓ tensorboard ✓ pendulum ✓ arrow ✓ multiprocess ✓ jupyter-client ✓ sentry-sdk ✗ pytest-runner ✓ aioitertools ✓ pycryptodome ✗ jsonpatch ✓ pyspark ✓ torch ✓ bs4 ✓ asttokens ✗ argcomplete ✓ executing ✗ mpmath ✗ opensearch-py ✓ sympy ✓ progressbar2 ✓ absl-py ✓ stack-data ✗ oscrypto ✗ pyodbc ✓ jupyter-server ✓ pure-eval ✗ ipykernel ✓ asgiref ✓ loguru ✗ apache-airflow ✓ pymongo ✓ pyflakes ✓ transformers ✓ nbconvert ✓ types-python-dateutil ✓ elasticsearch ✓ rfc3339-validator ✗ starlette ✓ nbformat ✓ debugpy ✓ zope-interface ✓ websockets ✓ flake8 ✓ types-requests ✓ python-utils ✓ notebook ✓ uvicorn ✓ kubernetes ✓ aenum ✗ asynctest ✗ altair ✓ smart-open ✓ adal ✗ tensorflow ✓ humanfriendly ✗ pytzdata ✗ mistune ✓ tokenizers ✓ pygithub ✓ xlrd ✓ imageio ✓ google-cloud-pubsub ✓ snowflake-sqlalchemy ✓ contextlib2 ✓ sentencepiece ✓ opentelemetry-api ✓ tinycss2 ✓ shapely ✓ google-cloud-secret-manager ✓ requests-file ✓ bleach ✓ typer ✓ comm ✓ retry ✓ pysocks ✗ cinemagoer ✗ imdbpy ✓ openai ✓ h5py ✓ jupyterlab-server ✓ astroid ✓ pylint ✓ send2trash ✓ typeguard ✓ gast ✗ nbclient ✓ mysql-connector-python ✓ pbr ✗ great-expectations ✓ cattrs ✓ gremlinpython ✓ orjson ✓ jupyterlab ✓ xgboost ✓ argon2-cffi ✓ overrides ✓ oauth2client ✗ notebook-shim ✓ nltk ✓ json5 ✓ watchdog ✓ simplejson ✗ slack-sdk ✓ argon2-cffi-bindings ✓ tensorflow-estimator ✓ xlsxwriter ✓ flatbuffers ✓ setproctitle ✓ text-unidecode ✗ seaborn ✓ backports-zoneinfo ✓ google-cloud-bigquery-storage ✓ hvac ✓ keras ✓ pandocfilters ✗ pathos ✓

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.