Skip to content

Conversation

dubzzz
Copy link
Owner

@dubzzz dubzzz commented Feb 6, 2025

Description

The build chain of fast-check has been CommonJS-based since day 1. With ESM moving forward in the ecosystem, it's time to move ourselves to the new standard and adapt our build chains to ESM.

Unfortunately it may have some subtle impacts on our users as our package will not be a CJS one offering a ESM fallback anymore. I will rather be the opposite: an ESM package with a fallback to CJS. It implies that we moved ESM related files closer to the root of the package (we could have kept them in esm/) and moved the CJS ones further in the file structure (we had to move them).

Another subtle impact is that it would impose our users to run at least Node ≥12.17.0.

As such we consider it as a breaking change. On its own it should not be a huge problem for most of the users but given it changes our minimal requirement let's put it into the next major release.

Superseed #4592

ChecklistDon't delete this checklist and make sure you do the following before opening the PR

  • The name of my PR follows gitmoji specification
  • My PR references one of several related issues (if any)
    • New features or breaking changes must come with an associated Issue or Discussion
    • My PR does not add any new dependency without an associated Issue or Discussion
  • My PR includes bumps details, please run yarn bump and flag the impacts properly
  • My PR adds relevant tests and they would have failed without my PR (when applicable)

Advanced

  • Category: 👷 Configuration of the package
  • Impacts: Requires users to rely on more recent versions of Node, at least 12.17

Copy link

changeset-bot bot commented Feb 6, 2025

🦋 Changeset detected

Latest commit: 7316426

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 5 packages
Name Type
fast-check Major
@fast-check/ava Patch
@fast-check/jest Patch
@fast-check/vitest Patch
@fast-check/worker Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@dubzzz dubzzz enabled auto-merge (squash) February 6, 2025 01:19
Copy link

pkg-pr-new bot commented Feb 6, 2025

Open in Stackblitz@fast-check/examples

@fast-check/ava

npm i https://pkg.pr.new/@fast-check/ava@5670

fast-check

npm i https://pkg.pr.new/fast-check@5670

@fast-check/expect-type

npm i https://pkg.pr.new/@fast-check/expect-type@5670

@fast-check/jest

npm i https://pkg.pr.new/@fast-check/jest@5670

@fast-check/poisoning

npm i https://pkg.pr.new/@fast-check/poisoning@5670

@fast-check/packaged

npm i https://pkg.pr.new/@fast-check/packaged@5670

@fast-check/vitest

npm i https://pkg.pr.new/@fast-check/vitest@5670

@fast-check/worker

npm i https://pkg.pr.new/@fast-check/worker@5670

commit: 7316426

Copy link
Contributor

github-actions bot commented Feb 6, 2025

👋 A preview of the new documentation is available at: http://67a40ee8fc41b8639aacd1e4--dubzzz-fast-check.netlify.app

Copy link

codecov bot commented Feb 6, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 94.58%. Comparing base (e129bb3) to head (7316426).
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5670      +/-   ##
==========================================
- Coverage   94.70%   94.58%   -0.12%     
==========================================
  Files         222      220       -2     
  Lines        9945     9922      -23     
  Branches     2792     2781      -11     
==========================================
- Hits         9418     9385      -33     
- Misses        527      537      +10     
Flag Coverage Δ
unit-tests 94.58% <ø> (-0.12%) ⬇️
unit-tests-18.x-Linux 94.58% <ø> (-0.12%) ⬇️
unit-tests-20.x-Linux 94.58% <ø> (-0.12%) ⬇️
unit-tests-22.x-Linux 94.58% <ø> (-0.12%) ⬇️
unit-tests-latest-Linux 94.53% <ø> (-0.17%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@dubzzz dubzzz merged commit 30ed813 into main Feb 6, 2025
56 of 57 checks passed
@dubzzz dubzzz deleted the more-modern-build-chain branch February 6, 2025 01:26
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.

1 participant