From de8b47c0a0026fa9c86336a12530dd446e1a578d Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:19:41 +0200 Subject: [PATCH 1/8] remove the deprecated `nu-coverage` job --- .github/workflows/ci.yml | 42 ---------------------------------------- 1 file changed, 42 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3d66e743500f..ea135256a0bf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -186,45 +186,3 @@ jobs: - name: Tests run: cargo test --profile ci --package nu_plugin_* - - - nu-coverage: - if: false - env: - NUSHELL_CARGO_TARGET: ci - - strategy: - fail-fast: true - matrix: - # disabled mac due to problems with merging coverage and similarity to linux - # disabled windows due to running out of disk space when having too many crates or tests - platform: [ubuntu-20.04] # windows-latest - rust: - - stable - - runs-on: ${{ matrix.platform }} - - steps: - - uses: actions/checkout@v3 - - - name: Setup Rust toolchain and cache - uses: actions-rust-lang/setup-rust-toolchain@v1.5.0 - with: - rustflags: "" - - - name: Install cargo-llvm-cov - uses: taiki-e/install-action@cargo-llvm-cov - - - name: Tests - shell: bash - run: | - source <(cargo llvm-cov show-env --export-prefix) # Set the environment variables needed to get coverage. - cargo llvm-cov clean --workspace # Remove artifacts that may affect the coverage results. - cargo build --workspace --profile ci - cargo test --workspace --profile ci - cargo llvm-cov report --profile ci --lcov --output-path lcov.info - - - name: Upload coverage reports to Codecov with GitHub Action - uses: codecov/codecov-action@v3 - with: - files: lcov.info From f659834bd278b399b8d1a9341b02e22d9be3ec9c Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:21:01 +0200 Subject: [PATCH 2/8] remove `strategy.rust` because it's not used anywhere --- .github/workflows/ci.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ea135256a0bf..b92bb1b9504c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,8 +16,6 @@ jobs: # revisiting this when 20.04 is closer to EOL (April 2025) platform: [windows-latest, macos-latest, ubuntu-20.04] style: [default, dataframe, extra] - rust: - - stable include: - style: default flags: "" @@ -61,8 +59,6 @@ jobs: matrix: platform: [windows-latest, macos-latest, ubuntu-20.04] style: [default, dataframe, extra] - rust: - - stable include: - style: default flags: "" @@ -82,8 +78,6 @@ jobs: - platform: macos-latest style: extra - - runs-on: ${{ matrix.platform }} steps: @@ -105,8 +99,6 @@ jobs: fail-fast: true matrix: platform: [ubuntu-20.04, macos-latest, windows-latest] - rust: - - stable py: - py @@ -168,8 +160,6 @@ jobs: fail-fast: true matrix: platform: [windows-latest, macos-latest, ubuntu-20.04] - rust: - - stable runs-on: ${{ matrix.platform }} From 5ff9d65af710abb063b7c969b6b81b917f3bd6bd Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:22:46 +0200 Subject: [PATCH 3/8] remove useless comments --- .github/workflows/ci.yml | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b92bb1b9504c..2b02b31e719a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,6 +1,6 @@ on: pull_request: - push: # Run CI on the main branch after every merge. This is important to fill the GitHub Actions cache in a way that pull requests can see it + push: branches: - main @@ -24,14 +24,11 @@ jobs: - style: extra flags: "--features=extra " exclude: - # only test dataframes on Ubuntu (the fastest platform) - platform: windows-latest style: dataframe - platform: macos-latest style: dataframe - - runs-on: ${{ matrix.platform }} env: NUSHELL_CARGO_TARGET: ci @@ -66,9 +63,7 @@ jobs: flags: "--features=dataframe" - style: extra flags: "--features=extra" - exclude: - # only test dataframes and extra on Ubuntu (the fastest platform) - platform: windows-latest style: dataframe - platform: macos-latest @@ -113,15 +108,6 @@ jobs: rustflags: "" - name: Install Nushell - # prior to [*standard library: bring the tests into the main CI*](#8525) - # there was a `--profile ci` here in the `cargo install`, as well as - # `NUSHELL_CARGO_TARGET: ci` in the prelude above. - # - # this caused a "stackoverflow" error in the CI on windows, - # see [this failing job](https://github.com/nushell/nushell/actions/runs/4512034615/jobs/7944945590) - # - # the CI profile has been removed in 00b820de9021227d1910a9ea388297ee7aee308e - # as part of #8525. run: cargo install --path . --locked --no-default-features - name: Standard library tests @@ -134,7 +120,6 @@ jobs: - run: python -m pip install tox - # Get only the latest tagged version for stability reasons - name: Install virtualenv run: git clone https://github.com/pypa/virtualenv.git shell: bash @@ -150,8 +135,6 @@ jobs: tox -e ${{ matrix.py }} -- -k nushell shell: bash - # Build+test plugins on their own, without the rest of Nu. This helps with CI parallelization and - # also helps test that the plugins build without any feature unification shenanigans plugins: env: NUSHELL_CARGO_TARGET: ci From e09a29d4923dfd808de1f8cb814096bc95e65926 Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:24:04 +0200 Subject: [PATCH 4/8] refactor environment variables to the top of the CI --- .github/workflows/ci.yml | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2b02b31e719a..71d18d5ee083 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,6 +6,10 @@ on: name: continuous-integration +env: + NUSHELL_CARGO_TARGET: ci + NU_LOG_LEVEL: DEBUG + jobs: nu-fmt-clippy: strategy: @@ -30,8 +34,6 @@ jobs: style: dataframe runs-on: ${{ matrix.platform }} - env: - NUSHELL_CARGO_TARGET: ci steps: - uses: actions/checkout@v3 @@ -48,8 +50,6 @@ jobs: run: cargo clippy --workspace ${{ matrix.flags }}--exclude nu_plugin_* -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect -A clippy::result_large_err nu-tests: - env: - NUSHELL_CARGO_TARGET: ci strategy: fail-fast: true @@ -87,9 +87,6 @@ jobs: run: cargo test --workspace --profile ci --exclude nu_plugin_* ${{ matrix.flags }} std-lib-and-python-virtualenv: - env: - NU_LOG_LEVEL: DEBUG - strategy: fail-fast: true matrix: @@ -136,9 +133,6 @@ jobs: shell: bash plugins: - env: - NUSHELL_CARGO_TARGET: ci - strategy: fail-fast: true matrix: From 70d5b3eb6cd1211cd7824e56155249cdb610a6ed Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:26:28 +0200 Subject: [PATCH 5/8] rename jobs because we know they are *nu-* related --- .github/workflows/ci.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 71d18d5ee083..e9d8d2f68de3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ env: NU_LOG_LEVEL: DEBUG jobs: - nu-fmt-clippy: + fmt-clippy: strategy: fail-fast: true matrix: @@ -49,8 +49,7 @@ jobs: - name: Clippy run: cargo clippy --workspace ${{ matrix.flags }}--exclude nu_plugin_* -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect -A clippy::result_large_err - nu-tests: - + tests: strategy: fail-fast: true matrix: From b087928ac5041b0c9114322d7c795fe719f65832 Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:27:42 +0200 Subject: [PATCH 6/8] remove `strategy.style` as it's not documented anywhere --- .github/workflows/ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e9d8d2f68de3..a5dbff327e80 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,6 @@ jobs: # builds to link against a too-new-for-many-Linux-installs glibc version. Consider # revisiting this when 20.04 is closer to EOL (April 2025) platform: [windows-latest, macos-latest, ubuntu-20.04] - style: [default, dataframe, extra] include: - style: default flags: "" @@ -54,7 +53,6 @@ jobs: fail-fast: true matrix: platform: [windows-latest, macos-latest, ubuntu-20.04] - style: [default, dataframe, extra] include: - style: default flags: "" From 1d6079c28596e6e373b0ed0df851970e7193c5fe Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:33:39 +0200 Subject: [PATCH 7/8] Revert "remove `strategy.style` as it's not documented anywhere" This reverts commit b087928ac5041b0c9114322d7c795fe719f65832. --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a5dbff327e80..e9d8d2f68de3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,6 +19,7 @@ jobs: # builds to link against a too-new-for-many-Linux-installs glibc version. Consider # revisiting this when 20.04 is closer to EOL (April 2025) platform: [windows-latest, macos-latest, ubuntu-20.04] + style: [default, dataframe, extra] include: - style: default flags: "" @@ -53,6 +54,7 @@ jobs: fail-fast: true matrix: platform: [windows-latest, macos-latest, ubuntu-20.04] + style: [default, dataframe, extra] include: - style: default flags: "" From 0708dfd7c35f2027f820fc7e5d04e6c5d383b67d Mon Sep 17 00:00:00 2001 From: amtoine Date: Mon, 3 Jul 2023 19:33:56 +0200 Subject: [PATCH 8/8] rename `strategy.style` into `strategy.feature` --- .github/workflows/ci.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e9d8d2f68de3..b2d8def90669 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,19 +19,19 @@ jobs: # builds to link against a too-new-for-many-Linux-installs glibc version. Consider # revisiting this when 20.04 is closer to EOL (April 2025) platform: [windows-latest, macos-latest, ubuntu-20.04] - style: [default, dataframe, extra] + feature: [default, dataframe, extra] include: - - style: default + - feature: default flags: "" - - style: dataframe + - feature: dataframe flags: "--features=dataframe " - - style: extra + - feature: extra flags: "--features=extra " exclude: - platform: windows-latest - style: dataframe + feature: dataframe - platform: macos-latest - style: dataframe + feature: dataframe runs-on: ${{ matrix.platform }} @@ -54,23 +54,23 @@ jobs: fail-fast: true matrix: platform: [windows-latest, macos-latest, ubuntu-20.04] - style: [default, dataframe, extra] + feature: [default, dataframe, extra] include: - - style: default + - feature: default flags: "" - - style: dataframe + - feature: dataframe flags: "--features=dataframe" - - style: extra + - feature: extra flags: "--features=extra" exclude: - platform: windows-latest - style: dataframe + feature: dataframe - platform: macos-latest - style: dataframe + feature: dataframe - platform: windows-latest - style: extra + feature: extra - platform: macos-latest - style: extra + feature: extra runs-on: ${{ matrix.platform }}