zoo-kcl 0.3.114__tar.gz → 0.3.116__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/Cargo.lock +93 -97
  2. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/Cargo.toml +5 -3
  3. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/PKG-INFO +1 -1
  4. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/Cargo.toml +1 -1
  5. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-directory-test-macro/Cargo.toml +1 -1
  6. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-error/Cargo.toml +1 -1
  7. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/Cargo.toml +5 -5
  8. zoo_kcl-0.3.116/kcl-lib/src/collections.rs +3 -0
  9. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/annotations.rs +11 -1
  10. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/artifact/mermaid_tests.rs +14 -0
  11. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/artifact.rs +25 -0
  12. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/cache.rs +6 -0
  13. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/cad_op.rs +36 -2
  14. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/exec_ast.rs +925 -162
  15. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/fn_call.rs +1 -0
  16. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/geometry.rs +149 -1
  17. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/id_generator.rs +5 -1
  18. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/kcl_value.rs +78 -2
  19. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/mod.rs +86 -7
  20. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/state.rs +190 -12
  21. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/types.rs +137 -7
  22. zoo_kcl-0.3.114/kcl-api/src/lib.rs → zoo_kcl-0.3.116/kcl-lib/src/frontend/api.rs +99 -58
  23. zoo_kcl-0.3.116/kcl-lib/src/frontend/modify.rs +60 -0
  24. zoo_kcl-0.3.116/kcl-lib/src/frontend/sketch.rs +297 -0
  25. zoo_kcl-0.3.116/kcl-lib/src/frontend/traverse.rs +598 -0
  26. zoo_kcl-0.3.116/kcl-lib/src/frontend.rs +3175 -0
  27. zoo_kcl-0.3.116/kcl-lib/src/id.rs +42 -0
  28. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lib.rs +24 -3
  29. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/checks/chained_profiles.rs +5 -1
  30. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/kcl/mod.rs +11 -4
  31. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/digest.rs +5 -0
  32. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/types/mod.rs +82 -7
  33. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/types/path.rs +7 -0
  34. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/parser.rs +41 -14
  35. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ad.snap +8 -0
  36. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ae.snap +8 -0
  37. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__av.snap +8 -0
  38. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__g.snap +8 -0
  39. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_all_labeled.snap +8 -0
  40. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_first_unlabeled.snap +8 -0
  41. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_and_type.snap +8 -0
  42. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_decl_with_default_no_type.snap +8 -0
  43. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/project/mod.rs +7 -8
  44. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/simulation_tests.rs +127 -0
  45. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/args.rs +25 -2
  46. zoo_kcl-0.3.116/kcl-lib/src/std/constraints.rs +1051 -0
  47. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/mod.rs +29 -0
  48. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/planes.rs +23 -2
  49. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/sketch.rs +13 -0
  50. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/utils.rs +6 -2
  51. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/unparser.rs +10 -6
  52. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/walk/ast_node.rs +160 -1
  53. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/walk/mod.rs +2 -2
  54. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/hole.kcl +15 -33
  55. zoo_kcl-0.3.116/kcl-lib/std/sketch2.kcl +66 -0
  56. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/types.kcl +4 -0
  57. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/Cargo.toml +1 -1
  58. zoo_kcl-0.3.114/kcl-api/Cargo.toml +0 -25
  59. zoo_kcl-0.3.114/kcl-api/src/sketch.rs +0 -248
  60. zoo_kcl-0.3.114/kcl-lib/src/std/constraints.rs +0 -13
  61. zoo_kcl-0.3.114/kcl-lib/std/sketch2.kcl +0 -46
  62. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/src/example_tests.rs +0 -0
  63. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/src/lib.rs +0 -0
  64. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/args_with_lifetime.gen +0 -0
  65. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/args_with_refs.gen +0 -0
  66. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/array.gen +0 -0
  67. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/box.gen +0 -0
  68. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/doc_comment_with_code.gen +0 -0
  69. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/lineTo.gen +0 -0
  70. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/min.gen +0 -0
  71. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/option.gen +0 -0
  72. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/option_input_format.gen +0 -0
  73. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/return_vec_box_sketch.gen +0 -0
  74. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/return_vec_sketch.gen +0 -0
  75. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/show.gen +0 -0
  76. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-derive-docs/tests/test_args_with_exec_state.gen +0 -0
  77. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-directory-test-macro/src/lib.rs +0 -0
  78. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-error/src/lib.rs +0 -0
  79. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-error/src/source_range.rs +0 -0
  80. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/README.md +0 -0
  81. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/clippy.toml +0 -0
  82. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/common.kcl +0 -0
  83. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/coredump/local.rs +0 -0
  84. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/coredump/mod.rs +0 -0
  85. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/coredump/wasm.rs +0 -0
  86. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/gen_std_tests/type_formatter.rs +0 -0
  87. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/gen_std_tests.rs +0 -0
  88. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/kcl_doc.rs +0 -0
  89. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/mod.rs +0 -0
  90. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/templates/const.hbs +0 -0
  91. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/templates/function.hbs +0 -0
  92. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/templates/index.hbs +0 -0
  93. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/templates/kclType.hbs +0 -0
  94. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/docs/templates/module.hbs +0 -0
  95. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/async_tasks/mod.rs +0 -0
  96. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/async_tasks/tasks.rs +0 -0
  97. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/async_tasks/tasks_wasm.rs +0 -0
  98. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/conn.rs +0 -0
  99. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/conn_mock.rs +0 -0
  100. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/conn_wasm.rs +0 -0
  101. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/engine/mod.rs +0 -0
  102. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/errors.rs +0 -0
  103. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/import.rs +0 -0
  104. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/import_graph.rs +0 -0
  105. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/memory.rs +0 -0
  106. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/modeling.rs +0 -0
  107. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/execution/typed_path.rs +0 -0
  108. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/fmt.rs +0 -0
  109. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/fs/local.rs +0 -0
  110. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/fs/mod.rs +0 -0
  111. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/fs/wasm.rs +0 -0
  112. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/checks/camel_case.rs +0 -0
  113. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/checks/default_plane.rs +0 -0
  114. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/checks/mod.rs +0 -0
  115. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/checks/offset_plane.rs +0 -0
  116. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/mod.rs +0 -0
  117. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lint/rule.rs +0 -0
  118. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/log.rs +0 -0
  119. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/backend.rs +0 -0
  120. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/copilot/cache.rs +0 -0
  121. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/copilot/mod.rs +0 -0
  122. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/copilot/types.rs +0 -0
  123. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/kcl/custom_notifications.rs +0 -0
  124. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/kcl/hover.rs +0 -0
  125. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/mod.rs +0 -0
  126. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/test_util.rs +0 -0
  127. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/tests.rs +0 -0
  128. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/lsp/util.rs +0 -0
  129. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/main.rs +0 -0
  130. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/modules.rs +0 -0
  131. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/mod.rs +0 -0
  132. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/types/condition.rs +0 -0
  133. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/types/literal_value.rs +0 -0
  134. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/ast/types/none.rs +0 -0
  135. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/math.rs +0 -0
  136. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/mod.rs +0 -0
  137. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__a.snap +0 -0
  138. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__b.snap +0 -0
  139. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__c.snap +0 -0
  140. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__d.snap +0 -0
  141. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__e.snap +0 -0
  142. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__f.snap +0 -0
  143. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__g.snap +0 -0
  144. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__h.snap +0 -0
  145. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__i.snap +0 -0
  146. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__j.snap +0 -0
  147. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_math_tests__k.snap +0 -0
  148. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__a.snap +0 -0
  149. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aa.snap +0 -0
  150. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ab.snap +0 -0
  151. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ac.snap +0 -0
  152. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__af.snap +0 -0
  153. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ag.snap +0 -0
  154. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ah.snap +0 -0
  155. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ai.snap +0 -0
  156. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aj.snap +0 -0
  157. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ak.snap +0 -0
  158. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ap.snap +0 -0
  159. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aq.snap +0 -0
  160. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ar.snap +0 -0
  161. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__array_ranges.snap +0 -0
  162. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__at.snap +0 -0
  163. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__au.snap +0 -0
  164. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__aw.snap +0 -0
  165. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ax.snap +0 -0
  166. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__ay.snap +0 -0
  167. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__az.snap +0 -0
  168. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__b.snap +0 -0
  169. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bb.snap +0 -0
  170. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bc.snap +0 -0
  171. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bd.snap +0 -0
  172. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__be.snap +0 -0
  173. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bf.snap +0 -0
  174. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bg.snap +0 -0
  175. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bh.snap +0 -0
  176. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bi.snap +0 -0
  177. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bj.snap +0 -0
  178. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bk.snap +0 -0
  179. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bl.snap +0 -0
  180. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bm.snap +0 -0
  181. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__bn.snap +0 -0
  182. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__c.snap +0 -0
  183. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d.snap +0 -0
  184. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__d2.snap +0 -0
  185. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__e.snap +0 -0
  186. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__f.snap +0 -0
  187. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__h.snap +0 -0
  188. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__i.snap +0 -0
  189. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__j.snap +0 -0
  190. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__k.snap +0 -0
  191. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_all_named.snap +0 -0
  192. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_in_pipe.snap +0 -0
  193. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline.snap +0 -0
  194. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_call_multiline_with_comments.snap +0 -0
  195. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_in_binary_op.snap +0 -0
  196. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__kw_function_unnamed_first.snap +0 -0
  197. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__l.snap +0 -0
  198. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__m.snap +0 -0
  199. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__n.snap +0 -0
  200. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__o.snap +0 -0
  201. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__p.snap +0 -0
  202. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__q.snap +0 -0
  203. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__r.snap +0 -0
  204. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__s.snap +0 -0
  205. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__space_between_expr_and_array.snap +0 -0
  206. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__space_between_unary_and_operand.snap +0 -0
  207. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__t.snap +0 -0
  208. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__u.snap +0 -0
  209. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__v.snap +0 -0
  210. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__w.snap +0 -0
  211. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__x.snap +0 -0
  212. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__y.snap +0 -0
  213. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/snapshots/kcl_lib__parsing__parser__snapshot_tests__z.snap +0 -0
  214. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/token/mod.rs +0 -0
  215. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/token/snapshots/kcl_lib__parsing__token__tokeniser__tests__program2.snap +0 -0
  216. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/parsing/token/tokeniser.rs +0 -0
  217. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/settings/generate_settings_docs.rs +0 -0
  218. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/settings/mod.rs +0 -0
  219. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/settings/templates/settings.hbs +0 -0
  220. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/settings/types/mod.rs +0 -0
  221. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/settings/types/project.rs +0 -0
  222. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/simulation_tests/kcl_samples.rs +0 -0
  223. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/appearance.rs +0 -0
  224. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/array.rs +0 -0
  225. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/assert.rs +0 -0
  226. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/axis_or_reference.rs +0 -0
  227. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/chamfer.rs +0 -0
  228. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/clone.rs +0 -0
  229. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/csg.rs +0 -0
  230. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/edge.rs +0 -0
  231. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/extrude.rs +0 -0
  232. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/fillet.rs +0 -0
  233. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/gdt.rs +0 -0
  234. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/helix.rs +0 -0
  235. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/loft.rs +0 -0
  236. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/math.rs +0 -0
  237. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/mirror.rs +0 -0
  238. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/patterns.rs +0 -0
  239. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/revolve.rs +0 -0
  240. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/segment.rs +0 -0
  241. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/shapes.rs +0 -0
  242. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/shell.rs +0 -0
  243. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/sweep.rs +0 -0
  244. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/std/transform.rs +0 -0
  245. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/test_server.rs +0 -0
  246. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/thread/local.rs +0 -0
  247. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/thread/mod.rs +0 -0
  248. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/thread/wasm.rs +0 -0
  249. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/variant_name.rs +0 -0
  250. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/walk/ast_visitor.rs +0 -0
  251. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/walk/ast_walk.rs +0 -0
  252. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/src/wasm/mod.rs +0 -0
  253. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/appearance.kcl +0 -0
  254. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/array.kcl +0 -0
  255. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/gdt.kcl +0 -0
  256. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/math.kcl +0 -0
  257. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/prelude.kcl +0 -0
  258. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/sketch.kcl +0 -0
  259. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/solid.kcl +0 -0
  260. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/sweep.kcl +0 -0
  261. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/transform.kcl +0 -0
  262. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/turns.kcl +0 -0
  263. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/units.kcl +0 -0
  264. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-lib/std/vector.kcl +0 -0
  265. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/README.md +0 -0
  266. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/justfile +0 -0
  267. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/kcl.pyi +0 -0
  268. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/src/bin/stub_gen.rs +0 -0
  269. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/src/bridge.rs +0 -0
  270. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/kcl-python-bindings/src/lib.rs +0 -0
  271. {zoo_kcl-0.3.114 → zoo_kcl-0.3.116}/pyproject.toml +0 -0
