Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
4be3ad2
Bump python version to 3.12
dwoz Mar 25, 2026
1a7bdf7
Use wheel for attrs to avoid building setuptools-scm
dwoz Mar 26, 2026
c6e85be
Use binary setuptools-scm
dwoz Mar 26, 2026
c0c2b05
Add pluggy to only-binary to avoid setuptools-scm
dwoz Mar 26, 2026
ec03b88
Revert only binary changes
dwoz Mar 26, 2026
6c49fdd
Fix multidict build on macos
dwoz Mar 27, 2026
7e540e8
Update ci deps for python 3.12
dwoz Mar 27, 2026
18c1dfa
Fix ci deps
dwoz Mar 28, 2026
94602b1
more ci fixes
dwoz Mar 28, 2026
3b6005c
Fix Python 3.12 test failures: imp module, assertDictContainsSubset, …
Copilot Apr 4, 2026
20e2abe
Fix Python 3.12 compatibility: remove uses of imp, assertDictContains…
Copilot Apr 4, 2026
e8c4dfb
Fix Python 3.12 compatibility: imp, assertDictContainsSubset, distuti…
Copilot Apr 4, 2026
4de0f3d
Remove changes already fixed in pyversion branch (versions.py, test_z…
Copilot Apr 4, 2026
0e462fc
Fix Python 3.12 pip compatibility: update pip requirement and skip ol…
Copilot Apr 4, 2026
af81c85
Fix black formatting in tests/support/unit.py
Copilot Apr 5, 2026
25cb6b6
Fix Python 3.12 incompatibilities: imp, pkg_resources, utcnow
Copilot Apr 5, 2026
e76bc81
Fix Python 3.12 compatibility issues
dwoz Apr 5, 2026
583b4c3
Fix pylint duplicate string formatting argument warning
dwoz Apr 5, 2026
601443b
Fix Python 3.12 datetime deprecation in test SSL fixtures
dwoz Apr 5, 2026
d422661
Fix Python 3.12 datetime deprecation in test files
dwoz Apr 5, 2026
4f32d6d
Fix Python 3.12 importlib compatibility in test_zypp_plugins
dwoz Apr 6, 2026
fec6d7e
Fix Python 3.12 datetime deprecations and test collection errors
dwoz Apr 6, 2026
5f79464
Fix KeyError in test_pkg.py when osmajorrelease grain is missing
dwoz Apr 6, 2026
5e2e71b
Fix Python 3.12 VirtualEnv pip compatibility
dwoz Apr 6, 2026
65d5d18
Fix winrepo legacy git to return paths instead of booleans
dwoz Apr 6, 2026
0b796f8
Fix Python 3.12 test_thin backports module check
dwoz Apr 7, 2026
dad4ec6
Fix Python 3.12 test stability and logic issues
dwoz Apr 10, 2026
73b3650
Fix Python 3.12 regressions in package tests
dwoz Apr 11, 2026
614049b
Fix cross-platform root check and package test paths
dwoz Apr 12, 2026
f04cbb1
Fix Python 3.12 regressions across Functional, Integration, and Unit …
dwoz Apr 12, 2026
f268162
Regenerate static requirements after multidict and timelib alignment
dwoz Apr 13, 2026
35723d7
Fix session-level test suite blockers and SSH log capture regressions
dwoz Apr 13, 2026
b179234
Handle 'Event loop is closed' RuntimeError in transport layers
dwoz Apr 13, 2026
ff465a2
Systemic fix for Python 3.12 event loop handling
dwoz Apr 13, 2026
e677e29
Fix ssh_auth.manage and improve SSH key parsing for Python 3.12
dwoz Apr 13, 2026
5e4def2
Refine Python 3.12 event loop handling and fix test typos
dwoz Apr 14, 2026
dae8505
Fix IPC transport and EventPublisher for Python 3.12
dwoz Apr 14, 2026
695c0d1
Fix systemic loop issues and Windows-specific test failures
dwoz Apr 14, 2026
dd88fc9
Fix NACL segfault and refine Python 3.12 compatibility
dwoz Apr 15, 2026
a90a243
Fix infinite recursion in OptsDict deepcopy and proxies
dwoz Apr 15, 2026
d2d3013
Harden IPC and TCP transports against event loop hangs in Python 3.12
dwoz Apr 15, 2026
332e6a6
Revert unnecessary changes to deprecated salt/transport/ipc.py
dwoz Apr 15, 2026
ef9f28d
Resolve Python 3.12 test failures and harden transports
dwoz Apr 16, 2026
e98b9b4
Fix event loop management and process creation for Python 3.12 compat…
dwoz Apr 16, 2026
a102f77
Upgrade pyzmq to 27.1.0 for Python 3.13+
dwoz Apr 12, 2026
5ce67d7
Add Python 3.13 support to CI and Nox configuration
dwoz Apr 12, 2026
a1ec04d
Update generated workflows and static requirements
dwoz Apr 12, 2026
a47f2fb
Upgrade relenv to 0.22.7 and update CI context
dwoz Apr 13, 2026
9ebb134
Fix CI build failures: add missing build tools for DEB/RPM and enable…
dwoz Apr 14, 2026
6899ca2
Add extensive debugging to Windows build scripts
dwoz Apr 14, 2026
b537e7d
Add workaround for missing pyconfig.h in relenv Windows 3.13 builds
dwoz Apr 16, 2026
8eff123
Fix Windows CI failures and update CI to Python 3.13
dwoz Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions .github/workflows/build-packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,10 @@ jobs:
- name: Install build dependencies
run: |
apt-get update -y
# Installing python3.13-venv for Python 3.13 support
apt-get install -y python3.13-venv
# Installing python3.13-venv and python3.13-dev for Python 3.13 support
apt-get install -y python3.13-venv python3.13-dev
# Installing build tools for source compilation of dependencies (e.g. pyzmq)
apt-get install -y cmake g++ pkg-config libssl-dev
# Installing devscripts for source package builds (provides debuild)
apt-get install -y devscripts
# Installing patchelf for relenv ELF binary patching
Expand Down Expand Up @@ -221,6 +223,10 @@ jobs:
- name: Install rpmsign
run: |
dnf install -y rpmsign
if [ "${{ inputs.source }}" == "src" ]; then
# Installing python3-devel and build tools for source compilation of dependencies
dnf install -y python3-devel cmake gcc-c++ pkgconfig openssl-devel
fi

- name: Download Onedir Tarball as an Artifact
if: inputs.source == 'onedir'
Expand Down
52 changes: 26 additions & 26 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -144,10 +144,10 @@ jobs:
- *tests_added_modified
- *pkg_tests_added_modified

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"

- name: Setup Python Tools Scripts
uses: ./.github/actions/setup-python-tools-scripts
Expand Down Expand Up @@ -247,7 +247,7 @@ jobs:
cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }}
changed-files: ${{ needs.prepare-workflow.outputs.changed-files }}
pre-commit-version: "4.3.0"
ci-python-version: "3.11"
ci-python-version: "3.13"
full: ${{ fromJSON(needs.prepare-workflow.outputs.config)['testrun']['type'] == 'full' }}

