Skip to content

Commit d7b9b3a

Browse files
Merge branch 'dev' into ryan/1924/accelerometer-implementation
2 parents 08dd270 + 94943cb commit d7b9b3a

File tree

326 files changed

+12915
-9940
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

326 files changed

+12915
-9940
lines changed

.github/workflows/FissionBiome.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Fission - Biome Format and Lint Validation
2+
3+
on:
4+
workflow_dispatch: {}
5+
push:
6+
branches: [prod, dev]
7+
pull_request:
8+
branches: [prod, dev]
9+
10+
jobs:
11+
runBiomeValidationScript:
12+
name: Biome Validation
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout Code
16+
uses: actions/checkout@v4
17+
- name: Bun Runtime Setup
18+
uses: oven-sh/setup-bun@v2
19+
with:
20+
bun-version: latest
21+
22+
- name: Cache Dependencies
23+
uses: actions/cache@v3
24+
with:
25+
key: "${{runner.os}}-npm-fission-${{hashFiles('fission/package.json')}}"
26+
path: "fission/node_modules"
27+
restore-keys: |
28+
${{runner.os}}-npm-fission-
29+
${{runner.os}}-npm
30+
31+
- name: Install Dependencies
32+
run: |
33+
cd fission
34+
bun install
35+
36+
- name: Lint
37+
id: lint-validation
38+
if: ${{ always() }}
39+
run: |
40+
cd fission
41+
bun run lint && echo "Biome Linting Validation Passed" || (echo "Biome Linting Validation Failed" && exit 1)
42+
43+
- name: Format
44+
id: format-validation
45+
if: ${{ always() }}
46+
run: |
47+
cd fission
48+
bun run fmt && echo "Biome Formatting Validation Passed" || (echo "Biome Formatting Validation Failed" && exit 1)

.github/workflows/FissionBuild.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Fission - Build
33
on:
44
workflow_dispatch: {}
55
pull_request:
6-
branches: [ prod, dev ]
6+
branches: [prod, dev]
77

88
jobs:
99
buildFission:
@@ -12,26 +12,26 @@ jobs:
1212
steps:
1313
- name: Checkout Code
1414
uses: actions/checkout@v4
15-
- name: JavaScript Setup
16-
uses: actions/setup-node@v4
15+
- name: Bun Runtime Setup
16+
uses: oven-sh/setup-bun@v2
1717
with:
18-
node-version: 20
18+
bun-version: latest
1919

2020
- name: Cache Node Dependencies
2121
uses: actions/cache@v3
2222
with:
2323
key: "${{runner.os}}-npm-fission-${{hashFiles('fission/package.json')}}"
24-
path: 'fission/node_modules'
24+
path: "fission/node_modules"
2525
restore-keys: |
2626
${{runner.os}}-npm-fission-
2727
${{runner.os}}-npm
2828
2929
- name: Install Dependencies
3030
run: |
3131
cd fission
32-
npm install
32+
bun install
3333
3434
- name: Build Fission
3535
run: |
3636
cd fission
37-
npm run build && echo "Build Passed" || (echo "Build Failed" && exit 1)
37+
bun run build && echo "Build Passed" || (echo "Build Failed" && exit 1)

.github/workflows/FissionESLintFormat.yml

Lines changed: 0 additions & 49 deletions
This file was deleted.

.github/workflows/FissionPackage.yml

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,62 +3,62 @@ name: Fission - Package
33
on:
44
workflow_dispatch: {}
55
push:
6-
branches: [ prod, dev ]
6+
branches: [prod, dev]
77

88
jobs:
99
runUnitTests:
1010
name: Package
1111
runs-on: ubuntu-latest
1212
steps:
13-
- name: Checkout Code
14-
uses: actions/checkout@v4
15-
- name: JavaScript Setup
16-
uses: actions/setup-node@v4
17-
with:
18-
node-version: 20
13+
- name: Checkout Code
14+
uses: actions/checkout@v4
15+
- name: Bun Runtime Setup
16+
uses: oven-sh/setup-bun@v2
17+
with:
18+
bun-version: latest
1919

