Skip to content

Commit 2a79ba1

Browse files
authored
Merge pull request #1880 from AndyMik90/develop
Release v2.7.6
2 parents 5745cb1 + a0807c2 commit 2a79ba1

754 files changed

Lines changed: 132452 additions & 23356 deletions

File tree

Some content is hidden

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

‎.github/PULL_REQUEST_TEMPLATE.md‎

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,27 @@ Follow conventional commits: `<type>: <subject>`
3333

3434
**Example:** `feat: add user authentication system`
3535

36+
## AI Disclosure
37+
38+
<!-- Check the box below if any part of this PR was written with AI assistance. -->
39+
40+
- [ ] This PR includes AI-generated code (Claude, Codex, Copilot, etc.)
41+
42+
<!-- If checked, please also fill in: -->
43+
**Tool(s) used:** <!-- e.g., Claude Code, GitHub Copilot, ChatGPT -->
44+
**Testing level:**
45+
- [ ] Untested -- AI output not yet verified
46+
- [ ] Lightly tested -- ran the app / spot-checked key paths
47+
- [ ] Fully tested -- all tests pass, manually verified behavior
48+
49+
- [ ] I understand what this PR does and how the underlying code works
50+
3651
## Checklist
3752

3853
- [ ] I've synced with `develop` branch
3954
- [ ] I've tested my changes locally
4055
- [ ] I've followed the code principles (SOLID, DRY, KISS)
4156
- [ ] My PR is small and focused (< 400 lines ideally)
42-
- [ ] **(Python only)** All file operations specify `encoding="utf-8"` for text files
4357

4458
## Platform Testing Checklist
4559

‎.github/workflows/beta-release.yml‎

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ jobs:
7575
ref: ${{ github.event.inputs.dry_run == 'true' && 'develop' || format('v{0}', needs.create-tag.outputs.version) }}
7676

7777
- name: Setup Python
78-
uses: actions/setup-python@v5
78+
uses: actions/setup-python@v6
7979
with:
8080
python-version: '3.11'
8181

@@ -86,15 +86,15 @@ jobs:
8686
uses: dtolnay/rust-toolchain@stable
8787

8888
- name: Cache pip wheel cache (for compiled packages like real_ladybug)
89-
uses: actions/cache@v4
89+
uses: actions/cache@v5
9090
with:
9191
path: ~/Library/Caches/pip
9292
key: pip-wheel-${{ runner.os }}-x64-${{ hashFiles('apps/backend/requirements.txt') }}
9393
restore-keys: |
9494
pip-wheel-${{ runner.os }}-x64-
9595
9696
- name: Cache bundled Python
97-
uses: actions/cache@v4
97+
uses: actions/cache@v5
9898
with:
9999
path: apps/frontend/python-runtime
100100
key: python-bundle-${{ runner.os }}-x64-3.12.8-rust-${{ hashFiles('apps/backend/requirements.txt') }}
@@ -151,23 +151,23 @@ jobs:
151151
ref: ${{ github.event.inputs.dry_run == 'true' && 'develop' || format('v{0}', needs.create-tag.outputs.version) }}
152152

153153
- name: Setup Python
154-
uses: actions/setup-python@v5
154+
uses: actions/setup-python@v6
155155
with:
156156
python-version: '3.11'
157157

158158
- name: Setup Node.js and install dependencies
159159
uses: ./.github/actions/setup-node-frontend
160160

161161
- name: Cache pip wheel cache
162-
uses: actions/cache@v4
162+
uses: actions/cache@v5
163163
with:
164164
path: ~/Library/Caches/pip
165165
key: pip-wheel-${{ runner.os }}-arm64-${{ hashFiles('apps/backend/requirements.txt') }}
166166
restore-keys: |
167167
pip-wheel-${{ runner.os }}-arm64-
168168
169169
- name: Cache bundled Python
170-
uses: actions/cache@v4
170+
uses: actions/cache@v5
171171
with:
172172
path: apps/frontend/python-runtime
173173
key: python-bundle-${{ runner.os }}-arm64-3.12.8-${{ hashFiles('apps/backend/requirements.txt') }}
@@ -226,23 +226,23 @@ jobs:
226226
ref: ${{ github.event.inputs.dry_run == 'true' && 'develop' || format('v{0}', needs.create-tag.outputs.version) }}
227227

228228
- name: Setup Python
229-
uses: actions/setup-python@v5
229+
uses: actions/setup-python@v6
230230
with:
231231
python-version: '3.11'
232232

233233
- name: Setup Node.js and install dependencies
234234
uses: ./.github/actions/setup-node-frontend
235235

236236
- name: Cache pip wheel cache
237-
uses: actions/cache@v4
237+
uses: actions/cache@v5
238238
with:
239239
path: ~\AppData\Local\pip\Cache
240240
key: pip-wheel-${{ runner.os }}-x64-${{ hashFiles('apps/backend/requirements.txt') }}
241241
restore-keys: |
242242
pip-wheel-${{ runner.os }}-x64-
243243
244244
- name: Cache bundled Python
245-
uses: actions/cache@v4
245+
uses: actions/cache@v5
246246
with:
247247
path: apps/frontend/python-runtime
248248
key: python-bundle-${{ runner.os }}-x64-3.12.8-${{ hashFiles('apps/backend/requirements.txt') }}
@@ -398,32 +398,32 @@ jobs:
398398
ref: ${{ github.event.inputs.dry_run == 'true' && 'develop' || format('v{0}', needs.create-tag.outputs.version) }}
399399

400400
- name: Setup Python
401-
uses: actions/setup-python@v5
401+
uses: actions/setup-python@v6
402402
with:
403403
python-version: '3.11'
404404

