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. 337 green packages (93.6%) have dropped support for Python 3.6;
  2. 23 uncolored packages (6.4%) 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 ✓ idna ✓ requests ✓ certifi ✓ typing-extensions ✓ charset-normalizer ✓ setuptools ✓ botocore ✓ cryptography ✓ aiobotocore ✓ pydantic ✓ pyyaml ✓ python-dateutil ✗ cffi ✓ six ✓ pygments ✓ click ✓ pydantic-core ✓ pycparser ✓ pluggy ✓ numpy ✓ anyio ✓ attrs ✓ h11 ✓ s3transfer ✓ grpcio-status ✓ annotated-types ✓ protobuf ✓ httpx ✓ httpcore ✓ typing-inspection ✓ pytest ✓ fsspec ✓ s3fs ✓ pip ✓ iniconfig ✓ pandas ✓ python-dotenv ✓ pyjwt ✓ markupsafe ✓ pathspec ✓ aiohttp ✓ platformdirs ✓ jmespath ✓ starlette ✓ jinja2 ✓ jsonschema ✓ uvicorn ✓ propcache ✓ rich ✓ yarl ✓ markdown-it-py ✓ multidict ✓ filelock ✓ importlib-metadata ✓ fastapi ✓ annotated-doc ✓ rpds-py ✓ zipp ✓ frozenlist ✓ referencing ✓ wheel ✓ jsonschema-specifications ✓ aiosignal ✓ pyasn1 ✓ mdurl ✓ googleapis-common-protos ✓ pillow ✓ pytz ✗ google-auth ✓ greenlet ✓ aiohappyeyeballs ✓ litellm ✓ tqdm ✓ trove-classifiers ✓ google-api-core ✓ colorama ✓ tzdata ✓ virtualenv ✓ websockets ✓ python-multipart ✓ pydantic-settings ✓ grpcio ✓ opentelemetry-sdk ✓ pyasn1-modules ✓ lxml ✓ beautifulsoup4 ✓ wrapt ✓ typer ✓ opentelemetry-api ✓ soupsieve ✓ tenacity ✓ requests-oauthlib ✗ pyarrow ✓ opentelemetry-semantic-conventions ✓ awscli ✓ requests-toolbelt ✗ scipy ✓ sqlalchemy ✓ sniffio ✓ shellingham ✓ pyparsing ✓ psutil ✓ oauthlib ✓ mcp ✓ regex ✓ tomli ✓ watchfiles ✓ hatchling ✓ exceptiongroup ✓ sse-starlette ✓ textual ✓ opentelemetry-proto ✓ cachetools ✓ openai ✓ rsa ✗ redis ✓ proto-plus ✓

Top 120 - 240

tomlkit ✓ distro ✗ more-itertools ✓ distlib ✗ jiter ✓ uvloop ✓ httptools ✓ openpyxl ✗ editables ✓ opentelemetry-exporter-otlp-proto-http ✓ docutils ✓ et-xmlfile ✓ mypy-extensions ✓ websocket-client ✓ coverage ✓ langchain ✓ pydantic-ai-slim ✓ httpx-sse ✓ wcwidth ✓ grpcio-tools ✓ google-cloud-storage ✓ networkx ✓ werkzeug ✓ psycopg2-binary ✓ async-timeout ✓ pyopenssl ✓ dnspython ✓ huggingface-hub ✓ msgpack ✓ google-genai ✓ opentelemetry-exporter-otlp-proto-grpc ✓ python-discovery ✓ opentelemetry-exporter-otlp-proto-common ✓ opentelemetry-instrumentation ✓ gitpython ✓ pynacl ✓ ruff ✓ sortedcontainers ✗ ptyprocess ✓ pexpect ✓ decorator ✓ smmap ✓ isodate ✓ docstring-parser ✓ docker ✓ azure-core ✓ azure-identity ✓ keyring ✓ tabulate ✓ prompt-toolkit ✓ fonttools ✓ scikit-learn ✓ google-cloud-core ✓ bcrypt ✓ gitdb ✓ itsdangerous ✓ flask ✓ matplotlib ✓ jaraco-classes ✓ secretstorage ✓ jeepney ✓ hf-xet ✓ pytest-cov ✓ ruamel-yaml ✓ orjson ✓ joblib ✓ msal ✓ deprecated ✗ pytest-asyncio ✓ alembic ✓ google-resumable-media ✓ dill ✓ snowflake-connector-python ✓ google-crc32c ✓ kiwisolver ✓ jaraco-context ✓ threadpoolctl ✓ jaraco-functools ✓ defusedxml ✗ email-validator ✓ blinker ✓ pyee ✓ databricks-sql-connector ✓ pydantic-graph ✓ mako ✓ tokenizers ✓ google-api-python-client ✓ chardet ✓ contourpy ✓ tzlocal ✓ tiktoken ✓ playwright ✓ kubernetes ✓ multiprocess ✓ uv ✓ opentelemetry-exporter-otlp ✓ mypy ✓ cycler ✓ google-auth-httplib2 ✓ asn1crypto ✗ opentelemetry-instrumentation-requests ✓ pytest-json-ctrf ✓ google-cloud-aiplatform ✓ poetry-core ✓ prometheus-client ✓ google-auth-oauthlib ✓ xxhash ✓ pyproject-hooks ✓ uritemplate ✓ zstandard ✓ toml ✗ opentelemetry-util-http ✓ sglang ✓ rapidfuzz ✓ paramiko ✓ google-cloud-secret-manager ✓ httplib2 ✓ nodeenv ✓ build ✓ ipython ✓