lint:
Expand All @@ -267,7 +267,7 @@ jobs:
with:
changed-files: ${{ needs.prepare-workflow.outputs.changed-files }}
full: ${{ fromJSON(needs.prepare-workflow.outputs.config)['testrun']['type'] == 'full' }}
ci-python-version: "3.11"
ci-python-version: "3.13"

prepare-release:
name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}"
Expand All @@ -279,10 +279,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"


- name: Setup Python Tools Scripts
Expand Down Expand Up @@ -423,10 +423,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"

- name: Setup Python Tools Scripts
uses: ./.github/actions/setup-python-tools-scripts
Expand Down Expand Up @@ -469,9 +469,9 @@ jobs:
with:
cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }}
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}

Expand All @@ -486,9 +486,9 @@ jobs:
with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
source: "onedir"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -503,9 +503,9 @@ jobs:
with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
source: "src"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -519,10 +519,10 @@ jobs:
with:
nox-session: ci-test-onedir
nox-version: 2022.8.7
python-version: "3.11.14"
ci-python-version: "3.11"
python-version: "3.13.12"
ci-python-version: "3.13"
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -538,8 +538,8 @@ jobs:
nox-session: ci-test-onedir
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
nox-version: 2022.8.7
ci-python-version: "3.11"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
ci-python-version: "3.13"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.config)['skip_code_coverage'] }}
testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }}
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }}
Expand All @@ -554,10 +554,10 @@ jobs:
with:
nox-session: ci-test-onedir
nox-version: 2022.8.7
ci-python-version: "3.11"
ci-python-version: "3.13"
testrun: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['testrun']) }}
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.config)['skip_code_coverage'] }}
workflow-slug: ci
default-timeout: 180
Expand All @@ -577,10 +577,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"


