Skip to content

ci(release): avoid building benchmarks on publish#1664

Merged
colinaaa merged 1 commit intolynx-family:mainfrom
colinaaa:colin/0908/release
Sep 8, 2025
Merged

ci(release): avoid building benchmarks on publish#1664
colinaaa merged 1 commit intolynx-family:mainfrom
colinaaa:colin/0908/release

Conversation

@colinaaa
Copy link
Copy Markdown
Collaborator

@colinaaa colinaaa commented Sep 8, 2025

Following up #1629.

Summary by CodeRabbit

  • Chores
    • Updated the main-branch deployment workflow to exclude internal benchmarking components from the publish build, reducing CI duration and minimizing unnecessary build work.
    • Improves pipeline efficiency and stability, leading to faster feedback on releases without altering application functionality or release artifacts.
    • No changes to error handling or other workflow steps; both regular and canary publish paths remain unaffected.

Checklist

  • Tests updated (or not required).
  • Documentation updated (or not required).
  • Changeset added, and when a BREAKING CHANGE occurs, it needs to be clearly marked (or not required).

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Sep 8, 2025

⚠️ No Changeset found

Latest commit: 1f59678

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Sep 8, 2025

📝 Walkthrough

Walkthrough

The deploy-main GitHub Actions workflow updates the Turbo build filters in the publish job to additionally exclude benchx_cli and packages matching @lynx-js/benchmark-*. No other steps or logic are changed; canary publish remains unchanged.

Changes

Cohort / File(s) Summary of Changes
CI workflow
\.github/workflows/deploy-main.yml
In the publish job’s Turbo build step, added filters --filter !benchx_cli and --filter "!@lynx-js/benchmark-*" alongside the existing exclusion for @lynx-js/web-tests. No other workflow steps modified.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Suggested reviewers

  • upupming
  • PupilTong

Poem

I twitch my nose at CI’s new art,
Hop past benchmarks, keep the cart smart.
Filters set, the lanes are clear,
Publish hops without a fear.
Carrots cached, green checks near—
Boing! to main, we volunteer. 🥕🐇

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link
Copy Markdown

codecov Bot commented Sep 8, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (3)
.github/workflows/deploy-main.yml (3)

50-52: Quote all negation filters for shell-safety and consistency.

Minor: quote the ! filters here as well.

-          corepack pnpm turbo --filter !@lynx-js/web-tests --filter !benchx_cli --filter "!@lynx-js/benchmark-*" build --summarize
+          corepack pnpm turbo --filter "!@lynx-js/web-tests" --filter "!benchx_cli" --filter "!@lynx-js/benchmark-*" build --summarize

139-141: Use $GITHUB_OUTPUT instead of deprecated set-output.

GitHub deprecated ::set-output::.

-      - name: Get current date
-        id: date
-        run: echo "::set-output name=date::$(date -u +'%Y-%m-%d %H:%M:%S')"
+      - name: Get current date
+        id: date
+        run: echo "date=$(date -u +'%Y-%m-%d %H:%M:%S')" >> "$GITHUB_OUTPUT"

185-186: Consider excluding benchmarks in canary build too (time saver).

If canary doesn’t need benchmarks, mirror the publish filters.

-          corepack pnpm turbo --filter !@lynx-js/web-tests build --summarize
+          corepack pnpm turbo --filter "!@lynx-js/web-tests" --filter "!benchx_cli" --filter "!@lynx-js/benchmark-*" build --summarize
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 79d7030 and 1f59678.

📒 Files selected for processing (1)
  • .github/workflows/deploy-main.yml (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-08-25T09:16:24.277Z
Learnt from: CR
PR: lynx-family/lynx-stack#0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-08-25T09:16:24.277Z
Learning: Always run a full build with `pnpm turbo build` before running any tests

Applied to files:

  • .github/workflows/deploy-main.yml
🔇 Additional comments (1)
.github/workflows/deploy-main.yml (1)

137-138: Fix Turbo flag order: filters must precede the task.

Placing --filter after build may be ignored; this can still build benchmarks during publish.

Apply:

-          corepack pnpm turbo --filter !@lynx-js/web-tests build --filter !benchx_cli --filter "!@lynx-js/benchmark-*" --summarize
+          corepack pnpm turbo --filter "!@lynx-js/web-tests" --filter "!benchx_cli" --filter "!@lynx-js/benchmark-*" build --summarize
⛔ Skipped due to learnings
Learnt from: CR
PR: lynx-family/lynx-stack#0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-08-25T09:16:24.277Z
Learning: Always run a full build with `pnpm turbo build` before running any tests

@relativeci
Copy link
Copy Markdown

relativeci Bot commented Sep 8, 2025

React Example

#4875 Bundle Size — 238.02KiB (0%).

1f59678(current) vs 79d7030 main#4874(baseline)

Bundle metrics  no changes
                 Current
#4875
     Baseline
#4874
No change  Initial JS 0B 0B
No change  Initial CSS 0B 0B
No change  Cache Invalidation 0% 0%
No change  Chunks 0 0
No change  Assets 4 4
No change  Modules 160 160
No change  Duplicate Modules 65 65
No change  Duplicate Code 45.84% 45.84%
No change  Packages 2 2
No change  Duplicate Packages 0 0
Bundle size by type  no changes
                 Current
#4875
     Baseline
#4874
No change  IMG 145.76KiB 145.76KiB
No change  Other 92.26KiB 92.26KiB

Bundle analysis reportBranch colinaaa:colin/0908/releaseProject dashboard


Generated by RelativeCIDocumentationReport issue

@relativeci
Copy link
Copy Markdown

relativeci Bot commented Sep 8, 2025

Web Explorer

#4866 Bundle Size — 367.43KiB (0%).

1f59678(current) vs 79d7030 main#4865(baseline)

Bundle metrics  Change 1 change
                 Current
#4866
     Baseline
#4865
No change  Initial JS 144.23KiB 144.23KiB
No change  Initial CSS 31.84KiB 31.84KiB
No change  Cache Invalidation 0% 0%
No change  Chunks 8 8
No change  Assets 8 8
Change  Modules 217(-0.46%) 218
No change  Duplicate Modules 16 16
No change  Duplicate Code 3.33% 3.33%
No change  Packages 4 4
No change  Duplicate Packages 0 0
Bundle size by type  no changes
                 Current
#4866
     Baseline
#4865
No change  JS 235.43KiB 235.43KiB
No change  Other 100.16KiB 100.16KiB
No change  CSS 31.84KiB 31.84KiB

Bundle analysis reportBranch colinaaa:colin/0908/releaseProject dashboard


Generated by RelativeCIDocumentationReport issue

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented Sep 8, 2025

CodSpeed Performance Report

Merging #1664 will improve performances by 12.82%

Comparing colinaaa:colin/0908/release (1f59678) with main (79d7030)

Summary

⚡ 1 improvements
✅ 41 untouched benchmarks

Benchmarks breakdown

Benchmark BASE HEAD Change
basic-performance-nest-level-100 6.6 ms 5.9 ms +12.82%

@colinaaa colinaaa merged commit 6f6c420 into lynx-family:main Sep 8, 2025
44 of 46 checks passed
@colinaaa colinaaa deleted the colin/0908/release branch September 8, 2025 02:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant