* Remove deprecated syntax
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* fix one test
* fix sketch on revolved face test
* fix test: empty-scene default-planes act as expected
* fix up more tests
* another fix
* remove another const
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: Kurt Hutten Irev-Dev <k.hutten@protonmail.ch>
* Turn on uom checks
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Convert all lengths to mm for engine calls
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* KCL: Convert angledLineThatIntersects to use kwargs
* Update KCL tests and samples
* WIP
* Fix tsc and lint errors
* Fix missing cases
* Fix modifyAst unit tests
* Fix sketch unit tests
* Fix std unit tests
* Fix to not have extra docs
* Fix more unit tests
* Fix bench test
* Fix e2e tests to use new kw args
* tiny lint
* Fix adding constraint from UI to work
* Fix to use labeledArg constraints and use the correct order of args
* Fix selections e2e test
* Fix e2e test expectation
App was working as expected, but the e2e test was
expecting the old code, not the new code.
* Fix order of constraints in unit test
* Update docs
* Fix KCL formatting
* Update output
---------
Co-authored-by: Jonathan Tran <jonnytran@gmail.com>
* More units of measure work
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Update CSG output since engine change
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: Nick Cameron <nrc@ncameron.org>
* first steps, add to cmd bar etc
* cmdbar working well enough
* mvp
* lint
* fix after rebase
* intersect and union mvps
* add test
* some clean up
* further fix up
* Update src/lang/modifyAst/boolean.ts
Co-authored-by: Pierre Jacquier <pierrejacquier39@gmail.com>
* Update src/lang/modifyAst/boolean.ts
Co-authored-by: Pierre Jacquier <pierrejacquier39@gmail.com>
* pierre's comments
* tsc
* add comment
---------
Co-authored-by: Pierre Jacquier <pierrejacquier39@gmail.com>
* Automatic fixing of deprecations and use non-quoted default planes by default
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* A snapshot a day keeps the bugs away! 📷🐛
* A snapshot a day keeps the bugs away! 📷🐛
* A snapshot a day keeps the bugs away! 📷🐛
* A snapshot a day keeps the bugs away! 📷🐛
* A snapshot a day keeps the bugs away! 📷🐛
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Fixes https://github.com/KittyCAD/modeling-app/issues/4307
Now if you try to fillet the same edge twice in a single fillet command,
the error message is clearer, and the source range will highlight
the specific edges in the array which are duplicated.
Same goes for chamfer.
Note: although the Rust KCL interpreter sends back an array of SourceRange
for each KCL error, the frontend only puts the first one into CodeMirror
diagnostics. We should fix that: https://github.com/KittyCAD/modeling-app/issues/5754
Previously, `xLine`, `xLineTo`, `yLine` and `yLineTo` used positional arguments. Now:
- `xLineTo` and `yLineTo` have been removed
- `xLine` and `yLine` both use keyword arguments:
- `length`, optional (i.e. a relative distance along the X or Y axis)
- `endAbsolute` optional (i.e. an absolute point along the X or Y axis)
- `tag` optional
- Exactly one of `length` or `endAbsolute` must be given. Not both, not neither.
For example:
```
// Old way
|> xLine(6.04, %)
|> yLineTo(20, %, $base)
// New way
|> xLine(length = 6.04)
|> yLine(endAbsolute = 20, tag = $base)
```
This also improves some of the general-purpose keyword arguments code in modeling app's TS codebase.