Python 3.4 Readiness

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

What is this about?

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

  1. 333 green packages (92.5%) have dropped support for Python 3.4;
  2. 27 white packages (7.5%) still support Python 3.4.

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

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

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

How do you identify Python 3.4 support?

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

Top 120

boto3 ✓ urllib3 ✓ requests ✓ botocore ✓ certifi ✓ typing-extensions ✓ charset-normalizer ✓ setuptools ✓ idna ✓ packaging ✓ python-dateutil ✗ s3transfer ✓ aiobotocore ✓ pyyaml ✓ six ✓ pip ✓ numpy ✓ grpcio-status ✓ fsspec ✓ s3fs ✓ cryptography ✓ cffi ✓ google-api-core ✓ importlib-metadata ✓ pycparser ✓ wheel ✓ pandas ✓ pydantic ✓ click ✓ attrs ✓ zipp ✓ rsa ✓ pyasn1 ✓ protobuf ✓ jmespath ✓ platformdirs ✓ jinja2 ✓ markupsafe ✓ pytz ✗ pyjwt ✓ awscli ✓ colorama ✓ tomli ✓ googleapis-common-protos ✓ filelock ✓ wrapt ✓ jsonschema ✓ cachetools ✓ pluggy ✓ google-auth ✓ pytest ✓ virtualenv ✓ requests-oauthlib ✗ pyarrow ✓ exceptiongroup ✓ oauthlib ✓ sqlalchemy ✓ aiohttp ✓ docutils ✓ iniconfig ✓ pyasn1-modules ✓ pydantic-core ✓ pygments ✓ psutil ✓ soupsieve ✓ multidict ✓ beautifulsoup4 ✓ pyparsing ✓ yarl ✓ isodate ✓ scipy ✓ rich ✓ greenlet ✓ frozenlist ✓ werkzeug ✓ grpcio ✓ async-timeout ✓ annotated-types ✓ aiosignal ✓ decorator ✓ pillow ✓ requests-toolbelt ✗ tzdata ✓ pyopenssl ✓ tqdm ✓ tomlkit ✓ openpyxl ✓ deprecated ✗ et-xmlfile ✓ lxml ✓ proto-plus ✓ more-itertools ✓ pynacl ✓ distlib ✓ coverage ✓ azure-core ✓ sniffio ✓ asn1crypto ✗ h11 ✓ importlib-resources ✓ rpds-py ✓ anyio ✓ flask ✓ websocket-client ✓ referencing ✓ google-cloud-storage ✓ jsonschema-specifications ✓ tenacity ✓ pexpect ✓ httpx ✓ pathspec ✓ msgpack ✓ ptyprocess ✓ typedload ✓ python-dotenv ✓ httpcore ✓ google-cloud-core ✓ psycopg2-binary ✓ backoff ✓ google-resumable-media ✓

Top 120 - 240

msal ✓ scikit-learn ✓ markdown-it-py ✓ sortedcontainers ✗ tabulate ✓ itsdangerous ✓ poetry-plugin-export ✓ poetry-core ✓ chardet ✓ mypy-extensions ✓ gitpython ✓ mdurl ✓ bcrypt ✓ matplotlib ✓ shellingham ✓ py ✓ future ✗ snowflake-connector-python ✓ wcwidth ✓ paramiko ✓ gitdb ✓ keyring ✓ smmap ✓ opentelemetry-sdk ✓ dill ✓ regex ✓ azure-storage-blob ✓ pytest-cov ✓ sqlparse ✓ google-crc32c ✓ threadpoolctl ✓ ruamel-yaml ✓ grpcio-tools ✓ portalocker ✓ trove-classifiers ✓ pkginfo ✓ google-auth-oauthlib ✓ secretstorage ✓ jaraco-classes ✓ networkx ✓ build ✓ py4j ✗ jeepney ✓ fastjsonschema ✗ joblib ✓ awswrangler ✓ kiwisolver ✓ google-cloud-bigquery ✓ rapidfuzz ✓ blinker ✓ dnspython ✓ fonttools ✓ msal-extensions ✓ cycler ✓ pyproject-hooks ✓ marshmallow ✓ cloudpickle ✓ azure-identity ✓ gunicorn ✓ prompt-toolkit ✓ google-api-python-client ✓ xmltodict ✗ docker ✓ alembic ✓ pymysql ✓ asgiref ✓ termcolor ✓ distro ✓ tzlocal ✓ toml ✗ ruamel-yaml-clib ✓ opentelemetry-api ✓ ipython ✓ cython ✗ mccabe ✓ cachecontrol ✓ nest-asyncio ✓ defusedxml ✓ uritemplate ✓ babel ✓ huggingface-hub ✓ types-requests ✓ httplib2 ✗ scramp ✓ traitlets ✓ tornado ✓ google-auth-httplib2 ✓ redis ✓ argcomplete ✓ markdown ✓ pyrsistent ✓ poetry ✓ pycodestyle ✓ isort ✓ jsonpointer ✓ ply ✓ contourpy ✓ pygithub ✓ dulwich ✓ crashtest ✓ mako ✓ msrest ✓ grpc-google-iam-v1 ✓ jedi ✓ datadog ✓ cleo ✓ fastapi ✓ azure-common ✓ black ✓ webencodings ✗ pycryptodomex ✓ parso ✓ matplotlib-inline ✓ installer ✓ retry ✗ pytest-runner ✓ prometheus-client ✓ loguru ✓ redshift-connector ✓ bs4 ✓

