Commit Graph

171 Commits

Author SHA1 Message Date
Felix Fontein 5afe15ea50 Close response instead of derived socket. (#1260) 2026-05-26 21:11:50 +02:00
Felix Fontein 7d86e971da Fix formatting. 2026-05-13 20:24:39 +02:00
Felix Fontein b059247f1a Fix types for new requests release. 2026-05-13 19:59:33 +02:00
Felix Fontein a00b678649 Improve typing. 2026-04-02 20:03:36 +02:00
Felix Fontein c2e48a1ae3 Fix pull change detection. (#1242) 2026-02-11 22:01:48 +01:00
Felix Fontein 14e6eb471b Update formatting. 2026-01-18 11:39:59 +01:00
Felix Fontein 5ba7b555a0 Do not set assert_hostname / tls_hostname automatically in certain situations. (#1226) 2025-12-30 20:28:25 +01:00
Felix Fontein 57549c8c73 Add ImageName helper class. (#1210) 2025-12-25 22:41:09 +00:00
Felix Fontein 712d920941 Re-sort imports. 2025-12-25 23:27:25 +01:00
Felix Fontein 6ab8cc0d82 Improve JSON parsing error handling. (#1221) 2025-12-06 22:25:30 +01:00
Felix Fontein 174c0c8058 Docker Compose 5+: improve image layer event parsing (#1219)
* Remove long deprecated version fields.

* Add first JSON event parsing tests.

* Improve image layer event parsing for Compose 5+.

* Add 'Working' to image working actions.

* Add changelog fragment.

* Shorten lines.

* Adjust docker_compose_v2_run tests.
2025-12-06 17:48:17 +01:00
Felix Fontein 846fc8564b docker_container: do not send wrong host IP for duplicate ports (#1214)
* DRY.

* Port spec can be a list of port specs.

* Add changelog fragment.

* Add test.
2025-11-26 07:29:30 +01:00
Felix Fontein 5d2b4085ec Remove code that's not used. (#1209) 2025-11-23 09:48:34 +01:00
Felix Fontein c61c0e24b8 Improve error/warning messages w.r.t. YAML quoting (#1205)
* Remove superfluous conversions/assignments.

* Improve messages.
2025-11-16 12:32:51 +01:00
Felix Fontein 3da2799e03 Fix IP subnet and address idempotency. (#1201) 2025-11-16 10:47:35 +01:00
Felix Fontein 90c4b4c543 docker_image(_pull), docker_container: fix compatibility with Docker 29.0.0 (#1192)
* Add debug flag to failing task.

* Add more debug output.

* Fix pull idempotency.

* Revert "Add more debug output."

This reverts commit 64020149bf.

* Fix casing.

* Remove unreliable test.

* Add 'debug: true' to all tasks.

* Reformat.

* Fix idempotency problem for IPv6 addresses.

* Fix expose ranges handling.

* Update changelog fragment to also mention other affected modules.
2025-11-15 17:13:46 +01:00
Felix Fontein ec14568b22 Work around Docker 29.0.0 bug. (#1187) 2025-11-12 19:21:55 +01:00
Felix Fontein dee138bc4b Fix typing info. (#1183) 2025-11-06 07:15:05 +01:00
Felix Fontein dbc7b0ec18 Cleanup with ruff check (#1182)
* Implement improvements suggested by ruff check.

* Add ruff check to CI.
2025-10-28 06:58:15 +01:00
Felix Fontein be000755fc Python code modernization, 8/n (#1179)
* Use to_text instead of to_native.

* Remove no longer needed pylint ignores.

* Remove another pylint ignore.

* Remove no longer needed ignore.

* Address redefined-outer-name.

* Address consider-using-with.
2025-10-25 00:36:04 +00:00
Felix Fontein 6ad4bfcd40 Add typing information, 2/n (#1178)
* Add typing to Docker Stack modules. Clean modules up.

* Add typing to Docker Swarm modules.

* Add typing to unit tests.

* Add more typing.

* Add ignore.txt entries.
2025-10-25 01:16:04 +02:00
Felix Fontein 3350283bcc Add typing information, 1/2 (#1176)
* Re-enable typing and improve config.

* Make mypy pass.

* Improve settings.

* First batch of types.

* Add more type hints.

* Fixes.

* Format.

* Fix split_port() without returning to previous type chaos.

* Continue with type hints (and ignores).
2025-10-23 07:05:42 +02:00
Felix Fontein 6b5d76bdee Adjust 'report this' messages to only report if the latest version still has this problem. (#1173) 2025-10-16 17:41:11 +02:00
Felix Fontein 3ff2cfe615 Drop support for docker-py. (#1171) 2025-10-15 21:55:07 +02:00
Felix Fontein 0646e52bae Python code modernization, 7/n (#1170)
* Address abstract-method.

* Fix broken signature.
2025-10-15 21:27:20 +02:00
Felix Fontein 6f9ebc3f14 Fix issues with pylint 4.0. 2025-10-13 22:09:31 +02:00
Felix Fontein 17e30adb93 selectors is now part of stdlib. (#1166) 2025-10-12 22:00:51 +02:00
Felix Fontein c75aa5dd64 Python code modernization, 5/n (#1165)
* Address raise-missing-from.

* Address simplifiable-if-expression.

* Address unnecessary-dunder-call.

* Address unnecessary-pass.

* Address use-list-literal.

* Address unused-variable.

* Address use-dict-literal.
2025-10-12 16:02:27 +02:00
Felix Fontein cad22de628 Python code modernization, 4/n (#1162)
* Address attribute-defined-outside-init.

* Address broad-exception-raised.

* Address broad-exception-caught.

* Address consider-iterating-dictionary.

* Address consider-using-dict-comprehension.

* Address consider-using-f-string.

* Address consider-using-in.

* Address consider-using-max-builtin.

* Address some consider-using-with.

* Address invalid-name.

* Address keyword-arg-before-vararg.

* Address line-too-long.

* Address no-else-continue.

* Address no-else-raise.

* Address no-else-return.

* Remove broken dead code.

* Make consider-using-f-string changes compatible with older Python versions.

* Python 3.11 and earlier apparently do not like multi-line f-strings.
2025-10-11 23:06:50 +02:00
Felix Fontein 892e9d9cbd Reorganize imports due to https://github.com/ansible-community/antsibull-nox/pull/136. 2025-10-10 21:19:28 +02:00
Felix Fontein e8ec22d3b1 Python code modernization, 3/n (#1157)
* Remove __metaclass__ = type.

for i in $(grep -REl '__metaclass__ = type' plugins/ tests/); do
  sed -e '/^__metaclass__ = type/d' -i $i;
done

* Remove super arguments, and stop inheriting from object.
2025-10-10 08:11:58 +02:00
Felix Fontein 741c318b1d Python code modernization, 2/n (#1156)
* Adjust all __future__ imports:

for i in $(grep -REl "__future__.*absolute_import" plugins/ tests/); do
  sed -e 's/from __future__ import .*/from __future__ import annotations/g' -i $i;
done

* Remove all UTF-8 encoding specifications for Python source files:

for i in $(grep -REl '[-][*]- coding: utf-8 -[*]-' plugins/ tests/); do
  sed -e '/^# -\*- coding: utf-8 -\*-/d' -i $i;
done

* Reformat.
2025-10-09 20:46:48 +02:00
Felix Fontein a3efa26e2e Address some pylint issues (#1155)
* Address cyclic-import.

* Address redefined-builtin.

* Address redefined-argument-from-local.

* Address many redefined-outer-name.

* Address pointless-string-statement.

* No longer needed due to separate bugfix.

* Address useless-return.

* Address possibly-used-before-assignment.

* Add TODOs.

* Address super-init-not-called.

* Address function-redefined.

* Address unspecified-encoding.

* Clean up more imports.
2025-10-09 20:11:36 +02:00
Felix Fontein db09affaea Fix isort config. 2025-10-07 23:00:42 +02:00
Felix Fontein ec5f7682a1 Prevent loss of data. (#1152) 2025-10-07 22:05:05 +02:00
Felix Fontein acf18f0ade Add more CI checks (#1150)
* Enable mypy.

* Add flake8.

* Add pylint with a long list of ignores to be removed.
2025-10-07 19:37:16 +02:00
Felix Fontein 449b37e1c9 Fix docker_container_exec's detach=true. (#1145) 2025-10-07 18:49:20 +02:00
salty ebb8569b5f docker_container: add driver_opts and gw_priority (#1143)
closes #1142
2025-10-07 18:26:25 +02:00
Felix Fontein 117271579e Make all doc fragments, module utils, and plugin utils private (#1144)
* Make all doc fragments, module utils, and plugin utils private.

* Remove some unused and no longer needed imports.

This hopefully also fixes the CI issues, which do not happen locally for me...

* Fix formatting.

* Try to make CI happy, again.

* Fix imports.

* Lint.
2025-10-07 07:32:33 +02:00
Felix Fontein bb39e67c8f Make CI pass; add black and isort to CI; add reformat commit to .git-blame-ignore-revs. 2025-10-06 18:57:33 +02:00
Felix Fontein d65d37e9e9 Reformat code with black and isort. 2025-10-06 18:34:59 +02:00
Felix Fontein f45232635c Python code modernization, 1/n (#1141)
* Remove unicode text prefixes.

* Replace str.format() uses with f-strings.

* Replace % with f-strings, and do some cleanup.

* Fix wrong variable.

* Avoid unnecessary string conversion.
2025-10-06 18:30:54 +02:00
Felix Fontein 1f2817fa20 Prepare 5.0.0 (#1123)
* Bump version to 5.0.0-a1.

* Drop support for ansible-core 2.15 and 2.16.

* Remove Python 2 and early Python 3 compatibility.
2025-10-05 20:22:50 +02:00
Felix Fontein 251e4eca49 Remove remaining usages of ansible.module_utils.six. (#1140) 2025-10-05 16:17:50 +02:00
Felix Fontein ebe42308cc Replace ansible.module_utils.six with own module utils in some cases (#1138)
* Replace ansible.module_utils.six with own module utils in some cases.

* Add ignore.txt entires.
2025-10-04 23:45:27 +02:00
Felix Fontein fd011d3871 Support missing fields and missing types in mounts. (#1134) 2025-09-29 22:35:07 +02:00
Felix Fontein 68ac6fecb1 Avoid deprecated functionality. (#1117) 2025-08-17 20:15:40 +02:00
Felix Fontein ac301beebd Adjust to Compose 2.39.0+. (#1101) 2025-07-25 21:59:41 +02:00
Felix Fontein e9f4553b01 docker_container idempotency: work around Docker not returning true configured command when command is [] (#1085)
* Work around Docker not returning true configured command when command is [].

* Lint.

* Add test.

* Add changelog fragment.
2025-06-08 19:05:09 +02:00
Felix Fontein 8ecbd9a5cc docker_compose_v2: work around bug in docker compose images --format json (#1083)
* Work around ubg in docker compose images --format json.

* ContainerName is no longer in image record.
2025-06-07 23:28:51 +02:00