20-
- name: Get date
21-
id: date # this is used on variable path
22-
run: |
23-
echo "timestamp=$(date +'%Y-%m-%dT%H-%M-%S')" >> $GITHUB_OUTPUT
20+
- name: Get date
21+
id: date # this is used on variable path
22+
run: |
23+
echo "timestamp=$(date +'%Y-%m-%dT%H-%M-%S')" >> $GITHUB_OUTPUT
2424
25-
- name: Cache Node Dependencies
26-
uses: actions/cache@v3
27-
with:
28-
key: "${{runner.os}}-npm-fission-${{hashFiles('fission/package.json')}}"
29-
path: 'fission/node_modules'
30-
restore-keys: |
31-
${{runner.os}}-npm-fission-
32-
${{runner.os}}-npm
25+
- name: Cache Dependencies
26+
uses: actions/cache@v3
27+
with:
28+
key: "${{runner.os}}-npm-fission-${{hashFiles('fission/package.json')}}"
29+
path: "fission/node_modules"
30+
restore-keys: |
31+
${{runner.os}}-npm-fission-
32+
${{runner.os}}-npm
3333
34-
- name: Install Dependencies
35-
run: |
36-
cd fission
37-
npm install
34+
- name: Install Dependencies
35+
run: |
36+
cd fission
37+
bun install
3838
39-
- name: Get package info
40-
id: info
41-
uses: codex-team/action-nodejs-package-info@v1.1
42-
with:
43-
path: fission/
39+
- name: Get package info
40+
id: info
41+
uses: codex-team/action-nodejs-package-info@v1.1
42+
with:
43+
path: fission/
4444

45-
- name: Build
46-
id: build
47-
run: |
48-
cd fission
49-
npm run build:prod
50-
npm run build:dev
45+
- name: Build
46+
id: build
47+
run: |
48+
cd fission
49+
bun run build:prod
50+
bun run build:dev
5151
52-
- name: Upload Artifact
53-
uses: actions/upload-artifact@v4
54-
id: upload-artifact-prod
55-
with:
56-
name: "${{ steps.info.outputs.name }}@${{ steps.info.outputs.version }}[${{ steps.date.outputs.timestamp }}]"
57-
path: fission/dist/prod/
52+
- name: Upload Artifact
53+
uses: actions/upload-artifact@v4
54+
id: upload-artifact-prod
55+
with:
56+
name: "${{ steps.info.outputs.name }}@${{ steps.info.outputs.version }}[${{ steps.date.outputs.timestamp }}]"
57+
path: fission/dist/prod/
5858

59-
- name: Upload Artifact
60-
uses: actions/upload-artifact@v4
61-
id: upload-artifact-dev
62-
with:
63-
name: "${{ steps.info.outputs.name }}-dev@${{ steps.info.outputs.version }}[${{ steps.date.outputs.timestamp }}]"
64-
path: fission/dist/dev/
59+
- name: Upload Artifact
60+
uses: actions/upload-artifact@v4
61+
id: upload-artifact-dev
62+
with:
63+
name: "${{ steps.info.outputs.name }}-dev@${{ steps.info.outputs.version }}[${{ steps.date.outputs.timestamp }}]"
64+
path: fission/dist/dev/

.github/workflows/FissionUnitTest.yml

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@ name: Fission - Unit Test
33
on:
44
workflow_dispatch: {}
55
push:
6-
branches: [ prod, dev ]
6+
branches: [prod, dev]
77
pull_request:
8-
branches: [ prod, dev ]
8+
branches: [prod, dev]
99

1010
jobs:
11-
1211
runUnitTests:
1312
name: Playwright Unit Tests
1413
container:
@@ -25,7 +24,6 @@ jobs:
2524
with:
2625
node-version: 20
2726

28-
2927
- name: Cache Unzipped Synthesis Assets
3028
id: cache-assets
3129
uses: actions/cache@v3
@@ -41,16 +39,15 @@ jobs:
4139
apt install git-lfs unzip
4240
git config --global --add safe.directory `pwd`
4341
git lfs pull
44-
42+
4543
cd fission
4644
unzip -o public/assetpack.zip -d public/ || echo
4745
48-
4946
- name: Cache Node Dependencies
5047
uses: actions/cache@v3
5148
with:
5249
key: "${{runner.os}}-npm-fission-${{hashFiles('fission/package.json')}}"
53-
path: 'fission/node_modules'
50+
path: "fission/node_modules"
5451
restore-keys: |
5552
${{runner.os}}-npm-fission-
5653
${{runner.os}}-npm