405405
- name: Setup Node.js and install dependencies
406406
uses: ./.github/actions/setup-node-frontend
407407

408-
- name: Setup Flatpak
408+
- name: Setup Flatpak and verification tools
409409
run: |
410410
set -e
411411
sudo apt-get update
412-
sudo apt-get install -y flatpak flatpak-builder
412+
sudo apt-get install -y flatpak flatpak-builder libarchive-tools
413413
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
414414
flatpak install -y --user flathub org.freedesktop.Platform//25.08 org.freedesktop.Sdk//25.08
415415
flatpak install -y --user flathub org.electronjs.Electron2.BaseApp//25.08
416416
417417
- name: Cache pip wheel cache
418-
uses: actions/cache@v4
418+
uses: actions/cache@v5
419419
with:
420420
path: ~/.cache/pip
421421
key: pip-wheel-${{ runner.os }}-x64-${{ hashFiles('apps/backend/requirements.txt') }}
422422
restore-keys: |
423423
pip-wheel-${{ runner.os }}-x64-
424424
425425
- name: Cache bundled Python
426-
uses: actions/cache@v4
426+
uses: actions/cache@v5
427427
with:
428428
path: apps/frontend/python-runtime
429429
key: python-bundle-${{ runner.os }}-x64-3.12.8-${{ hashFiles('apps/backend/requirements.txt') }}
@@ -447,6 +447,9 @@ jobs:
447447
SENTRY_TRACES_SAMPLE_RATE: ${{ secrets.SENTRY_TRACES_SAMPLE_RATE }}
448448
SENTRY_PROFILES_SAMPLE_RATE: ${{ secrets.SENTRY_PROFILES_SAMPLE_RATE }}
449449

450+
- name: Verify Linux packages
451+
run: cd apps/frontend && npm run verify:linux
452+
450453
- name: Upload artifacts
451454
uses: actions/upload-artifact@v4
452455
with:
@@ -465,13 +468,13 @@ jobs:
465468
- uses: actions/checkout@v4
466469

467470
- name: Download Intel DMG
468-
uses: actions/download-artifact@v4
471+
uses: actions/download-artifact@v7
469472
with:
470473
name: macos-intel-builds
471474
path: intel
472475

473476
- name: Download ARM64 DMG
474-
uses: actions/download-artifact@v4
477+
uses: actions/download-artifact@v7
475478
with:
476479
name: macos-arm64-builds
477480
path: arm64
@@ -512,7 +515,7 @@ jobs:
512515
fetch-depth: 0
513516

514517
- name: Download all artifacts
515-
uses: actions/download-artifact@v4
518+
uses: actions/download-artifact@v7
516519
with:
517520
path: dist
518521

@@ -661,7 +664,7 @@ jobs:
661664
- uses: actions/checkout@v4
662665

663666
- name: Download all artifacts
664-
uses: actions/download-artifact@v4
667+
uses: actions/download-artifact@v7
665668
with:
666669
path: dist
667670

‎.github/workflows/build-prebuilds.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ on:
1010
electron_version:
1111
description: 'Electron version to build for'
1212
required: false
13-
default: '39.2.6'
13+
default: '40.0.0'
1414

1515
env:
1616
# Default Electron version - update when upgrading Electron in package.json
17-
ELECTRON_VERSION: ${{ github.event.inputs.electron_version || '39.2.6' }}
17+
ELECTRON_VERSION: ${{ github.event.inputs.electron_version || '40.0.0' }}
1818

1919
jobs:
2020
build-windows:
@@ -30,7 +30,7 @@ jobs:
3030
uses: actions/checkout@v4
3131

3232
- name: Setup Node.js
33-
uses: actions/setup-node@v4
33+
uses: actions/setup-node@v6
3434
with:
3535
node-version: '24'
3636

@@ -110,7 +110,7 @@ jobs:
110110
runs-on: ubuntu-latest
111111
steps:
112112
- name: Download all artifacts
113-
uses: actions/download-artifact@v4
113+
uses: actions/download-artifact@v7
114114
with:
115115
path: artifacts
116116

‎.github/workflows/issue-auto-label.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
issues: write
1212
steps:
1313
- name: Add area label from form
14-
uses: actions/github-script@v7
14+
uses: actions/github-script@v8
1515
with:
1616
script: |
1717
const issue = context.payload.issue;

‎.github/workflows/lint.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
uses: actions/checkout@v4
3535

3636
- name: Set up Python
37-
uses: actions/setup-python@v5
37+
uses: actions/setup-python@v6
3838
with:
3939
python-version: '3.12'
4040

‎.github/workflows/pr-labeler.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222

2323
steps:
2424
- name: Label PR
25-
uses: actions/github-script@v7
25+
uses: actions/github-script@v8
2626
with:
2727
retries: 3
2828
retry-exempt-status-codes: 400,401,403,404,422

‎.github/workflows/quality-security.yml‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jobs:
7070
uses: actions/checkout@v4
7171

7272
- name: Set up Python
73-
uses: actions/setup-python@v5
73+
uses: actions/setup-python@v6
7474
with:
7575
python-version: '3.12'
7676

@@ -89,7 +89,7 @@ jobs:
8989
echo "::endgroup::"
9090
9191
- name: Analyze Bandit results
92-
uses: actions/github-script@v7
92+
uses: actions/github-script@v8
9393
with:
9494
script: |
9595
const fs = require('fs');
@@ -149,7 +149,7 @@ jobs:
149149
timeout-minutes: 5
150150
steps:
151151
- name: Check security results
152-
uses: actions/github-script@v7
152+
uses: actions/github-script@v8
153153
with:
154154
script: |
155155
const codeql = '${{ needs.codeql.result }}';

0 commit comments

Comments
 (0)