-
Notifications
You must be signed in to change notification settings - Fork 45
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
Return modeling commands from KCL execution #4912
Conversation
QA Wolf here! As you write new code it's important that your test coverage is keeping up. |
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
dude you are fast as fuck |
e00f132
to
e3bea2f
Compare
e3bea2f
to
6150a59
Compare
810f860
to
ebc9a04
Compare
Co-authored-by: Kurt Hutten <[email protected]>
020cab8
to
6fee623
Compare
I think you're going to want to add a "clear artifact commands" here: https://github.com/KittyCAD/modeling-app/blob/main/src/wasm-lib/kcl/src/engine/mod.rs#L115 so that they don't build up across different runs, unless you do that elsewhere, but here is likely safest |
I take them all at the end of each run in In the CLI or elsewhere, do we reuse the EngineManager across runs? Update: It's possible for the LSP to reuse it. So we decided to clear them on clear scene. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4912 +/- ##
==========================================
+ Coverage 85.80% 85.84% +0.04%
==========================================
Files 87 88 +1
Lines 31255 31429 +174
==========================================
+ Hits 26817 26981 +164
- Misses 4438 4448 +10
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
cde0df3
to
033bc0b
Compare
Part of #4860. Resolves #2821. Cherry-picks the Rust side and some TS wiring of #4834.
Depends on KittyCAD/modeling-api#708.
Rust Artifact Graph Episode I: A New Hope
Currently, the artifact graph is built in TS code that intercepts modeling commands sent from Rust in WASM. This branch makes it so that commands are accumulated in Rust and returned from KCL execution.
The goal is to be able to build the entire artifact graph in Rust, without touching the engine. This is a step towards that.
OrderedCommand
s are being replaced withArtifactCommand
s. They're basically the same, but they're a flat list. Ordered commands had nesting due to engine command batches.This branch should result in zero actual changes to the artifact graph data structure. The input only comes from a different place.
Before:
After:
Since #4834 got reverted (since it's part of multi-profile), I cherry-picked all the Rust parts of that and the wiring part of the TS of it. I didn't include the actual artifact graph change since my goal for this PR was to not change the artifact graph at all.