I have issue using meteortesting:mocha/lmieulet:meteor-coverage whith meteor@3.3.x when modern: true
With modern: false, it works well but with modern: true, i have the following error (all tests passed but the coverage not):
W20250909-10:14:44.909(2)? (STDERR) Error: Failed to save lcovonly coverage. 500 [object Object]
W20250909-10:14:44.910(2)? (STDERR) at packages/meteortesting:mocha/server.handleCoverage.js:21:11
W20250909-10:14:44.910(2)? (STDERR) at Generator.next (<anonymous>)
W20250909-10:14:44.910(2)? (STDERR) at asyncGeneratorStep (/tmp/meteor-test-run1j4ree.uzqzq/.meteor/local/build/programs/server/packages/meteortesting_mocha.js:280:28)
W20250909-10:14:44.910(2)? (STDERR) at _next (/tmp/meteor-test-run1j4ree.uzqzq/.meteor/local/build/programs/server/packages/meteortesting_mocha.js:298:17)
W20250909-10:14:44.910(2)? (STDERR) at processTicksAndRejections (node:internal/process/task_queues:105:5)
I’d appreciate it if you could prepare a minimal repo for this. Matching your config is tricky. Having one would save a lot of time so I can focus on the fix.
For SWC, we may need to use it with kwonoj/swc-plugin-coverage-instrument. Having an example repository will allow me to play with it and provide a skeleton for everyone.
Yeah, because with "modern": true, we use SWC as the transpiler. The reason way I was suggesting to incorporate kwonoj/swc-plugin-coverage-instrument. if you can play with it, go ahead and let us know what you get. I will when I have free time.
They can serve as a good example for others adopting modern SWC and have test coverage. Maybe we could also open a PR on lmieulet:meteor-coverage to update the docs and mention this step and point to your changes for those using Meteor modern build stack.
Upgrading to Meteor 3.4-rc.1 won’t force you to use the Rspack integration, so you can update and still use the Meteor bundler alone. Besides this, I want to mention that adopting Rspack for your app code will make your setup depend on Rspack, which updates SWC on its own schedule.
SyntaxError: Unexpected identifier ‘getFormat’
at new Script (node:vm:117:7)
at createScript (node:vm:269:10)
at Object.runInThisContext (node:vm:317:10)
at /tools/static-assets/server/boot.js:414:32
at /tools/static-assets/server/boot.js:502:11
at Function.run (/tmp/meteor-test-run1q6cxtm.302vl/.meteor/local/build/programs/server/tools/tool-env/profile.ts:651:14)
at startServerProcess (/tools/static-assets/server/boot.js:501:17)
at Object. (/tools/static-assets/server/boot.js:506:2)
at Object. (/tools/static-assets/server/boot.js:510:4)
at Module. (node:internal/modules/cjs/loader:1688:14)
at Module.Mp._compile (/tools/static-assets/server/runtime.js:91:21)
at Object.Module._extensions…js (/tools/static-assets/server/runtime.js:125:21)
at Module. (node:internal/modules/cjs/loader:1423:32)
at Module.Mp.load (/tools/static-assets/server/runtime.js:35:31)
at Function._load (node:internal/modules/cjs/loader:1246:12)
at TracingChannel.traceSync (node:diagnostics_channel:322:14)
/tmp/meteor-test-run1q6cxtm.302vl/.meteor/local/build/programs/server/app/app.js:107086
Have you tried using the Meteor 3.4-rc.1 version I mentioned above, which bumps SWC to the latest and should include a swc_core version compatible with swc-plugin-coverage-instrument@0.0.32?
If not, and to help you further, I’d need a bit more to reproduce your issue. Could you provide a minimal reproduction repository where I can quickly see the problem and explore a fix?