Skip to content

Conversation

@samarthsinh2660
Copy link
Contributor

Summary

This PR adds enhanced visual progress indicators to the ProgressPlugin, addressing issue #20167.

When building large projects with Webpack, developers often face long build times with minimal feedback about progress. This enhancement adds:

  • Visual Progress Bar: ASCII-based progress bar ([████████░░░░░░░░]) for immediate visual feedback
  • Estimated Time Remaining: Shows ETA based on elapsed time and current progress percentage
  • Phase Timing Breakdown: Tracks and displays timing for each build phase, with a summary at completion

Closes #20167

What kind of change does this PR introduce?

feat - New feature adding optional visual progress indicators

Did you add tests for your changes?

Yes, added tests in test/ProgressPlugin.test.js:

  • should display progress bar when progressBar option is enabled
  • should display estimated time when estimatedTime option is enabled
  • should display phase timings when phaseTimings option is enabled
  • should accept all new progress options without errors

Does this PR introduce a breaking change?

No. All new options are opt-in and disabled by default. Existing behavior is unchanged.

If relevant, what needs to be documented once your changes are merged or what have you already documented?

Documentation should be added for new ProgressPlugin options:

  • progressBar (boolean): Show a visual progress bar
  • estimatedTime (boolean): Show estimated time remaining
  • phaseTimings (boolean): Show timing breakdown for each build phase
  • progressBarWidth (number): Width of progress bar in characters (default: 40)

@changeset-bot
Copy link

changeset-bot bot commented Jan 12, 2026

⚠️ No Changeset found

Latest commit: ed83973

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

@samarthsinh2660 samarthsinh2660 force-pushed the feat/20167-visual-progress-indicator branch 2 times, most recently from 38a9ce6 to a3c8ad7 Compare January 12, 2026 09:28
@samarthsinh2660 samarthsinh2660 force-pushed the feat/20167-visual-progress-indicator branch from a3c8ad7 to ed83973 Compare January 12, 2026 09:33
@codspeed-hq
Copy link

codspeed-hq bot commented Jan 12, 2026

CodSpeed Performance Report

Merging this PR will not alter performance

Comparing samarthsinh2660:feat/20167-visual-progress-indicator (ed83973) with main (d2a124d)

Summary

✅ 72 untouched benchmarks

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.

[Feature] Add visual build progress indicator with estimated completion time

1 participant