Skip to content

Upgrade twisted, kubernetes, pyyaml, Cython and Django to latest allowed versions - #374

Merged
cigamit merged 1 commit into
ctrliq:mainfrom
blaipr:feature/deps-python-bumps
Jun 11, 2026
Merged

Upgrade twisted, kubernetes, pyyaml, Cython and Django to latest allowed versions#374
cigamit merged 1 commit into
ctrliq:mainfrom
blaipr:feature/deps-python-bumps

Conversation

@blaipr

@blaipr blaipr commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Merge PR #388 first — it makes full parallel Python test runs deterministic for reviewing everything else.

SUMMARY

Routine dependency refresh of the Python stack, taking each library to the latest version the dependency graph allows:

  • twisted 26.4.0rc2 → 26.4.0 — the rc we pinned for CVE-2026-42304 has been promoted to stable.
  • kubernetes 29.0.0 → 36.0.2 — pulls in its new dependency durationpy; google-auth and rsa are no longer needed by it and drop out of the lockfile (nothing in awx imports them directly).
  • pyyaml 6.0.1 → 6.0.3 — required by kubernetes 36.0.2.
  • Cython 0.29.37 → 3.2.5 — the <3 cap predated pyyaml 6.0.1 fixing Cython 3 source builds. Note: worth one offline-image-build test before a release, same caveat README applies to pip/setuptools/cryptography.
  • django 5.2.14 → 5.2.15 — latest 5.2 patch. The <6.0 cap stays and is now annotated: django-ansible-base@devel requires Django<6.0 and djangorestframework<3.16, so Django 6 is blocked upstream in DAB, not here.
  • licenses/: durationpy added, google-auth/rsa removed (keeps test_licenses green).

requirements.txt regenerated with ./updater.sh upgrade twisted kubernetes pyyaml cython django.

ISSUE TYPE

  • Bug, Docs Fix or other nominal change

COMPONENT NAME

  • API

ASCENDER VERSION

awx: 25.4.1.dev5+gcda0899.d20260610

ADDITIONAL INFORMATION

Full test suite run against this branch state (kubernetes client API usage in awx/main/scheduler/kubernetes.py and awx/main/dispatch/worker/task.py is unchanged across 29→36):

py.test --create-db -n auto --dist=loadfile awx/main/tests/unit awx/main/tests/functional awx/conf/tests awx/sso/tests
3475 passed, 6 skipped

(the one flaky failure seen during validation was the cross-test mock leak since root-caused and fixed in #388)

…wed versions

- twisted 26.4.0rc2 -> 26.4.0 (rc promoted to stable, CVE-2026-42304 line unchanged)
- kubernetes 29.0.0 -> 36.0.2 (new transitive dep durationpy added; google-auth
  and rsa are no longer required and drop out of the lockfile)
- pyyaml 6.0.1 -> 6.0.3 (required by kubernetes 36.0.2)
- Cython 0.29.37 -> 3.2.5 (the <3 cap predated pyyaml 6.0.1 fixing Cython 3
  source builds; comment updated)
- django 5.2.14 -> 5.2.15 (latest 5.2 patch; <6.0 cap kept and annotated:
  django-ansible-base requires Django<6.0 and djangorestframework<3.16)
- licenses/: add durationpy, remove google-auth and rsa (keeps test_licenses green)
@blaipr

blaipr commented Jun 11, 2026

Copy link
Copy Markdown
Contributor Author

Update on the flaky-test caveat in this PR's ADDITIONAL INFORMATION: the test_secret_key_regeneration::test_job_start_args failure mentioned there is now fully explained and fixed in #388 — a cross-test mock leak (task.model.objects.get = mock.Mock(...) in six unit tests) poisoned whichever xdist worker the functional files landed on. Nothing to change in this PR; merging #388 first gives a fully deterministic suite for reviewing the rest (validated with five consecutive clean 3476-passed runs).

@cigamit cigamit left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested and found no issues, even with offline build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Development

Successfully merging this pull request may close these issues.

2 participants