Skip to content

Remove Codecov integration and add dependency diff workflow#178

Open
bartveneman wants to merge 12 commits intomainfrom
claude/replace-codecov-integration-b9Ybz
Open

Remove Codecov integration and add dependency diff workflow#178
bartveneman wants to merge 12 commits intomainfrom
claude/replace-codecov-integration-b9Ybz

Conversation

@bartveneman
Copy link
Member

Summary

This PR removes the Codecov integration from the build pipeline and build configuration, while adding a new GitHub Actions workflow to track dependency and bundle size changes in pull requests.

Key Changes

  • Removed Codecov integration:

    • Deleted the Codecov upload step from the test job in the CI workflow
    • Removed the @codecov/rollup-plugin dependency from package.json
    • Removed Codecov plugin configuration from tsdown.config.ts for both library and CLI builds
    • Removed CODECOV_TOKEN environment variable from the build job
  • Updated CI workflow:

    • Renamed the "Build & collect coverage" job to "Build" to reflect its new purpose
    • Removed coverage collection responsibilities from the build step
  • Added dependency diff workflow:

    • New dependency-diff job that runs only on pull requests
    • Builds and packs both the source branch and base branch
    • Uses e18e/action-dependency-diff@v1 to compare dependencies and bundle sizes
    • Provides PR comments with dependency and bundle size differences for better visibility into changes

Implementation Details

The new dependency diff workflow:

  • Checks out the repository with full history (fetch-depth: 0)
  • Builds and packages the current branch
  • Checks out the base branch, builds, and packages it
  • Compares the two packages to identify dependency and bundle size changes
  • Requires read access to contents and write access to pull requests for commenting

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn

claude added 3 commits March 22, 2026 21:01
Remove @codecov/rollup-plugin from tsdown.config.ts and package.json.
Add a dependency-diff workflow job using e18e/action-dependency-diff@v1
that runs on PRs to report dependency changes and bundle size diffs via
npm pack comparison.

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn
npm pack fails with ENOENT if the destination directory doesn't exist.

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn
@github-actions
Copy link
Contributor

github-actions bot commented Mar 22, 2026

⚠️ Duplicate Dependencies (found: 4, threshold: 1)

📦 Package 📋 Versions
@babel/helper-string-parser
2 versions
  • @projectwallace/format-css@3.0.0
    • @vitest/coverage-v8@4.1.0
      • magicast@0.5.2
        • @babel/parser@7.29.0
          • @babel/types@7.29.0
            • @babel/helper-string-parser@7.27.1

  • @projectwallace/format-css@3.0.0
    • tsdown@0.21.4
      • ...
        • @babel/parser@8.0.0-rc.2
          • @babel/types@8.0.0-rc.2
            • @babel/helper-string-parser@8.0.0-rc.2

@babel/helper-validator-identifier
2 versions
  • @projectwallace/format-css@3.0.0
    • @vitest/coverage-v8@4.1.0
      • magicast@0.5.2
        • @babel/parser@7.29.0
          • @babel/types@7.29.0
            • @babel/helper-validator-identifier@7.28.5

  • @projectwallace/format-css@3.0.0
    • tsdown@0.21.4
      • ...
        • @babel/parser@8.0.0-rc.2
          • @babel/types@8.0.0-rc.2
            • @babel/helper-validator-identifier@8.0.0-rc.2

@babel/parser
2 versions
  • @projectwallace/format-css@3.0.0
    • @vitest/coverage-v8@4.1.0
      • magicast@0.5.2
        • @babel/parser@7.29.0

  • @projectwallace/format-css@3.0.0
    • tsdown@0.21.4
      • rolldown-plugin-dts@0.22.5
        • @babel/generator@8.0.0-rc.2
          • @babel/parser@8.0.0-rc.2

@babel/types
2 versions
  • @projectwallace/format-css@3.0.0
    • @vitest/coverage-v8@4.1.0
      • magicast@0.5.2
        • @babel/parser@7.29.0
          • @babel/types@7.29.0

  • @projectwallace/format-css@3.0.0
    • tsdown@0.21.4
      • rolldown-plugin-dts@0.22.5
        • @babel/generator@8.0.0-rc.2
          • @babel/parser@8.0.0-rc.2
            • @babel/types@8.0.0-rc.2

💡 To find out what depends on a specific package, run: npm ls example-package

📊 Dependency Size Changes

Note

🎉 This PR removes 24.7 MB of dependencies.

📦 Package 📏 Size
@octokit/openapi-types@24.2.0 -4.6 MB
@octokit/openapi-types@20.0.0 -4.5 MB
zod@3.25.76 -3.6 MB
rollup@4.59.0 -2.8 MB
@codecov/bundler-plugin-core@1.9.1 -2.1 MB
@rollup/rollup-linux-x64-gnu@4.59.0 -2 MB
@octokit/plugin-rest-endpoint-methods@10.4.1 -1.6 MB
undici@5.29.0 -1.2 MB
acorn@8.14.1 -547.5 kB
@octokit/types@13.10.0 -263.7 kB
@octokit/types@12.6.0 -237.9 kB
@octokit/plugin-paginate-rest@9.2.2 -201.7 kB
unplugin@1.16.1 -192.6 kB
@octokit/endpoint@9.0.6 -91.9 kB
@actions/core@1.11.1 -90.9 kB
@fastify/busboy@2.1.1 -80.2 kB
@actions/http-client@2.2.3 -71.2 kB
tunnel@0.0.6 -64.9 kB
@octokit/request@8.4.1 -62.3 kB
@actions/exec@1.1.1 -55.4 kB
@codecov/rollup-plugin@1.9.1 -54.4 kB
@octokit/core@5.2.2 -46.8 kB
webpack-virtual-modules@0.6.2 -46.5 kB
@octokit/graphql@7.1.1 -39.6 kB
@actions/io@1.1.3 -37.1 kB
before-after-hook@2.2.3 -37 kB
chalk@4.1.2 -35 kB
color-convert@2.0.1 -27.2 kB
@octokit/auth-token@4.0.0 -24.2 kB
@actions/github@6.0.1 -23.9 kB
@octokit/request-error@5.1.1 -18.6 kB
ansi-styles@4.3.0 -17 kB
color-name@1.1.4 -6.7 kB
universal-user-agent@6.0.1 -5.8 kB
deprecation@2.3.1 -4 kB
once@1.4.0 Unknown
wrappy@1.0.2 Unknown

Total size change: -24.7 MB

claude and others added 9 commits March 22, 2026 21:18
The build job now packs the tarball and uploads it as an artifact.
The dependency-diff job downloads it instead of rebuilding, so the
build is clearly visible as its own check in CI.

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn
Replace the parts array + push + join pattern with direct string
concatenation, removing an array allocation per operator node.

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn
The git checkout mid-job approach was unreliable. Follow the official
recipe: a dedicated build-base job checks out the base ref and uploads
its pack as an artifact, then dependency-diff downloads both artifacts
and compares them cleanly.

https://claude.ai/code/session_01F2YzobfMCLMPh2nhxoW2fn
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.

2 participants