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. 327 green packages (90.8%) have dropped support for Python 3.6;
  2. 33 uncolored packages (9.2%) still support Python 3.6.

Package 'x' is uncolored. 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 ✓ packaging ✓ urllib3 ✓ botocore ✓ setuptools ✓ aiobotocore ✓ certifi ✓ typing-extensions ✓ requests ✓ idna ✓ charset-normalizer ✓ python-dateutil ✗ grpcio-status ✓ six ✓ cryptography ✓ s3transfer ✓ numpy ✓ cffi ✓ pyyaml ✓ pycparser ✓ pydantic ✓ s3fs ✓ fsspec ✓ pandas ✓ click ✓ pluggy ✓ h11 ✓ attrs ✓ pydantic-core ✓ pygments ✓ awscli ✓ protobuf ✓ jmespath ✓ markupsafe ✓ anyio ✓ pip ✓ platformdirs ✓ httpx ✓ httpcore ✓ wheel ✓ annotated-types ✓ pytest ✓ jinja2 ✓ filelock ✓ pytz ✗ importlib-metadata ✓ rsa ✗ iniconfig ✓ zipp ✓ pyasn1 ✓ pyjwt ✓ pathspec ✓ typing-inspection ✓ aiohttp ✓ jsonschema ✓ multidict ✓ python-dotenv ✓ tzdata ✓ google-api-core ✓ google-auth ✓ yarl ✓ colorama ✓ virtualenv ✓ googleapis-common-protos ✓ rich ✓ propcache ✓ pyarrow ✓ frozenlist ✓ wrapt ✓ greenlet ✓ sqlalchemy ✓ requests-oauthlib ✗ rpds-py ✓ aiosignal ✓ tqdm ✓ pyasn1-modules ✓ referencing ✓ langchain ✓ jsonschema-specifications ✓ markdown-it-py ✓ psutil ✓ pillow ✓ tomli ✓ pyparsing ✓ aiohappyeyeballs ✓ mdurl ✓ opentelemetry-semantic-conventions ✓ grpcio ✓ scipy ✓ starlette ✓ oauthlib ✓ trove-classifiers ✓ uvicorn ✓ tenacity ✓ tomlkit ✓ fastapi ✓ openpyxl ✗ et-xmlfile ✓ soupsieve ✓ cachetools ✓ beautifulsoup4 ✓ distlib ✗ lxml ✓ regex ✓ requests-toolbelt ✗ websocket-client ✓ sniffio ✓ grpcio-tools ✓ shellingham ✓ pyopenssl ✓ opentelemetry-api ✓ opentelemetry-sdk ✓ sortedcontainers ✗ opentelemetry-proto ✓ mypy-extensions ✓ websockets ✓ google-cloud-storage ✓ docutils ✓ psycopg2-binary ✓ werkzeug ✓

Top 120 - 240

