#330 Upgrade CCM To ESM #433
Conversation
|
So just so I understand, you're saying we can't upgrade p-limit because it isn't interoperable with CJS and ts-node isn't properly compiling it, in development only. So we're just waiting for ts-node to support the "sub-path import" feature before p-limit upgrade? |
Yes, Right now that's my understanding. I feel we don't need to rush p-limit to upgrade v5 we will see how that PR with ts-node flows, otherwise we might have to come up with some hacky way to make it work which I felt can hold on for time being. Currently it is upgraded from V3 -> v4 which is still an ESM module. I felt a bit waxed/fatigued with this particular issue so we can come back to it later |
This is the Build/run that was successful when running Prod mode: https://github.com/pushyamig/canvas-course-manager-next/actions/runs/8651060404/job/23720922489 But Locally the Build/or Run will have errors with V5. SO rolled back https://github.com/pushyamig/canvas-course-manager-next/actions/runs/8652300727 |
|
Went through the test plan, locally testing features and migrations; all looks like it behaves as expected to me. Code looks good too. |
Fixes #330
Upgrade CCM as ESM Project. Not All package that CCM uses ESM so It's a mix bag of CJM and ESM. Node current version know how to load CJS in ESM package. The package developers also needs to support this interoperability. Some package like
p-limitis purely ESM so won't work if CCM was CJS.Most of the key changes are associated with configuration file like
package.json,webpack,tsconfig.json,start.shLatest PR Build https://github.com/pushyamig/canvas-course-manager-next/actions and is being deployed to CCM Dev
.jswhen importing a file of CCM. So the all the files are touched@typescript-eslint/eslint-pluginand@typescript-eslint/parserdepends on older version if I upgrade to latest.