diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4124563263e..d3244ea8eea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,16 +10,15 @@ jobs: name: Lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: cache: yarn - - uses: actions-rs/toolchain@v1 + - uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal components: rustfmt - - uses: Swatinem/rust-cache@v1 + - uses: Swatinem/rust-cache@v2 # use `--frozen-lockfile` to fail immediately if the committed yarn.lock needs updates # https://yarnpkg.com/lang/en/docs/cli/install/#toc-yarn-install-frozen-lockfile - run: yarn --frozen-lockfile @@ -29,8 +28,8 @@ jobs: name: Flow runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: cache: yarn - run: yarn --frozen-lockfile @@ -53,17 +52,16 @@ jobs: os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: cache: yarn node-version: ${{matrix.node}} - - uses: actions-rs/toolchain@v1 + - uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal components: rustfmt - - uses: Swatinem/rust-cache@v1 + - uses: Swatinem/rust-cache@v2 - name: Bump max inotify watches (Linux only) run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p; if: ${{matrix.os == 'ubuntu-latest'}} @@ -72,7 +70,7 @@ jobs: - run: yarn test:unit - name: Upload @parcel/rust Linux Binaries artifact if: ${{matrix.os == 'ubuntu-latest' && matrix.node == 20}} - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: Rust Linux Binaries path: | @@ -91,17 +89,16 @@ jobs: fail-fast: false runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: cache: yarn node-version: ${{matrix.node}} - - uses: actions-rs/toolchain@v1 + - uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal components: rustfmt - - uses: Swatinem/rust-cache@v1 + - uses: Swatinem/rust-cache@v2 - name: Bump max inotify watches (Linux only) run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p; if: ${{matrix.os == 'ubuntu-latest'}} @@ -109,14 +106,6 @@ jobs: - run: yarn build-native-release - run: yarn build - run: yarn test:integration-ci - # Similar to - # https://github.com/marketplace/actions/publish-unit-test-results#use-with-matrix-strategy - - name: Upload JUnit results - if: always() - uses: actions/upload-artifact@v2 - with: - name: Integration tests (${{matrix.os}}, node ${{matrix.node}}) - path: '**/junit-*.xml' # Deployment steps taken from https://github.com/colinwilson/static-site-to-vercel/blob/master/.github/workflows/deploy-preview.yml repl_build: @@ -126,20 +115,21 @@ jobs: permissions: deployments: write steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: cache: yarn node-version: 20 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@master with: + toolchain: stable targets: wasm32-unknown-unknown - name: Install wasm-opt run: | curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz tar -xf binaryen-version_116-x86_64-linux.tar.gz echo "$PWD/binaryen-version_116/bin" >> $GITHUB_PATH - - uses: Swatinem/rust-cache@v1 + - uses: Swatinem/rust-cache@v2 with: key: wasm - name: Bump max inotify watches @@ -154,7 +144,7 @@ jobs: - run: yarn build-native-wasm - run: yarn workspace @parcel/repl build # - name: Upload REPL - # uses: actions/upload-artifact@v2 + # uses: actions/upload-artifact@v4 # with: # name: REPL # path: 'packages/dev/repl/dist' @@ -187,14 +177,3 @@ jobs: status: ${{ job.status }} deployment_id: ${{ steps.deployment.outputs.deployment_id }} env_url: ${{ steps.vercel-action.outputs.preview-url }} - - test_report: - name: Test report - runs-on: ubuntu-latest - needs: [unit_tests, integration_tests] - if: always() - steps: - - name: Create test report - uses: mikepenz/action-junit-report@v2 - with: - report_paths: artifacts/**/*.xml diff --git a/.github/workflows/nightly-release.yml b/.github/workflows/nightly-release.yml index 7b1636ddf6a..f3318a656fa 100644 --- a/.github/workflows/nightly-release.yml +++ b/.github/workflows/nightly-release.yml @@ -14,13 +14,11 @@ jobs: name: ${{ matrix.os }} runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release @@ -28,7 +26,7 @@ jobs: if: ${{ matrix.os == 'macos-latest' }} run: strip -x packages/*/*/*.node # Must use -x on macOS. This produces larger results on linux. - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-${{ matrix.os }} path: packages/*/*/*.node @@ -41,22 +39,20 @@ jobs: container: image: docker.io/mischnic/centos7-node16 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install yarn run: npm install --global yarn@1 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: strip packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-linux-gnu-x64 path: packages/*/*/*.node @@ -81,13 +77,11 @@ jobs: name: ${{ matrix.target }} runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: ${{ matrix.target }} - name: Install cross compile toolchains run: | @@ -102,7 +96,7 @@ jobs: - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: ${{ matrix.strip }} packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-${{ matrix.target }} path: packages/*/*/*.node @@ -136,15 +130,13 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GHCR_TOKEN }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install build tools run: apk add --no-cache python3 make gcc g++ musl-dev curl - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: ${{ matrix.target }} - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages @@ -155,7 +147,7 @@ jobs: - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: ${{ matrix.strip }} packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-linux-musl path: packages/*/*/*.node @@ -169,13 +161,11 @@ jobs: name: aarch64-apple-darwin runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: aarch64-apple-darwin - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages @@ -188,7 +178,7 @@ jobs: - name: Strip debug symbols run: strip -x packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-apple-aarch64 path: packages/*/*/*.node @@ -204,14 +194,14 @@ jobs: - build-linux-gnu-arm - build-apple-silicon steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release - name: Download artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: path: artifacts - name: Move artifacts diff --git a/.github/workflows/tag-release.yml b/.github/workflows/tag-release.yml index 3a63092a8d5..fea273564a0 100644 --- a/.github/workflows/tag-release.yml +++ b/.github/workflows/tag-release.yml @@ -14,13 +14,11 @@ jobs: name: ${{ matrix.os }} runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release @@ -28,7 +26,7 @@ jobs: if: ${{ matrix.os == 'macos-latest' }} run: strip -x packages/*/*/*.node # Must use -x on macOS. This produces larger results on linux. - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-${{ matrix.os }} path: packages/*/*/*.node @@ -41,22 +39,20 @@ jobs: container: image: docker.io/mischnic/centos7-node16 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install yarn run: npm install --global yarn@1 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: strip packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-linux-gnu-x64 path: packages/*/*/*.node @@ -81,13 +77,11 @@ jobs: name: ${{ matrix.target }} runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: ${{ matrix.target }} - name: Install cross compile toolchains run: | @@ -102,7 +96,7 @@ jobs: - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: ${{ matrix.strip }} packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-${{ matrix.target }} path: packages/*/*/*.node @@ -136,15 +130,13 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GHCR_TOKEN }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install build tools run: apk add --no-cache python3 make gcc g++ musl-dev curl - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: ${{ matrix.target }} - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages @@ -155,7 +147,7 @@ jobs: - name: Strip debug symbols # https://github.com/rust-lang/rust/issues/46034 run: ${{ matrix.strip }} packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-linux-musl path: packages/*/*/*.node @@ -169,13 +161,11 @@ jobs: name: aarch64-apple-darwin runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Rust - uses: actions-rs/toolchain@v1 + uses: dtolnay/rust-toolchain@master with: toolchain: stable - profile: minimal - override: true target: aarch64-apple-darwin - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages @@ -188,7 +178,7 @@ jobs: - name: Strip debug symbols run: strip -x packages/*/*/*.node - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: bindings-apple-aarch64 path: packages/*/*/*.node @@ -204,14 +194,14 @@ jobs: - build-linux-gnu-arm - build-apple-silicon steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: bahmutov/npm-install@v1.1.0 - name: Build native packages run: yarn build-native-release - name: Download artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: path: artifacts - name: Move artifacts diff --git a/yarn.lock b/yarn.lock index 90c31548666..ec3a3efe982 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9294,14 +9294,14 @@ jstransformer@1.0.0: object.assign "^4.1.3" jszip@^3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.7.1.tgz#bd63401221c15625a1228c556ca8a68da6fda3d9" - integrity sha512-ghL0tz1XG9ZEmRMcEN2vt7xabrDdqHHeykgARpmZ0BiIctWxM47Vt63ZO2dnp4QYt/xJVLLy5Zv1l/xRdh2byg== + version "3.10.1" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" + integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== dependencies: lie "~3.3.0" pako "~1.0.2" readable-stream "~2.3.6" - set-immediate-shim "~1.0.1" + setimmediate "^1.0.5" just-debounce@^1.0.0: version "1.0.0" @@ -10400,9 +10400,9 @@ msgpackr-extract@^3.0.2: "@msgpackr-extract/msgpackr-extract-win32-x64" "3.0.2" msgpackr@^1.9.5, msgpackr@^1.9.9: - version "1.9.9" - resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.9.9.tgz#ec71e37beb8729280847f683cb0a340eb35ce70f" - integrity sha512-sbn6mioS2w0lq1O6PpGtsv6Gy8roWM+o3o4Sqjd6DudrL/nOugY+KyJUimoWzHnf9OkO0T6broHFnYE/R05t9A== + version "1.10.1" + resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.10.1.tgz#51953bb4ce4f3494f0c4af3f484f01cfbb306555" + integrity sha512-r5VRLv9qouXuLiIBrLpl2d5ZvPt8svdQTl5/vMvE4nzDMyEX4sgW5yWhuBBj5UmgwOTWj8CIdSXn5sAfsHAWIQ== optionalDependencies: msgpackr-extract "^3.0.2" @@ -10591,18 +10591,20 @@ node-elm-compiler@^5.0.5: temp "^0.9.0" node-fetch-npm@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz#7258c9046182dca345b4208eda918daf33697ff7" - integrity sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw== + version "2.0.4" + resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4" + integrity sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg== dependencies: encoding "^0.1.11" json-parse-better-errors "^1.0.0" safe-buffer "^5.1.1" node-fetch@^2.5.0, node-fetch@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" - integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" node-forge@^1.2.1: version "1.3.0" @@ -13124,11 +13126,6 @@ set-harmonic-interval@^1.0.1: resolved "https://registry.yarnpkg.com/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz#e1773705539cdfb80ce1c3d99e7f298bb3995249" integrity sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g== -set-immediate-shim@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= - set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" @@ -13139,7 +13136,7 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" -setimmediate@^1.0.4, setimmediate@~1.0.4: +setimmediate@^1.0.4, setimmediate@^1.0.5, setimmediate@~1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= @@ -14323,6 +14320,11 @@ tr46@^3.0.0: dependencies: punycode "^2.1.1" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + "traverse@>=0.3.0 <0.4": version "0.3.9" resolved "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz#717b8f220cc0bb7b44e40514c22b2e8bbc70d8b9" @@ -15386,6 +15388,11 @@ web-namespaces@^1.0.0: resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.3.tgz#9bbf5c99ff0908d2da031f1d732492a96571a83f" integrity sha512-r8sAtNmgR0WKOKOxzuSgk09JsHlpKlB+uHi937qypOu3PZ17UxPrierFKDye/uNHjNTTEshu5PId8rojIPj/tA== +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -15421,6 +15428,14 @@ whatwg-url@^10.0.0: tr46 "^3.0.0" webidl-conversions "^7.0.0" +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06"