Top 240 - 360

ydb ✓ google-cloud-bigquery ✓ jsonpointer ✓ sympy ✓ google-cloud-batch ✓ aiofiles ✓ traitlets ✓ transformers ✓ fastjsonschema ✗ types-requests ✓ marshmallow ✓ backoff ✓ weaviate-client ✓ sqlparse ✓ msal-extensions ✓ jedi ✓ parso ✗ mpmath ✓ azure-storage-blob ✓ identify ✓ dbt-core ✓ pre-commit ✓ executing ✓ setuptools-scm ✓ ujson ✓ babel ✓ gunicorn ✓ cfgv ✓ matplotlib-inline ✓ google-analytics-admin ✓ anthropic ✓ sentry-sdk ✗ durationpy ✓ grpc-google-iam-v1 ✓ cloudpickle ✓ asttokens ✓ h2 ✓ google-cloud-kms ✓ google-cloud-compute ✓ asgiref ✓ hyperframe ✓ nest-asyncio ✗ hpack ✓ databricks-sdk ✓ webencodings ✗ tornado ✓ xmltodict ✓ pytest-xdist ✓ gcsfs ✓ cython ✓ authlib ✓ stack-data ✗ pure-eval ✓ dacite ✓ datasets ✓ black ✓ execnet ✓ librt ✓ langchain-core ✓ py4j ✓ jsonpatch ✓ pandas-stubs ✓ python-json-logger ✓ cachecontrol ✓ google-cloud-dlp ✓ iso8601 ✓ markdown ✓ importlib-resources ✓ pyzmq ✓ vcs-versioning ✓ google-cloud-speech ✓ watchdog ✓ pymongo ✓ pyhumps ✗ debugpy ✓ google-cloud-pubsub ✓ typing-inspect ✗ termcolor ✓ llama-parse ✓ joserfc ✓ llama-cloud-services ✓ google-cloud-texttospeech ✓ dbt-adapters ✓ axiom-py ✓ aioitertools ✓ rich-toolkit ✓ tinycss2 ✓ isort ✓ pymysql ✓ pytest-mock ✓ dulwich ✓ structlog ✓ pycryptodome ✓ asyncpg ✓ lz4 ✓ slack-sdk ✓ narwhals ✓ jupyter-core ✓ google-cloud-tasks ✓ pkginfo ✓ msrest ✗ dbt-common ✓ pywin32 ✓ ruamel-yaml-clib ✓ grpcio-health-checking ✓ google-cloud-monitoring ✓ jupyter-client ✓ loguru ✗ google-cloud-bigtable ✓ dataclasses-json ✓ langsmith ✓ google-cloud-logging ✓ torch ✓ awswrangler ✓ deepdiff ✓ ipykernel ✓ flatbuffers ✓ invoke ✓ google-cloud-vision ✓ poetry ✓

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.