Skip to content

Commit 2432619

Browse files
authored
Merge branch 'main' into feat-publish-coprocessor-metrics
2 parents 93f60a8 + 843c1fe commit 2432619

File tree

190 files changed

+265496
-270702
lines changed

Some content is hidden

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

190 files changed

+265496
-270702
lines changed

Diff for: .github/workflows/cut-new-tag.yml

-17
This file was deleted.

Diff for: .github/workflows/lint-format.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
with:
3131
python-version: 3.11
3232
- name: Install wpiformat
33-
run: pip3 install wpiformat==2024.45
33+
run: pip3 install wpiformat==2025.32
3434
- name: Run
3535
run: wpiformat
3636
- name: Check output

Diff for: .github/workflows/photon-code-docs.yml renamed to .github/workflows/photon-api-docs.yml

+44-21
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Photon Code Documentation
1+
name: Photon API Documentation
22

33
on:
44
# Run on pushes to main and pushed tags, and on pull requests against main, but ignore the docs folder
@@ -21,8 +21,8 @@ permissions:
2121
id-token: write
2222

2323
jobs:
24-
build-client:
25-
name: "PhotonClient Build"
24+
build_demo:
25+
name: Build PhotonClient Demo
2626
defaults:
2727
run:
2828
working-directory: photon-client
@@ -39,10 +39,11 @@ jobs:
3939
run: npm run build-demo
4040
- uses: actions/upload-artifact@v4
4141
with:
42-
name: built-client
42+
name: built-demo
4343
path: photon-client/dist/
4444

45-
run_docs:
45+
run_api_docs:
46+
name: Build API Docs
4647
runs-on: "ubuntu-22.04"
4748
steps:
4849
- name: Checkout code
@@ -56,34 +57,56 @@ jobs:
5657
with:
5758
java-version: 17
5859
distribution: temurin
59-
6060
- name: Build javadocs/doxygen
6161
run: |
6262
chmod +x gradlew
6363
./gradlew photon-docs:generateJavaDocs photon-docs:doxygen
64-
6564
- uses: actions/upload-artifact@v4
6665
with:
6766
name: built-docs
6867
path: photon-docs/build/docs
6968

70-
release:
71-
needs: [build-client, run_docs]
72-
69+
publish_api_docs:
70+
name: Publish API Docs
71+
needs: [run_api_docs]
7372
runs-on: ubuntu-22.04
7473
steps:
75-
76-
# Download literally every single artifact.
74+
# Download docs artifact
7775
- uses: actions/download-artifact@v4
78-
76+
with:
77+
name: built-docs
7978
- run: find .
80-
- name: copy file via ssh password
79+
- name: Publish Docs To Development
8180
if: github.ref == 'refs/heads/main'
82-
uses: appleboy/[email protected]
81+
uses: up9cloud/[email protected]
82+
env:
83+
HOST: ${{ secrets.WEBMASTER_SSH_HOST }}
84+
USER: ${{ secrets.WEBMASTER_SSH_USERNAME }}
85+
KEY: ${{secrets.WEBMASTER_SSH_KEY}}
86+
TARGET: /var/www/html/photonvision-docs/development
87+
- name: Publish Docs To Release
88+
if: startsWith(github.ref, 'refs/tags/v')
89+
uses: up9cloud/[email protected]
90+
env:
91+
HOST: ${{ secrets.WEBMASTER_SSH_HOST }}
92+
USER: ${{ secrets.WEBMASTER_SSH_USERNAME }}
93+
KEY: ${{ secrets.WEBMASTER_SSH_KEY }}
94+
TARGET: /var/www/html/photonvision-docs/release/
95+
96+
publish_demo:
97+
name: Publish PhotonClient Demo
98+
needs: [build_demo]
99+
runs-on: ubuntu-22.04
100+
steps:
101+
- uses: actions/download-artifact@v4
83102
with:
84-
host: ${{ secrets.WEBMASTER_SSH_HOST }}
85-
username: ${{ secrets.WEBMASTER_SSH_USERNAME }}
86-
password: ${{ secrets.WEBMASTER_SSH_KEY }}
87-
port: ${{ secrets.WEBMASTER_SSH_PORT }}
88-
source: "*"
89-
target: /var/www/html/photonvision-docs/
103+
name: built-demo
104+
- run: find .
105+
- name: Publish demo
106+
if: github.ref == 'refs/heads/main'
107+
uses: up9cloud/[email protected]
108+
env:
109+
HOST: ${{ secrets.WEBMASTER_SSH_HOST }}
110+
USER: ${{ secrets.WEBMASTER_SSH_USERNAME }}
111+
KEY: ${{ secrets.WEBMASTER_SSH_KEY }}
112+
TARGET: /var/www/html/photonvision-demo

Diff for: .github/workflows/photonvision-docs.yml renamed to .github/workflows/photonvision-rtd.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: PhotonVision Sphinx Documentation Checks
1+
name: PhotonVision ReadTheDocs Checks
22