- name: Setup Python Tools Scripts
Expand Down
48 changes: 24 additions & 24 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -139,10 +139,10 @@ jobs:
- *tests_added_modified
- *pkg_tests_added_modified

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"

- name: Setup Python Tools Scripts
uses: ./.github/actions/setup-python-tools-scripts
Expand Down Expand Up @@ -242,7 +242,7 @@ jobs:
cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }}
changed-files: ${{ needs.prepare-workflow.outputs.changed-files }}
pre-commit-version: "4.3.0"
ci-python-version: "3.11"
ci-python-version: "3.13"
full: ${{ fromJSON(needs.prepare-workflow.outputs.config)['testrun']['type'] == 'full' }}

lint:
Expand All @@ -262,7 +262,7 @@ jobs:
with:
changed-files: ${{ needs.prepare-workflow.outputs.changed-files }}
full: ${{ fromJSON(needs.prepare-workflow.outputs.config)['testrun']['type'] == 'full' }}
ci-python-version: "3.11"
ci-python-version: "3.13"

prepare-release:
name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}"
Expand All @@ -274,10 +274,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"


- name: Setup Python Tools Scripts
Expand Down Expand Up @@ -418,10 +418,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Set up Python 3.11
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"

- name: Setup Python Tools Scripts
uses: ./.github/actions/setup-python-tools-scripts
Expand Down Expand Up @@ -464,9 +464,9 @@ jobs:
with:
cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }}
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}

Expand All @@ -481,9 +481,9 @@ jobs:
with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
source: "onedir"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -502,9 +502,9 @@ jobs:
with:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}
relenv-version: "0.22.4"
python-version: "3.11.14"
ci-python-version: "3.11"
relenv-version: "0.22.7"
python-version: "3.13.12"
ci-python-version: "3.13"
source: "src"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -522,10 +522,10 @@ jobs:
with:
nox-session: ci-test-onedir
nox-version: 2022.8.7
python-version: "3.11.14"
ci-python-version: "3.11"
python-version: "3.13.12"
ci-python-version: "3.13"
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}"
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }}
linux_arm_runner: ${{ fromJSON(needs.prepare-workflow.outputs.config)['linux_arm_runner'] }}
Expand All @@ -541,8 +541,8 @@ jobs:
nox-session: ci-test-onedir
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
nox-version: 2022.8.7
ci-python-version: "3.11"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
ci-python-version: "3.13"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
skip-code-coverage: true
testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }}
matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }}
Expand All @@ -557,10 +557,10 @@ jobs:
with:
nox-session: ci-test-onedir
nox-version: 2022.8.7
ci-python-version: "3.11"
ci-python-version: "3.13"
testrun: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['testrun']) }}
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.11.14
cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.13.12
skip-code-coverage: true
workflow-slug: nightly
default-timeout: 360
Expand Down
Loading
Loading