Skip to content

Conversation

@calebeby
Copy link
Member

childProcess.fork does not accept a file:// path. It requires a regular path. The resolveFileUrl function I put in the rollup config returned a file:// path for ESM bundles and a regular path for CJS bundles. This meant that CJS bundles worked but ESM bundles didn't. This PR removes the resolveFileUrl in favor of rollup's built-in version, which always returns a file:// path. Then when we pass it to childProcess.fork we use fileURLToPath to switch it back.

Unfortunately we don't have any test cases for using Jest's experimental ESM with pleasantest. I manually created a repo to test this. I hope to add a monorepo setup to pleasantest so that we can create test cases with Jest's experimental ESM without forcing us to switch all our tests over.

Copy link
Contributor

@Paul-Hebert Paul-Hebert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These changes seem reasonable to me, especially if you've tested them in another repo 👍

@calebeby calebeby merged commit e71e259 into main Aug 23, 2023
@calebeby calebeby deleted the fix-es-fork-url branch August 23, 2023 16:41
@github-actions github-actions bot mentioned this pull request Aug 23, 2023
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.

3 participants