CI: ERC-5485 comma change (with incremental build)#1574
Open
xinbenlv wants to merge 16 commits intoethereum:ci/incremental-htmlprooferfrom
Open
CI: ERC-5485 comma change (with incremental build)#1574xinbenlv wants to merge 16 commits intoethereum:ci/incremental-htmlprooferfrom
xinbenlv wants to merge 16 commits intoethereum:ci/incremental-htmlprooferfrom
Conversation
Collaborator
File
|
eb17f01 to
fc5b7ca
Compare
Fixes ethereum#1572 - Remove duplicate Jekyll build (was running `jekyll build` twice) - Detect changed ERC files via `gh pr diff` for targeted checking - Cache Jekyll build output keyed on EIPs repo SHA - Use Jekyll `--incremental` when cache is available - Run HTMLProofer only on changed files instead of full site - Automatic fallback to full build when non-ERC files change Made-with: Cursor
Test PR to measure HTMLProofer time with incremental build enabled. See ethereum#1572 Made-with: Cursor
fc5b7ca to
2e546bc
Compare
870c216 to
75e3393
Compare
Add another comma to ERC-5485 to trigger a fresh CI run with the path fix from the base branch (EIPS/ prefix for HTML output). Made-with: Cursor
…to test/incremental-erc5485 Made-with: Cursor # Conflicts: # .github/workflows/ci.yml
…to test/incremental-erc5485
Made-with: Cursor
…tal build Instead of manually touching file timestamps to year 2000 (which doesn't match the mtime stored in .jekyll-metadata from previous builds), restore each file's mtime to its last git commit time. This allows Jekyll --incremental to correctly identify unchanged files by comparing stable commit-based mtimes against .jekyll-metadata, rather than fighting against a mismatch between fabricated and recorded times. Changes: - Add fetch-depth: 0 to both EIPs and ERCs checkouts (needed for git log) - Add "Restore mtimes from git history" step after each checkout - Remove "Prepare Incremental Build" step (touch hack no longer needed) - Simplify Build Website condition to check cache-hit + mode directly Made-with: Cursor
Remove cache-hit check from Build Website step — Jekyll's --incremental flag is safe to use unconditionally (falls back to full build when .jekyll-metadata is missing). The previous check failed on restore-keys partial matches where cache-hit=false despite files being restored. Add .github/workflows/README.md documenting the incremental build architecture, git-restore-mtime strategy, cache scoping rules, and why cp -rp is used in the Merge Repos step. Made-with: Cursor
Made-with: Cursor # Conflicts: # .github/workflows/ci.yml
git rev-parse --short auto-adjusts length based on repo size, causing cache key mismatches (d434180 vs d434180a). Pin to 8 chars. Made-with: Cursor
Root cause found: jekyll build (without --incremental) does NOT create .jekyll-metadata. The cached artifacts from full builds contained _site but no metadata file, so subsequent incremental builds had nothing to compare against and rebuilt everything. Always using --incremental ensures .jekyll-metadata is created and cached, enabling true incremental builds on subsequent runs. Made-with: Cursor
|
The commit cc636fa (as a parent of 2c0e053) contains errors. |
4 tasks
Made-with: Cursor # Conflicts: # ERCS/erc-5485.md
4 tasks
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Purpose
Test PR to measure HTMLProofer CI time with incremental build enabled (stacked on #1573).
This PR adds a single comma to ERC-5485 and includes the CI optimization from #1573. Compare HTMLProofer timing against #1575 (baseline without optimization).
See #1572 for tracking.
Made with Cursor