diff --git a/.github/workflows/CICD.yml b/.github/workflows/CICD.yml index 6da590b7ce2..26e5e80d98e 100644 --- a/.github/workflows/CICD.yml +++ b/.github/workflows/CICD.yml @@ -35,7 +35,7 @@ concurrency: jobs: cargo-deny: name: Style/cargo-deny - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -52,7 +52,7 @@ jobs: job: # note: `cargo-udeps` panics when processing stdbuf/libstdbuf ("uu_stdbuf_libstdbuf"); either b/c of the 'cpp' crate or 'libstdbuf' itself # ... b/c of the panic, a more limited feature set is tested (though only excluding `stdbuf`) - - { os: ubuntu-latest , features: "feat_Tier1,feat_require_unix,feat_require_unix_utmpx" } + - { os: ubuntu-24.04 , features: "feat_Tier1,feat_require_unix,feat_require_unix_utmpx" } - { os: macos-latest , features: "feat_Tier1,feat_require_unix,feat_require_unix_utmpx" } - { os: windows-latest , features: feat_os_windows } steps: @@ -98,7 +98,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } # for now, don't build it on mac & windows because the doc is only published from linux # + it needs a bunch of duplication for build # and I don't want to add a doc step in the regular build to avoid long builds @@ -166,7 +166,7 @@ jobs: strategy: matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: @@ -253,7 +253,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: @@ -276,7 +276,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } - { os: macos-latest , features: feat_os_unix } - { os: windows-latest , features: feat_os_windows } steps: @@ -319,7 +319,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } - { os: macos-latest , features: feat_os_unix } - { os: windows-latest , features: feat_os_windows } steps: @@ -368,19 +368,19 @@ jobs: matrix: job: # - { os , target , cargo-options , default-features, features , use-cross , toolchain, skip-tests, workspace-tests, skip-package, skip-publish } - - { os: ubuntu-latest , target: arm-unknown-linux-gnueabihf , features: feat_os_unix_gnueabihf , use-cross: use-cross , skip-tests: true } + - { os: ubuntu-24.04 , target: arm-unknown-linux-gnueabihf , features: feat_os_unix_gnueabihf , use-cross: use-cross , skip-tests: true } - { os: ubuntu-24.04-arm , target: aarch64-unknown-linux-gnu , features: feat_os_unix_gnueabihf } - - { os: ubuntu-latest , target: aarch64-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross , skip-tests: true } - - { os: ubuntu-latest , target: riscv64gc-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross , skip-tests: true } - # - { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: feat_selinux , use-cross: use-cross } - - { os: ubuntu-latest , target: i686-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross } - - { os: ubuntu-latest , target: i686-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross } - - { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross, skip-publish: true } - - { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,uudoc" , use-cross: no, workspace-tests: true } - - { os: ubuntu-latest , target: x86_64-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross } - - { os: ubuntu-latest , target: x86_64-unknown-netbsd, features: "feat_os_unix", use-cross: use-cross , skip-tests: true , check-only: true } - - { os: ubuntu-latest , target: x86_64-unknown-redox , features: feat_os_unix_redox , use-cross: redoxer , skip-tests: true , check-only: true } - - { os: ubuntu-latest , target: wasm32-wasip1, default-features: false, features: feat_wasm, skip-tests: true } + - { os: ubuntu-24.04 , target: aarch64-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross , skip-tests: true } + - { os: ubuntu-24.04 , target: riscv64gc-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross , skip-tests: true } + # - { os: ubuntu-24.04 , target: x86_64-unknown-linux-gnu , features: feat_selinux , use-cross: use-cross } + - { os: ubuntu-24.04 , target: i686-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross } + - { os: ubuntu-24.04 , target: i686-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross } + - { os: ubuntu-24.04 , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross, skip-publish: true } + - { os: ubuntu-24.04 , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,uudoc" , use-cross: no, workspace-tests: true } + - { os: ubuntu-24.04 , target: x86_64-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross } + - { os: ubuntu-24.04 , target: x86_64-unknown-netbsd, features: "feat_os_unix", use-cross: use-cross , skip-tests: true , check-only: true } + - { os: ubuntu-24.04 , target: x86_64-unknown-redox , features: feat_os_unix_redox , use-cross: redoxer , skip-tests: true , check-only: true } + - { os: ubuntu-24.04 , target: wasm32-wasip1, default-features: false, features: feat_wasm, skip-tests: true } - { os: macos-latest , target: aarch64-apple-darwin , features: feat_os_unix, workspace-tests: true } # M1 CPU # PR #7964: chcon should not break build without the feature. cargo check is enough to detect it. - { os: macos-latest , target: aarch64-apple-darwin , workspace-tests: true, check-only: true } # M1 CPU @@ -706,7 +706,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: unix } + - { os: ubuntu-24.04 , features: unix } # FIXME: Re-enable macos code coverage # - { os: macos-latest , features: macos } # FIXME: Re-enable Code Coverage on windows, which currently fails due to "profiler_builtins". See #6686. @@ -766,7 +766,7 @@ jobs: esac case '${{ matrix.job.os }}' in - ubuntu-latest) + ubuntu-24.04) # selinux and systemd headers needed to build tests sudo apt-get -y update sudo apt-get -y install libselinux1-dev libsystemd-dev @@ -829,7 +829,7 @@ jobs: test_selinux: name: Build/SELinux needs: [ min_version, deps ] - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -890,7 +890,7 @@ jobs: test_safe_traversal: name: Safe Traversal Security Check - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 needs: [ min_version, deps ] steps: diff --git a/.github/workflows/CheckScripts.yml b/.github/workflows/CheckScripts.yml index 2186953663f..42a40a8c523 100644 --- a/.github/workflows/CheckScripts.yml +++ b/.github/workflows/CheckScripts.yml @@ -25,7 +25,7 @@ concurrency: jobs: shell_check: name: ShellScript/Check - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: contents: read steps: @@ -43,7 +43,7 @@ jobs: shell_fmt: name: ShellScript/Format - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: contents: read steps: diff --git a/.github/workflows/FixPR.yml b/.github/workflows/FixPR.yml index 224617c6d3e..8997fac411f 100644 --- a/.github/workflows/FixPR.yml +++ b/.github/workflows/FixPR.yml @@ -24,7 +24,7 @@ jobs: strategy: matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: diff --git a/.github/workflows/GnuComment.yml b/.github/workflows/GnuComment.yml index 8217888f46b..e2454e610e7 100644 --- a/.github/workflows/GnuComment.yml +++ b/.github/workflows/GnuComment.yml @@ -15,7 +15,7 @@ jobs: actions: read # to list workflow runs artifacts pull-requests: write # to comment on pr - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: > github.event.workflow_run.event == 'pull_request' steps: diff --git a/.github/workflows/SizeComment.yml b/.github/workflows/SizeComment.yml index 032c85d013d..3e44eb37cbb 100644 --- a/.github/workflows/SizeComment.yml +++ b/.github/workflows/SizeComment.yml @@ -15,7 +15,7 @@ jobs: actions: read # to list workflow runs artifacts pull-requests: write # to comment on pr - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: > github.event.workflow_run.event == 'pull_request' steps: diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 2837c79f60a..1c1a4f27e6d 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -34,7 +34,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest] # , macos-latest + os: [ubuntu-24.04] # , macos-latest cores: [4] # , 6 ram: [4096] api-level: [28] diff --git a/.github/workflows/audit.yml b/.github/workflows/audit.yml index f17e67eb34a..ea97f3d9253 100644 --- a/.github/workflows/audit.yml +++ b/.github/workflows/audit.yml @@ -7,7 +7,7 @@ on: - cron: "0 0 * * *" jobs: audit: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml index e2f0c0a09f5..0854dd61ef0 100644 --- a/.github/workflows/benchmarks.yml +++ b/.github/workflows/benchmarks.yml @@ -20,7 +20,7 @@ concurrency: jobs: benchmarks: name: Run ${{ matrix.type }} benchmarks for ${{ matrix.package }} (CodSpeed) - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 90 env: CARGO_INCREMENTAL: 0 diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index 36ce40bdbf8..f00b998f0f4 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -31,7 +31,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: @@ -71,10 +71,10 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: all , workspace: true } + - { os: ubuntu-24.04 , features: all , workspace: true } - { os: macos-latest , features: feat_os_unix } - { os: windows-latest , features: feat_os_windows } - - { os: ubuntu-latest , features: feat_wasm , target: wasm32-wasip1 } + - { os: ubuntu-24.04 , features: feat_wasm , target: wasm32-wasip1 } steps: - uses: actions/checkout@v6 with: @@ -152,7 +152,7 @@ jobs: strategy: matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: @@ -189,7 +189,7 @@ jobs: toml_format: name: Style/toml - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Clone repository uses: actions/checkout@v6 @@ -206,7 +206,7 @@ jobs: python: name: Style/Python - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Clone repository uses: actions/checkout@v6 @@ -230,7 +230,7 @@ jobs: pre_commit: name: Pre-commit hooks - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Checkout repository uses: actions/checkout@v6 diff --git a/.github/workflows/devcontainer.yml b/.github/workflows/devcontainer.yml index ecc65bc9908..47cc9d0688a 100644 --- a/.github/workflows/devcontainer.yml +++ b/.github/workflows/devcontainer.yml @@ -19,7 +19,7 @@ concurrency: jobs: test: name: Verify devcontainer - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 45 steps: - uses: actions/checkout@v6 diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 138d99279d4..c6822928c90 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -20,7 +20,7 @@ on: jobs: check-doc: name: Verify uudoc generates correct documentation - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Checkout repository diff --git a/.github/workflows/fuzzing.yml b/.github/workflows/fuzzing.yml index 47ee6477191..11944bb34a9 100644 --- a/.github/workflows/fuzzing.yml +++ b/.github/workflows/fuzzing.yml @@ -23,7 +23,7 @@ concurrency: jobs: uufuzz-examples: name: Build and test uufuzz examples - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -52,7 +52,7 @@ jobs: fuzz-build: name: Build the fuzzers - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -72,7 +72,7 @@ jobs: fuzz-run: needs: fuzz-build name: Fuzz - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 5 env: RUN_FOR: 60 @@ -199,7 +199,7 @@ jobs: fuzz-summary: needs: fuzz-run name: Fuzzing Summary - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: always() steps: - uses: actions/checkout@v6 diff --git a/.github/workflows/l10n.yml b/.github/workflows/l10n.yml index 8523401eb41..4ca49ac766a 100644 --- a/.github/workflows/l10n.yml +++ b/.github/workflows/l10n.yml @@ -30,7 +30,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: "feat_os_unix" } + - { os: ubuntu-24.04 , features: "feat_os_unix" } - { os: macos-latest , features: "feat_os_unix" } - { os: windows-latest , features: "feat_os_windows" } steps: @@ -83,7 +83,7 @@ jobs: l10n_fluent_syntax: name: L10n/Fluent Syntax Check - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -135,7 +135,7 @@ jobs: l10n_clap_error_localization: name: L10n/Clap Error Localization Test - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -298,7 +298,7 @@ jobs: l10n_french_integration: name: L10n/French Integration Test - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -408,7 +408,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: "feat_os_unix" } + - { os: ubuntu-24.04 , features: "feat_os_unix" } - { os: macos-latest , features: "feat_os_unix" } steps: - uses: actions/checkout@v6 @@ -561,7 +561,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: "feat_os_unix" } + - { os: ubuntu-24.04 , features: "feat_os_unix" } - { os: macos-latest , features: "feat_os_unix" } steps: - uses: actions/checkout@v6 @@ -631,7 +631,7 @@ jobs: fi # Test French localization with make-installed binary (Ubuntu only) - if [ "${{ matrix.job.os }}" = "ubuntu-latest" ]; then + if [ "${{ matrix.job.os }}" = "ubuntu-24.04" ]; then echo "Testing French localization with make-installed binary..." # Set French locale @@ -896,7 +896,7 @@ jobs: l10n_locale_support_verification: name: L10n/Locale Support Verification - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -1128,7 +1128,7 @@ jobs: l10n_embedded_locale_regression_test: name: L10n/Embedded Locale Regression Test - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -1154,7 +1154,7 @@ jobs: l10n_locale_embedding_cat: name: L10n/Locale Embedding - Cat Utility - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -1185,7 +1185,7 @@ jobs: l10n_locale_embedding_ls: name: L10n/Locale Embedding - Ls Utility - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -1216,7 +1216,7 @@ jobs: l10n_locale_embedding_multicall: name: L10n/Locale Embedding - Multicall Binary - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: @@ -1249,7 +1249,7 @@ jobs: l10n_locale_embedding_cargo_install: name: L10n/Locale Embedding - Cargo Install - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: diff --git a/.github/workflows/make.yml b/.github/workflows/make.yml index e654b55100b..a51b013a344 100644 --- a/.github/workflows/make.yml +++ b/.github/workflows/make.yml @@ -41,7 +41,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest , features: feat_os_unix } + - { os: ubuntu-24.04 , features: feat_os_unix } steps: - uses: actions/checkout@v6 with: @@ -332,7 +332,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest } + - { os: ubuntu-24.04 } steps: - name: Initialize workflow variables id: vars @@ -416,7 +416,7 @@ jobs: fail-fast: false matrix: job: - - { os: ubuntu-latest } + - { os: ubuntu-24.04 } steps: - name: Initialize workflow variables id: vars diff --git a/.github/workflows/manpage-lint.yml b/.github/workflows/manpage-lint.yml index 8f3c6df00f9..b77afc8a1f9 100644 --- a/.github/workflows/manpage-lint.yml +++ b/.github/workflows/manpage-lint.yml @@ -25,7 +25,7 @@ on: jobs: manpage-lint: name: Validate manpages with mandoc - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 strategy: matrix: locale: [en_US.UTF-8, fr_FR.UTF-8] diff --git a/.github/workflows/openbsd.yml b/.github/workflows/openbsd.yml index 38a5a729b9e..a0a2b81f9e7 100644 --- a/.github/workflows/openbsd.yml +++ b/.github/workflows/openbsd.yml @@ -23,7 +23,7 @@ concurrency: jobs: style: name: Style and Lint - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 60 strategy: fail-fast: false @@ -123,7 +123,7 @@ jobs: test: name: Tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 60 strategy: fail-fast: false diff --git a/.github/workflows/wasi.yml b/.github/workflows/wasi.yml index c69414ccc08..5b3d4f51f38 100644 --- a/.github/workflows/wasi.yml +++ b/.github/workflows/wasi.yml @@ -19,7 +19,7 @@ concurrency: jobs: test_wasi: name: Tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v6 with: diff --git a/tests/uutests/src/lib/util.rs b/tests/uutests/src/lib/util.rs index 8286ecfea75..59d9c16c542 100644 --- a/tests/uutests/src/lib/util.rs +++ b/tests/uutests/src/lib/util.rs @@ -2975,7 +2975,7 @@ pub fn host_name_for(util_name: &str) -> Cow<'_, str> { util_name.into() } -// Choose same coreutils version with ubuntu-latest runner: https://github.com/actions/runner-images/tree/main/images/ubuntu +// Choose same coreutils version with ubuntu runner: https://github.com/actions/runner-images/tree/main/images/ubuntu const VERSION_MIN: &str = "9.4"; // minimum Version for the reference `coreutil` in `$PATH` const UUTILS_WARNING: &str = "uutils-tests-warning";