Skip to content

Conversation

nicknovitski
Copy link
Member

I marked this change as breaking because CJS modules running on node versions less than v20.19.0 will need to add the option --experimental-require-module in order to require() the package.

CJS modules on v20.19.0 or greater can require() it by default, and ES modules on node versions 18+ can of course import other ES modules without trouble.

Before this commit, and since ab8bc71, this command would fail:
```
error TS6059: File '<>/expo-server-sdk-node/eslint.config.ts' is not under 'rootDir' '<>/expo-server-sdk-node/src'. 'rootDir' is expected to contain all source files.
  The file is in the program because:
    Matched by default include pattern '**/*'
```

We want `tsconfig.json` to include `eslint.config.ts`, so that we detect type
errors in it.  However, we don't want `tsconfig.build.json` to include
it, so that `tsc` doesn't produce build output for it.

To detect this problem in the future, I added a check in the github
tests workflow.
Copy link

codecov bot commented Jun 27, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (ac82bf6) to head (43e0e20).

Additional details and impacted files
@@            Coverage Diff             @@
##              main      #198    +/-   ##
==========================================
  Coverage   100.00%   100.00%            
==========================================
  Files            2         2            
  Lines          168       468   +300     
  Branches        33        61    +28     
==========================================
+ Hits           168       468   +300     
Flag Coverage Δ
node_18 ?
node_20 100.00% <100.00%> (ø)
node_22 100.00% <100.00%> (ø)
node_24 100.00% <100.00%> (?)

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.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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