-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
Explore "transpile only" build #150025
Comments
👋 Just want to say excited to see vscode explores swc as transpiler and happy to try to support as much. Please drop by swc repo if there's something to followup (Yes, saw one issue filed already) |
swc-project/swc#4481 is updated. |
@kwonoj Awesome. What's your release cycle like? We are now heading into endgame and I'll be able to pick this up early June again. Are those fixes published by then? |
We should able to. @kdy1 , if we didn't publish new one can we do it for @swc/core? |
I triggered a publish of a new version |
@kdy1 @kwonoj Thanks so far. With 1.2.192 things are looking better but I ran into two further bugs with AMD's local require-function: swc-project/swc#4798 and swc-project/swc#4797. Let me know if you need further clarification or help. Thanks a ton! |
Thanks, I'll try repro. |
swc-project/swc#4800 is updated for 4798/4797. |
Thanks - I am OOO for a bit and I'll pick this up again early June |
Currently CI of swc is broken due to recent changes of github actions, but it's almost fixed by another team member. |
The new version is published! https://github.com/swc-project/swc/actions/runs/2479477756 |
👋 Casually checking in (not urging or pushing anything), if there's some progress or if there are any blockers in upstream swc land we can try to fix forward? |
@kwonoj Great timing! Two days back I have merged #159300. For CI/CD we now use SWC to transpile our "client" bits (basically all of VS Code but not yet its builtin extensions). Look out for Random observations and things that can be improved
@kdy1 @kwonoj With all that said: a very big "Thank You" for SWC and for the instant help and fixes. We are all very excited about this and hope to get involved more deeply (use SWC to watch-transpile on our dev machines etc) |
Let's retry this. If you don't mind share some minimal repro you'd like to try (and not working), I'll try to peek.
Correct, native cli should be more performant. Not cause of writing performance, there are few things we may consider
Currently, most of
This sounds odd. When I tried transform performance with some large scale codes, even though it was compared with babel it was much visibly faster. I guess we could try to create some isolated cases to dig deeper, probably using either native cli / or node.js bindings api directly. It is totally possible js based cli's overhead cuts off some perf gains. |
There are some code which make handling of small files faster but have exponential time complexity. What's your target/.swcrc and input? |
Repos with a EDIT: created swc-project/swc#5720 to follow up on this |
Yeah, that's what I though. In all fairness, we have custom code around |
No, but calculation is rather straightforward: https://github.com/swc-project/swc/blob/7a6a43576a3388cb07d6c8923b9118228b8e09f0/node-swc/src/run_swcx.ts#L39-L80 You can try to copy-paste with small modifications, maybe. Or you could do |
This looks promising: I am running |
I believe it's simple lacks of features (after all, native cli is still not yet feature-complete). If you don't mind file an issue in upstream swc, I'll try to assign myself. |
With #160274 we now have |
For CI builds we should explore the use of a fast transpiler, like SWC or esbuild. This would enable use to run (blocking) transpile, then in parallel run tests and TS type checking.
SWC transpile command:
npx swc --config-file .swcrc src --copy-files --out-dir out
The
joh/swc
-branch has some changes that explore to use SWC for this. TODOsvs/workbench/contrib/markers/browser/constants
andvs/workbench/contrib/markers/browser/markersTreeViewer
#150291vs/editor/common/languages
andvs/editor/common/tokenizationRegistry
#150176vs/editor/common/viewLayout/lineDecorations
andvs/editor/common/viewLayout/viewLineRenderer
#150177vs/workbench/contrib/tasks/common/tasks
andvs/workbench/contrib/tasks/common/taskService
#150178--copy-files
flag doesn't seem to copy JS files (unclear if that's because they are compile-ignored or always seen as compilable resource)export import
bug swc/issues/4481require
swc-project/swc#4797import foo = require
should be normal AMD dependency swc-project/swc#4898The text was updated successfully, but these errors were encountered: