Python 3.6 Readiness

Python 3.6 support graph for the 360 most popular Python packages!

What is this about?

Python 3.6 is a version of Python that is past its End Of Life . This site shows Python 3.6 support for the 360 most downloaded packages on PyPI:

  1. 100 green packages (27.8%) have dropped support for Python 3.6;
  2. 260 white packages (72.2%) still support Python 3.6.

Package 'x' is white. What can I do?

There can be many reasons a package is still supporting Python 3.6:

  • 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.6 support.

How do you identify Python 3.6 support?

We look for the Programming Language :: Python :: 3.6 classifier on the latest release of the project, via PyPI's JSON API.

Top 120

boto3 ✗ setuptools ✓ urllib3 ✗ botocore ✗ six ✓ requests ✗ python-dateutil ✗ s3transfer ✗ pyyaml ✗ charset-normalizer ✗ idna ✗ certifi ✗ wheel ✗ awscli ✗ typing-extensions ✗ numpy ✓ packaging ✗ google-api-core ✗ rsa ✗ pyasn1 ✗ jmespath ✗ click ✓ protobuf ✗ pyparsing ✗ importlib-metadata ✓ pandas ✓ zipp ✓ cffi ✗ cryptography ✗ attrs ✗ pip ✗ jinja2 ✓ markupsafe ✓ pyjwt ✗ pycparser ✗ google-auth ✗ pytz ✗ oauthlib ✗ requests-oauthlib ✗ colorama ✗ cachetools ✓ sqlalchemy ✗ google-cloud-core ✗ pyasn1-modules ✗ docutils ✗ wrapt ✗ pyarrow ✗ google-cloud-storage ✓ aiohttp ✗ decorator ✗ yarl ✗ multidict ✗ greenlet ✗ azure-core ✗ werkzeug ✓ async-timeout ✗ isodate ✗ googleapis-common-protos ✗ tabulate ✗ flask ✓ toml ✗ websocket-client ✗ pygments ✗ chardet ✗ jsonschema ✓ google-api-python-client ✗ fsspec ✗ psutil ✓ pyrsistent ✓ frozenlist ✓ itsdangerous ✓ py ✗ msrest ✗ azure-storage-blob ✗ aiosignal ✗ pillow ✓ lxml ✗ docker ✗ scipy ✓ importlib-resources ✓ google-cloud-bigquery ✗ joblib ✗ mypy-extensions ✗ grpcio ✗ uritemplate ✗ pytest ✗ pluggy ✗ filelock ✓ gitpython ✓ tqdm ✗ mako ✗ gunicorn ✗ google-auth-httplib2 ✗ azure-common ✗ google-resumable-media ✗ smmap ✗ gitdb ✗ matplotlib ✓ httplib2 ✗ prometheus-client ✗ pexpect ✓ ptyprocess ✓ sqlparse ✗ platformdirs ✓ alembic ✗ cloudpickle ✗ webencodings ✗ beautifulsoup4 ✓ future ✗ apache-beam ✗ kiwisolver ✓ soupsieve ✗ scikit-learn ✓ pynacl ✗ cycler ✗ prompt-toolkit ✗ absl-py ✗ defusedxml ✗ pyopenssl ✗ proto-plus ✗

Top 120 - 240

