Upgrade Notes (from 6.x) â ī¸
- Removed SSL version (`ssl_version`) and explicit hostname check (`assert_hostname`) options (3185)
- `assert_hostname` has not been used since Python 3.6 and was removed in 3.12
- Python 3.7+ supports TLSv1.3 by default
- Websocket support is no longer included by default (3123)
- Use `pip install docker[websockets]` to include `websocket-client` dependency
- By default, `docker-py` hijacks the TCP connection and does not use Websockets
- Websocket client is only required to use `attach_socket(container, ws=True)`
- Python 3.7 no longer supported (reached end-of-life June 2023) (3187)
Features â¨
- Python 3.12 support (3185)
- Full `networking_config` support for `containers.create()` (3121)
- Replaces `network_driver_opt` (added in 6.1.0)
- Add `health()` property to container that returns status (e.g. `unhealthy`) (3147)
- Add `pause` option to `container.commit()` (3159)
- Add support for bind mount propagation (e.g. `rshared`, `private`) (3164)
- Add support for `filters`, `keep_storage`, and `all` in `prune_builds()` on API v1.39+ (3192)
Bugfixes đ
- Consistently return `docker.errors.NotFound` on 404 responses (3156)
- Validate tag format before push (3191)
Miscellaneous đ§
- Upgraded urllib3 version in `requirements.txt` (used for development/tests) (3183)
- Documentation typo fixes & formatting improvements (3130)
- Fixed integration test compatibility for newer Moby engine versions (3165, 3166, 3145, 3169, 3170)
- Switch to [ruff](https://github.com/astral-sh/ruff) for linting (#3126)
What's Changed
* fix user_guides/multiplex.rst by Longin-Yu in https://github.com/docker/docker-py/pull/3130
* tests/integration: fix flake8 failures (E721 do not compare types), and fix Dockerfile for debian "bookworm" by thaJeztah in https://github.com/docker/docker-py/pull/3166
* tests/integration: update some tests for updated error-messages by thaJeztah in https://github.com/docker/docker-py/pull/3165
* README: fix link for CI status badge by thaJeztah in https://github.com/docker/docker-py/pull/3167
* fix: use response.text to get string rather than bytes by mndeveci in https://github.com/docker/docker-py/pull/3156
* feat: add pause option to commit api by VincentLeeMax in https://github.com/docker/docker-py/pull/3159
* build(deps): Bump requests from 2.28.1 to 2.31.0 by dependabot in https://github.com/docker/docker-py/pull/3136
* test: remove APT_MIRROR from Dockerfile by thaJeztah in https://github.com/docker/docker-py/pull/3145
* Switch linting to ruff, use f-strings, fix lint errors and possible bugs by akx in https://github.com/docker/docker-py/pull/3126
* integration: Fix bad subnet declaration by akerouanton in https://github.com/docker/docker-py/pull/3169
* integration: Remove test_create_check_duplicate by akerouanton in https://github.com/docker/docker-py/pull/3170
* Support all `Network.connect` parameters in `client.containers.run` and `client.containers.create` by Skazza94 in https://github.com/docker/docker-py/pull/3121
* feat: move websocket-client to extra dependency by akx in https://github.com/docker/docker-py/pull/3123
* Add health property to Containers model by TurnrDev in https://github.com/docker/docker-py/pull/3147
* build(deps): Bump urllib3 from 1.26.11 to 1.26.18 by dependabot in https://github.com/docker/docker-py/pull/3183
* breaking: Python 3.12 compatibility & remove custom SSL adapter by milas in https://github.com/docker/docker-py/pull/3185
* chore: add changelog for 7.0.0 by milas in https://github.com/docker/docker-py/pull/3186
* chore: remove support for Python 3.7 by milas in https://github.com/docker/docker-py/pull/3187
* chore: update MAINTAINERS and remove CODEOWNERS by milas in https://github.com/docker/docker-py/pull/3188
* chore: fix missing setuptools in CI by milas in https://github.com/docker/docker-py/pull/3189
* Fix 3153 - Validate tag before build using OCI regex by LombardiDaniel in https://github.com/docker/docker-py/pull/3191
* feat: accept filters and keep_storage in prune_builds by emranbm in https://github.com/docker/docker-py/pull/3192
* chore: update changelog and maintainer by milas in https://github.com/docker/docker-py/pull/3193
New Contributors
* Longin-Yu made their first contribution in https://github.com/docker/docker-py/pull/3130
* mndeveci made their first contribution in https://github.com/docker/docker-py/pull/3156
* VincentLeeMax made their first contribution in https://github.com/docker/docker-py/pull/3159
* akerouanton made their first contribution in https://github.com/docker/docker-py/pull/3169
* TurnrDev made their first contribution in https://github.com/docker/docker-py/pull/3147
* LombardiDaniel made their first contribution in https://github.com/docker/docker-py/pull/3191
* emranbm made their first contribution in https://github.com/docker/docker-py/pull/3192
**Full Changelog**: https://github.com/docker/docker-py/compare/6.1.3...7.0.0