@@ -28,6 +28,19 @@ dependencies = [
28
28
  "cpufeatures",
29
29
  ]
30
30
 
31
+ [[package]]
32
+ name = "ahash"
33
+ version = "0.8.12"
34
+ source = "registry+https://github.com/rust-lang/crates.io-index"
35
+ checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
36
+ dependencies = [
37
+ "cfg-if",
38
+ "getrandom 0.3.1",
39
+ "once_cell",
40
+ "version_check",
41
+ "zerocopy",
42
+ ]
43
+
31
44
  [[package]]
32
45
  name = "aho-corasick"
33
46
  version = "1.1.3"
@@ -37,6 +50,15 @@ dependencies = [
37
50
  "memchr",
38
51
  ]
39
52
 
53
+ [[package]]
54
+ name = "alloca"
55
+ version = "0.4.0"
56
+ source = "registry+https://github.com/rust-lang/crates.io-index"
57
+ checksum = "e5a7d05ea6aea7e9e64d25b9156ba2fee3fdd659e34e41063cd2fc7cd020d7f4"
58
+ dependencies = [
59
+ "cc",
60
+ ]
61
+
40
62
  [[package]]
41
63
  name = "android_system_properties"
42
64
  version = "0.1.5"
@@ -576,10 +598,11 @@ dependencies = [
576
598
 
577
599
  [[package]]
578
600
  name = "criterion"
579
- version = "0.7.0"
601
+ version = "0.8.0"
580
602
  source = "registry+https://github.com/rust-lang/crates.io-index"
581
- checksum = "e1c047a62b0cc3e145fa84415a3191f628e980b194c2755aa12300a4e6cbd928"
603
+ checksum = "a0dfe5e9e71bdcf4e4954f7d14da74d1cdb92a3a07686452d1509652684b1aab"
582
604
  dependencies = [
605
+ "alloca",
583
606
  "anes",
584
607
  "cast",
585
608
  "ciborium",
@@ -588,6 +611,7 @@ dependencies = [
588
611
  "itertools 0.13.0",
589
612
  "num-traits 0.2.19",
590
613
  "oorandom",
614
+ "page_size",
591
615
  "plotters",
592
616
  "rayon",
593
617
  "regex",
@@ -600,9 +624,9 @@ dependencies = [
600
624
 
601
625
  [[package]]
602
626
  name = "criterion-plot"
603
- version = "0.6.0"
627
+ version = "0.8.1"
604
628
  source = "registry+https://github.com/rust-lang/crates.io-index"
605
- checksum = "9b1bcc0dc7dfae599d84ad0b1a55f80cde8af3725da8313b528da95ef783e338"
629
+ checksum = "ed943f81ea2faa8dcecbbfa50164acf95d555afec96a27871663b300e387b2e4"
606
630
  dependencies = [
607
631
  "cast",
608
632
  "itertools 0.13.0",
@@ -660,12 +684,13 @@ dependencies = [
660
684
 
661
685
  [[package]]
662
686
  name = "csscolorparser"
663
- version = "0.8.0"
687
+ version = "0.8.1"
664
688
  source = "registry+https://github.com/rust-lang/crates.io-index"
665
- checksum = "3b9e6b904cb9ee4cb0bb93ba2b1bf3dcd2d3fc58c25557934a4b56cbd2ad9f88"
689
+ checksum = "02ee6eae4d99456f92dc379ba21cf08f783ef5525f193c3854b4e921ece045c5"
666
690
  dependencies = [
667
691
  "num-traits 0.2.19",
668
692
  "phf",
693
+ "serde",
669
694
  "uncased",
670
695
  ]
671
696
 
@@ -968,16 +993,6 @@ dependencies = [
968
993
  "windows-sys 0.59.0",
969
994
  ]
970
995
 
971
- [[package]]
972
- name = "error-stack"
973
- version = "0.5.0"
974
- source = "registry+https://github.com/rust-lang/crates.io-index"
975
- checksum = "fe413319145d1063f080f27556fd30b1d70b01e2ba10c2a6e40d4be982ffc5d1"
976
- dependencies = [
977
- "anyhow",
978
- "rustc_version",
979
- ]
980
-
981
996
  [[package]]
982
997
  name = "euler"
983
998
  version = "0.4.1"
@@ -1977,9 +1992,9 @@ dependencies = [
1977
1992
 
1978
1993
  [[package]]
1979
1994
  name = "insta"
1980
- version = "1.44.1"
1995
+ version = "1.44.3"
1981
1996
  source = "registry+https://github.com/rust-lang/crates.io-index"
1982
- checksum = "e8732d3774162a0851e3f2b150eb98f31a9885dd75985099421d393385a01dfd"
1997
+ checksum = "b5c943d4415edd8153251b6f197de5eb1640e56d84e8d9159bea190421c73698"
1983
1998
  dependencies = [
1984
1999
  "console",
1985
2000
  "once_cell",
@@ -2093,28 +2108,17 @@ dependencies = [
2093
2108
 
2094
2109
  [[package]]
2095
2110
  name = "js-sys"
2096
- version = "0.3.82"
2111
+ version = "0.3.83"
2097
2112
  source = "registry+https://github.com/rust-lang/crates.io-index"
2098
- checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65"
2113
+ checksum = "464a3709c7f55f1f721e5389aa6ea4e3bc6aba669353300af094b29ffbdde1d8"
2099
2114
  dependencies = [
2100
2115
  "once_cell",
2101
2116
  "wasm-bindgen",
2102
2117
  ]
2103
2118
 
2104
- [[package]]
2105
- name = "kcl-api"
2106
- version = "0.1.114"
2107
- dependencies = [
2108
- "indexmap 2.12.1",
2109
- "kcl-error",
2110
- "serde",
2111
- "ts-rs",
2112
- "wasm-bindgen",
2113
- ]
2114
-
2115
2119
  [[package]]
2116
2120
  name = "kcl-bumper"
2117
- version = "0.1.114"
2121
+ version = "0.1.116"
2118
2122
  dependencies = [
2119
2123
  "anyhow",
2120
2124
  "clap",
@@ -2125,7 +2129,7 @@ dependencies = [
2125
2129
 
2126
2130
  [[package]]
2127
2131
  name = "kcl-derive-docs"
2128
- version = "0.1.114"
2132
+ version = "0.1.116"
2129
2133
  dependencies = [
2130
2134
  "proc-macro2",
2131
2135
  "quote",
@@ -2134,7 +2138,7 @@ dependencies = [
2134
2138
 
2135
2139
  [[package]]
2136
2140
  name = "kcl-directory-test-macro"
2137
- version = "0.1.114"
2141
+ version = "0.1.116"
2138
2142
  dependencies = [
2139
2143
  "convert_case",
2140
2144
  "proc-macro2",
@@ -2144,7 +2148,7 @@ dependencies = [
2144
2148
 
2145
2149
  [[package]]
2146
2150
  name = "kcl-error"
2147
- version = "0.1.114"
2151
+ version = "0.1.116"
2148
2152
  dependencies = [
2149
2153
  "miette",
2150
2154
  "serde",
@@ -2154,22 +2158,21 @@ dependencies = [
2154
2158
 
2155
2159
  [[package]]
2156
2160
  name = "kcl-ezpz"
2157
- version = "0.1.5"
2161
+ version = "0.2.2"
2158
2162
  source = "registry+https://github.com/rust-lang/crates.io-index"
2159
- checksum = "ae79e38dd74d57483135a0c29e9be71cd445e6381a2fb99ea683b637cc0934d8"
2163
+ checksum = "990cb34e933e0ee5fdfe3c919500419fe5aa49e13bb14ca96ba4bb2bdc6d2f7b"
2160
2164
  dependencies = [
2161
2165
  "faer",
2162
2166
  "getrandom 0.2.16",
2163
2167
  "indexmap 2.12.1",
2164
2168
  "libm",
2165
- "newtonls_faer",
2166
2169
  "thiserror 2.0.17",
2167
2170
  "winnow",
2168
2171
  ]
2169
2172
 
2170
2173
  [[package]]
2171
2174
  name = "kcl-language-server"
2172
- version = "0.2.114"
2175
+ version = "0.2.116"
2173
2176
  dependencies = [
2174
2177
  "anyhow",
2175
2178
  "clap",
@@ -2190,7 +2193,7 @@ dependencies = [
2190
2193
 
2191
2194
  [[package]]
2192
2195
  name = "kcl-language-server-release"
2193
- version = "0.1.114"
2196
+ version = "0.1.116"
2194
2197
  dependencies = [
2195
2198
  "anyhow",
2196
2199
  "clap",
@@ -2210,8 +2213,9 @@ dependencies = [
2210
2213
 
2211
2214
  [[package]]
2212
2215
  name = "kcl-lib"
2213
- version = "0.2.114"
2216
+ version = "0.2.116"
2214
2217
  dependencies = [
2218
+ "ahash",
2215
2219
  "anyhow",
2216
2220
  "approx 0.5.1",
2217
2221
  "async-recursion",
@@ -2239,7 +2243,6 @@ dependencies = [
2239
2243
  "insta",
2240
2244
  "itertools 0.14.0",
2241
2245
  "js-sys",
2242
- "kcl-api",
2243
2246
  "kcl-derive-docs",
2244
2247
  "kcl-directory-test-macro",
2245
2248
  "kcl-error",
@@ -2292,7 +2295,7 @@ dependencies = [
2292
2295
 
2293
2296
  [[package]]
2294
2297
  name = "kcl-python-bindings"
2295
- version = "0.3.114"
2298
+ version = "0.3.116"
2296
2299
  dependencies = [
2297
2300
  "anyhow",
2298
2301
  "kcl-lib",
@@ -2308,7 +2311,7 @@ dependencies = [
2308
2311
 
2309
2312
  [[package]]
2310
2313
  name = "kcl-test-server"
2311
- version = "0.1.114"
2314
+ version = "0.1.116"
2312
2315
  dependencies = [
2313
2316
  "anyhow",
2314
2317
  "hyper 0.14.32",
@@ -2321,7 +2324,7 @@ dependencies = [
2321
2324
 
2322
2325
  [[package]]
2323
2326
  name = "kcl-to-core"
2324
- version = "0.1.114"
2327
+ version = "0.1.116"
2325
2328
  dependencies = [
2326
2329
  "anyhow",
2327
2330
  "async-trait",
@@ -2335,7 +2338,7 @@ dependencies = [
2335
2338
 
2336
2339
  [[package]]
2337
2340
  name = "kcl-wasm-lib"
2338
- version = "0.1.114"
2341
+ version = "0.1.116"
2339
2342
  dependencies = [
2340
2343
  "anyhow",
2341
2344
  "console_error_panic_hook",
@@ -2345,7 +2348,6 @@ dependencies = [
2345
2348
  "getrandom 0.3.1",
2346
2349
  "gloo-utils",
2347
2350
  "js-sys",
2348
- "kcl-api",
2349
2351
  "kcl-lib",
2350
2352
  "kittycad",
2351
2353
  "kittycad-modeling-cmds",
@@ -2860,21 +2862,6 @@ dependencies = [
2860
2862
  "unicode-segmentation",
2861
2863
  ]
2862
2864
 
2863
- [[package]]
2864
- name = "newtonls_faer"
2865
- version = "0.1.3"
2866
- source = "registry+https://github.com/rust-lang/crates.io-index"
2867
- checksum = "8245825be07ab6cd8121fc12aa8bbfe7d8fe94512298382a222f0104105e3cfe"
2868
- dependencies = [
2869
- "dyn-stack",
2870
- "error-stack",
2871
- "faer",
2872
- "faer-traits",
2873
- "num-complex",
2874
- "num-traits 0.2.19",
2875
- "rayon",
2876
- ]
2877
-
2878
2865
  [[package]]
2879
2866
  name = "nom"
2880
2867
  version = "7.1.3"
@@ -3048,6 +3035,16 @@ version = "4.2.0"
3048
3035
  source = "registry+https://github.com/rust-lang/crates.io-index"
3049
3036
  checksum = "1036865bb9422d3300cf723f657c2851d0e9ab12567854b1f4eba3d77decf564"
3050
3037
 
3038
+ [[package]]
3039
+ name = "page_size"
3040
+ version = "0.6.0"
3041
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3042
+ checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da"
3043
+ dependencies = [
3044
+ "libc",
3045
+ "winapi",
3046
+ ]
3047
+
3051
3048
  [[package]]
3052
3049
  name = "papergrid"
3053
3050
  version = "0.17.0"
@@ -3928,15 +3925,6 @@ version = "2.1.1"
3928
3925
  source = "registry+https://github.com/rust-lang/crates.io-index"
3929
3926
  checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
3930
3927
 
3931
- [[package]]
3932
- name = "rustc_version"
3933
- version = "0.4.1"
3934
- source = "registry+https://github.com/rust-lang/crates.io-index"
3935
- checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
3936
- dependencies = [
3937
- "semver",
3938
- ]
3939
-
3940
3928
  [[package]]
3941
3929
  name = "rustix"
3942
3930
  version = "0.38.44"
@@ -5058,9 +5046,9 @@ dependencies = [
5058
5046
 
5059
5047
  [[package]]
5060
5048
  name = "tracing-core"
5061
- version = "0.1.33"
5049
+ version = "0.1.35"
5062
5050
  source = "registry+https://github.com/rust-lang/crates.io-index"
5063
- checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
5051
+ checksum = "7a04e24fab5c89c6a36eb8558c9656f30d81de51dfa4d3b45f26b21d61fa0a6c"
5064
5052
  dependencies = [
5065
5053
  "once_cell",
5066
5054
  "valuable",
@@ -5089,9 +5077,9 @@ dependencies = [
5089
5077
 
5090
5078
  [[package]]
5091
5079
  name = "tracing-subscriber"
5092
- version = "0.3.20"
5080
+ version = "0.3.22"
5093
5081
  source = "registry+https://github.com/rust-lang/crates.io-index"
5094
- checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5"
5082
+ checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e"
5095
5083
  dependencies = [
5096
5084
  "nu-ansi-term",
5097
5085
  "serde",
@@ -5379,9 +5367,9 @@ dependencies = [
5379
5367
 
5380
5368
  [[package]]
5381
5369
  name = "wasm-bindgen"
5382
- version = "0.2.105"
5370
+ version = "0.2.106"
5383
5371
  source = "registry+https://github.com/rust-lang/crates.io-index"
5384
- checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60"
5372
+ checksum = "0d759f433fa64a2d763d1340820e46e111a7a5ab75f993d1852d70b03dbb80fd"
5385
5373
  dependencies = [
5386
5374
  "cfg-if",
5387
5375
  "once_cell",
@@ -5392,9 +5380,9 @@ dependencies = [
5392
5380
 
5393
5381
  [[package]]
5394
5382
  name = "wasm-bindgen-futures"
5395
- version = "0.4.55"
5383
+ version = "0.4.56"
5396
5384
  source = "registry+https://github.com/rust-lang/crates.io-index"
5397
- checksum = "551f88106c6d5e7ccc7cd9a16f312dd3b5d36ea8b4954304657d5dfba115d4a0"
5385
+ checksum = "836d9622d604feee9e5de25ac10e3ea5f2d65b41eac0d9ce72eb5deae707ce7c"
5398
5386
  dependencies = [
5399
5387
  "cfg-if",
5400
5388
  "futures-core",
@@ -5406,9 +5394,9 @@ dependencies = [
5406
5394
 
5407
5395
  [[package]]
5408
5396
  name = "wasm-bindgen-macro"
5409
- version = "0.2.105"
5397
+ version = "0.2.106"
5410
5398
  source = "registry+https://github.com/rust-lang/crates.io-index"
5411
- checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2"
5399
+ checksum = "48cb0d2638f8baedbc542ed444afc0644a29166f1595371af4fecf8ce1e7eeb3"
5412
5400
  dependencies = [
5413
5401
  "quote",
5414
5402
  "wasm-bindgen-macro-support",
@@ -5416,9 +5404,9 @@ dependencies = [
5416
5404
 
5417
5405
  [[package]]
5418
5406
  name = "wasm-bindgen-macro-support"
5419
- version = "0.2.105"
5407
+ version = "0.2.106"
5420
5408
  source = "registry+https://github.com/rust-lang/crates.io-index"
5421
- checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc"
5409
+ checksum = "cefb59d5cd5f92d9dcf80e4683949f15ca4b511f4ac0a6e14d4e1ac60c6ecd40"
5422
5410
  dependencies = [
5423
5411
  "bumpalo",
5424
5412
  "proc-macro2",
@@ -5429,21 +5417,29 @@ dependencies = [
5429
5417
 
5430
5418
  [[package]]
5431
5419
  name = "wasm-bindgen-shared"
5432
- version = "0.2.105"
5420
+ version = "0.2.106"
5433
5421
  source = "registry+https://github.com/rust-lang/crates.io-index"
5434
- checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76"
5422
+ checksum = "cbc538057e648b67f72a982e708d485b2efa771e1ac05fec311f9f63e5800db4"
5435
5423
  dependencies = [
5436
5424
  "unicode-ident",
5437
5425
  ]
5438
5426
 
5439
5427
  [[package]]
5440
5428
  name = "wasm-bindgen-test"
5441
- version = "0.3.55"
5429
+ version = "0.3.56"
5442
5430
  source = "registry+https://github.com/rust-lang/crates.io-index"
5443
- checksum = "bfc379bfb624eb59050b509c13e77b4eb53150c350db69628141abce842f2373"
5431
+ checksum = "25e90e66d265d3a1efc0e72a54809ab90b9c0c515915c67cdf658689d2c22c6c"
5444
5432
  dependencies = [
5433
+ "async-trait",
5434
+ "cast",
5445
5435
  "js-sys",
5436
+ "libm",
5446
5437
  "minicov",
5438
+ "nu-ansi-term",
5439
+ "num-traits 0.2.19",
5440
+ "oorandom",
5441
+ "serde",
5442
+ "serde_json",
5447
5443
  "wasm-bindgen",
5448
5444
  "wasm-bindgen-futures",
5449
5445
  "wasm-bindgen-test-macro",
@@ -5451,9 +5447,9 @@ dependencies = [
5451
5447
 
5452
5448
  [[package]]
5453
5449
  name = "wasm-bindgen-test-macro"
5454
- version = "0.3.55"
5450
+ version = "0.3.56"
5455
5451
  source = "registry+https://github.com/rust-lang/crates.io-index"
5456
- checksum = "085b2df989e1e6f9620c1311df6c996e83fe16f57792b272ce1e024ac16a90f1"
5452
+ checksum = "7150335716dce6028bead2b848e72f47b45e7b9422f64cccdc23bedca89affc1"
5457
5453
  dependencies = [
5458
5454
  "proc-macro2",
5459
5455
  "quote",
@@ -5475,9 +5471,9 @@ dependencies = [
5475
5471
 
5476
5472
  [[package]]
5477
5473
  name = "web-sys"
5478
- version = "0.3.82"
5474
+ version = "0.3.83"
5479
5475
  source = "registry+https://github.com/rust-lang/crates.io-index"
5480
- checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1"
5476
+ checksum = "9b32828d774c412041098d182a8b38b16ea816958e07cf40eec2bc080ae137ac"
5481
5477
  dependencies = [
5482
5478
  "js-sys",
5483
5479
  "wasm-bindgen",
@@ -5660,9 +5656,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
5660
5656
 
5661
5657
  [[package]]
5662
5658
  name = "winnow"
5663
- version = "0.7.13"
5659
+ version = "0.7.14"
5664
5660
  source = "registry+https://github.com/rust-lang/crates.io-index"
5665
- checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf"
5661
+ checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829"
5666
5662
  dependencies = [
5667
5663
  "memchr",
5668
5664
  ]
@@ -5759,18 +5755,18 @@ dependencies = [
5759
5755
 
5760
5756
  [[package]]
5761
5757
  name = "zerocopy"
5762
- version = "0.8.23"
5758
+ version = "0.8.31"
5763
5759
  source = "registry+https://github.com/rust-lang/crates.io-index"
5764
- checksum = "fd97444d05a4328b90e75e503a34bad781f14e28a823ad3557f0750df1ebcbc6"
5760
+ checksum = "fd74ec98b9250adb3ca554bdde269adf631549f51d8a8f8f0a10b50f1cb298c3"
5765
5761
  dependencies = [
5766
5762
  "zerocopy-derive",
5767
5763
  ]
5768
5764
 
5769
5765
  [[package]]
5770
5766
  name = "zerocopy-derive"
5771
- version = "0.8.23"
5767
+ version = "0.8.31"
5772
5768
  source = "registry+https://github.com/rust-lang/crates.io-index"
5773
- checksum = "6352c01d0edd5db859a63e2605f4ea3183ddbd15e2c4a9e7d32184df75e4f154"
5769
+ checksum = "d8a8d209fdf45cf5138cbb5a506f6b52522a25afccc534d1475dad8e31105c6a"
5774
5770
  dependencies = [
5775
5771
  "proc-macro2",
5776
5772
  "quote",
@@ -1,8 +1,9 @@
1
1
  [workspace]
2
2
  resolver = "2"
3
- members = ["kcl-api", "kcl-derive-docs", "kcl-directory-test-macro", "kcl-error", "kcl-lib", "kcl-python-bindings"]
3
+ members = ["kcl-derive-docs", "kcl-directory-test-macro", "kcl-error", "kcl-lib", "kcl-python-bindings"]
4
4
 
5
5
  [workspace.dependencies]
6
+ ahash = "0.8.11"
6
7
  anyhow = { version = "1" }
7
8
  async-trait = "0.1.89"
8
9
  clap = { version = "4.5.53", features = ["derive"] }
@@ -10,7 +11,7 @@ console_error_panic_hook = "0.1.7"
10
11
  dashmap = { version = "6.1.0" }
11
12
  http = "1"
12
13
  indexmap = "2.12.1"
13
- kcl-ezpz = "0.1.5"
14
+ kcl-ezpz = "0.2.2"
14
15
  kittycad = { version = "0.4.2", default-features = false, features = [
15
16
  "js",
16
17
  "requests",
@@ -34,7 +35,7 @@ slog-json = "2.6.1"
34
35
  slog-term = "2.9.2"
35
36
  tokio = { version = "1" }
36
37
  tower-lsp = { version = "0.20.0", default-features = false }
37
- tracing-subscriber = { version = "0.3.20", features = [
38
+ tracing-subscriber = { version = "0.3.22", features = [
38
39
  "registry",
39
40
  "std",
40
41
  "fmt",
@@ -72,6 +73,7 @@ debug = "line-tables-only"
72
73
 
73
74
  #Example: how to point modeling-app at a different repo (e.g. a branch or a local clone)
74
75
  # [patch.crates-io]
76
+ # kcl-ezpz = { path = "../../ezpz/kcl-ezpz" }
75
77
  # kittycad-modeling-cmds = { git = "https://github.com/KittyCAD/modeling-api.git", branch = "ben/chamfer_angle" }
76
78
  # kittycad-modeling-session = { git = "https://github.com/KittyCAD/modeling-api.git", branch = "ben/chamfer_angle" }
77
79
  # #kittycad-modeling-session = { path = "../../modeling-api/modeling-session" }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zoo-kcl
3
- Version: 0.3.114
3
+ Version: 0.3.116
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Classifier: Programming Language :: Python :: Implementation :: PyPy
@@ -1,7 +1,7 @@
1
1
  [package]
2
2
  name = "kcl-derive-docs"
3
3
  description = "A tool for generating documentation from Rust derive macros"
4
- version = "0.1.114"
4
+ version = "0.1.116"
5
5
  edition = "2021"
6
6
  license = "MIT"
7
7
  repository = "https://github.com/KittyCAD/modeling-app"
@@ -1,7 +1,7 @@
1
1
  [package]
2
2
  name = "kcl-directory-test-macro"
3
3
  description = "A tool for generating tests from a directory of kcl files"
4
- version = "0.1.114"
4
+ version = "0.1.116"
5
5
  edition = "2021"
6
6
  license = "MIT"
7
7
  repository = "https://github.com/KittyCAD/modeling-app"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "kcl-error"
3
- version = "0.1.114"
3
+ version = "0.1.116"
4
4
  edition = "2024"
5
5
  description = "KCL error definitions"
6
6
  license = "MIT"
@@ -1,7 +1,7 @@
1
1
  [package]
2
2
  name = "kcl-lib"
3
3
  description = "KittyCAD Language implementation and tools"
4
- version = "0.2.114"
4
+ version = "0.2.116"
5
5
  edition = "2024"
6
6
  license = "MIT"
7
7
  repository = "https://github.com/KittyCAD/modeling-app"
@@ -42,6 +42,7 @@ lsp-test-util = []
42
42
  tabled = ["dep:tabled"]
43
43
 
44
44
  [dependencies]
45
+ ahash = { workspace = true }
45
46
  anyhow = { workspace = true, features = ["backtrace"] }
46
47
  async-recursion = "1.1.1"
47
48
  async-trait = { workspace = true }
@@ -52,7 +53,7 @@ clap = { version = "4.5.53", default-features = false, optional = true, features
52
53
  "derive",
53
54
  ] }
54
55
  convert_case = "0.10.0"
55
- csscolorparser = "0.8.0"
56
+ csscolorparser = "0.8.1"
56
57
  dashmap = { workspace = true }
57
58
  dhat = { version = "0.3", optional = true }
58
59
  fnv = "1.0.7"
@@ -64,7 +65,6 @@ http = { workspace = true }
64
65
  image = { version = "0.25.9", default-features = false, features = ["png"] }
65
66
  indexmap = { workspace = true, features = ["serde", "rayon"] }
66
67
  itertools = "0.14.0"
67
- kcl-api = { version = "0.1", path = "../kcl-api" }
68
68
  kcl-derive-docs = { version = "0.1", path = "../kcl-derive-docs" }
69
69
  kcl-error = { version = "0.1", path = "../kcl-error" }
70
70
  kcl-ezpz = { workspace = true }
@@ -141,11 +141,11 @@ web-sys = { version = "0.3.76", features = ["console"] }
141
141
  [dev-dependencies]
142
142
  approx = "0.5"
143
143
  base64 = "0.22.1"
144
- criterion = { version = "0.7.0", features = ["async_tokio"] }
144
+ criterion = { version = "0.8.0", features = ["async_tokio"] }
145
145
  expectorate = "1.2.0"
146
146
  handlebars = "6.3.2"
147
147
  image = { version = "0.25.9", default-features = false, features = ["png"] }
148
- insta = { version = "1.44.1", features = ["json", "filters", "redactions"] }
148
+ insta = { version = "1.44.3", features = ["json", "filters", "redactions"] }
149
149
  kcl-directory-test-macro = { version = "0.1", path = "../kcl-directory-test-macro" }
150
150
  miette = { version = "7.6.0", features = ["fancy"] }
151
151
  pretty_assertions = "1.4.1"
@@ -0,0 +1,3 @@
1
+ use indexmap::IndexSet;
2
+
3
+ pub type AhashIndexSet<T> = IndexSet<T, ahash::RandomState>;
@@ -35,9 +35,17 @@ pub(crate) const IMPL: &str = "impl";
35
35
  pub(crate) const IMPL_RUST: &str = "std_rust";
36
36
  pub(crate) const IMPL_CONSTRAINT: &str = "std_rust_constraint";
37
37
  pub(crate) const IMPL_CONSTRAINABLE: &str = "std_constrainable";
38
+ pub(crate) const IMPL_RUST_CONSTRAINABLE: &str = "std_rust_constrainable";
38
39
  pub(crate) const IMPL_KCL: &str = "kcl";
39
40
  pub(crate) const IMPL_PRIMITIVE: &str = "primitive";
40
- pub(super) const IMPL_VALUES: [&str; 5] = [IMPL_RUST, IMPL_KCL, IMPL_PRIMITIVE, IMPL_CONSTRAINT, IMPL_CONSTRAINABLE];
41
+ pub(super) const IMPL_VALUES: [&str; 6] = [
42
+ IMPL_RUST,
43
+ IMPL_KCL,
44
+ IMPL_PRIMITIVE,
45
+ IMPL_CONSTRAINT,
46
+ IMPL_CONSTRAINABLE,
47
+ IMPL_RUST_CONSTRAINABLE,
48
+ ];
41
49
 
42
50
  pub(crate) const WARNINGS: &str = "warnings";
43
51
  pub(crate) const WARN_ALLOW: &str = "allow";
@@ -110,6 +118,7 @@ pub enum Impl {
110
118
  Kcl,
111
119
  KclConstrainable,
112
120
  Rust,
121
+ RustConstrainable,
113
122
  RustConstraint,
114
123
  Primitive,
115
124
  }
@@ -122,6 +131,7 @@ impl FromStr for Impl {
122
131
  IMPL_RUST => Ok(Self::Rust),
123
132
  IMPL_CONSTRAINT => Ok(Self::RustConstraint),
124
133
  IMPL_CONSTRAINABLE => Ok(Self::KclConstrainable),
134
+ IMPL_RUST_CONSTRAINABLE => Ok(Self::RustConstrainable),
125
135
  IMPL_KCL => Ok(Self::Kcl),
126
136
  IMPL_PRIMITIVE => Ok(Self::Primitive),
127
137
  _ => Err(()),
@@ -87,6 +87,7 @@ impl Artifact {
87
87
  Artifact::Solid2d(a) => vec![a.path_id],
88
88
  Artifact::StartSketchOnFace(a) => vec![a.face_id],
89
89
  Artifact::StartSketchOnPlane(a) => vec![a.plane_id],
90
+ Artifact::SketchBlock(a) => a.plane_id.map(|id| vec![id]).unwrap_or_default(),
90
91
  Artifact::PlaneOfFace(a) => vec![a.face_id],
91
92
  Artifact::Sweep(a) => vec![a.path_id],
92
93
  Artifact::Wall(a) => vec![a.seg_id, a.sweep_id],
@@ -152,6 +153,10 @@ impl Artifact {
152
153
  // Note: Don't include these since they're parents: plane_id.
153
154
  Vec::new()
154
155
  }
156
+ Artifact::SketchBlock { .. } => {
157
+ // Note: Don't include these since they're parents: plane_id (if present).
158
+ Vec::new()
159
+ }
155
160
  Artifact::PlaneOfFace { .. } => {
156
161
  // Note: Don't include these since they're parents: face_id.
157
162
  Vec::new()
@@ -267,6 +272,7 @@ impl ArtifactGraph {
267
272
  }
268
273
  Artifact::StartSketchOnFace { .. }
269
274
  | Artifact::StartSketchOnPlane { .. }
275
+ | Artifact::SketchBlock { .. }
270
276
  | Artifact::PlaneOfFace { .. }
271
277
  | Artifact::Sweep(_)
272
278
  | Artifact::Wall(_)
@@ -382,6 +388,14 @@ impl ArtifactGraph {
382
388
  )?;
383
389
  node_path_display(output, prefix, None, code_ref)?;
384
390
  }
391
+ Artifact::SketchBlock(SketchBlock { code_ref, .. }) => {
392
+ writeln!(
393
+ output,
394
+ "{prefix}{id}[\"SketchBlock<br>{:?}\"]",
395
+ code_ref_display(code_ref)
396
+ )?;
397
+ node_path_display(output, prefix, None, code_ref)?;
398
+ }
385
399
  Artifact::PlaneOfFace(PlaneOfFace { code_ref, .. }) => {
386
400
  writeln!(
387
401
  output,