tensorflow-serving-api ✗ bcrypt ✗ ipython ✓ asynctest ✗ s3fs ✗ tomli ✓ iniconfig ✓ paramiko ✗ traitlets ✓ openpyxl ✗ et-xmlfile ✗ jedi ✗ parso ✗ databricks-cli ✗ psycopg2-binary ✗ pickleshare ✓ requests-toolbelt ✓ backcall ✓ virtualenv ✗ typing-inspect ✗ cython ✗ aiobotocore ✗ pycryptodomex ✗ tornado ✗ adal ✗ bleach ✗ google-crc32c ✗ py4j ✗ entrypoints ✓ argcomplete ✗ msal ✗ google-auth-oauthlib ✗ portalocker ✗ distlib ✗ ipython-genutils ✓ python-editor ✗ mlflow ✗ prometheus-flask-exporter ✗ tenacity ✗ regex ✗ msal-extensions ✓ nest-asyncio ✗ smart-open ✗ pyzmq ✗ wcwidth ✗ querystring-parser ✓ mistune ✗ nbconvert ✓ asn1crypto ✗ nbformat ✗ jupyter-client ✗ pyodbc ✗ redis ✗ libcst ✗ fonttools ✓ pandocfilters ✗ azure-identity ✗ pyspark ✗ testpath ✓ nbclient ✓ ipykernel ✓ ujson ✓ notebook ✗ tzlocal ✗ jupyter-core ✓ imageio ✗ argon2-cffi ✗ jupyterlab-pygments ✓ terminado ✓ send2trash ✗ matplotlib-inline ✓ coverage ✗ pycodestyle ✗ ipywidgets ✓ widgetsnbextension ✓ tensorflow-metadata ✓ tensorflow ✓ argon2-cffi-bindings ✗ pydantic ✗ pathspec ✗ deprecated ✗ networkx ✓ pymysql ✗ mccabe ✗ jupyterlab-widgets ✗ psycopg2 ✗ debugpy ✗ cached-property ✗ msgpack ✗ markdown ✗ google-cloud-logging ✗ google-cloud-bigquery-storage ✗ msrestazure ✗ jeepney ✓ secretstorage ✗ tfx-bsl ✓ lightgbm ✗ termcolor ✓ isort ✗ gensim ✗ oauth2client ✓ tensorflow-transform ✓ pbr ✗ xmltodict ✗ datadog ✗ xlrd ✗ websockets ✓ pydata-google-auth ✗ pandas-gbq ✓ gcsfs ✗ ruamel-yaml ✗ pymongo ✗ threadpoolctl ✗ tensorflow-data-validation ✓ typeguard ✗ setuptools-scm ✗ tensorflow-estimator ✗ pkginfo ✗ dill ✗ pyflakes ✗

Top 240 - 360

flake8 ✗ applicationinsights ✓ jupyter-console ✓ qtconsole ✗ simplejson ✗ qtpy ✗ keyring ✓ azure-storage-common ✗ tzdata ✓ jupyter ✓ tensorboard ✗ marshmallow ✗ more-itertools ✗ oscrypto ✗ h5py ✓ pytz-deprecation-shim ✗ gast ✗ sentry-sdk ✗ snowflake-connector-python ✗ typed-ast ✗ ruamel-yaml-clib ✗ backports-zoneinfo ✗ dnspython ✗ pyfarmhash ✓ nltk ✗ babel ✗ tensorflow-addons ✗ elasticsearch ✗ lazy-object-proxy ✗ h11 ✗ zope-interface ✗ scramp ✗ pyathena ✓ dataclasses ✗ appdirs ✗ sniffio ✓ azure-mgmt-resource ✗ tensorflow-model-analysis ✓ rfc3986 ✓ black ✗ sortedcontainers ✗ python-dotenv ✗ pytest-cov ✗ toolz ✗ xlsxwriter ✗ humanfriendly ✗ pycryptodome ✗ distro ✗ pg8000 ✗ text-unidecode ✗ xgboost ✗ configparser ✓ jsonpickle ✗ graphviz ✗ azure-nspkg ✗ astroid ✗ ply ✓ pylint ✗ google-pasta ✗ keras-preprocessing ✗ mock ✗ azure-mgmt-storage ✗ html5lib ✗ zeroconf ✗ redshift-connector ✗ gevent ✗ azure-mgmt-core ✗ unidecode ✗ contextlib2 ✗ yt-dlp ✗ mutagen ✗ selenium ✓ pytest-runner ✓ keras ✓ statsmodels ✓ azure-storage-queue ✗ aioitertools ✓ requests-aws4auth ✗ google-cloud-datastore ✗ deepdiff ✗ lockfile ✓ boto ✓ numba ✓ pendulum ✗ asgiref ✗ azure-mgmt-keyvault ✗ mypy ✗ pychromecast ✓ requests-file ✓ casttube ✓ catt ✓ awswrangler ✗ retrying ✓ pysftp ✓ docopt ✓ anyio ✗ cattrs ✓ ifaddr ✗ plotly ✗ retry ✓ cachecontrol ✗ python-http-client ✗ slackclient ✗ azure-mgmt-containerregistry ✗ opt-einsum ✗ llvmlite ✓ uamqp ✗ thrift ✓ torch ✗ bs4 ✓ django ✓ pywavelets ✓ kubernetes ✗ shapely ✗ azureml-core ✗ knack ✗ azure-graphrbac ✗ dask ✓ poetry-core ✗ azure-mgmt-authorization ✗

Thanks

This is derivative work from py3readiness.org, a site that tracks general compatibility with Python 3, which in turn is a derivative of pythonwheels.com, a site that tracks which Python distributions ship the wheel distribution.

Fork me on GitHub