fix(unplugin): arithmetic support for defineConsts #1617
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: benchmarks | |
| on: [pull_request] | |
| jobs: | |
| perf: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 50 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: '22.x' | |
| cache: 'yarn' | |
| cache-dependency-path: yarn.lock | |
| - run: corepack prepare yarn@1.22.22 --activate | |
| - name: 'Setup temporary files' | |
| run: | | |
| echo "BASE_JSON=$(mktemp)" >> $GITHUB_ENV | |
| echo "PATCH_JSON=$(mktemp)" >> $GITHUB_ENV | |
| - name: 'Benchmark base' | |
| run: | | |
| git checkout -f ${{ github.event.pull_request.base.sha }} | |
| git clean -fdx | |
| yarn install --frozen-lockfile --silent | |
| if yarn workspace benchmarks run perf -- -o ${{ env.BASE_JSON }}; then | |
| echo "Ran successfully on base branch" | |
| else | |
| echo "{}" > ${{ env.BASE_JSON }} # Empty JSON as default | |
| echo "Benchmark script not found on base branch, using default values" | |
| fi | |
| - name: 'Benchmark patch' | |
| run: | | |
| git checkout -f ${{ github.event.pull_request.head.sha }} | |
| git clean -fdx | |
| yarn install --frozen-lockfile --silent | |
| yarn workspace benchmarks run perf -- -o ${{ env.PATCH_JSON }} | |
| echo "Ran successfully on patch branch" | |
| - name: 'Collect results' | |
| id: collect | |
| run: | | |
| echo "table<<EOF" >> $GITHUB_OUTPUT | |
| yarn workspace benchmarks run compare -- ${{ env.BASE_JSON }} ${{ env.PATCH_JSON }} >> markdown | |
| cat markdown >> $GITHUB_OUTPUT | |
| echo "EOF" >> $GITHUB_OUTPUT | |
| - name: 'Post comment' | |
| uses: edumserrano/find-create-or-update-comment@v3 | |
| with: | |
| issue-number: ${{ github.event.pull_request.number }} | |
| body-includes: '<!-- workflow-benchmarks-perf-data -->' | |
| comment-author: 'github-actions[bot]' | |
| body: | | |
| <!-- workflow-benchmarks-perf-data --> | |
| ### workflow: benchmarks/perf | |
| Comparison of performance test results, measured in operations per second. Larger is better. | |
| ${{ steps.collect.outputs.table }} | |
| edit-mode: replace | |
| size: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 50 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: '22.x' | |
| cache: 'yarn' | |
| cache-dependency-path: yarn.lock | |
| - run: corepack prepare yarn@1.22.22 --activate | |
| - name: 'Setup temporary files' | |
| run: | | |
| echo "BASE_JSON=$(mktemp)" >> $GITHUB_ENV | |
| echo "PATCH_JSON=$(mktemp)" >> $GITHUB_ENV | |
| - name: 'Benchmark base' | |
| run: | | |
| git checkout -f ${{ github.event.pull_request.base.sha }} | |
| git clean -fdx | |
| yarn install --frozen-lockfile --silent | |
| if yarn workspace benchmarks run size -- -o ${{ env.BASE_JSON }}; then | |
| echo "Ran successfully on base branch" | |
| else | |
| echo "{}" > ${{ env.BASE_JSON }} # Empty JSON as default | |
| echo "Benchmark script not found on base branch, using default values" | |
| fi | |
| - name: 'Benchmark patch' | |
| run: | | |
| git checkout -f ${{ github.event.pull_request.head.sha }} | |
| git clean -fdx | |
| yarn install --frozen-lockfile --silent | |
| yarn workspace benchmarks run size -- -o ${{ env.PATCH_JSON }} | |
| echo "Ran successfully on patch branch" | |
| - name: 'Collect results' | |
| id: collect | |
| run: | | |
| echo "table<<EOF" >> $GITHUB_OUTPUT | |
| yarn workspace benchmarks run compare -- ${{ env.BASE_JSON }} ${{ env.PATCH_JSON }} >> markdown | |
| cat markdown >> $GITHUB_OUTPUT | |
| echo "EOF" >> $GITHUB_OUTPUT | |
| - name: 'Post comment' | |
| uses: edumserrano/find-create-or-update-comment@v3 | |
| with: | |
| issue-number: ${{ github.event.pull_request.number }} | |
| body-includes: '<!-- workflow-benchmarks-size-data -->' | |
| comment-author: 'github-actions[bot]' | |
| body: | | |
| <!-- workflow-benchmarks-size-data --> | |
| ### workflow: benchmarks/size | |
| Comparison of minified (terser) and compressed (brotli) size results, measured in bytes. Smaller is better. | |
| ${{ steps.collect.outputs.table }} | |
| edit-mode: replace |