feat!: ESM-only conversion#2368
Conversation
|
@timofei-iatsenko is attempting to deploy a commit to the Crowdin Team on Vercel. A member of the Team first needs to authorize it. |
|
@andrii-bodnar let's agree on the strategy for the new version for this. As i mentioned this change is enough for version V6. However i'm going to prepare few more changes with restructuring which would be good to merge as a separate PR and stop this one growing.
In any case it's better to merge and release whatever non-breaking opened pull request we have and than put a code freeze on main branch until v6 would be released. |
|
@timofei-iatsenko let's use the same workflow with the I just pushed a fresh |
|
@andrii-bodnar could you sync next branch once again? Also isn't this workflow helpful https://github.com/lingui/js-lingui/actions/workflows/next-sync.yml |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## next #2368 +/- ##
===========================================
+ Coverage 76.66% 87.23% +10.56%
===========================================
Files 81 123 +42
Lines 2083 7254 +5171
Branches 532 1494 +962
===========================================
+ Hits 1597 6328 +4731
- Misses 375 907 +532
+ Partials 111 19 -92 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@timofei-iatsenko yes, this workflow has been explicitly disabled, I will enable it |
# Conflicts: # babel.config.js # jest.config.js # packages/cli/package.json # packages/cli/src/lingui-extract.ts # packages/cli/src/services/translationIO.ts # packages/extractor-vue/package.json # packages/loader/package.json # packages/message-utils/package.json # packages/message-utils/src/generateMessageId.test.ts # packages/metro-transformer/package.json # packages/react/tsconfig.json # yarn.lock
|
This one is ready to be merged, - still not ready for release - i will fixup in separate PRs |
|
I merged recent changes from |
| "packageManager": "yarn@3.4.1" | ||
| "packageManager": "yarn@3.4.1", | ||
| "resolutions": { | ||
| "threads@^1.7.0": "patch:threads@npm%3A1.7.0#./.yarn/patches/threads-npm-1.7.0-c432dbb3e9.patch" |
There was a problem hiding this comment.
You've done a great job, thank you very much!
Have you considered switching to a different threading library instead of patching the current dependency? Perhaps it's worth creating a separate issue for this. I briefly looked at tinypool, for example, which is used in the vitest library: https://github.com/tinylibs/tinypool
There was a problem hiding this comment.
Yes, i considered. I tried priscina - but feel it very low level and API is quite diverged from the threads used. This patching would not work when the library would be consumed by the users, so i defenetily should tackle that.
This patch here is a temporal fix to mitigate issue and unblock further migration to ESM.
I will defentely take a look at tinypool as well.
There was a problem hiding this comment.
UPD, i just recalled to myself what was patched here, and it's type only, so it most likely should not affect end users, until they would use cli api directly without skipLibCheck: true. However, the threads library looks unmaintained, and if you @yslpn want to experiment and change the implementation to tinypool i wouldn't resist. Only one request from me - make it after esm would be merged to avoid conflicts and try to keep the same level of the typesafety between workers implementation / and invocation.
I messed up the git. The same commits after merge in next and main essentially a different entities, so my branch is not showing correct diff right now and the whole history is messed up. @andrii-bodnar could you drop the next branch entirely and recreate if from scratch. so there is no merge commits on it. |
|
@timofei-iatsenko done |
|
@andrii-bodnar thanks, now it's good to be merged. Once it merged it should be code-freeze on the main branch. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: Andrii Bodnar <andrii.bodnar@crowdin.com>
Description
#2363
Most noticable changes:
@lingui/babel-plugin-lingui-macro,@lingui/loader,@lingui/macro(deprecated). Those excluded packages still using ESM depdendecies, so it will affect theirs consumers. Those packages was not converted to esm because there is no sense in that, babel and webpack consume them using arequirefunction.Types of changes
Fixes # (issue)
Checklist