diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml index 9526e93d55c6..eeb04e11f066 100644 --- a/.github/workflows/auto-release.yml +++ b/.github/workflows/auto-release.yml @@ -9,7 +9,7 @@ on: # This workflow tirggers a release when merging a branch with the pattern `prepare-release/VERSION` into master. jobs: release: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 name: 'Prepare a new version' steps: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c931460b4489..69036ea7a261 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,7 +31,6 @@ env: ${{ github.workspace }}/node_modules ${{ github.workspace }}/packages/*/node_modules ${{ github.workspace }}/dev-packages/*/node_modules - ~/.cache/ms-playwright/ ~/.cache/mongodb-binaries/ # DEPENDENCY_CACHE_KEY: can't be set here because we don't have access to yarn.lock @@ -50,7 +49,7 @@ env: ${{ github.workspace }}/packages/utils/esm BUILD_CACHE_KEY: ${{ github.event.inputs.commit || github.sha }} - BUILD_PROFILING_NODE_CACHE_TARBALL_KEY: profiling-node-tarball-${{ github.event.inputs.commit || github.sha }} + BUILD_CACHE_TARBALL_KEY: tarballs-${{ github.event.inputs.commit || github.sha }} # GH will use the first restore-key it finds that matches # So it will start by looking for one from the same branch, else take the newest one it can find elsewhere @@ -63,7 +62,7 @@ env: jobs: job_get_metadata: name: Get Metadata - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 permissions: pull-requests: read steps: @@ -135,16 +134,6 @@ jobs: - 'packages/remix/**' - 'packages/node/**' - 'packages/react/**' - profiling_node: - - *shared - - 'packages/node/**' - - 'packages/node-experimental/**' - - 'packages/profiling-node/**' - - 'dev-packages/e2e-tests/test-applications/node-profiling/**' - profiling_node_bindings: - - *workflow - - 'packages/profiling-node/**' - - 'dev-packages/e2e-tests/test-applications/node-profiling/**' deno: - *shared - *browser @@ -162,8 +151,6 @@ jobs: changed_ember: ${{ steps.changed.outputs.ember }} changed_remix: ${{ steps.changed.outputs.remix }} changed_node: ${{ steps.changed.outputs.node }} - changed_profiling_node: ${{ steps.changed.outputs.profiling_node }} - changed_profiling_node_bindings: ${{ steps.changed.outputs.profiling_node_bindings }} changed_deno: ${{ steps.changed.outputs.deno }} changed_browser: ${{ steps.changed.outputs.browser }} changed_browser_integration: ${{ steps.changed.outputs.browser_integration }} @@ -183,7 +170,7 @@ jobs: job_install_deps: name: Install Dependencies needs: job_get_metadata - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 15 if: | (needs.job_get_metadata.outputs.is_gitflow_sync == 'false' && needs.job_get_metadata.outputs.has_gitflow_label == 'false') @@ -218,7 +205,7 @@ jobs: job_check_branches: name: Check PR branches needs: job_get_metadata - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 if: github.event_name == 'pull_request' permissions: pull-requests: write @@ -233,7 +220,7 @@ jobs: job_build: name: Build needs: [job_get_metadata, job_install_deps] - runs-on: ubuntu-20.04-large-js + runs-on: ubuntu-24.04-large-js timeout-minutes: 30 if: | (needs.job_get_metadata.outputs.changed_any_code == 'true' || github.event_name != 'pull_request') @@ -291,10 +278,8 @@ jobs: name: Size Check needs: [job_get_metadata, job_build] timeout-minutes: 15 - runs-on: ubuntu-20.04 - if: - github.event_name == 'pull_request' || needs.job_get_metadata.outputs.is_develop == 'true' || - needs.job_get_metadata.outputs.is_release == 'true' + runs-on: ubuntu-24.04 + if: false steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -326,7 +311,7 @@ jobs: # inter-package dependencies resolve cleanly. needs: [job_get_metadata, job_build] timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -351,7 +336,7 @@ jobs: name: Check file formatting needs: [job_get_metadata, job_install_deps] timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -374,7 +359,7 @@ jobs: name: Circular Dependency Check needs: [job_get_metadata, job_build] timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -393,8 +378,8 @@ jobs: job_artifacts: name: Upload Artifacts - needs: [job_get_metadata, job_build, job_compile_bindings_profiling_node] - runs-on: ubuntu-20.04 + needs: [job_get_metadata, job_build] + runs-on: ubuntu-24.04 # Build artifacts are only needed for releasing workflow. if: needs.job_get_metadata.outputs.is_release == 'true' steps: @@ -411,15 +396,7 @@ jobs: env: DEPENDENCY_CACHE_KEY: ${{ needs.job_build.outputs.dependency_cache_key }} - name: Pack tarballs - # Profiling tarball is built separately as we assemble the precompiled binaries - run: yarn build:tarball --ignore @sentry/profiling-node - - - name: Restore profiling tarball - uses: actions/cache/restore@v4 - with: - key: ${{ env.BUILD_PROFILING_NODE_CACHE_TARBALL_KEY }} - path: ${{ github.workspace }}/packages/*/*.tgz - + run: yarn build:tarball - name: Archive artifacts uses: actions/upload-artifact@v4 with: @@ -436,7 +413,7 @@ jobs: name: Browser Unit Tests needs: [job_get_metadata, job_build] timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -463,9 +440,7 @@ jobs: name: Bun Unit Tests needs: [job_get_metadata, job_build] timeout-minutes: 10 - runs-on: ubuntu-20.04 - strategy: - fail-fast: false + runs-on: ubuntu-24.04 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) uses: actions/checkout@v4 @@ -494,7 +469,7 @@ jobs: needs: [job_get_metadata, job_build] if: needs.job_get_metadata.outputs.changed_deno == 'true' || github.event_name != 'pull_request' timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 strategy: fail-fast: false steps: @@ -529,7 +504,7 @@ jobs: if: needs.job_get_metadata.outputs.changed_node == 'true' || github.event_name != 'pull_request' needs: [job_get_metadata, job_build] timeout-minutes: 10 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: @@ -558,40 +533,12 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} - job_profiling_node_unit_tests: - name: Node Profiling Unit Tests - needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_node == 'true' || needs.job_get_metadata.outputs.changed_profiling_node == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-latest - timeout-minutes: 10 - steps: - - name: Check out current commit - uses: actions/checkout@v4 - with: - ref: ${{ env.HEAD_COMMIT }} - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: actions/setup-python@v5 - with: - python-version: '3.11.7' - - name: Restore caches - uses: ./.github/actions/restore-cache - env: - DEPENDENCY_CACHE_KEY: ${{ needs.job_build.outputs.dependency_cache_key }} - - name: Build Configure node-gyp - run: yarn lerna run build:bindings:configure --scope @sentry/profiling-node - - name: Build Bindings for Current Environment - run: yarn build --scope @sentry/profiling-node - - name: Unit Test - run: yarn lerna run test --scope @sentry/profiling-node - job_nextjs_integration_test: name: Nextjs (Node ${{ matrix.node }}) Tests needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_nextjs == 'true' || github.event_name != 'pull_request' + if: false timeout-minutes: 25 - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: @@ -623,12 +570,9 @@ jobs: key: ${{ runner.os }}-Playwright-${{steps.playwright-version.outputs.version}} - name: Install Playwright browser if not cached if: steps.playwright-cache.outputs.cache-hit != 'true' && matrix.node >= 14 - run: npx playwright install --with-deps + run: npx playwright install env: PLAYWRIGHT_BROWSERS_PATH: ${{steps.npm-cache-dir.outputs.dir}} - - name: Install OS dependencies of Playwright if cache hit - if: steps.playwright-cache.outputs.cache-hit == 'true' && matrix.node >= 14 - run: npx playwright install-deps - name: Run tests env: NODE_VERSION: ${{ matrix.node }} @@ -639,8 +583,8 @@ jobs: job_browser_playwright_tests: name: Playwright (${{ matrix.bundle }}${{ matrix.shard && format(' {0}/{1}', matrix.shard, matrix.shards) || ''}}) Tests needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_browser_integration == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-20.04-large-js + if: false + runs-on: ubuntu-24.04-large-js timeout-minutes: 25 strategy: fail-fast: false @@ -717,12 +661,9 @@ jobs: key: ${{ runner.os }}-Playwright-${{steps.playwright-version.outputs.version}} - name: Install Playwright browser if not cached if: steps.playwright-cache.outputs.cache-hit != 'true' - run: npx playwright install --with-deps + run: npx playwright install env: PLAYWRIGHT_BROWSERS_PATH: ${{steps.npm-cache-dir.outputs.dir}} - - name: Install OS dependencies of Playwright if cache hit - if: steps.playwright-cache.outputs.cache-hit == 'true' - run: npx playwright install-deps - name: Run Playwright tests env: PW_BUNDLE: ${{ matrix.bundle }} @@ -732,8 +673,8 @@ jobs: job_browser_loader_tests: name: Playwright Loader (${{ matrix.bundle }}) Tests needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_browser_integration == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-20.04 + if: false + runs-on: ubuntu-24.04 timeout-minutes: 15 strategy: fail-fast: false @@ -773,12 +714,9 @@ jobs: key: ${{ runner.os }}-Playwright-${{steps.playwright-version.outputs.version}} - name: Install Playwright browser if not cached if: steps.playwright-cache.outputs.cache-hit != 'true' - run: npx playwright install --with-deps + run: npx playwright install env: PLAYWRIGHT_BROWSERS_PATH: ${{steps.npm-cache-dir.outputs.dir}} - - name: Install OS dependencies of Playwright if cache hit - if: steps.playwright-cache.outputs.cache-hit == 'true' - run: npx playwright install-deps - name: Run Playwright Loader tests env: PW_BUNDLE: ${{ matrix.bundle }} @@ -789,8 +727,8 @@ jobs: job_browser_integration_tests: name: Browser (${{ matrix.browser }}) Tests needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_browser == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-20.04-large-js + if: false + runs-on: ubuntu-24.04-large-js timeout-minutes: 20 strategy: fail-fast: false @@ -817,13 +755,12 @@ jobs: KARMA_BROWSER: ${{ matrix.browser }} run: | cd packages/browser - [[ $KARMA_BROWSER == WebkitHeadless ]] && yarn run playwright install-deps webkit yarn test:integration job_browser_build_tests: name: Browser Build Tests needs: [job_get_metadata, job_build] - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) @@ -850,7 +787,7 @@ jobs: job_check_for_faulty_dts: name: Check for faulty .d.ts files needs: [job_get_metadata, job_build] - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) @@ -879,7 +816,7 @@ jobs: Tests needs: [job_get_metadata, job_build] if: needs.job_get_metadata.outputs.changed_node == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 15 strategy: fail-fast: false @@ -919,8 +856,8 @@ jobs: job_remix_integration_tests: name: Remix v${{ matrix.remix }} (Node ${{ matrix.node }}) ${{ matrix.tracingIntegration && 'TracingIntegration'}} Tests needs: [job_get_metadata, job_build] - if: needs.job_get_metadata.outputs.changed_remix == 'true' || github.event_name != 'pull_request' - runs-on: ubuntu-20.04 + if: false + runs-on: ubuntu-24.04 timeout-minutes: 10 strategy: fail-fast: false @@ -963,13 +900,9 @@ jobs: # - The build job was successful, not skipped # - AND if the profiling node bindings were either successful or skipped # AND if this is not a PR from a fork or dependabot - if: | - always() && needs.job_build.result == 'success' && - (needs.job_compile_bindings_profiling_node.result == 'success' || needs.job_compile_bindings_profiling_node.result == 'skipped') && - (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && - github.actor != 'dependabot[bot]' - needs: [job_get_metadata, job_build, job_compile_bindings_profiling_node] - runs-on: ubuntu-20.04-large-js + if: false + needs: [job_get_metadata, job_build] + runs-on: ubuntu-24.04-large-js timeout-minutes: 15 steps: - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) @@ -992,36 +925,12 @@ jobs: # On develop branch, we want to _store_ the cache (so it can be used by other branches), but never _restore_ from it restore-keys: ${{ env.NX_CACHE_RESTORE_KEYS }} - name: Build tarballs - run: yarn build:tarball --ignore @sentry/profiling-node - - # Rebuild profiling by compiling TS and pull the precompiled binary artifacts - - name: Build Profiling Node - if: | - (needs.job_get_metadata.outputs.changed_profiling_node_bindings == 'true') || - (needs.job_get_metadata.outputs.is_release == 'true') || - (github.event_name != 'pull_request') - run: yarn lerna run build:lib --scope @sentry/profiling-node - - - name: Extract Profiling Node Prebuilt Binaries - # @TODO: v4 breaks convenient merging of same name artifacts - # https://github.com/actions/upload-artifact/issues/478 - if: | - (needs.job_get_metadata.outputs.changed_profiling_node_bindings == 'true') || - (github.event_name != 'pull_request') - uses: actions/download-artifact@v3 - with: - name: profiling-node-binaries-${{ github.sha }} - path: ${{ github.workspace }}/packages/profiling-node/lib/ - - - name: Build Profiling tarball - run: yarn build:tarball --scope @sentry/profiling-node - # End rebuild profiling - + run: yarn build:tarball - name: Stores tarballs in cache uses: actions/cache/save@v4 with: path: ${{ github.workspace }}/packages/*/*.tgz - key: ${{ env.BUILD_PROFILING_NODE_CACHE_TARBALL_KEY }} + key: ${{ env.BUILD_CACHE_TARBALL_KEY }} job_e2e_tests: name: E2E ${{ matrix.label || matrix.test-application }} Test @@ -1029,12 +938,9 @@ jobs: # Dependabot PRs sadly also don't have access to secrets, so we skip them as well # We need to add the `always()` check here because the previous step has this as well :( # See: https://github.com/actions/runner/issues/2205 - if: - always() && needs.job_e2e_prepare.result == 'success' && - (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && - github.actor != 'dependabot[bot]' + if: false needs: [job_get_metadata, job_build, job_e2e_prepare] - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 10 env: E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }} @@ -1071,7 +977,8 @@ jobs: 'node-experimental-fastify-app', 'node-hapi-app', 'node-exports-test-app', - 'vue-3' + 'vue-3', + 'node-profiling' ] build-command: - false @@ -1116,7 +1023,7 @@ jobs: uses: actions/cache/restore@v4 with: path: ${{ github.workspace }}/packages/*/*.tgz - key: ${{ env.BUILD_PROFILING_NODE_CACHE_TARBALL_KEY }} + key: ${{ env.BUILD_CACHE_TARBALL_KEY }} - name: Get node version id: versions @@ -1152,106 +1059,16 @@ jobs: projectName: ${{ secrets.CLOUDFLARE_PROJECT_NAME }} directory: dist workingDirectory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }} - - job_profiling_e2e_tests: - name: E2E ${{ matrix.label || matrix.test-application }} Test - # We only run E2E tests for non-fork PRs because the E2E tests require secrets to work and they can't be accessed from forks - # Dependabot PRs sadly also don't have access to secrets, so we skip them as well - # We need to add the `always()` check here because the previous step has this as well :( - # See: https://github.com/actions/runner/issues/2205 - if: - # Only run profiling e2e tests if profiling node bindings have changed - always() && needs.job_e2e_prepare.result == 'success' && - (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository) && - github.actor != 'dependabot[bot]' && ( - (needs.job_get_metadata.outputs.changed_profiling_node_bindings == 'true') || - (needs.job_get_metadata.outputs.is_release == 'true') || - (github.event_name != 'pull_request') - ) - needs: [job_get_metadata, job_build, job_e2e_prepare] - runs-on: ubuntu-20.04 - timeout-minutes: 10 - env: - E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }} - E2E_TEST_DSN: ${{ secrets.E2E_TEST_DSN }} - E2E_TEST_SENTRY_ORG_SLUG: 'sentry-javascript-sdks' - E2E_TEST_SENTRY_TEST_PROJECT: 'sentry-javascript-e2e-tests' - strategy: - fail-fast: false - matrix: - test-application: ['node-profiling'] - build-command: - - false - label: - - false - steps: - - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) - uses: actions/checkout@v4 - with: - ref: ${{ env.HEAD_COMMIT }} - - uses: pnpm/action-setup@v2 - with: - version: 8.3.1 - - name: Set up Node - uses: actions/setup-node@v4 - with: - node-version-file: 'dev-packages/e2e-tests/package.json' - - name: Restore caches - uses: ./.github/actions/restore-cache - env: - DEPENDENCY_CACHE_KEY: ${{ needs.job_build.outputs.dependency_cache_key }} - - name: Build Profiling Node - run: yarn lerna run build:lib --scope @sentry/profiling-node - - name: Extract Profiling Node Prebuilt Binaries - uses: actions/download-artifact@v3 - with: - name: profiling-node-binaries-${{ github.sha }} - path: ${{ github.workspace }}/packages/profiling-node/lib/ - - name: Build Profiling tarball - run: yarn build:tarball --scope @sentry/profiling-node - - name: Restore tarball cache - uses: actions/cache/restore@v4 - with: - path: ${{ github.workspace }}/packages/*/*.tgz - key: ${{ env.BUILD_PROFILING_NODE_CACHE_TARBALL_KEY }} - - - name: Get node version - id: versions - run: | - echo "echo node=$(jq -r '.volta.node' dev-packages/e2e-tests/package.json)" >> $GITHUB_OUTPUT - - - name: Validate Verdaccio - run: yarn test:validate - working-directory: dev-packages/e2e-tests - - - name: Prepare Verdaccio - run: yarn test:prepare - working-directory: dev-packages/e2e-tests - env: - E2E_TEST_PUBLISH_SCRIPT_NODE_VERSION: ${{ steps.versions.outputs.node }} - - - name: Build E2E app - working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }} - timeout-minutes: 5 - run: yarn ${{ matrix.build-command || 'test:build' }} - - - name: Run E2E test - working-directory: dev-packages/e2e-tests/test-applications/${{ matrix.test-application }} - timeout-minutes: 5 - run: yarn test:assert - job_required_jobs_passed: name: All required jobs passed or were skipped needs: [ job_build, - job_compile_bindings_profiling_node, job_browser_build_tests, job_browser_unit_tests, job_bun_unit_tests, job_deno_unit_tests, job_node_unit_tests, - job_profiling_node_unit_tests, job_nextjs_integration_test, job_node_integration_tests, job_browser_playwright_tests, @@ -1259,7 +1076,6 @@ jobs: job_browser_loader_tests, job_remix_integration_tests, job_e2e_tests, - job_profiling_e2e_tests, job_artifacts, job_lint, job_check_format, @@ -1267,7 +1083,7 @@ jobs: ] # Always run this, even if a dependent job failed if: always() - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Check for failures if: contains(needs.*.result, 'failure') @@ -1277,7 +1093,7 @@ jobs: overhead_metrics: name: Overhead metrics needs: [job_get_metadata, job_build] - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 30 if: | contains(github.event.pull_request.labels.*.name, 'ci-overhead-measurements') @@ -1314,259 +1130,3 @@ jobs: with: name: ${{ steps.process.outputs.artifactName }} path: ${{ steps.process.outputs.artifactPath }} - - job_compile_bindings_profiling_node: - name: Compile & Test Profiling Bindings (v${{ matrix.node }}) ${{ matrix.target_platform || matrix.os }}, ${{ matrix.node || matrix.container }}, ${{ matrix.arch || matrix.container }}, ${{ contains(matrix.container, 'alpine') && 'musl' || 'glibc' }} - needs: [job_get_metadata, job_install_deps, job_build] - # Compiling bindings can be very slow (especially on windows), so only run precompile - # Skip precompile unless we are on a release branch as precompile slows down CI times. - if: | - (needs.job_get_metadata.outputs.changed_profiling_node_bindings == 'true') || - (needs.job_get_metadata.outputs.is_release == 'true') || - (github.event_name != 'pull_request') - runs-on: ${{ matrix.os }} - container: ${{ matrix.container }} - timeout-minutes: 30 - strategy: - fail-fast: false - matrix: - include: - # x64 glibc - - os: ubuntu-20.04 - node: 16 - - os: ubuntu-20.04 - node: 18 - - os: ubuntu-20.04 - node: 20 - - os: ubuntu-20.04 - node: 22 - - # x64 musl - - os: ubuntu-20.04 - container: node:16-alpine3.16 - node: 16 - - os: ubuntu-20.04 - container: node:18-alpine3.17 - node: 18 - - os: ubuntu-20.04 - container: node:20-alpine3.17 - node: 20 - - os: ubuntu-20.04 - container: node:22-alpine3.18 - node: 22 - - # arm64 glibc - - os: ubuntu-20.04 - arch: arm64 - node: 16 - - os: ubuntu-20.04 - arch: arm64 - node: 18 - - os: ubuntu-20.04 - arch: arm64 - node: 20 - - os: ubuntu-20.04 - arch: arm64 - node: 22 - - # arm64 musl - - os: ubuntu-20.04 - container: node:16-alpine3.16 - arch: arm64 - node: 16 - - os: ubuntu-20.04 - arch: arm64 - container: node:18-alpine3.17 - node: 18 - - os: ubuntu-20.04 - arch: arm64 - container: node:20-alpine3.17 - node: 20 - - os: ubuntu-20.04 - arch: arm64 - container: node:22-alpine3.18 - node: 22 - - # macos x64 - - os: macos-13 - node: 16 - arch: x64 - - os: macos-13 - node: 18 - arch: x64 - - os: macos-13 - node: 20 - arch: x64 - - os: macos-13 - node: 22 - arch: x64 - - # macos arm64 - - os: macos-13 - arch: arm64 - node: 16 - target_platform: darwin - - os: macos-13 - arch: arm64 - node: 18 - target_platform: darwin - - os: macos-13 - arch: arm64 - node: 20 - target_platform: darwin - - os: macos-13 - arch: arm64 - node: 22 - target_platform: darwin - - # windows x64 - - os: windows-2022 - node: 16 - arch: x64 - - os: windows-2022 - node: 18 - arch: x64 - - os: windows-2022 - node: 20 - arch: x64 - - os: windows-2022 - node: 22 - arch: x64 - - steps: - - name: Setup (alpine) - if: contains(matrix.container, 'alpine') - run: | - apk add --no-cache build-base git g++ make curl python3 - ln -sf python3 /usr/bin/python - - - name: Check out current commit (${{ needs.job_get_metadata.outputs.commit_label }}) - uses: actions/checkout@v4 - with: - ref: ${{ env.HEAD_COMMIT }} - - - name: Restore dependency cache - uses: actions/cache/restore@v4 - id: restore-dependencies - with: - path: ${{ env.CACHED_DEPENDENCY_PATHS }} - key: ${{ needs.job_install_deps.outputs.dependency_cache_key }} - enableCrossOsArchive: true - - - name: Restore build cache - uses: actions/cache/restore@v4 - id: restore-build - with: - path: ${{ env.CACHED_BUILD_PATHS }} - key: ${{ needs.job_build.outputs.dependency_cache_key }} - enableCrossOsArchive: true - - - name: Configure safe directory - run: | - git config --global --add safe.directory "*" - - - name: Install yarn - run: npm i -g yarn@1.22.19 --force - - - name: Increase yarn network timeout on Windows - if: contains(matrix.os, 'windows') - run: yarn config set network-timeout 600000 -g - - - name: Setup python - uses: actions/setup-python@v5 - if: ${{ !contains(matrix.container, 'alpine') }} - id: python-setup - with: - python-version: '3.8.10' - - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node }} - - - name: Install Dependencies - if: steps.restore-dependencies.outputs.cache-hit != 'true' - run: yarn install --frozen-lockfile --ignore-engines --ignore-scripts - - - name: Setup (arm64| ${{ contains(matrix.container, 'alpine') && 'musl' || 'glibc' }}) - if: matrix.arch == 'arm64' && !contains(matrix.container, 'alpine') && matrix.target_platform != 'darwin' - run: | - sudo apt-get update - sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu - - - name: Setup Musl - if: contains(matrix.container, 'alpine') - run: | - cd packages/profiling-node - curl -OL https://musl.cc/aarch64-linux-musl-cross.tgz - tar -xzvf aarch64-linux-musl-cross.tgz - $(pwd)/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc --version - - # configure node-gyp - - name: Configure node-gyp - if: matrix.arch != 'arm64' - run: | - cd packages/profiling-node - yarn build:bindings:configure - - - name: Configure node-gyp (arm64, ${{ contains(matrix.container, 'alpine') && 'musl' || 'glibc' }}) - if: matrix.arch == 'arm64' && matrix.target_platform != 'darwin' - run: | - cd packages/profiling-node - yarn build:bindings:configure:arm64 - - - name: Configure node-gyp (arm64, darwin) - if: matrix.arch == 'arm64' && matrix.target_platform == 'darwin' - run: | - cd packages/profiling-node - yarn build:bindings:configure:arm64 - - # build bindings - - name: Build Bindings - if: matrix.arch != 'arm64' - run: | - yarn lerna run build:bindings --scope @sentry/profiling-node - - - name: Build Bindings (arm64, ${{ contains(matrix.container, 'alpine') && 'musl' || 'glibc' }}) - if: matrix.arch == 'arm64' && contains(matrix.container, 'alpine') && matrix.target_platform != 'darwin' - run: | - cd packages/profiling-node - CC=$(pwd)/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc \ - CXX=$(pwd)/aarch64-linux-musl-cross/bin/aarch64-linux-musl-g++ \ - BUILD_ARCH=arm64 \ - yarn build:bindings - - - name: Build Bindings (arm64, ${{ contains(matrix.container, 'alpine') && 'musl' || 'glibc' }}) - if: matrix.arch == 'arm64' && !contains(matrix.container, 'alpine') && matrix.target_platform != 'darwin' - run: | - cd packages/profiling-node - CC=aarch64-linux-gnu-gcc \ - CXX=aarch64-linux-gnu-g++ \ - BUILD_ARCH=arm64 \ - yarn build:bindings:arm64 - - - name: Build Bindings (arm64, darwin) - if: matrix.arch == 'arm64' && matrix.target_platform == 'darwin' - run: | - cd packages/profiling-node - BUILD_PLATFORM=darwin \ - BUILD_ARCH=arm64 \ - yarn build:bindings:arm64 - - - name: Build Monorepo - if: steps.restore-build.outputs.cache-hit != 'true' - run: yarn build --scope @sentry/profiling-node - - - name: Test Bindings - if: matrix.arch != 'arm64' - run: | - yarn lerna run test --scope @sentry/profiling-node - - - name: Archive Binary - # @TODO: v4 breaks convenient merging of same name artifacts - # https://github.com/actions/upload-artifact/issues/478 - uses: actions/upload-artifact@v3 - with: - name: profiling-node-binaries-${{ github.sha }} - path: | - ${{ github.workspace }}/packages/profiling-node/lib/*.node diff --git a/.github/workflows/canary.yml b/.github/workflows/canary.yml index 9a856a7ce034..2d52ae7b4ef1 100644 --- a/.github/workflows/canary.yml +++ b/.github/workflows/canary.yml @@ -19,7 +19,7 @@ permissions: jobs: job_e2e_prepare: name: Prepare E2E Canary tests - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 30 steps: - name: Check out current commit @@ -49,7 +49,7 @@ jobs: job_e2e_tests: name: E2E ${{ matrix.label }} Test needs: [job_e2e_prepare] - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 15 env: E2E_TEST_AUTH_TOKEN: ${{ secrets.E2E_TEST_AUTH_TOKEN }} @@ -146,7 +146,7 @@ jobs: job_ember_canary_test: name: Ember Canary Tests - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 30 strategy: fail-fast: false diff --git a/.github/workflows/clear-cache.yml b/.github/workflows/clear-cache.yml index 40f7141764c3..0326af79d8b4 100644 --- a/.github/workflows/clear-cache.yml +++ b/.github/workflows/clear-cache.yml @@ -5,7 +5,7 @@ on: jobs: clear-caches: name: Delete all caches - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: Clear caches uses: easimon/wipe-cache@v2 diff --git a/.github/workflows/enforce-license-compliance.yml b/.github/workflows/enforce-license-compliance.yml index b6fcd418e01e..7ccaebf80ded 100644 --- a/.github/workflows/enforce-license-compliance.yml +++ b/.github/workflows/enforce-license-compliance.yml @@ -8,7 +8,7 @@ on: jobs: enforce-license-compliance: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 steps: - name: 'Enforce License Compliance' uses: getsentry/action-enforce-license-compliance@main diff --git a/.github/workflows/flaky-test-detector.yml b/.github/workflows/flaky-test-detector.yml index d499c12d661b..40029768c2a7 100644 --- a/.github/workflows/flaky-test-detector.yml +++ b/.github/workflows/flaky-test-detector.yml @@ -23,7 +23,7 @@ concurrency: jobs: flaky-detector: - runs-on: ubuntu-20.04-large-js + runs-on: ubuntu-24.04-large-js timeout-minutes: 60 name: 'Check tests for flakiness' # Also skip if PR is from master -> develop diff --git a/.github/workflows/gitflow-sync-develop.yml b/.github/workflows/gitflow-sync-develop.yml index 612d2802a580..77fe3d7f9ccc 100644 --- a/.github/workflows/gitflow-sync-develop.yml +++ b/.github/workflows/gitflow-sync-develop.yml @@ -17,7 +17,7 @@ env: jobs: main: name: Create PR master->develop - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 permissions: pull-requests: write contents: write diff --git a/.github/workflows/release-size-info.yml b/.github/workflows/release-size-info.yml index 01197d02c0b7..8f099f654be6 100644 --- a/.github/workflows/release-size-info.yml +++ b/.github/workflows/release-size-info.yml @@ -13,7 +13,7 @@ on: # It fetches the size-limit info from the release branch and adds it to the release jobs: release-size-info: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 name: 'Add size-limit info to release' steps: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e55d7b9470fb..3ed3b05ba896 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,7 +14,7 @@ on: default: v7 jobs: release: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 name: 'Release a new version' steps: - uses: actions/checkout@v4 diff --git a/dev-packages/browser-integration-tests/package.json b/dev-packages/browser-integration-tests/package.json index ae7dd429ccbe..50901438ce81 100644 --- a/dev-packages/browser-integration-tests/package.json +++ b/dev-packages/browser-integration-tests/package.json @@ -13,7 +13,6 @@ "lint": "eslint . --format stylish", "fix": "eslint . --format stylish --fix", "type-check": "tsc", - "postinstall": "yarn install-browsers", "pretest": "yarn clean && yarn type-check", "test": "yarn test:all --project='chromium'", "test:all": "npx playwright test -c playwright.browser.config.ts", diff --git a/dev-packages/e2e-tests/test-applications/node-profiling/.npmrc b/dev-packages/e2e-tests/test-applications/node-profiling/.npmrc index 949fbddc2343..070f80f05092 100644 --- a/dev-packages/e2e-tests/test-applications/node-profiling/.npmrc +++ b/dev-packages/e2e-tests/test-applications/node-profiling/.npmrc @@ -1,2 +1,2 @@ -# @sentry:registry=http://127.0.0.1:4873 -# @sentry-internal:registry=http://127.0.0.1:4873 +@sentry:registry=http://127.0.0.1:4873 +@sentry-internal:registry=http://127.0.0.1:4873 diff --git a/dev-packages/node-integration-tests/package.json b/dev-packages/node-integration-tests/package.json index 64c8fe6d0389..75705150ab83 100644 --- a/dev-packages/node-integration-tests/package.json +++ b/dev-packages/node-integration-tests/package.json @@ -28,7 +28,7 @@ }, "dependencies": { "@hapi/hapi": "^20.3.0", - "@prisma/client": "3.15.2", + "@prisma/client": "^4.0.0", "@sentry/node": "7.120.3", "@sentry/tracing": "7.120.3", "@sentry/types": "7.120.3", diff --git a/dev-packages/node-integration-tests/suites/tracing-experimental/mongodb/test.ts b/dev-packages/node-integration-tests/suites/tracing-experimental/mongodb/test.ts index 83018f4c9a3d..28b07ed9fac0 100644 --- a/dev-packages/node-integration-tests/suites/tracing-experimental/mongodb/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing-experimental/mongodb/test.ts @@ -81,7 +81,8 @@ conditionalTest({ min: 14 })('MongoDB experimental Test', () => { ]), }; - test('CJS - should auto-instrument `mongodb` package.', done => { + // eslint-disable-next-line jest/no-disabled-tests + test.skip('CJS - should auto-instrument `mongodb` package.', done => { createRunner(__dirname, 'scenario.js').expect({ transaction: EXPECTED_TRANSACTION }).start(done); }); }); diff --git a/dev-packages/node-integration-tests/suites/tracing-experimental/mongoose/test.ts b/dev-packages/node-integration-tests/suites/tracing-experimental/mongoose/test.ts index 1a246d8ec5b9..563a638c13f5 100644 --- a/dev-packages/node-integration-tests/suites/tracing-experimental/mongoose/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing-experimental/mongoose/test.ts @@ -48,7 +48,8 @@ conditionalTest({ min: 14 })('Mongoose experimental Test', () => { ]), }; - test('CJS - should auto-instrument `mongoose` package.', done => { + // eslint-disable-next-line jest/no-disabled-tests + test.skip('CJS - should auto-instrument `mongoose` package.', done => { createRunner(__dirname, 'scenario.js').expect({ transaction: EXPECTED_TRANSACTION }).start(done); }); }); diff --git a/dev-packages/node-integration-tests/suites/tracing-new/auto-instrument/mongodb/test.ts b/dev-packages/node-integration-tests/suites/tracing-new/auto-instrument/mongodb/test.ts index d2ce56f314ee..325c95f146e5 100644 --- a/dev-packages/node-integration-tests/suites/tracing-new/auto-instrument/mongodb/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing-new/auto-instrument/mongodb/test.ts @@ -19,7 +19,8 @@ conditionalTest({ min: 12 })('MongoDB Test', () => { } }); - test('should auto-instrument `mongodb` package.', async () => { + // eslint-disable-next-line jest/no-disabled-tests + test.skip('should auto-instrument `mongodb` package.', async () => { const env = await TestEnv.init(__dirname); const envelope = await env.getEnvelopeRequest({ envelopeType: 'transaction' }); diff --git a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/package.json b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/package.json index a83d6bfb312b..a296cc01abe9 100644 --- a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/package.json +++ b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/package.json @@ -16,7 +16,7 @@ "author": "", "license": "ISC", "dependencies": { - "@prisma/client": "3.12.0", - "prisma": "^3.12.0" + "@prisma/client": "^4.0.0", + "prisma": "^4.0.0" } } diff --git a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/setup.ts b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/setup.ts index d5c4e552b397..82558eb540b5 100755 --- a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/setup.ts +++ b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/setup.ts @@ -3,7 +3,7 @@ import { parseSemver } from '@sentry/utils'; const NODE_VERSION = parseSemver(process.versions.node); -if (NODE_VERSION.major && NODE_VERSION.major < 12) { +if (NODE_VERSION.major && NODE_VERSION.major < 14) { // eslint-disable-next-line no-console console.warn(`Skipping Prisma tests on Node: ${NODE_VERSION.major}`); process.exit(0); diff --git a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/test.ts b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/test.ts index 4a76f328dd34..a47f66f7e470 100644 --- a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/test.ts @@ -1,6 +1,6 @@ import { TestEnv, assertSentryTransaction, conditionalTest } from '../../../utils'; -conditionalTest({ min: 12 })('Prisma ORM Integration', () => { +conditionalTest({ min: 14 })('Prisma ORM Integration', () => { test('should instrument Prisma client for tracing.', async () => { const env = await TestEnv.init(__dirname); const envelope = await env.getEnvelopeRequest({ envelopeType: 'transaction' }); @@ -11,17 +11,17 @@ conditionalTest({ min: 12 })('Prisma ORM Integration', () => { { description: 'User create', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'create', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'create', 'db.prisma.version': '4.16.2' }, }, { description: 'User findMany', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'findMany', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'findMany', 'db.prisma.version': '4.16.2' }, }, { description: 'User deleteMany', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'deleteMany', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'deleteMany', 'db.prisma.version': '4.16.2' }, }, ], }); diff --git a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/yarn.lock b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/yarn.lock index d228adebd621..0be61c20712a 100644 --- a/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/yarn.lock +++ b/dev-packages/node-integration-tests/suites/tracing-new/prisma-orm/yarn.lock @@ -2,26 +2,26 @@ # yarn lockfile v1 -"@prisma/client@3.12.0": - version "3.12.0" - resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.12.0.tgz#a0eb49ffea5c128dd11dffb896d7139a60073d12" - integrity sha512-4NEQjUcWja/NVBvfuDFscWSk1/rXg3+wj+TSkqXCb1tKlx/bsUE00rxsvOvGg7VZ6lw1JFpGkwjwmsOIc4zvQw== +"@prisma/client@^4.0.0": + version "4.16.2" + resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.16.2.tgz#3bb9ebd49b35c8236b3d468d0215192267016e2b" + integrity sha512-qCoEyxv1ZrQ4bKy39GnylE8Zq31IRmm8bNhNbZx7bF2cU5aiCCnSa93J2imF88MBjn7J9eUQneNxUQVJdl/rPQ== dependencies: - "@prisma/engines-version" "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" + "@prisma/engines-version" "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" -"@prisma/engines-version@3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980": - version "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" - resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980.tgz#829ca3d9d0d92555f44644606d4edfd45b2f5886" - integrity sha512-o+jo8d7ZEiVpcpNWUDh3fj2uPQpBxl79XE9ih9nkogJbhw6P33274SHnqheedZ7PyvPIK/mvU8MLNYgetgXPYw== +"@prisma/engines-version@4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81": + version "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" + resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81.tgz#d3b5dcf95b6d220e258cbf6ae19b06d30a7e9f14" + integrity sha512-q617EUWfRIDTriWADZ4YiWRZXCa/WuhNgLTVd+HqWLffjMSPzyM5uOWoauX91wvQClSKZU4pzI4JJLQ9Kl62Qg== -"@prisma/engines@3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980": - version "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" - resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980.tgz#e52e364084c4d05278f62768047b788665e64a45" - integrity sha512-zULjkN8yhzS7B3yeEz4aIym4E2w1ChrV12i14pht3ePFufvsAvBSoZ+tuXMvfSoNTgBS5E4bolRzLbMmbwkkMQ== +"@prisma/engines@4.16.2": + version "4.16.2" + resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.16.2.tgz#5ec8dd672c2173d597e469194916ad4826ce2e5f" + integrity sha512-vx1nxVvN4QeT/cepQce68deh/Turxy5Mr+4L4zClFuK1GlxN3+ivxfuv+ej/gvidWn1cE1uAhW7ALLNlYbRUAw== -prisma@^3.12.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/prisma/-/prisma-3.12.0.tgz#9675e0e72407122759d3eadcb6d27cdccd3497bd" - integrity sha512-ltCMZAx1i0i9xuPM692Srj8McC665h6E5RqJom999sjtVSccHSD8Z+HSdBN2183h9PJKvC5dapkn78dd0NWMBg== +prisma@^4.0.0: + version "4.16.2" + resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.16.2.tgz#469e0a0991c6ae5bcde289401726bb012253339e" + integrity sha512-SYCsBvDf0/7XSJyf2cHTLjLeTLVXYfqp7pG5eEVafFLeT0u/hLFz/9W196nDRGUOo1JfPatAEb+uEnTQImQC1g== dependencies: - "@prisma/engines" "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" + "@prisma/engines" "4.16.2" diff --git a/dev-packages/node-integration-tests/suites/tracing/auto-instrument/mongodb/test.ts b/dev-packages/node-integration-tests/suites/tracing/auto-instrument/mongodb/test.ts index d2ce56f314ee..325c95f146e5 100644 --- a/dev-packages/node-integration-tests/suites/tracing/auto-instrument/mongodb/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing/auto-instrument/mongodb/test.ts @@ -19,7 +19,8 @@ conditionalTest({ min: 12 })('MongoDB Test', () => { } }); - test('should auto-instrument `mongodb` package.', async () => { + // eslint-disable-next-line jest/no-disabled-tests + test.skip('should auto-instrument `mongodb` package.', async () => { const env = await TestEnv.init(__dirname); const envelope = await env.getEnvelopeRequest({ envelopeType: 'transaction' }); diff --git a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/package.json b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/package.json index a83d6bfb312b..a296cc01abe9 100644 --- a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/package.json +++ b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/package.json @@ -16,7 +16,7 @@ "author": "", "license": "ISC", "dependencies": { - "@prisma/client": "3.12.0", - "prisma": "^3.12.0" + "@prisma/client": "^4.0.0", + "prisma": "^4.0.0" } } diff --git a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/setup.ts b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/setup.ts index d5c4e552b397..82558eb540b5 100755 --- a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/setup.ts +++ b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/setup.ts @@ -3,7 +3,7 @@ import { parseSemver } from '@sentry/utils'; const NODE_VERSION = parseSemver(process.versions.node); -if (NODE_VERSION.major && NODE_VERSION.major < 12) { +if (NODE_VERSION.major && NODE_VERSION.major < 14) { // eslint-disable-next-line no-console console.warn(`Skipping Prisma tests on Node: ${NODE_VERSION.major}`); process.exit(0); diff --git a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/test.ts b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/test.ts index 4a76f328dd34..a47f66f7e470 100644 --- a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/test.ts +++ b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/test.ts @@ -1,6 +1,6 @@ import { TestEnv, assertSentryTransaction, conditionalTest } from '../../../utils'; -conditionalTest({ min: 12 })('Prisma ORM Integration', () => { +conditionalTest({ min: 14 })('Prisma ORM Integration', () => { test('should instrument Prisma client for tracing.', async () => { const env = await TestEnv.init(__dirname); const envelope = await env.getEnvelopeRequest({ envelopeType: 'transaction' }); @@ -11,17 +11,17 @@ conditionalTest({ min: 12 })('Prisma ORM Integration', () => { { description: 'User create', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'create', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'create', 'db.prisma.version': '4.16.2' }, }, { description: 'User findMany', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'findMany', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'findMany', 'db.prisma.version': '4.16.2' }, }, { description: 'User deleteMany', op: 'db.prisma', - data: { 'db.system': 'postgresql', 'db.operation': 'deleteMany', 'db.prisma.version': '3.12.0' }, + data: { 'db.system': 'postgresql', 'db.operation': 'deleteMany', 'db.prisma.version': '4.16.2' }, }, ], }); diff --git a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/yarn.lock b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/yarn.lock index d228adebd621..0be61c20712a 100644 --- a/dev-packages/node-integration-tests/suites/tracing/prisma-orm/yarn.lock +++ b/dev-packages/node-integration-tests/suites/tracing/prisma-orm/yarn.lock @@ -2,26 +2,26 @@ # yarn lockfile v1 -"@prisma/client@3.12.0": - version "3.12.0" - resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.12.0.tgz#a0eb49ffea5c128dd11dffb896d7139a60073d12" - integrity sha512-4NEQjUcWja/NVBvfuDFscWSk1/rXg3+wj+TSkqXCb1tKlx/bsUE00rxsvOvGg7VZ6lw1JFpGkwjwmsOIc4zvQw== +"@prisma/client@^4.0.0": + version "4.16.2" + resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.16.2.tgz#3bb9ebd49b35c8236b3d468d0215192267016e2b" + integrity sha512-qCoEyxv1ZrQ4bKy39GnylE8Zq31IRmm8bNhNbZx7bF2cU5aiCCnSa93J2imF88MBjn7J9eUQneNxUQVJdl/rPQ== dependencies: - "@prisma/engines-version" "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" + "@prisma/engines-version" "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" -"@prisma/engines-version@3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980": - version "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" - resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980.tgz#829ca3d9d0d92555f44644606d4edfd45b2f5886" - integrity sha512-o+jo8d7ZEiVpcpNWUDh3fj2uPQpBxl79XE9ih9nkogJbhw6P33274SHnqheedZ7PyvPIK/mvU8MLNYgetgXPYw== +"@prisma/engines-version@4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81": + version "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" + resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81.tgz#d3b5dcf95b6d220e258cbf6ae19b06d30a7e9f14" + integrity sha512-q617EUWfRIDTriWADZ4YiWRZXCa/WuhNgLTVd+HqWLffjMSPzyM5uOWoauX91wvQClSKZU4pzI4JJLQ9Kl62Qg== -"@prisma/engines@3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980": - version "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" - resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980.tgz#e52e364084c4d05278f62768047b788665e64a45" - integrity sha512-zULjkN8yhzS7B3yeEz4aIym4E2w1ChrV12i14pht3ePFufvsAvBSoZ+tuXMvfSoNTgBS5E4bolRzLbMmbwkkMQ== +"@prisma/engines@4.16.2": + version "4.16.2" + resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-4.16.2.tgz#5ec8dd672c2173d597e469194916ad4826ce2e5f" + integrity sha512-vx1nxVvN4QeT/cepQce68deh/Turxy5Mr+4L4zClFuK1GlxN3+ivxfuv+ej/gvidWn1cE1uAhW7ALLNlYbRUAw== -prisma@^3.12.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/prisma/-/prisma-3.12.0.tgz#9675e0e72407122759d3eadcb6d27cdccd3497bd" - integrity sha512-ltCMZAx1i0i9xuPM692Srj8McC665h6E5RqJom999sjtVSccHSD8Z+HSdBN2183h9PJKvC5dapkn78dd0NWMBg== +prisma@^4.0.0: + version "4.16.2" + resolved "https://registry.yarnpkg.com/prisma/-/prisma-4.16.2.tgz#469e0a0991c6ae5bcde289401726bb012253339e" + integrity sha512-SYCsBvDf0/7XSJyf2cHTLjLeTLVXYfqp7pG5eEVafFLeT0u/hLFz/9W196nDRGUOo1JfPatAEb+uEnTQImQC1g== dependencies: - "@prisma/engines" "3.12.0-37.22b822189f46ef0dc5c5b503368d1bee01213980" + "@prisma/engines" "4.16.2" diff --git a/packages/profiling-node/README.md b/packages/profiling-node/README.md index 90e15b738a56..3f575e68250e 100644 --- a/packages/profiling-node/README.md +++ b/packages/profiling-node/README.md @@ -75,8 +75,6 @@ We currently ship prebuilt binaries for a few of the most common platforms and n - Linux x64 (glibc) - Windows x64 -For a more detailed list, see job_compile_bindings_profiling_node job in our build.yml github action workflow. - ### Bundling If you are looking to squeeze some extra performance or improve cold start in your application (especially true for diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-108.node new file mode 100644 index 000000000000..c18ddeb81a14 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-115.node new file mode 100644 index 000000000000..be2e684d7dfa Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-127.node new file mode 100644 index 000000000000..d96ecfac04e0 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-93.node new file mode 100644 index 000000000000..e3604bf78ef2 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-arm64-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-108.node new file mode 100644 index 000000000000..c7020d6fb5cf Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-115.node new file mode 100644 index 000000000000..1002b5e41dca Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-127.node new file mode 100644 index 000000000000..1acf05ce758a Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-93.node new file mode 100644 index 000000000000..afac313441b1 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-darwin-x64-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-108.node new file mode 100644 index 000000000000..f96a35d3b058 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-115.node new file mode 100644 index 000000000000..f96a35d3b058 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-127.node new file mode 100644 index 000000000000..81be9af8ae8b Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-93.node new file mode 100644 index 000000000000..23e2e2da64a7 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-glibc-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-108.node new file mode 100644 index 000000000000..4325dcb030b6 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-115.node new file mode 100644 index 000000000000..4325dcb030b6 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-127.node new file mode 100644 index 000000000000..4325dcb030b6 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-93.node new file mode 100644 index 000000000000..73c08c4786be Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-arm64-musl-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-108.node new file mode 100755 index 000000000000..29e0bab8db5e Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-115.node new file mode 100644 index 000000000000..29e0bab8db5e Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-127.node new file mode 100644 index 000000000000..e7ada3c68713 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-93.node new file mode 100644 index 000000000000..d9a28f594448 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-glibc-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-108.node new file mode 100644 index 000000000000..c9afa8278a61 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-115.node new file mode 100644 index 000000000000..c9afa8278a61 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-127.node new file mode 100644 index 000000000000..bd46dd7381d8 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-93.node new file mode 100644 index 000000000000..8d6d728a45d2 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-linux-x64-musl-93.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-108.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-108.node new file mode 100644 index 000000000000..eff0bc19e17c Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-108.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-115.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-115.node new file mode 100644 index 000000000000..88dff4c882f5 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-115.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-127.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-127.node new file mode 100644 index 000000000000..d284c50b87a4 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-127.node differ diff --git a/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-93.node b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-93.node new file mode 100644 index 000000000000..4bd712665d63 Binary files /dev/null and b/packages/profiling-node/compiled-bindings/sentry_cpu_profiler-win32-x64-93.node differ diff --git a/packages/profiling-node/package.json b/packages/profiling-node/package.json index 5efa2356766f..148213ef855c 100644 --- a/packages/profiling-node/package.json +++ b/packages/profiling-node/package.json @@ -38,7 +38,6 @@ "scripts/prune-profiler-binaries.js" ], "scripts": { - "install": "node scripts/check-build.js", "clean": "rm -rf build && rm -rf lib", "lint": "yarn lint:eslint && yarn lint:clang", "lint:eslint": "eslint . --format stylish", @@ -46,23 +45,19 @@ "fix": "eslint . --format stylish --fix", "lint:fix": "yarn fix:eslint && yarn fix:clang", "lint:fix:clang": "node clang-format.js --fix", - "build": "yarn build:lib && yarn build:bindings:configure && yarn build:bindings", + "build": "yarn build:lib && yarn build:copy-bindings", "build:lib": "yarn build:types && rollup -c rollup.npm.config.mjs", - "build:transpile": "yarn build:bindings:configure && yarn build:bindings && yarn build:lib", + "build:transpile": "yarn build:copy-bindings && yarn build:lib", "build:types:downlevel": "yarn downlevel-dts lib/types lib/types-ts3.8 --to ts3.8", "build:types": "tsc -p tsconfig.types.json && yarn build:types:downlevel", "build:types:watch": "tsc -p tsconfig.types.json --watch", - "build:bindings:configure": "node-gyp configure", - "build:bindings:configure:arm64": "node-gyp configure --arch=arm64 --target_arch=arm64", - "build:bindings": "node-gyp build && node scripts/copy-target.js", - "build:bindings:arm64": "node-gyp build --arch=arm64 && node scripts/copy-target.js", - "build:dev": "yarn clean && yarn build:bindings:configure && yarn build", + "build:copy-bindings": "cp -r compiled-bindings/ lib/", + "build:dev": "yarn clean && yarn build", "build:transpile:watch": "rollup -c rollup.npm.config.mjs --watch", "build:watch": "run-p build:transpile:watch build:types:watch", "build:tarball": "npm pack", - "test:watch": "cross-env SENTRY_PROFILER_BINARY_DIR=build jest --watch", - "test:bundle": "node test-binaries.esbuild.js", - "test": "cross-env SENTRY_PROFILER_BINARY_DIR=lib jest --config jest.config.js" + "test:watch": "cross-env SENTRY_PROFILER_BINARY_DIR=compiled-bindings jest --watch", + "test": "cross-env SENTRY_PROFILER_BINARY_DIR=compiled-bindings jest --config jest.config.js" }, "dependencies": { "detect-libc": "^2.0.2", diff --git a/packages/remix/test/integration/package.json b/packages/remix/test/integration/package.json index 03068150e6f8..8c907db87537 100644 --- a/packages/remix/test/integration/package.json +++ b/packages/remix/test/integration/package.json @@ -36,7 +36,8 @@ "@sentry/types": "file:../../../types", "@sentry/utils": "file:../../../utils", "@vanilla-extract/css": "1.13.0", - "@vanilla-extract/integration": "6.2.4" + "@vanilla-extract/integration": "6.2.4", + "minimatch": "^9.0.0" }, "engines": { "node": ">=14" diff --git a/scripts/node-unit-tests.ts b/scripts/node-unit-tests.ts index 9c9312e76571..ed8e463966e6 100644 --- a/scripts/node-unit-tests.ts +++ b/scripts/node-unit-tests.ts @@ -19,7 +19,6 @@ const DEFAULT_SKIP_TESTS_PACKAGES = [ '@sentry/react', '@sentry/angular', '@sentry/svelte', - '@sentry/profiling-node', '@sentry/replay', '@sentry-internal/replay-canvas', '@sentry-internal/feedback', @@ -41,6 +40,8 @@ const SKIP_TEST_PACKAGES: Record = { '@sentry/opentelemetry', '@sentry/vercel-edge', '@sentry/astro', + // No bindings for Node 8 + '@sentry/profiling-node', ], legacyDeps: [ 'jsdom@15.x', @@ -61,6 +62,10 @@ const SKIP_TEST_PACKAGES: Record = { '@sentry/opentelemetry', '@sentry/vercel-edge', '@sentry/astro', + // Test binaries not supported anymore in our Github Runners + '@sentry/serverless', + // No bindings for Node 10 + '@sentry/profiling-node', ], legacyDeps: ['jsdom@16.x', 'lerna@3.13.4'], shouldES6Utils: true, @@ -73,12 +78,22 @@ const SKIP_TEST_PACKAGES: Record = { '@sentry/opentelemetry', '@sentry/vercel-edge', '@sentry/astro', + // Test binaries not supported anymore in our Github Runners + '@sentry/serverless', + // No bindings for Node 12 + '@sentry/profiling-node', ], legacyDeps: ['lerna@3.13.4'], shouldES6Utils: true, }, '14': { - ignoredPackages: ['@sentry/sveltekit', '@sentry/vercel-edge', '@sentry/astro'], + ignoredPackages: [ + '@sentry/sveltekit', + '@sentry/vercel-edge', + '@sentry/astro', + // No bindings for Node 14 + '@sentry/profiling-node', + ], legacyDeps: [], shouldES6Utils: false, }, diff --git a/yarn.lock b/yarn.lock index 2972e03a2469..c30a832042f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5137,17 +5137,17 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== -"@prisma/client@3.15.2": - version "3.15.2" - resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.15.2.tgz#2181398147afc79bfe0d83c03a88dc45b49bd365" - integrity sha512-ErqtwhX12ubPhU4d++30uFY/rPcyvjk+mdifaZO5SeM21zS3t4jQrscy8+6IyB0GIYshl5ldTq6JSBo1d63i8w== +"@prisma/client@^4.0.0": + version "4.16.2" + resolved "https://registry.yarnpkg.com/@prisma/client/-/client-4.16.2.tgz#3bb9ebd49b35c8236b3d468d0215192267016e2b" + integrity sha512-qCoEyxv1ZrQ4bKy39GnylE8Zq31IRmm8bNhNbZx7bF2cU5aiCCnSa93J2imF88MBjn7J9eUQneNxUQVJdl/rPQ== dependencies: - "@prisma/engines-version" "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" + "@prisma/engines-version" "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" -"@prisma/engines-version@3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e": - version "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" - resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e.tgz#bf5e2373ca68ce7556b967cb4965a7095e93fe53" - integrity sha512-e3k2Vd606efd1ZYy2NQKkT4C/pn31nehyLhVug6To/q8JT8FpiMrDy7zmm3KLF0L98NOQQcutaVtAPhzKhzn9w== +"@prisma/engines-version@4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81": + version "4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81" + resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-4.16.1-1.4bc8b6e1b66cb932731fb1bdbbc550d1e010de81.tgz#d3b5dcf95b6d220e258cbf6ae19b06d30a7e9f14" + integrity sha512-q617EUWfRIDTriWADZ4YiWRZXCa/WuhNgLTVd+HqWLffjMSPzyM5uOWoauX91wvQClSKZU4pzI4JJLQ9Kl62Qg== "@prisma/instrumentation@5.9.0": version "5.9.0" @@ -6549,17 +6549,8 @@ dependencies: "@types/unist" "*" -"@types/history-4@npm:@types/history@4.7.8": - version "4.7.8" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.8.tgz#49348387983075705fe8f4e02fb67f7daaec4934" - integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA== - -"@types/history-5@npm:@types/history@4.7.8": - version "4.7.8" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.8.tgz#49348387983075705fe8f4e02fb67f7daaec4934" - integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA== - -"@types/history@*": +"@types/history-4@npm:@types/history@4.7.8", "@types/history-5@npm:@types/history@4.7.8", "@types/history@*": + name "@types/history-4" version "4.7.8" resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.8.tgz#49348387983075705fe8f4e02fb67f7daaec4934" integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA== @@ -6930,15 +6921,7 @@ "@types/history" "^3" "@types/react" "*" -"@types/react-router-4@npm:@types/react-router@5.1.14": - version "5.1.14" - resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.14.tgz#e0442f4eb4c446541ad7435d44a97f8fe6df40da" - integrity sha512-LAJpqYUaCTMT2anZheoidiIymt8MuX286zoVFPM3DVb23aQBH0mAkFvzpd4LKqiolV8bBtZWT5Qp7hClCNDENw== - dependencies: - "@types/history" "*" - "@types/react" "*" - -"@types/react-router-5@npm:@types/react-router@5.1.14": +"@types/react-router-4@npm:@types/react-router@5.1.14", "@types/react-router-5@npm:@types/react-router@5.1.14": version "5.1.14" resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.14.tgz#e0442f4eb4c446541ad7435d44a97f8fe6df40da" integrity sha512-LAJpqYUaCTMT2anZheoidiIymt8MuX286zoVFPM3DVb23aQBH0mAkFvzpd4LKqiolV8bBtZWT5Qp7hClCNDENw== @@ -15619,9 +15602,9 @@ expect@^27.5.1: jest-message-util "^27.5.1" exponential-backoff@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" - integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.2.tgz#a8f26adb96bf78e8cd8ad1037928d5e5c0679d91" + integrity sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA== express@^4.10.7, express@^4.16.4, express@^4.17.1, express@^4.17.3, express@^4.18.1: version "4.18.2" @@ -26944,7 +26927,8 @@ react-refresh@0.8.3: dependencies: "@remix-run/router" "1.0.2" -"react-router-6@npm:react-router@6.3.0": +"react-router-6@npm:react-router@6.3.0", react-router@6.3.0: + name react-router-6 version "6.3.0" resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557" integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== @@ -26959,13 +26943,6 @@ react-router-dom@^6.2.2: history "^5.2.0" react-router "6.3.0" -react-router@6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557" - integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== - dependencies: - history "^5.2.0" - react@^18.0.0: version "18.0.0" resolved "https://registry.yarnpkg.com/react/-/react-18.0.0.tgz#b468736d1f4a5891f38585ba8e8fb29f91c3cb96" @@ -29666,7 +29643,7 @@ string-template@~0.2.1: resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" integrity sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0= -"string-width-cjs@npm:string-width@^4.2.0": +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -29683,15 +29660,6 @@ string-template@~0.2.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - string-width@^3.0.0, string-width@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" @@ -29796,7 +29764,7 @@ stringify-object@^3.2.1: is-obj "^1.0.1" is-regexp "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -29831,13 +29799,6 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - strip-ansi@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" @@ -32842,7 +32803,7 @@ workerpool@^6.4.0: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.4.0.tgz#f8d5cfb45fde32fa3b7af72ad617c3369567a462" integrity sha512-i3KR1mQMNwY2wx20ozq2EjISGtQWDIfV56We+yGJ5yDs8jTwQiLLaqHlkBHITlCuJnYlVRmXegxFxZg7gqI++A== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -32869,15 +32830,6 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"