33
on:
44
push:
@@ -16,6 +16,7 @@ env:
1616

1717
jobs:
1818
build:
19+
name: Build and Check Docs
1920
runs-on: ubuntu-22.04
2021

2122
steps:

Diff for: .github/workflows/website.yml

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Website
2+
3+
on:
4+
push:
5+
# For now, run on all commits to main
6+
branches: [ main ]
7+
tags:
8+
- 'v*'
9+
pull_request:
10+
branches: [ main ]
11+
merge_group:
12+
13+
jobs:
14+
rsync:
15+
name: Build and Sync Files
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v4
19+
- name: Setup Node
20+
uses: actions/setup-node@v4
21+
- name: Install packages
22+
run: npm ci
23+
working-directory: website
24+
- name: Build project
25+
run: npm run build
26+
working-directory: website
27+
- uses: up9cloud/[email protected]
28+
if: github.ref == 'refs/heads/main'
29+
env:
30+
HOST: ${{ secrets.WEBMASTER_SSH_HOST }}
31+
USER: ${{ secrets.WEBMASTER_SSH_USERNAME }}
32+
KEY: ${{secrets.WEBMASTER_SSH_KEY}}
33+
SOURCE: website/dist/*
34+
TARGET: /var/www/html/photonvision-website
35+
36+
format-check:
37+
name: Check Formatting
38+
runs-on: ubuntu-latest
39+
steps:
40+
- uses: actions/checkout@v4
41+
- name: Setup Node
42+
uses: actions/setup-node@v4
43+
- name: Install Packages
44+
run: npm ci
45+
working-directory: website
46+
- name: Run Formatting Check
47+
run: npx prettier -c .
48+
working-directory: website

Diff for: .gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -150,3 +150,7 @@ photon-server/src/main/resources/web/*
150150
venv
151151
.venv/*
152152
.venv
153+
networktables.json
154+
155+
website/node_modules
156+
website/dist

Diff for: .styleguide

+3
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ modifiableFileExclude {
1919
\.webp$
2020
\.ico$
2121
\.rknn$
22+
\.mp4$
23+
\.ttf$
24+
\.woff2$
2225
gradlew
2326
photon-lib/py/photonlibpy/generated/
2427
photon-targeting/src/main/native/cpp/photon/constrained_solvepnp/generate/

Diff for: README.md

+1

Diff for: build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ plugins {
44
id "cpp"
55
id "com.diffplug.spotless" version "6.24.0"
66
id "edu.wpi.first.wpilib.repositories.WPILibRepositoriesPlugin" version "2020.2"
7-
id "edu.wpi.first.GradleRIO" version "2025.3.1"
7+
id "edu.wpi.first.GradleRIO" version "2025.3.2"
88
id 'edu.wpi.first.WpilibTools' version '1.3.0'
99
id 'com.google.protobuf' version '0.9.3' apply false
1010
id 'edu.wpi.first.GradleJni' version '1.1.0'
@@ -33,7 +33,7 @@ ext.allOutputsFolder = file("$project.buildDir/outputs")
3333
apply from: "versioningHelper.gradle"
3434

3535
ext {
36-
wpilibVersion = "2025.3.1"
36+
wpilibVersion = "2025.3.2"
3737
wpimathVersion = wpilibVersion
3838
openCVYear = "2025"
3939
openCVversion = "4.10.0-3"

Diff for: docs/requirements.txt

+50-35
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,59 @@
1-
alabaster==0.7.13
2-
Babel==2.13.1
3-
beautifulsoup4==4.12.2
4-
certifi==2023.11.17
5-
charset-normalizer==3.3.2
1+
alabaster==1.0.0
2+
anyio==4.9.0
3+
babel==2.17.0
4+
beautifulsoup4==4.13.3
5+
certifi==2025.1.31
6+
charset-normalizer==3.4.1
7+
click==8.1.8
68
colorama==0.4.6
7-
doc8==0.11.2
9+
doc8==1.1.2
810
docopt==0.6.2
9-
docutils==0.18.1
10-
furo==2023.9.10
11-
idna==3.4
11+
docutils==0.21.2
12+
furo==2024.8.6
13+
h11==0.14.0
14+
idna==3.10
1215
imagesize==1.4.1
13-
Jinja2==3.0.3
14-
MarkupSafe==2.1.3
15-
packaging==23.2
16-
pbr==6.0.0
16+
Jinja2==3.1.6
17+
markdown-it-py==3.0.0
18+
MarkupSafe==3.0.2
19+
mdit-py-plugins==0.4.2
20+
mdurl==0.1.2
21+
myst-parser==4.0.1
22+
packaging==24.2
23+
pbr==6.1.1
1724
pipreqs==0.4.13
18-
Pygments==2.17.1
19-
requests==2.31.0
20-
restructuredtext-lint==1.4.0
21-
six==1.16.0
25+
Pygments==2.19.1
26+
PyYAML==6.0.2
27+
requests==2.32.3
28+
restructuredtext_lint==1.4.0
29+
roman-numerals-py==3.1.0
30+
setuptools==77.0.3
31+
six==1.17.0
32+
sniffio==1.3.1
2233
snowballstemmer==2.2.0
23-
soupsieve==2.5
24-
Sphinx==7.2.6
34+
soupsieve==2.6
35+
Sphinx==8.2.3
36+
sphinx-autobuild==2024.10.3
2537
sphinx-basic-ng==1.0.0b2
26-
sphinx-notfound-page==1.0.0
27-
sphinx-rtd-theme==1.3.0
28-
sphinx-tabs==3.4.4
29-
sphinx_design==0.5.0
30-
sphinxcontrib-applehelp==1.0.7
31-
sphinxcontrib-devhelp==1.0.5
38+
sphinx-notfound-page==1.1.0
39+
sphinx-rtd-theme==3.0.2
40+
sphinx-tabs==3.4.7
41+
sphinx_design==0.6.1
42+
sphinxcontrib-applehelp==2.0.0
43+
sphinxcontrib-devhelp==2.0.0
3244
sphinxcontrib-ghcontributors==0.2.3
33-
sphinxcontrib-htmlhelp==2.0.4
45+
sphinxcontrib-htmlhelp==2.1.0
3446
sphinxcontrib-jquery==4.1
3547
sphinxcontrib-jsmath==1.0.1
36-
sphinxcontrib-qthelp==1.0.6
37-
sphinxcontrib-serializinghtml==1.1.9
38-
sphinxext-opengraph==0.9.0
39-
sphinxext-remoteliteralinclude==0.4.0
40-
stevedore==5.1.0
41-
urllib3==2.1.0
42-
yarg==0.1.9
43-
sphinx-autobuild==2024.4.16
44-
myst_parser==3.0.1
48+
sphinxcontrib-qthelp==2.0.0
49+
sphinxcontrib-serializinghtml==2.0.0
50+
sphinxext-opengraph==0.9.1
51+
sphinxext-remoteliteralinclude==0.5.0
52+
starlette==0.46.1
53+
stevedore==5.4.1
54+
typing_extensions==4.12.2
55+
urllib3==2.3.0
56+
uvicorn==0.34.0
57+
watchfiles==1.0.4
58+
websockets==15.0.1
59+
yarg==0.1.10
-15.4 KB
-14.5 KB

Diff for: docs/source/_static/assets/RoundLogo.png

-8.55 KB

Diff for: docs/source/_static/assets/RoundLogoLight.png

-5.28 KB

Diff for: docs/source/_static/assets/simaimandrange.mp4

-545 KB
Binary file not shown.

Diff for: docs/source/assets/PhotonVision-Header-noBG.png

-15.4 KB

Diff for: docs/source/assets/PhotonVision-Header-onWhite.png

-14.5 KB

Diff for: docs/source/assets/RectLogo.png

-12.8 KB

Diff for: docs/source/assets/RoundLogo.png

-8.55 KB

Diff for: docs/source/assets/RoundLogoWhite.png

-5.28 KB

Diff for: docs/source/conf.py

+3
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ def setup(app):
8787

8888
html_theme_options = {
8989
"sidebar_hide_name": True,
90+
"top_of_page_buttons": ["view", "edit"],
91+
"source_edit_link": "https://github.com/PhotonVision/photonvision/edit/main/docs/source/{filename}",
92+
"source_view_link": "https://github.com/PhotonVision/photonvision/blob/main/docs/source/{filename}",
9093
"light_logo": "assets/PhotonVision-Header-onWhite.png",
9194
"dark_logo": "assets/PhotonVision-Header-noBG.png",
9295
"light_css_variables": {
-22.1 KB
-37.1 KB
-49.1 KB

Diff for: docs/source/docs/advanced-installation/sw_install/mac-os.md

+1-1

Diff for: docs/source/docs/advanced-installation/sw_install/windows-pc.md

+1-1

Diff for: docs/source/docs/apriltag-pipelines/3D-tracking.md

+2-2
-14.1 KB
-28.5 KB
-41.3 KB
-10.5 KB
-48.5 KB
-122 KB
-127 KB
-4.72 KB

Diff for: docs/source/docs/assets/AprilTag16h5.pdf

-3.16 MB
Binary file not shown.

Diff for: docs/source/docs/assets/settings.png

-143 KB
Binary file not shown.

Diff for: docs/source/docs/calibration/calibration.md

+2-2

Diff for: docs/source/docs/calibration/images/cal-details.png

-86.7 KB
-45.1 KB
-39.9 KB
-35.1 KB
-18.4 KB
-138 KB

0 commit comments

Comments
 (0)