be14022f97
Update samples PNG export ( #6908 )
2025-05-13 18:03:27 +00:00
01c7b69f50
Function types ( #6891 )
...
* Change Fn to fn for function types
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Support args and return types in function types
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Use fancy function types in the docs
Signed-off-by: Nick Cameron <nrc@ncameron.org >
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-13 14:59:23 +12:00
a049768f1c
Move some more functions to be declared in KCL ( #6856 )
...
* Move the leg functions to KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Move array functions to KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Move clone to KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Add a function type
Signed-off-by: Nick Cameron <nrc@ncameron.org >
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-13 08:29:38 +12:00
1a325d0b29
Fix to use correct units for array range expressions ( #6837 )
...
* Fix to use correct units for array range expressions
* Update output
2025-05-12 01:30:33 -04:00
bbe89f56a7
Fix the KCL any type and array coercion incorrectly nesting ( #6816 )
...
* Add sim test for any type
* Fix doc comments to match code
* Add array ascription tests
* Commit new test output
* Fix to not panic when type is undefined
* Fix to not panic on use of the any type
* Update test and generated output
* Fix error message after rebase
* Fix subtype of any
* Fix KCL to use new keyword args
* Fix to not nest MixedArray in HomArray
* Update output
* Remove all creation of MixedArray and use HomArray instead
* Rename MixedArray to Tuple
* Fix to coerce arrays the way tuples are done
* Restructure to appease the type signature extraction
* Fix TS unit test
* Update output after switch to HomArray
* Update docs
* Fix to remove edge case when creating points
* Update docs with broken point signature
* Fix display of tuples to not collide with arrays
* Change push to an array with type mismatch to be an error
* Add sim test for push type error
* Fix acription to more general array element type
* Fix to coerce point types
* Change array push to not error when item type differs
* Fix coercion tests
* Change to only flatten as a last resort and remove flattening tuples
* Contort code to appease doc generation
* Update docs
* Fix coerce axes
* Fix flattening test to test arrays instead of tuples
* Remove special subtype case for singleton coercion
2025-05-12 03:57:31 +00:00
97594b9a9e
Proper type-checking where a function requires a tag identifier not just a tag ( #6848 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-12 12:57:50 +12:00
f73831ac27
more subtract regression tests ( #6831 )
...
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-10 19:23:55 -04:00
09f39499e9
add subtract regression tests ( #6829 )
...
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-10 13:48:38 -07:00
7ac4a9507b
fix unwrap ( #6825 )
...
* fix unwrap
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* add test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* udaptes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-10 13:00:14 -07:00
0fe866ad8b
Update utility sink sample ( #6798 )
...
* upadte utility sink sample
* remove old screenshot
2025-05-10 19:52:55 +00:00
4fb7065ddf
Fix sign error. ( #6821 )
...
* Fix sign error.
* Update kcl-samples simulation test output
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-10 08:45:05 -07:00
2d9f6c7b2a
Fix rendered image in subtract CSG sim test ( #6812 )
2025-05-09 22:27:27 +00:00
3481252082
fix subtract test ( #6791 )
...
* fix subtract test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fix subtract test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fixups
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-08 20:28:41 -07:00
e960d4d8a4
BREAKING: Change array functions to call user function with keyword args ( #6779 )
...
* Change array functions to call user function with keyword args
* Fix KCL to use keyword params
* Remove unneeded positional call code
* Update docs
* Update output
2025-05-08 19:10:47 +00:00
b65ea8e0a9
Change pattern functions to call user function with keyword args ( #6772 )
...
* Change pattern functions to call user function with keyword args
* Fix KCL code to use unlabeled syntax
* Update generated output
2025-05-08 13:43:50 -05:00
e9f6ebb6d1
Bump modeling cmds ( #6746 )
...
* fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* bump modeling-cmds
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-07 21:10:18 +00:00
f938364d54
Better, faster typo checker ( #6716 )
...
* Fix typo 'horizonal'
* Fix typos
* Fix more typos
* Fix more typos
* Update CI action
* Fix typos
* Update src/lang/queryAst.test.ts
Co-authored-by: Jonathan Tran <jonnytran@gmail.com >
* Update src/lang/queryAst.test.ts
Co-authored-by: Jonathan Tran <jonnytran@gmail.com >
* Update typos
* Update snap
---------
Co-authored-by: Jonathan Tran <jonnytran@gmail.com >
2025-05-07 12:48:23 -05:00
d187a29e55
Fix sketchOnFace point&click for booleans ( #6713 )
...
* fix bool sketchOnFace
* fix chamfer test
* add test
* Kurt composite attempt (#6722 )
* composite attempt
* Add forward edge to CSG artifacts in artifact graph
* Fix comment
* Move the doc comments above the attributes
* Fix to update the correct field of Path
* Update output
---------
Co-authored-by: Jonathan Tran <jonnytran@gmail.com >
* use rust defined composite solid edges instead
* Update src/hooks/useEngineConnectionSubscriptions.ts
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* Revert PNG screenshots
* Fix TS formatting
---------
Co-authored-by: Jonathan Tran <jonnytran@gmail.com >
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-05-07 08:25:12 +10:00
1841e63021
Misc docs polishing ( #6712 )
...
* Fake modules for Rust std lib functions
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Include the missing @ in Rust std lib fns
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Move revolve and mirror2d to better modules
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Use docs from KCL mods for type summaries
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Use type docs to describe types from KCL std lib
Signed-off-by: Nick Cameron <nrc@ncameron.org >
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-06 16:09:59 +12:00
1e056cfd8a
Display numeric units in the variables pane ( #6683 )
2025-05-06 03:40:18 +00:00
9c246d6621
Fix units bug with involuteCircular ( #6711 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-06 14:58:53 +12:00
1ed6bb8a7c
change to no longer parallel for edges ( #6705 )
...
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-06 01:06:20 +00:00
cf2e9d4b91
Add kclVersion as a field of the setting attribute ( #6689 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-06 08:44:03 +12:00
bc818f10c3
Remove last remnants of legacy positional call ( #6678 )
...
* Remove last remnants of legacy positional call
* Update docs
* Fix segAng()
* Fix more docs
* Update docs again
2025-05-02 20:07:31 -05:00
4fe8741ea7
Remove CallExpression support ( #6639 )
...
Users MUST use keyword call syntax now.
Closes https://github.com/KittyCAD/modeling-app/issues/4600
2025-05-02 16:08:12 -05:00
ace9a59a45
fix cache and imports ( #6647 )
...
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fix clippy
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-05-02 17:41:14 +00:00
1c697d30ee
Fix to not add extra spaces when formatting call ( #6652 )
2025-05-02 08:16:07 -05:00
819ee23565
Fix to cache correct PathToNode in artifact graph ( #6632 )
...
* Add NodePath to artifact graph
Since this is cached, this should make PathToNode computation correct
even when code is formatted, whitespace changes, and source ranges
are different.
* Remove dead code
* Add unit tests
* Add tests for PathToNode conversion
* Remove unused parameter
* Add missing PathToNode cases
* Fix to handle unlabeled arg
* Cherry pick unlabeled arg fix
* Change PathToNode comment to match TS implementation
2025-05-01 23:55:12 -04:00
89bae66257
KCL: User-defined KCL functions in examples etc now use keywords ( #6603 )
...
Preparing for the removal of positional functions from the language. The first big step is to change all our KCL code examples, test code, public samples etc to all use keyword functions.
Apologies for how large this PR is. Most of it is:
- Changing example KCL that defined its own functions, so the functions now use keyword arguments rather than positional arguments. E.g. change `cube([20, 20])` to be `cube(center = [20, 20])`.
- Some parts of the code assumed positional code and didn't handle keyword calls, e.g. the linter would only check for positional calls to startSketchOn. Now they should work with either positional or keyword.
- Update all the artifacts
This does _not_ remove support for positional calls. That will be in a follow-up PR.
2025-05-01 12:36:51 -04:00
16f5d9c284
Docs improvements ( #6615 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-05-01 08:56:27 -07:00
0002295cdf
Fix operations to reflect concurrent module import behavior ( #6568 )
...
* Fix operations to reflect concurrent module import behavior
* Add new generated output
* Fix root module import tracking
* Rename test so that it's easier to filter
* Update output ops
* Fix clippy
* Update output after rebase
* Disable e2e tests until future PR
* Fix generated output; probably from recent merge
* Delete unused snap file
2025-04-30 16:26:46 +00:00
ccd5b0272d
Add math functions back to the prelude ( #6595 )
...
* Add math functions back to the prelude
* Update output
* Update docs
2025-04-30 11:07:05 -04:00
bae875382c
Replace plane strings with literals ( #6592 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-30 05:13:11 +00:00
14ce66bcc1
Fix to have stable sorting for end cap artifacts ( #6589 )
...
* Fix to have stable sorting for end cap artifacts
* Update output
2025-04-30 04:34:35 +00:00
644c561815
Declare std::math in KCL (BREAKING) ( #6588 )
...
Declare std::math in KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-30 03:59:19 +00:00
9c29756a38
lint default planes and add a suggestion ( #6587 )
...
lint default planes and other plane cleanup
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-04-30 02:11:02 +00:00
29b8a442c2
Codemirror lsp enhance ( #6580 )
...
* codemirror side
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* codemirror actions
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* codemirror actions
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* code mirror now shows lint suggestions
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fix hanging params with test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates for signature help
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fix clone
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* add tests
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* add tests
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* clippy
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* clippy
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* Update packages/codemirror-lsp-client/src/plugin/lsp.ts
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* z-index
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* playwright tests
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-04-29 20:57:02 -04:00
844f229b5a
Remove trig functions from prelude and change their unit handling (BREAKING) ( #6565 )
...
Remove trig functions from prelude and change their unit handling
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-30 12:40:11 +12:00
a9998be176
Remove unneeded derive Deserialize ( #6579 )
...
This revealed that one of our variants is never constructed.
2025-04-29 12:17:41 -07:00
e0cd3efc64
fix edge cuts & clone ( #6572 )
...
* fix edge cuts & clone
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fix edge_id
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* code comemnt
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-04-29 16:51:52 +00:00
77e3efde9a
Deterministic parallelized snaps ( #6527 )
...
* initial pass
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
changes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
more updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
more updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
serde variant name
Signed-off-by: Jess Frazelle <github@jessfraz.com >
fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
some sort
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
sort the edges
Signed-off-by: Jess Frazelle <github@jessfraz.com >
fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
u[dates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
u[dates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
cleanups
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
add bs-to-kcl
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* fixes
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-04-29 13:38:52 +00:00
aca5fdb521
Remove some deprecated functions from std ( #6531 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-28 20:24:18 -04:00
3a23ec1bee
Create std::units module ( #6528 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-29 08:41:31 +12:00
d96a4d3337
Improvements to axis handling ( #6530 )
...
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-29 08:29:22 +12:00
2e754f2a11
BREAKING: Change to disallow indexing KCL records/objects with strings ( #6529 )
...
* Change to disallow indexing records/objects with strings
* Update output
* Remove outdated sim test
* Fix tests
2025-04-28 12:08:47 -04:00
efba773635
Move operations on solids to be declared in KCL ( #6462 )
...
* Declare chamfer in KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Ignore more in the simulation tests
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Declare fillet in KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
* Move shell and hollow to KCL
Signed-off-by: Nick Cameron <nrc@ncameron.org >
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org >
2025-04-28 14:20:38 +12:00
4439229ad2
turn back on the test i tturned off ( #6522 )
...
* random other cahnges
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* turn back on test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* docs
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* lots of enhancements
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* cleanup
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* mesh test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* mesh test
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* check panics
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* check panics
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* check panics
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* cleanup
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* if running in vitest make single threadedd
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* check if running in vitest
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* console logs
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-04-27 23:54:32 +00:00
24465cf463
Parallelize the artifact graph only time suck ( #6482 )
...
* parallelize the artifact only time suck
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
make wasm safe
Signed-off-by: Jess Frazelle <github@jessfraz.com >
updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* artifact graph things
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
* updates
Signed-off-by: Jess Frazelle <github@jessfraz.com >
---------
Signed-off-by: Jess Frazelle <github@jessfraz.com >
2025-04-27 04:21:26 +00:00
0f88598dc0
BREAKING: Migrate math functions to keyword args ( #6491 )
2025-04-26 23:33:41 +00:00
6e115c19d5
KCL: Migrate hole to kwargs ( #6382 )
...
Previously:
`|> hole(circle(radius = 2, center = p), %)`
Now:
`|> subtract2d(tool = circle(radius = 2, center = p))`
2025-04-26 15:31:51 -05:00