parcel-bundler / parcel

The zero configuration build tool for the web. 📦🚀
https://parceljs.org
MIT License
43.53k stars 2.27k forks source link

Bisection script #6166

Open lgarron opened 3 years ago

lgarron commented 3 years ago

I regularly find myself installing various versions of Parcel to bisect potential bug reports.

But this is a little tricky because:

For example, I just enabled auto-install and ran:

npm install parcel@2.0.0-nightly.540 ; npx parcel serve [...]
npm install parcel@2.0.0-nightly.594 # doesn't exist
npm install parcel@2.0.0-nightly.597; npx parcel serve [...]

The third command resulted in:

🚨 Build failed.
@parcel/package-manager: Could not find module "@parcel/transformer-html" satisfying 2.0.0-nightly.599+36035d8d.
/Users/lgarron/Downloads/kdsjlfsdf/cubing.js/package.json:26:5
  25 |     "@parcel/transformer-css": "^2.0.0-nightly.587",
> 26 |     "@parcel/transformer-html": "^2.0.0-nightly.587",
>    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ Found this conflicting local requirement.
  27 |     "@parcel/transformer-postcss": "^2.0.0-nightly.587",
  28 |     "@parcel/transformer-posthtml": "^2.0.0-nightly.587",

It would be really useful to have a script that can help me bisect nightly releases or even individual commits so I can pinpoint issues and either resolve them on our side or file a more helpful report.

jtojnar commented 1 year ago

I have attempted to bisect Parcel in https://github.com/parcel-bundler/parcel/issues/9092#issuecomment-1616745029 but I did not use any extra plug-ins, so it was comparatively easy.