Compare commits
73 Commits
ryanrosell
...
jtran/exec
Author | SHA1 | Date | |
---|---|---|---|
437aacf477 | |||
c6fb56058b | |||
ca2fc1bf38 | |||
8e62f07d71 | |||
55ef40d136 | |||
3b7bbc1642 | |||
1a569af476 | |||
e9fe455607 | |||
35387bbd7d | |||
b26a0f98fc | |||
b697258ad5 | |||
6c8aa799b4 | |||
9ceb247fcd | |||
6303130e08 | |||
47b1c1654a | |||
e53bb07843 | |||
9d0f06b58f | |||
20777a60aa | |||
71c5451e3a | |||
fd21850e48 | |||
294040b618 | |||
ca95427f21 | |||
27c6f75a49 | |||
579151a9bb | |||
90f0f13d26 | |||
1a23d96f7e | |||
6595fca000 | |||
8b0b5a0215 | |||
2263958fd0 | |||
66e60f2ddb | |||
5f51a0f569 | |||
aee1d66e56 | |||
1d1bb8cee0 | |||
c7dd89e720 | |||
9860294eb1 | |||
1c393bfa84 | |||
95ea1427bc | |||
f1b0e40388 | |||
7848d63177 | |||
619b059ae1 | |||
429fc3eb1b | |||
615f661cbb | |||
6e0675cfda | |||
3e79b90884 | |||
5a0a635995 | |||
93d9b10e11 | |||
166487433c | |||
5512f99997 | |||
01cc9e751b | |||
bfac6b7dc8 | |||
d1f9a02ffa | |||
d8236dd8da | |||
dabf256e2b | |||
4285e81001 | |||
370375c328 | |||
9f22882c68 | |||
db5331d9b9 | |||
5cc92f0162 | |||
2978e80226 | |||
4a74c60150 | |||
00fa40bbc9 | |||
62b78840b6 | |||
f828c36e58 | |||
8c5b146c94 | |||
61c7d9844d | |||
8d48c17395 | |||
0ff820d4da | |||
c4ff1c2ef1 | |||
b6aba2f29c | |||
7467f7ea50 | |||
0c6d3e0ccf | |||
e82917ea01 | |||
857c1aad3d |
2
.github/workflows/cargo-test.yml
vendored
2
.github/workflows/cargo-test.yml
vendored
@ -4,6 +4,7 @@ on:
|
||||
- main
|
||||
paths:
|
||||
- 'src/wasm-lib/**.rs'
|
||||
- 'src/wasm-lib/**.hbs'
|
||||
- '**/Cargo.toml'
|
||||
- '**/Cargo.lock'
|
||||
- '**/rust-toolchain.toml'
|
||||
@ -13,6 +14,7 @@ on:
|
||||
pull_request:
|
||||
paths:
|
||||
- 'src/wasm-lib/**.rs'
|
||||
- 'src/wasm-lib/**.hbs'
|
||||
- '**/Cargo.toml'
|
||||
- '**/Cargo.lock'
|
||||
- '**/rust-toolchain.toml'
|
||||
|
73
.github/workflows/playwright.yml
vendored
73
.github/workflows/playwright.yml
vendored
@ -237,7 +237,6 @@ jobs:
|
||||
VITE_KC_DEV_TOKEN: ${{ secrets.KITTYCAD_API_TOKEN_DEV }}
|
||||
VITE_KC_SKIP_AUTH: true
|
||||
token: ${{ secrets.KITTYCAD_API_TOKEN_DEV }}
|
||||
GENERATE_PLAYWRIGHT_COVERAGE: true
|
||||
- name: send to axiom
|
||||
if: always()
|
||||
shell: bash
|
||||
@ -257,18 +256,6 @@ jobs:
|
||||
path: playwright-report/
|
||||
retention-days: 30
|
||||
overwrite: true
|
||||
- name: Debug artifact name
|
||||
if: ${{ !cancelled() && (success() || failure()) }}
|
||||
run: |
|
||||
echo "Artifact name: playwright-coverage-${{ runner.os }}-${{ matrix.shardIndex }}-${{ github.sha }}"
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() && (success() || failure()) }}
|
||||
with:
|
||||
name: playwright-coverage-${{ runner.os }}-${{ matrix.shardIndex }}-${{ github.sha }}
|
||||
path: "./.nyc_output/*.json"
|
||||
retention-days: 30
|
||||
overwrite: true
|
||||
include-hidden-files: true
|
||||
|
||||
|
||||
playwright-electron:
|
||||
@ -276,7 +263,7 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest, macos-14]
|
||||
timeout-minutes: 40
|
||||
timeout-minutes: 60
|
||||
runs-on: ${{ matrix.os }}
|
||||
needs: check-rust-changes
|
||||
steps:
|
||||
@ -429,8 +416,6 @@ jobs:
|
||||
VITE_KC_DEV_TOKEN: ${{ secrets.KITTYCAD_API_TOKEN_DEV }}
|
||||
VITE_KC_SKIP_AUTH: true
|
||||
IS_UBUNTU: ${{ startsWith(matrix.os, 'ubuntu') && 'true' || 'false' }}
|
||||
# TODO set to true, see: https://github.com/KittyCAD/modeling-app/issues/3885
|
||||
GENERATE_PLAYWRIGHT_COVERAGE: false
|
||||
#DEBUG: 'pw:browser*'
|
||||
- name: send to axiom
|
||||
if: ${{ !cancelled() && (success() || failure()) && !startsWith(matrix.os, 'windows') }}
|
||||
@ -451,59 +436,3 @@ jobs:
|
||||
path: playwright-report/
|
||||
retention-days: 30
|
||||
overwrite: true
|
||||
# TODO uncomment the following, see: https://github.com/KittyCAD/modeling-app/issues/3885
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# if: ${{ always() }}
|
||||
# with:
|
||||
# name: playwright-coverage-${{ runner.os }}-${{ github.sha }}
|
||||
# path: .nyc_output/
|
||||
# retention-days: 30
|
||||
# overwrite: true
|
||||
|
||||
|
||||
# only run this job after all shards above have completed
|
||||
# TBC: do we want to separate coverage reports by OS?
|
||||
# the Job below combines both chrome and webkit coverage reports
|
||||
merge-coverage-reports:
|
||||
# Merge reports after playwright-tests, even if some shards have failed
|
||||
if: ${{ !cancelled() }}
|
||||
needs: [playwright-chrome]
|
||||
# only report on ubuntu (Google chrome) for now
|
||||
# needs: [playwright-ubuntu, playwright-macos]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
cache: 'yarn'
|
||||
- name: Install dependencies
|
||||
run: yarn
|
||||
- name: Ensure .all_coverage_reports directory exists
|
||||
run: mkdir -p .all_coverage_reports
|
||||
- name: List all artifacts
|
||||
run: |
|
||||
echo "Available artifacts:"
|
||||
gh api -H "Accept: application/vnd.github+json" /repos/${{ github.repository }}/actions/artifacts --jq '.artifacts[].name'
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
- name: Download coverage reports from GitHub Actions Artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
path: .all_coverage_reports
|
||||
pattern: playwright-coverage-*
|
||||
merge-multiple: true
|
||||
|
||||
- name: Merge all coverage reports from all shards into a single json report
|
||||
run: npx nyc merge .all_coverage_reports ./.nyc_output/coverage.json
|
||||
|
||||
- name: Generate HTML coverage report
|
||||
run: npx nyc report --reporter=html || true
|
||||
|
||||
- name: Upload Convertage HTML report
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: coverage-report-${{ github.sha }}
|
||||
path: coverage
|
||||
retention-days: 14
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -62,7 +62,7 @@ Mac_App_Distribution.provisionprofile
|
||||
src/wasm-lib/pkg
|
||||
|
||||
venv
|
||||
.nyc_output/*.vite/
|
||||
.vite/
|
||||
|
||||
# electron
|
||||
out/
|
||||
|
@ -5,6 +5,7 @@ coverage
|
||||
|
||||
# Ignore Rust projects:
|
||||
*.rs
|
||||
*.hbs
|
||||
target
|
||||
src/wasm-lib/pkg
|
||||
src/wasm-lib/kcl/bindings
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
873
docs/kcl/arc.md
873
docs/kcl/arc.md
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1021
docs/kcl/circle.md
1021
docs/kcl/circle.md
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1254
docs/kcl/hole.md
1254
docs/kcl/hole.md
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -64,6 +64,7 @@ layout: manual
|
||||
* [`m`](kcl/m)
|
||||
* [`max`](kcl/max)
|
||||
* [`min`](kcl/min)
|
||||
* [`mirror2d`](kcl/mirror2d)
|
||||
* [`mm`](kcl/mm)
|
||||
* [`offsetPlane`](kcl/offsetPlane)
|
||||
* [`patternCircular2d`](kcl/patternCircular2d)
|
||||
@ -77,6 +78,7 @@ layout: manual
|
||||
* [`profileStart`](kcl/profileStart)
|
||||
* [`profileStartX`](kcl/profileStartX)
|
||||
* [`profileStartY`](kcl/profileStartY)
|
||||
* [`rem`](kcl/rem)
|
||||
* [`revolve`](kcl/revolve)
|
||||
* [`segAng`](kcl/segAng)
|
||||
* [`segEndX`](kcl/segEndX)
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -16,20 +16,23 @@ legAngX(hypotenuse: number, leg: number) -> number
|
||||
|
||||
* `utilities`
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `hypotenuse` | `number` | | Yes |
|
||||
| `leg` | `number` | | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
```js
|
||||
legAngX(5, 3)
|
||||
```
|
||||
|
||||
### Arguments
|
||||
|
||||
* `hypotenuse`: `number` (REQUIRED)
|
||||
* `leg`: `number` (REQUIRED)
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
|
||||
|
@ -16,20 +16,23 @@ legAngY(hypotenuse: number, leg: number) -> number
|
||||
|
||||
* `utilities`
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `hypotenuse` | `number` | | Yes |
|
||||
| `leg` | `number` | | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
```js
|
||||
legAngY(5, 3)
|
||||
```
|
||||
|
||||
### Arguments
|
||||
|
||||
* `hypotenuse`: `number` (REQUIRED)
|
||||
* `leg`: `number` (REQUIRED)
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
|
||||
|
@ -16,20 +16,23 @@ legLen(hypotenuse: number, leg: number) -> number
|
||||
|
||||
* `utilities`
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `hypotenuse` | `number` | | Yes |
|
||||
| `leg` | `number` | | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
```js
|
||||
legLen(5, 3)
|
||||
```
|
||||
|
||||
### Arguments
|
||||
|
||||
* `hypotenuse`: `number` (REQUIRED)
|
||||
* `leg`: `number` (REQUIRED)
|
||||
|
||||
### Returns
|
||||
|
||||
`number`
|
||||
|
||||
|
||||
|
||||
|
851
docs/kcl/line.md
851
docs/kcl/line.md
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
438
docs/kcl/loft.md
438
docs/kcl/loft.md
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
97
docs/kcl/mirror2d.md
Normal file
97
docs/kcl/mirror2d.md
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
42
docs/kcl/rem.md
Normal file
42
docs/kcl/rem.md
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
38700
docs/kcl/std.json
38700
docs/kcl/std.json
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -13,14 +13,16 @@ arrays can hold objects and vice versa.
|
||||
|
||||
`true` or `false` work when defining values.
|
||||
|
||||
## Variable declaration
|
||||
## Constant declaration
|
||||
|
||||
Variables are defined with the `let` keyword like so:
|
||||
Constants are defined with the `let` keyword like so:
|
||||
|
||||
```
|
||||
let myBool = false
|
||||
```
|
||||
|
||||
Currently you cannot redeclare a constant.
|
||||
|
||||
## Array
|
||||
|
||||
An array is defined with `[]` braces. What is inside the brackets can
|
||||
|
45
docs/kcl/types/AngledLineData.md
Normal file
45
docs/kcl/types/AngledLineData.md
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
title: "AngledLineData"
|
||||
excerpt: "Data to draw an angled line."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Data to draw an angled line.
|
||||
|
||||
|
||||
|
||||
**This schema accepts any of the following:**
|
||||
|
||||
An angle and length with explicitly named parameters
|
||||
|
||||
|
||||
**Type:** `object`
|
||||
|
||||
|
||||
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `angle` |`number` (`double`)| The angle of the line (in degrees). | No |
|
||||
| `length` |`number` (`double`)| The length of the line. | No |
|
||||
|
||||
|
||||
----
|
||||
An angle and length given as a pair
|
||||
|
||||
|
||||
**Type:** `array`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
----
|
||||
|
||||
|
||||
|
||||
|
||||
|
23
docs/kcl/types/AngledLineThatIntersectsData.md
Normal file
23
docs/kcl/types/AngledLineThatIntersectsData.md
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
title: "AngledLineThatIntersectsData"
|
||||
excerpt: "Data for drawing an angled line that intersects with a given line."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Data for drawing an angled line that intersects with a given line.
|
||||
|
||||
|
||||
**Type:** `object`
|
||||
|
||||
|
||||
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `angle` |`number` (`double`)| The angle of the line. | No |
|
||||
| `intersectTag` |`object`| The tag of the line to intersect with. | No |
|
||||
| `offset` |`number` (`double`)| The offset from the intersecting line. | No |
|
||||
|
||||
|
22
docs/kcl/types/AngledLineToData.md
Normal file
22
docs/kcl/types/AngledLineToData.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: "AngledLineToData"
|
||||
excerpt: "Data to draw an angled line to a point."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Data to draw an angled line to a point.
|
||||
|
||||
|
||||
**Type:** `object`
|
||||
|
||||
|
||||
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `angle` |`number` (`double`)| The angle of the line. | No |
|
||||
| `to` |`number` (`double`)| The point to draw to. | No |
|
||||
|
||||
|
53
docs/kcl/types/ArcData.md
Normal file
53
docs/kcl/types/ArcData.md
Normal file
@ -0,0 +1,53 @@
|
||||
---
|
||||
title: "ArcData"
|
||||
excerpt: "Data to draw an arc."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Data to draw an arc.
|
||||
|
||||
|
||||
|
||||
**This schema accepts any of the following:**
|
||||
|
||||
Angles and radius with an optional tag.
|
||||
|
||||
|
||||
**Type:** `object`
|
||||
|
||||
|
||||
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `angleEnd` |`number` (`double`)| The end angle. | No |
|
||||
| `angleStart` |`number` (`double`)| The start angle. | No |
|
||||
| `radius` |`number` (`double`)| The radius. | No |
|
||||
|
||||
|
||||
----
|
||||
Center, to and radius with an optional tag.
|
||||
|
||||
|
||||
**Type:** `object`
|
||||
|
||||
|
||||
|
||||
|
||||
## Properties
|
||||
|
||||
| Property | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `center` |`array`| The center. | No |
|
||||
| `radius` |`number` (`double`)| The radius. | No |
|
||||
| `to` |`array`| The to point. | No |
|
||||
|
||||
|
||||
----
|
||||
|
||||
|
||||
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user