proto-plus ✓ exceptiongroup ✓ more-itertools ✓ isodate ✓ pynacl ✓ decorator ✓ networkx ✓ msgpack ✓ wcwidth ✓ coverage ✓ huggingface-hub ✓ flask ✓ azure-core ✓ cloudpickle ✓ hatchling ✓ scikit-learn ✓ msal ✓ distro ✗ openai ✓ joblib ✓ python-multipart ✓ bcrypt ✓ ruamel-yaml ✓ pexpect ✓ ptyprocess ✓ async-timeout ✓ asn1crypto ✗ google-cloud-core ✓ tabulate ✓ poetry-core ✓ gitpython ✓ dnspython ✓ threadpoolctl ✓ snowflake-connector-python ✓ pydantic-settings ✓ opentelemetry-instrumentation ✓ opentelemetry-exporter-otlp-proto-http ✓ redis ✓ opentelemetry-exporter-otlp-proto-common ✓ itsdangerous ✓ matplotlib ✓ prompt-toolkit ✓ fonttools ✓ typer ✓ deprecated ✗ keyring ✓ paramiko ✓ opentelemetry-exporter-otlp-proto-grpc ✓ alembic ✓ azure-identity ✓ ruff ✓ smmap ✓ tzlocal ✓ gitdb ✓ google-resumable-media ✓ blinker ✓ google-crc32c ✓ jiter ✓ zstandard ✓ google-genai ✓ chardet ✓ annotated-doc ✓ google-cloud-bigquery ✓ kiwisolver ✓ jaraco-classes ✓ secretstorage ✓ backoff ✓ rapidfuzz ✓ pytest-asyncio ✓ dill ✓ jeepney ✓ build ✓ kubernetes ✓ google-api-python-client ✓ msal-extensions ✓ langsmith ✓ types-requests ✓ orjson ✓ pyproject-hooks ✓ prometheus-client ✓ fastjsonschema ✗ docker ✓ pytest-cov ✓ cycler ✓ defusedxml ✗ yandexcloud ✓ azure-storage-blob ✓ nodeenv ✓ google-auth-oauthlib ✓ setuptools-scm ✓ contourpy ✓ opentelemetry-instrumentation-requests ✓ httplib2 ✓ transformers ✓ jaraco-context ✓ jaraco-functools ✓ uritemplate ✓ editables ✓ google-auth-httplib2 ✓ marshmallow ✓ sqlparse ✓ mako ✓ tokenizers ✓ sympy ✓ ipython ✓ tornado ✓ pre-commit ✓ py4j ✓ identify ✓ opentelemetry-util-http ✓ xmltodict ✓ babel ✓ cfgv ✓ traitlets ✓ jsonpointer ✓ importlib-resources ✓ jedi ✗ parso ✗ mpmath ✗ aiofiles ✓

Top 240 - 360

hf-xet ✓ uv ✓ nest-asyncio ✗ cython ✓ matplotlib-inline ✓ executing ✓ mypy ✓ watchfiles ✓ toml ✗ ply ✓ langchain-core ✓ opentelemetry-exporter-otlp ✓ asttokens ✓ gunicorn ✓ mcp ✓ uvloop ✓ docstring-parser ✓ typedload ✓ dbt-core ✓ python-json-logger ✓ black ✓ stack-data ✗ pure-eval ✓ sentry-sdk ✗ cachecontrol ✓ tiktoken ✓ grpc-google-iam-v1 ✓ webencodings ✗ markdown ✓ awswrangler ✓ botocore-stubs ✓ asgiref ✓ types-awscrt ✓ watchdog ✓ boto3-stubs ✓ types-s3transfer ✓ email-validator ✓ aioitertools ✓ dbt-adapters ✓ pkginfo ✓ pymysql ✓ ruamel-yaml-clib ✓ sse-starlette ✓ httpx-sse ✓ httptools ✓ typing-inspect ✗ google-cloud-aiplatform ✓ pyzmq ✓ debugpy ✓ dulwich ✓ durationpy ✓ termcolor ✓ databricks-sdk ✓ datasets ✓ jsonpath-ng ✓ msrest ✗ jsonpatch ✓ dbt-common ✓ multiprocess ✓ pycryptodome ✓ torch ✓ gcsfs ✓ pymongo ✓ isort ✓ poetry ✓ notebook ✓ execnet ✓ h2 ✓ hyperframe ✓ hpack ✓ pytest-xdist ✓ google-cloud-secret-manager ✓ mypy-boto3-s3 ✓ lz4 ✓ poetry-plugin-export ✓ requests-file ✓ mccabe ✗ jupyter-core ✓ cleo ✓ pysocks ✗ arrow ✓ datadog ✓ azure-common ✗ installer ✓ crashtest ✓ slack-sdk ✓ deepdiff ✓ pendulum ✓ pytest-mock ✓ xxhash ✓ invoke ✗ rfc3339-validator ✗ smart-open ✓ ipykernel ✓ jupyter-client ✓ scramp ✓ dataclasses-json ✓ future ✗ comm ✓ shapely ✓ simplejson ✗ wsproto ✓ tree-sitter ✓ tinycss2 ✓ narwhals ✓ py ✗ mistune ✓ loguru ✗ argcomplete ✓ pycodestyle ✓ litellm ✓ pygithub ✓ humanfriendly ✗ xlsxwriter ✓ safetensors ✓ snowflake-sqlalchemy ✓ typer-slim ✓ lark ✓ typeguard ✓ semver ✓

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.