.github/workflows/FusionWebUI.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: Fusion - WebUI Build and Format
2+
3+
on:
4+
workflow_dispatch: {}
5+
6+
push:
7+
branches: [ prod, dev ]
8+
paths:
9+
- 'exporter/SynthesisFusionAddin/web/**'
10+
pull_request:
11+
branches: [ prod, dev ]
12+
paths:
13+
- 'exporter/SynthesisFusionAddin/web/**'
14+
15+
16+
jobs:
17+
runFormatValidationScript:
18+
defaults:
19+
run:
20+
working-directory: exporter/SynthesisFusionAddin/web
21+
name: Biome Format Validation
22+
runs-on: ubuntu-latest
23+
steps:
24+
- name: Checkout Code
25+
uses: actions/checkout@v4
26+
- name: Bun Runtime Setup
27+
uses: oven-sh/setup-bun@v2
28+
with:
29+
bun-version: latest
30+
- name: Cache Node Dependencies
31+
uses: actions/cache@v3
32+
with:
33+
key: "${{runner.os}}-npm-fusion-${{hashFiles('exporter/SynthesisFusionAddin/web/bun.lock')}}"
34+
path: 'exporter/SynthesisFusionAddin/web/node_modules'
35+
restore-keys: |
36+
${{runner.os}}-npm-fusion-
37+
${{runner.os}}-npm
38+
39+
- name: Install Dependencies
40+
run: bun install --frozen-lockfile
41+
42+
- name: Linter & Formatter
43+
run: |
44+
bunx biome --version
45+
bunx biome ci --error-on-warnings
46+
47+
runBuildScript:
48+
name: Build
49+
runs-on: ubuntu-latest
50+
defaults:
51+
run:
52+
working-directory: exporter/SynthesisFusionAddin/web
53+
steps:
54+
- name: Checkout Code
55+
uses: actions/checkout@v4
56+
- name: Bun Runtime Setup
57+
uses: oven-sh/setup-bun@v2
58+
with:
59+
bun-version: latest
60+
- name: Cache Node Dependencies
61+
uses: actions/cache@v3
62+
with:
63+
key: "${{runner.os}}-npm-fusion-${{hashFiles('exporter/SynthesisFusionAddin/web/bun.lock')}}"
64+
path: 'exporter/SynthesisFusionAddin/web/node_modules'
65+
restore-keys: |
66+
${{runner.os}}-npm-fusion-
67+
${{runner.os}}-npm
68+
69+
- name: Install Dependencies
70+
run: bun install --frozen-lockfile
71+
72+
- name: Build
73+
run: bun run build

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
[![Fission - Unit Test](https://github.com/Autodesk/synthesis/actions/workflows/FissionUnitTest.yml/badge.svg?branch=prod)](https://github.com/Autodesk/synthesis/actions/workflows/FissionUnitTest.yml)
77
[![Fission - Packaging](https://github.com/Autodesk/synthesis/actions/workflows/FissionPackage.yml/badge.svg?branch=prod)](https://github.com/Autodesk/synthesis/actions/workflows/FissionPackage.yml)
8-
[![Fission - Lint/Format](https://github.com/Autodesk/synthesis/actions/workflows/FissionESLintFormat.yml/badge.svg?branch=prod)](https://github.com/Autodesk/synthesis/actions/workflows/FissionESLintFormat.yml)
8+
[![Fission - Lint/Format](https://github.com/Autodesk/synthesis/actions/workflows/FissionBiome.yml/badge.svg?branch=prod)](https://github.com/Autodesk/synthesis/actions/workflows/FissionBiome.yml)
99
[![Fusion - Format](https://github.com/Autodesk/synthesis/actions/workflows/BlackFormat.yml/badge.svg?branch=prod)](https://github.com/Autodesk/synthesis/actions/workflows/BlackFormat.yml)
1010

1111
Synthesis is a robotics simulator designed by and for [FIRST®](https://www.firstinspires.org/) robotics students to help teams design, strategize, test and practice. Teams have the ability to import their own robots and fields using our [Fusion Exporter](/exporter/) or use the pre-made ones available within Synthesis.

exporter/SynthesisFusionAddin/.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,3 +110,6 @@ site-packages
110110
proto/proto_out
111111

112112
.aps_auth
113+
114+
115+
src/Resources/**/*.png

exporter/SynthesisFusionAddin/src/Logging.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
import adsk.core
1313

1414
from src import INTERNAL_ID, IS_RELEASE, SUPPORT_PATH
15-
from src.Util import makeDirectories
15+
from src.lib.Util import makeDirectories
1616

1717
MAX_LOG_FILES_TO_KEEP = 10
1818
TIMING_LEVEL = 25

0 commit comments

Comments
 (0)