-
Notifications
You must be signed in to change notification settings - Fork 5.2k
chore: test yarn package #33446
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
chore: test yarn package #33446
+38
−38
Conversation
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
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
5 tasks
Builds ready [8995e6d]
UI Startup Metrics (1266 ± 64 ms)
Benchmark value 1089 exceeds gate value 1070 for chrome browserify home mean load Benchmark value 1082 exceeds gate value 1061 for chrome browserify home mean domContentLoaded Benchmark value 16 exceeds gate value 15 for chrome browserify home mean getState Benchmark value 21 exceeds gate value 18 for chrome browserify home p95 backgroundConnect Benchmark value 58 exceeds gate value 57 for chrome webpack home p95 domInteractive Benchmark value 41 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1636 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 76ms | Sum of p95 exceeds: 10ms Sum of all benchmark exceeds: 86ms Bundle size diffs
|
Builds ready [00c99da]
UI Startup Metrics (1226 ± 72 ms)
Benchmark value 21 exceeds gate value 18 for chrome browserify home p95 backgroundConnect Benchmark value 2563 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 12 exceeds gate value 11 for firefox browserify home mean getState Benchmark value 26 exceeds gate value 24 for firefox browserify home p95 getState Benchmark value 1693 exceeds gate value 1615 for firefox webpack home mean uiStartup Benchmark value 1470 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1470 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 46 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1447 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2090 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1853 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1852 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 54 exceeds gate value 50 for firefox webpack home p95 firstReactRender Benchmark value 1815 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 354ms | Sum of p95 exceeds: 845ms Sum of all benchmark exceeds: 1199ms Bundle size diffs
|
Builds ready [c3dec7c]
UI Startup Metrics (1236 ± 69 ms)
Benchmark value 1062 exceeds gate value 1061 for chrome browserify home mean domContentLoaded Benchmark value 1182 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded Benchmark value 1190 exceeds gate value 1180 for chrome browserify home p95 firstPaint Benchmark value 23 exceeds gate value 18 for chrome browserify home p95 backgroundConnect Benchmark value 2492 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 259 exceeds gate value 65 for chrome webpack home p95 setupStore Benchmark value 10 exceeds gate value 9 for firefox browserify home mean setupStore Benchmark value 41 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1690 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1690 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 1669 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 8ms | Sum of p95 exceeds: 348ms Sum of all benchmark exceeds: 356ms Bundle size diffs
|
Builds ready [c3dec7c]
UI Startup Metrics (1221 ± 68 ms)
Benchmark value 2470 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 308 exceeds gate value 65 for chrome webpack home p95 setupStore Benchmark value 1667 exceeds gate value 1660 for firefox browserify home p95 uiStartup Benchmark value 41 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 2000 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1796 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1796 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 1781 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 11ms | Sum of p95 exceeds: 754ms Sum of all benchmark exceeds: 765ms Bundle size diffs
|
Builds ready [72cdf40]
UI Startup Metrics (1238 ± 69 ms)
Benchmark value 1075 exceeds gate value 1070 for chrome browserify home mean load Benchmark value 1068 exceeds gate value 1061 for chrome browserify home mean domContentLoaded Benchmark value 1181 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded Benchmark value 1187 exceeds gate value 1180 for chrome browserify home p95 firstPaint Benchmark value 19 exceeds gate value 18 for chrome browserify home p95 backgroundConnect Benchmark value 945 exceeds gate value 940 for chrome browserify home p95 loadScripts Benchmark value 35 exceeds gate value 32 for chrome webpack home mean setupStore Benchmark value 2511 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 312 exceeds gate value 65 for chrome webpack home p95 setupStore Benchmark value 12 exceeds gate value 11 for firefox browserify home mean getState Benchmark value 1616 exceeds gate value 1615 for firefox webpack home mean uiStartup Benchmark value 1400 exceeds gate value 1380 for firefox webpack home mean load Benchmark value 1399 exceeds gate value 1380 for firefox webpack home mean domContentLoaded Benchmark value 27 exceeds gate value 26 for firefox webpack home mean backgroundConnect Benchmark value 43 exceeds gate value 38 for firefox webpack home mean firstReactRender Benchmark value 1376 exceeds gate value 1360 for firefox webpack home mean loadScripts Benchmark value 2019 exceeds gate value 1935 for firefox webpack home p95 uiStartup Benchmark value 1804 exceeds gate value 1660 for firefox webpack home p95 load Benchmark value 1803 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded Benchmark value 54 exceeds gate value 49 for firefox webpack home p95 backgroundConnect Benchmark value 51 exceeds gate value 50 for firefox webpack home p95 firstReactRender Benchmark value 1787 exceeds gate value 1630 for firefox webpack home p95 loadScripts Sum of mean exceeds: 83ms | Sum of p95 exceeds: 852ms Sum of all benchmark exceeds: 935ms Bundle size diffs
|
Builds ready [8b11857]
UI Startup Metrics (1236 ± 70 ms)
Benchmark value 1071 exceeds gate value 1070 for chrome browserify home mean load Benchmark value 1064 exceeds gate value 1061 for chrome browserify home mean domContentLoaded Benchmark value 23 exceeds gate value 18 for chrome browserify home p95 backgroundConnect Benchmark value 39 exceeds gate value 32 for chrome webpack home mean setupStore Benchmark value 2460 exceeds gate value 2454 for chrome webpack home p95 uiStartup Benchmark value 314 exceeds gate value 65 for chrome webpack home p95 setupStore Benchmark value 1418 exceeds gate value 1405 for firefox browserify home mean uiStartup Benchmark value 1248 exceeds gate value 1245 for firefox browserify home mean load Benchmark value 1248 exceeds gate value 1239 for firefox browserify home mean domContentLoaded Benchmark value 26 exceeds gate value 25 for firefox browserify home mean backgroundConnect Benchmark value 10 exceeds gate value 9 for firefox browserify home mean setupStore Benchmark value 41 exceeds gate value 38 for firefox webpack home mean firstReactRender Sum of mean exceeds: 43ms | Sum of p95 exceeds: 260ms Sum of all benchmark exceeds: 303ms Bundle size diffs
|
HowardBraham
added a commit
to MetaMask/action-checkout-and-setup
that referenced
this pull request
Jun 5, 2025
## Overview This PR improves the reliability and flexibility of the action by introducing two new features: 1. **Support for Custom Yarn Bundle URLs** 2. **Configurable Yarn Install Retries** --- ### Problem - CI workflows are intermittently failing due to HTTP 429 (rate-limiting) errors when Corepack downloads Yarn from the default registry (`https://repo.yarnpkg.com`). - Transient network issues during `yarn install` can also cause unnecessary build failures. --- ### Solution #### 1. Custom Yarn Bundle URL - **New input:** `yarn-custom-url` - When provided, the action: - Sets `COREPACK_ENABLE_UNSAFE_CUSTOM_URLS=1` (enables Corepack to fetch Yarn from non-default sources). - Prepares and activates Yarn from the specified custom URL using `corepack prepare yarn@<custom-url> --activate`. - This allows CI to use a self-hosted or alternative Yarn bundle, reducing dependency on the public Yarn registry and mitigating rate-limiting issues. #### 2. Configurable Yarn Install Retries - **New input:** `yarn-install-max-retries` (default: 5) - The `yarn --immutable` install step now uses this value to control the maximum number of retry attempts (via `MetaMask/action-retry-command@v1`). - This helps handle transient network errors more gracefully. --- ### Security & Compatibility - The custom Yarn URL logic is only triggered if the `yarn-custom-url` input is set, so local development and most workflows remain unaffected. - High-risk environments (`is-high-risk-environment: true`) are still protected: caching is disabled, and the custom Yarn logic is opt-in. - The `COREPACK_ENABLE_UNSAFE_CUSTOM_URLS` flag is only set in CI when a custom URL is provided, not globally for all users. - All new features are opt-in and maintain backward compatibility. --- ### Usage Example ```yaml - uses: MetaMask/action-checkout-and-setup@v1 with: is-high-risk-environment: 'false' yarn-custom-url: 'https://diuv6g5fj9pvx.cloudfront.net/metamask-extension/yarn-4.9.1/yarn.js#sha224.4285002185abb91fe2b781f27fd1e078086c37a7b095f6ea4ee25971' yarn-install-max-retries: 7 ``` --- ### Additional Notes - See [MetaMask/metamask-extension#33446](MetaMask/metamask-extension#33446) and [#33447](MetaMask/metamask-extension#33447) for real-world usage and validation. --- ### Checklist - [x] Adds `yarn-custom-url` and `yarn-install-max-retries` inputs - [x] Sets `COREPACK_ENABLE_UNSAFE_CUSTOM_URLS=1` only when needed - [x] Prepares and activates custom Yarn bundle if URL is provided - [x] Makes install retries configurable - [x] Update README with new input documentation --- ### References - [CI flakiness](https://github.com/MetaMask/metamask-extension/actions/runs/15070173571/job/42364452666?pr=32555) - [INFRA-2575](https://consensyssoftware.atlassian.net/browse/INFRA-2575) --------- Co-authored-by: Norbert Elter <[email protected]> Co-authored-by: Howard Braham <[email protected]>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist