Skip to content
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

fix: JSON modules disable named exports #13035

Merged
merged 1 commit into from Jun 22, 2022

Conversation

JLHwung
Copy link
Contributor

@JLHwung JLHwung commented Jun 21, 2022

Description

This is a follow-up to #13031, see that PR for the rationale. I searched assert { type: "json" } in our codebase and replaced all named imports, please let me know if I have missed any. Thank you.

Checklist

  • I’ve added tests to confirm my change works.
  • (If changing the API or CLI) I’ve documented the changes I’ve made (in the docs/ directory).
  • (If the change is user-facing) I’ve added my changes to changelog_unreleased/*/XXXX.md file following changelog_unreleased/TEMPLATE.md.
  • I’ve read the contributing guidelines.

Try the playground for this PR

@@ -1 +1 @@
export { foo } assert { type: "json" };
export { default as foo } assert { type: "json" };
Copy link
Sponsor Member

Choose a reason for hiding this comment

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

Can you revert this one? So we can have one test for named export.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I could preserve this test as-is, but for the same reason mentioned in #13035, this test will block babel/babel#14668 because that PR proposes to align Babel's behaviour with Node.js and the spec. To recap, in that PR Babel will forbid export { foo } from a JSON module, so the test will be passing (incorrectly) on older Babel versions and throwing (expectedly) on latest versions.

I suggest we add export { foo } and other tests after babel/babel#14668 is landed.

BTW technically, export { default as foo } is still a named export.

Copy link
Sponsor Member

Choose a reason for hiding this comment

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

Okay, thanks for the explanation.

@fisker fisker merged commit 9dd761a into prettier:main Jun 22, 2022
medikoo pushed a commit to medikoo/prettier-elastic that referenced this pull request Jan 4, 2024
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.

None yet

2 participants