Top 240 - 360

websockets ✓ tb-nightly ✓ kubernetes ✓ pendulum ✓ opentelemetry-semantic-conventions ✓ requests-aws4auth ✗ typer ✓ toolz ✓ pyzmq ✓ jsonpath-ng ✓ orjson ✓ pycryptodome ✓ pg8000 ✓ sentry-sdk ✓ uvicorn ✓ transformers ✓ google-cloud-pubsub ✓ starlette ✓ python-json-logger ✓ typing-inspect ✓ setuptools-scm ✓ pyspark ✓ pkgutil-resolve-name ✓ asttokens ✓ pymongo ✓ executing ✓ jsonpatch ✓ jupyter-core ✓ arrow ✓ sagemaker ✓ aioitertools ✓ python-slugify ✓ stack-data ✓ ipykernel ✓ pyflakes ✓ google-cloud-secret-manager ✓ nbconvert ✓ torch ✓ shapely ✓ snowflake-sqlalchemy ✓ croniter ✗ pure-eval ✓ jupyter-client ✓ debugpy ✓ multiprocess ✓ types-python-dateutil ✓ flake8 ✓ pytzdata ✗ elasticsearch ✓ email-validator ✓ s2sphere ✗ pyodbc ✓ opensearch-py ✓ openai ✓ requests-file ✓ apache-airflow ✓ zope-interface ✓ oscrypto ✗ nbformat ✓ smart-open ✓ tokenizers ✓ lazy-object-proxy ✓ google-pasta ✗ astroid ✓ mysql-connector-python ✓ progressbar2 ✓ rfc3339-validator ✓ jupyter-server ✓ absl-py ✓ structlog ✓ notebook ✓ opentelemetry-proto ✓ pylint ✓ humanfriendly ✓ sympy ✓ aenum ✗ adal ✗ typeguard ✓ tensorboard ✓ cattrs ✓ pysocks ✗ mypy ✓ pytest-xdist ✓ click-man ✓ text-unidecode ✗ xlrd ✓ slack-sdk ✓ python-utils ✓ comm ✓ tinycss2 ✓ mistune ✓ bleach ✓ xlsxwriter ✓ watchdog ✓ google-cloud-aiplatform ✓ altair ✓ monotonic ✓ lz4 ✓ execnet ✓ mpmath ✓ nodeenv ✓ pre-commit ✓ opentelemetry-exporter-otlp-proto-http ✓ nbclient ✓ jupyterlab-server ✓ pytest-mock ✓ pbr ✓ opentelemetry-exporter-otlp-proto-grpc ✓ google-cloud-bigquery-storage ✓ argon2-cffi ✓ asynctest ✓ ujson ✓ identify ✓ jupyterlab ✓ appdirs ✗ h5py ✓ imageio ✓ aiofiles ✓ argon2-cffi-bindings ✓ db-dtypes ✓

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.