-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate FFI to ES modules #287
Migrate FFI to ES modules #287
Conversation
PRs to
|
CI builds now 🎉 |
The |
CI builds on the |
We need to be careful that and so that re-run of CI pulled in the old purs:
I've restarted the sync versions job there so that it updates the file and then we can re-run CI here. |
Ah, good catch. |
.eslintrc.json
Outdated
}, | ||
"extends": "eslint:recommended", | ||
"env": { | ||
"commonjs": true | ||
"es6": true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't recall if we ended up agreeing on ES6 in the eslint configurations vs. just updating the parserOptions.sourceType
field. Do you happen to have a link to that discussion?
If we are going forward with ES6, then I'm curious if we need to set both env: es6
and parserOptions.ecmaVersion: 6
. What happens if we just remove env
but still set the parser option to ecmaVersion 6?
.eslintrc.json
Outdated
}, | ||
"extends": "eslint:recommended", | ||
"env": { | ||
"commonjs": true | ||
"es6": true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't recall if we ended up agreeing on ES6 in the eslint configurations vs. just updating the parserOptions.sourceType
field. Do you happen to have a link to that discussion?
If we are going forward with ES6, then I'm curious if we need to set both env: es6
and parserOptions.ecmaVersion: 6
. What happens if we just remove env
but still set the parser option to ecmaVersion 6?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Huh... I remember this being important, but I can't recall why. However, running eslint src test
doesn't report anything with es6: true
removed.
This looks good to me other than the discussion around the eslint configuration. |
"purescript-psa": "^0.8.0", | ||
"pulp": "^15.0.0", | ||
"purescript-psa": "^0.8.2", | ||
"pulp": "16.0.0-0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the reason for the prerelease version of Pulp? Should this be 16.0.0
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I made a pre-release of 16.0.0
in case we wanted to add support for esbuild later or come across other bugs.
@JordanMartinez Is it acceptable to delete the es-modules-libraries branch, or does it need to be kept around for the sake of upstream packages? |
The |
Description of the change
Backlinking to purescript/purescript#4244
Migrates FFI to ES modules. This continues what was started in #284 but using a different branch named
es-modules-libraries
to ensure further development on the compiler isn't affected by commits pushed to this PR.This PR also succeeds #264 since that PR was not opened by the 'working-group-purescript-es' org, which allows multiple people to push to the PR if the original submitter is gone for while.
This PR will fail to build until
pulp
has been updated to support ES modules when one callspulp run
andpulp test
. See purescript-contrib/pulp#400 for more info.Checklist: