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

Top 120 - 240

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

Top 240 - 360

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

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.