Skip to content

Commit 5d6faad

Browse files
authored
Merge branch 'main' into feature/decoder-esp32
2 parents 8bc1256 + d68bc4a commit 5d6faad

File tree

252 files changed

+14958
-10030
lines changed

Some content is hidden

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

252 files changed

+14958
-10030
lines changed

.eslintrc.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ module.exports = {
1515
'.browser_modules/*',
1616
'docs/*',
1717
'scripts/*',
18-
'electron/*',
1918
'electron-app/*',
2019
'plugins/*',
2120
'arduino-ide-extension/src/node/cli-protocol',

.github/ISSUE_TEMPLATE/bug-report.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ body:
3030
description: |
3131
Which version of the Arduino IDE are you using?
3232
See **Help > About Arduino IDE** in the Arduino IDE menus (**Arduino IDE > About Arduino IDE** on macOS).
33-
This should be the latest [nightly build](https://github.com/arduino/arduino-ide#nightly-builds).
33+
This should be the latest [nightly build](https://www.arduino.cc/en/software#nightly-builds).
3434
validations:
3535
required: true
3636
- type: dropdown
@@ -68,7 +68,7 @@ body:
6868
options:
6969
- label: I searched for previous reports in [the issue tracker](https://github.com/arduino/arduino-ide/issues?q=)
7070
required: true
71-
- label: I verified the problem still occurs when using the latest [nightly build](https://github.com/arduino/arduino-ide#nightly-builds)
71+
- label: I verified the problem still occurs when using the latest [nightly build](https://www.arduino.cc/en/software#nightly-builds)
7272
required: true
7373
- label: My report contains all necessary details
7474
required: true

.github/ISSUE_TEMPLATE/feature-request.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ body:
2525
description: |
2626
Which version of the Arduino IDE are you using?
2727
See **Help > About Arduino IDE** in the Arduino IDE menus (**Arduino IDE > About Arduino IDE** on macOS).
28-
This should be the latest [nightly build](https://github.com/arduino/arduino-ide#nightly-builds).
28+
This should be the latest [nightly build](https://www.arduino.cc/en/software#nightly-builds).
2929
validations:
3030
required: true
3131
- type: dropdown
@@ -63,7 +63,7 @@ body:
6363
options:
6464
- label: I searched for previous requests in [the issue tracker](https://github.com/arduino/arduino-ide/issues?q=)
6565
required: true
66-
- label: I verified the feature was still missing when using the latest [nightly build](https://github.com/arduino/arduino-ide#nightly-builds)
66+
- label: I verified the feature was still missing when using the latest [nightly build](https://www.arduino.cc/en/software#nightly-builds)
6767
required: true
6868
- label: My request contains all necessary details
6969
required: true

.github/workflows/build.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -180,10 +180,14 @@ jobs:
180180
fi
181181
fi
182182
echo -e "$BODY"
183-
OUTPUT_SAFE_BODY="${BODY//'%'/'%25'}"
184-
OUTPUT_SAFE_BODY="${OUTPUT_SAFE_BODY//$'\n'/'%0A'}"
185-
OUTPUT_SAFE_BODY="${OUTPUT_SAFE_BODY//$'\r'/'%0D'}"
186-
echo "BODY=$OUTPUT_SAFE_BODY" >> $GITHUB_OUTPUT
183+
184+
# Set workflow step output
185+
# See: https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#multiline-strings
186+
DELIMITER="$RANDOM"
187+
echo "BODY<<$DELIMITER" >> $GITHUB_OUTPUT
188+
echo "$BODY" >> $GITHUB_OUTPUT
189+
echo "$DELIMITER" >> $GITHUB_OUTPUT
190+
187191
echo "$BODY" > CHANGELOG.txt
188192
189193
- name: Upload Changelog [GitHub Actions]
@@ -231,7 +235,7 @@ jobs:
231235
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
232236
233237
- name: Publish Release [GitHub]
234-
uses: svenstaro/upload-release-action@2.3.0
238+
uses: svenstaro/upload-release-action@2.4.1
235239
with:
236240
repo_token: ${{ secrets.GITHUB_TOKEN }}
237241
release_name: ${{ steps.tag_name.outputs.TAG_NAME }}

.github/workflows/check-certificates.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,9 @@ jobs:
5959
(
6060
openssl pkcs12 \
6161
-in "${{ env.CERTIFICATE_PATH }}" \
62-
-noout -passin env:CERTIFICATE_PASSWORD
62+
-legacy \
63+
-noout \
64+
-passin env:CERTIFICATE_PASSWORD
6365
) || (
6466
echo "::error::Verification of ${{ matrix.certificate.identifier }} failed!!!"
6567
exit 1
@@ -87,6 +89,7 @@ jobs:
8789
openssl pkcs12 \
8890
-in "${{ env.CERTIFICATE_PATH }}" \
8991
-clcerts \
92+
-legacy \
9093
-nodes \
9194
-passin env:CERTIFICATE_PASSWORD
9295
) | (

.github/workflows/check-i18n-task.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ jobs:
4848

4949
- name: Install dependencies
5050
run: yarn
51+
env:
52+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5153

5254
- name: Check for errors
5355
run: yarn i18n:check

.gitignore

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,22 @@ node_modules/
44
lib/
55
downloads/
66
build/
7-
Examples/
7+
arduino-ide-extension/Examples/
88
!electron/build/
99
src-gen/
10-
!webpack.config.js
10+
webpack.config.js
1111
gen-webpack.config.js
1212
.DS_Store
1313
# switching from `electron` to `browser` in dev mode.
1414
.browser_modules
1515
yarn*.log
1616
# For the VS Code extensions used by Theia.
1717
plugins
18-
# the config files for the CLI
19-
arduino-ide-extension/data/cli/config
2018
# the tokens folder for the themes
2119
scripts/themes/tokens
2220
# environment variables
2321
.env
2422
# content trace files for electron
2523
electron-app/traces
24+
# any Arduino LS generated log files
25+
inols*.log

.vscode/launch.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
".",
1515
"--log-level=debug",
1616
"--hostname=localhost",
17-
"--no-cluster",
1817
"--app-project-path=${workspaceRoot}/electron-app",
1918
"--remote-debugging-port=9222",
2019
"--no-app-auto-install",
2120
"--plugins=local-dir:../plugins",
2221
"--hosted-plugin-inspect=9339",
2322
"--content-trace",
24-
"--open-devtools"
23+
"--open-devtools",
24+
"--no-ping-timeout",
2525
],
2626
"env": {
2727
"NODE_ENV": "development"
@@ -51,12 +51,12 @@
5151
".",
5252
"--log-level=debug",
5353
"--hostname=localhost",
54-
"--no-cluster",
5554
"--app-project-path=${workspaceRoot}/electron-app",
5655
"--remote-debugging-port=9222",
5756
"--no-app-auto-install",
5857
"--plugins=local-dir:../plugins",
59-
"--hosted-plugin-inspect=9339"
58+
"--hosted-plugin-inspect=9339",
59+
"--no-ping-timeout",
6060
],
6161
"env": {
6262
"NODE_ENV": "development"

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
"files.exclude": {
33
"**/lib": false
44
},
5+
"search.exclude": {
6+
"arduino-ide-extension/src/test/node/__test_sketchbook__": true
7+
},
58
"typescript.tsdk": "node_modules/typescript/lib",
69
"editor.codeActionsOnSave": {
710
"source.fixAll.eslint": true

arduino-ide-extension/package.json

Lines changed: 40 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "arduino-ide-extension",
3-
"version": "2.0.2",
3+
"version": "2.0.4",
44
"description": "An extension for Theia building the Arduino IDE",
55
"license": "AGPL-3.0-or-later",
66
"scripts": {
@@ -17,31 +17,36 @@
1717
"build": "tsc && ncp ./src/node/cli-protocol/ ./lib/node/cli-protocol/ && yarn lint",
1818
"watch": "tsc -w",
1919
"test": "mocha \"./lib/test/**/*.test.js\"",
20+
"test:slow": "mocha \"./lib/test/**/*.slow-test.js\" --slow 5000",
2021
"test:watch": "mocha --watch --watch-files lib \"./lib/test/**/*.test.js\""
2122
},
2223
"dependencies": {
2324
"@grpc/grpc-js": "^1.6.7",
24-
"@theia/application-package": "1.25.0",
25-
"@theia/core": "1.25.0",
26-
"@theia/editor": "1.25.0",
27-
"@theia/electron": "1.25.0",
28-
"@theia/filesystem": "1.25.0",
29-
"@theia/keymaps": "1.25.0",
30-
"@theia/markers": "1.25.0",
31-
"@theia/monaco": "1.25.0",
32-
"@theia/navigator": "1.25.0",
33-
"@theia/outline-view": "1.25.0",
34-
"@theia/output": "1.25.0",
35-
"@theia/preferences": "1.25.0",
36-
"@theia/search-in-workspace": "1.25.0",
37-
"@theia/terminal": "1.25.0",
38-
"@theia/workspace": "1.25.0",
25+
"@theia/application-package": "1.31.1",
26+
"@theia/core": "1.31.1",
27+
"@theia/debug": "1.31.1",
28+
"@theia/editor": "1.31.1",
29+
"@theia/electron": "1.31.1",
30+
"@theia/filesystem": "1.31.1",
31+
"@theia/keymaps": "1.31.1",
32+
"@theia/markers": "1.31.1",
33+
"@theia/messages": "1.31.1",
34+
"@theia/monaco": "1.31.1",
35+
"@theia/monaco-editor-core": "1.67.2",
36+
"@theia/navigator": "1.31.1",
37+
"@theia/outline-view": "1.31.1",
38+
"@theia/output": "1.31.1",
39+
"@theia/plugin-ext": "1.31.1",
40+
"@theia/preferences": "1.31.1",
41+
"@theia/scm": "1.31.1",
42+
"@theia/search-in-workspace": "1.31.1",
43+
"@theia/terminal": "1.31.1",
44+
"@theia/typehierarchy": "1.31.1",
45+
"@theia/workspace": "1.31.1",
3946
"@tippyjs/react": "^4.2.5",
40-
"@types/atob": "^2.1.2",
4147
"@types/auth0-js": "^9.14.0",
4248
"@types/btoa": "^1.2.3",
4349
"@types/dateformat": "^3.0.1",
44-
"@types/deep-equal": "^1.0.1",
4550
"@types/deepmerge": "^2.2.0",
4651
"@types/glob": "^7.2.0",
4752
"@types/google-protobuf": "^3.7.2",
@@ -50,49 +55,53 @@
5055
"@types/lodash.debounce": "^4.0.6",
5156
"@types/ncp": "^2.0.4",
5257
"@types/node-fetch": "^2.5.7",
58+
"@types/p-queue": "^2.3.1",
5359
"@types/ps-tree": "^1.1.0",
54-
"@types/react-select": "^3.0.0",
5560
"@types/react-tabs": "^2.3.2",
61+
"@types/react-virtualized": "^9.21.21",
5662
"@types/temp": "^0.8.34",
5763
"@types/which": "^1.3.1",
58-
"ajv": "^6.5.3",
64+
"@vscode/debugprotocol": "^1.51.0",
5965
"arduino-serial-plotter-webapp": "0.2.0",
6066
"async-mutex": "^0.3.0",
61-
"atob": "^2.1.2",
6267
"auth0-js": "^9.14.0",
6368
"btoa": "^1.2.1",
6469
"classnames": "^2.3.1",
70+
"cross-fetch": "^3.1.5",
6571
"dateformat": "^3.0.3",
66-
"deep-equal": "^2.0.5",
6772
"deepmerge": "2.0.1",
6873
"electron-updater": "^4.6.5",
74+
"fast-json-stable-stringify": "^2.1.0",
6975
"fast-safe-stringify": "^2.1.1",
76+
"filename-reserved-regex": "^2.0.0",
7077
"glob": "^7.1.6",
7178
"google-protobuf": "^3.20.1",
7279
"hash.js": "^1.1.7",
73-
"is-valid-path": "^0.1.1",
7480
"js-yaml": "^3.13.1",
81+
"just-diff": "^5.1.1",
7582
"jwt-decode": "^3.1.2",
7683
"keytar": "7.2.0",
7784
"lodash.debounce": "^4.0.8",
85+
"minimatch": "^3.1.2",
7886
"ncp": "^2.0.0",
7987
"node-fetch": "^2.6.1",
8088
"open": "^8.0.6",
81-
"p-queue": "^5.0.0",
89+
"p-debounce": "^2.1.0",
90+
"p-queue": "^2.4.2",
8291
"ps-tree": "^1.2.0",
8392
"query-string": "^7.0.1",
84-
"react-disable": "^0.1.0",
93+
"react-disable": "^0.1.1",
8594
"react-markdown": "^8.0.0",
86-
"react-select": "^3.0.4",
95+
"react-perfect-scrollbar": "^1.5.8",
96+
"react-select": "^5.6.0",
8797
"react-tabs": "^3.1.2",
98+
"react-virtualized": "^9.22.3",
8899
"react-window": "^1.8.6",
89100
"semver": "^7.3.2",
90101
"string-natural-compare": "^2.0.3",
91102
"temp": "^0.9.1",
92103
"temp-dir": "^2.0.0",
93104
"tree-kill": "^1.2.1",
94-
"upath": "^1.1.2",
95-
"url": "^0.11.0",
96105
"which": "^1.3.1"
97106
},
98107
"devDependencies": {
@@ -101,11 +110,10 @@
101110
"@types/chai-string": "^1.4.2",
102111
"@types/mocha": "^5.2.7",
103112
"@types/react-window": "^1.8.5",
104-
"@types/sinon": "^10.0.6",
105-
"@types/sinon-chai": "^3.2.6",
106113
"chai": "^4.2.0",
107114
"chai-string": "^1.5.0",
108115
"decompress": "^4.2.0",
116+
"decompress-tarbz2": "^4.1.1",
109117
"decompress-targz": "^4.1.1",
110118
"decompress-unzip": "^4.0.1",
111119
"download": "^7.1.0",
@@ -115,9 +123,6 @@
115123
"moment": "^2.24.0",
116124
"protoc": "^1.0.4",
117125
"shelljs": "^0.8.3",
118-
"sinon": "^12.0.1",
119-
"sinon-chai": "^3.7.0",
120-
"typemoq": "^2.1.0",
121126
"uuid": "^3.2.1",
122127
"yargs": "^11.1.0"
123128
},
@@ -158,7 +163,7 @@
158163
],
159164
"arduino": {
160165
"cli": {
161-
"version": "0.28.0"
166+
"version": "0.29.0"
162167
},
163168
"fwuploader": {
164169
"version": "2.2.2"
@@ -167,7 +172,7 @@
167172
"version": "14.0.0"
168173
},
169174
"languageServer": {
170-
"version": "0.7.2"
175+
"version": "0.7.4"
171176
}
172177
}
173178
}

arduino-ide-extension/src/browser/arduino-frontend-contribution.tsx

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import { EditorCommands, EditorMainMenu } from '@theia/editor/lib/browser';
3131
import { MonacoMenus } from '@theia/monaco/lib/browser/monaco-menu';
3232
import { FileNavigatorCommands } from '@theia/navigator/lib/browser/navigator-contribution';
3333
import { TerminalMenus } from '@theia/terminal/lib/browser/terminal-frontend-contribution';
34-
import { ArduinoPreferences } from './arduino-preferences';
34+
import { ElectronWindowPreferences } from '@theia/core/lib/electron-browser/window/electron-window-preferences';
3535
import { BoardsServiceProvider } from './boards/boards-service-provider';
3636
import { BoardsToolBarItem } from './boards/boards-toolbar-item';
3737
import { ArduinoMenus } from './menu/arduino-menus';
@@ -58,8 +58,8 @@ export class ArduinoFrontendContribution
5858
@inject(CommandRegistry)
5959
private readonly commandRegistry: CommandRegistry;
6060

61-
@inject(ArduinoPreferences)
62-
private readonly arduinoPreferences: ArduinoPreferences;
61+
@inject(ElectronWindowPreferences)
62+
private readonly electronWindowPreferences: ElectronWindowPreferences;
6363

6464
@inject(FrontendApplicationStateService)
6565
private readonly appStateService: FrontendApplicationStateService;
@@ -78,10 +78,10 @@ export class ArduinoFrontendContribution
7878
}
7979

8080
onStart(app: FrontendApplication): void {
81-
this.arduinoPreferences.onPreferenceChanged((event) => {
81+
this.electronWindowPreferences.onPreferenceChanged((event) => {
8282
if (event.newValue !== event.oldValue) {
8383
switch (event.preferenceName) {
84-
case 'arduino.window.zoomLevel':
84+
case 'window.zoomLevel':
8585
if (typeof event.newValue === 'number') {
8686
const webContents = remote.getCurrentWebContents();
8787
webContents.setZoomLevel(event.newValue || 0);
@@ -91,11 +91,10 @@ export class ArduinoFrontendContribution
9191
}
9292
});
9393
this.appStateService.reachedState('ready').then(() =>
94-
this.arduinoPreferences.ready.then(() => {
94+
this.electronWindowPreferences.ready.then(() => {
9595
const webContents = remote.getCurrentWebContents();
96-
const zoomLevel = this.arduinoPreferences.get(
97-
'arduino.window.zoomLevel'
98-
);
96+
const zoomLevel =
97+
this.electronWindowPreferences.get('window.zoomLevel');
9998
webContents.setZoomLevel(zoomLevel);
10099
})
101100
);

0 commit comments

Comments
 (0)