Skip to content

Mark build output as generated for GitHub - #323

Merged
danleh merged 1 commit into
WebKit:mainfrom
danleh:gitattributes-generated
Oct 29, 2026
Merged

danleh merged 1 commit into
WebKit:mainfrom
danleh:gitattributes-generated

Conversation

@danleh

@danleh danleh commented Oct 29, 2026

Copy link
Copy Markdown
Contributor

GitHub collapses files marked linguist-generated in pull request diffs and leaves them out of the repository's language statistics. This adds a .gitattributes that marks the files that build scripts write:

  • Wasm workloads: everything build.sh writes to workloads/*-wasm/build/, workloads/Dart/build/, workloads/dotnet/build-aot/, workloads/dotnet/build-interp/ and workloads/transformersjs/build/. The build.log next to each of these directories stays visible, since it records the toolchain and source versions.
  • JavaScript workloads: the webpack output of npm run build in workloads/*/dist/ (babylonjs, jsdom-d3-startup, mobx-startup, prismjs, typescript-lib, validatorjs, web-ssr, web-tooling-benchmark). Where these workloads have a build/ directory (babylonjs, jsdom-d3-startup, typescript-lib, web-ssr), it holds hand-written build scripts and stays visible.
  • typescript-lib: the project sources that build/import-src-project.mjs writes to src/gen/. The README there stays visible.

Git does not use this attribute: git diff and git log -p show these files as before, and no file that JetStream loads changes.

On main, the patterns match 174 of the 961 tracked files (346 of 486 MB). Rebuild PRs get much shorter: of the Wasm toolchain updates for #277, the .NET update would show 8 of its 58 files and the Emscripten rebuild 15 of its 36, namely the hand-written files and the build logs.

Not marked: vendored files that no build script in the repository writes (such as the tfjs-wasm bundles), and files that GitHub already detects as generated, such as package-lock.json, minified files and source maps.

GitHub collapses files marked linguist-generated in pull request
diffs and leaves them out of the language statistics. Mark the files
that build scripts write:

- The build output of the Wasm workloads: workloads/*-wasm/build,
  Dart/build, dotnet/build-aot, dotnet/build-interp and
  transformersjs/build. The build.log next to each directory stays
  visible, since it records the toolchain and source versions.
- The webpack output in the JavaScript workloads' dist directories.
  Their build directories hold hand-written build scripts and stay
  visible.
- The project sources that typescript-lib's import script writes to
  src/gen.

Git itself treats these files as before, and no file that JetStream
loads changes.
@danleh
danleh requested a review from camillobruni October 29, 2026 10:57
@netlify

netlify Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for webkit-jetstream-preview ready!

Name Link
🔨 Latest commit d9374d4
🔍 Latest deploy log https://app.netlify.com/projects/webkit-jetstream-preview/deploys/6ae32694ec9b44bd11d27c91
😎 Deploy Preview https://deploy-preview-323--webkit-jetstream-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@danleh danleh added the v3.1 label Oct 29, 2026
@danleh

danleh commented Oct 29, 2026

Copy link
Copy Markdown
Contributor Author

Merging since this is not changing any workloads, just improving the review experience on GitHub.

@danleh
danleh merged commit 5fb9b49 into WebKit:main Oct 29, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants