Skip to content
This repository was archived by the owner on Oct 1, 2024. It is now read-only.

Commit ec7eaef

Browse files
authored
Merge branch 'dev' into patch-1
2 parents e56d411 + 130aa64 commit ec7eaef

31 files changed

+488
-185
lines changed

.eslintrc.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@ plugins:
1919
- '@typescript-eslint'
2020
rules: {
2121
"no-empty": ["error", { "allowEmptyCatch": true }],
22-
"no-unused-vars": ["error", { "args": "none" }]
22+
"@typescript-eslint/no-unused-vars": ["error", { "args": "none" }]
2323
}
2424

.github/workflows/build.yml

+55-84
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
name: CI-Tests
1+
# Copyright (c) Microsoft Corporation.
2+
# Licensed under the MIT License.
3+
4+
name: CI
5+
26
on:
37
push:
48
branches:
@@ -11,106 +15,73 @@ on:
1115
- master
1216
- dev
1317

14-
1518
jobs:
1619
build:
17-
runs-on: ${{ matrix.os }}
20+
runs-on: ${{ matrix.os }}
1821
strategy:
22+
fail-fast: false
1923
matrix:
2024
os: [ ubuntu-latest, macos-latest, windows-latest ]
21-
25+
2226
steps:
23-
- name: checkout
27+
- name: Checkout
2428
uses: actions/checkout@v2
25-
- name: get node
26-
uses: actions/setup-node@v1
29+
30+
# Node 14 matches the version of Node used by VS Code when this was
31+
# written, but it should be updated when VS Code updates its Node version.
32+
# Node needs to be installed before OS-specific setup so that we can run
33+
# the hash verification script.
34+
- name: Use Node 14.x
35+
uses: actions/setup-node@v2
2736
with:
28-
node-version: 11.x
29-
- name: linux setup
37+
node-version: 14.x
38+
39+
- name: Windows setup
40+
if: ${{ matrix.os == 'windows-latest' }}
41+
run: |
42+
curl -LO https://downloads.arduino.cc/arduino-1.8.19-windows.zip
43+
node build/checkHash.js arduino-1.8.19-windows.zip `
44+
c704a821089eab2588f1deae775916219b1517febd1dd574ff29958dca873945
45+
7z x arduino-1.8.19-windows.zip -o"$Env:TEMP\arduino-ide"
46+
echo "$Env:TEMP\arduino-ide\arduino-1.8.19" | Out-File -FilePath $env:GITHUB_PATH -Append
47+
- name: Linux setup
3048
if: ${{ matrix.os == 'ubuntu-latest' }}
3149
run: |
3250
export CXX="g++-4.9" CC="gcc-4.9" DISPLAY=:99.0
3351
sleep 3
34-
wget https://downloads.arduino.cc/arduino-1.8.2-linux64.tar.xz -P /home/$USER
35-
tar -xvf /home/$USER/arduino-1.8.2-linux64.tar.xz -C /home/$USER/
36-
sudo ln -s /home/$USER/arduino-1.8.2/arduino /usr/bin/arduino
52+
wget https://downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz -P /home/$USER
53+
node build/checkHash.js /home/$USER/arduino-1.8.19-linux64.tar.xz \
54+
eb68bddc1d1c0120be2fca1350a03ee34531cf37f51847b21210b6e70545bc9b
55+
tar -xvf /home/$USER/arduino-1.8.19-linux64.tar.xz -C /home/$USER/
56+
sudo ln -s /home/$USER/arduino-1.8.19/arduino /usr/bin/arduino
3757
sudo apt-get update
38-
sudo apt-get install g++-multilib
39-
sudo apt-get install -y build-essential
40-
sudo apt-get install libudev-dev
41-
- name: macos setup
58+
sudo apt-get install -y g++-multilib build-essential libudev-dev
59+
- name: macOS setup
4260
if: ${{ matrix.os == 'macos-latest' }}
43-
run: |
61+
run: |
4462
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
4563
brew install arduino --cask
46-
- name: preinstall
47-
run: |
48-
npm install -g node-gyp
49-
npm install -g vsce
50-
npm install -g gulp
51-
- name: install
52-
run: npm install
53-
- name: scripts
54-
run: |
55-
gulp tslint
56-
vsce package
57-
- name: run tests
64+
65+
# Windows agents already have gulp installed.
66+
- name: Install gulp
5867
if: ${{ matrix.os != 'windows-latest' }}
68+
run: npm install --global gulp
69+
- name: Install global dependencies
70+
run: npm install --global node-gyp vsce
71+
- name: Install project dependencies
72+
run: npm install
73+
74+
- name: Check for linting errors
75+
run: gulp tslint
76+
- name: Build and pack extension
77+
run: vsce package --out vscode-arduino.vsix
78+
- name: Publish extension VSIX as artifact
79+
uses: actions/upload-artifact@v2
80+
with:
81+
name: VS Code extension VSIX (${{ matrix.os }})
82+
path: vscode-arduino.vsix
83+
84+
- name: Run tests
5985
uses: GabrielBB/xvfb-action@v1
6086
with:
6187
run: npm test --silent
62-
63-
deploy:
64-
needs: build
65-
runs-on: ubuntu-latest
66-
environment: vsix-publishing
67-
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/')
68-
steps:
69-
- run: echo "VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
70-
- run: echo ${{env.VERSION}}
71-
- name: Checkout
72-
uses: actions/checkout@v2
73-
- name: get node
74-
uses: actions/setup-node@v1
75-
with:
76-
node-version: 11.x
77-
- name: linux setup
78-
run: |
79-
export CXX="g++-4.9" CC="gcc-4.9" DISPLAY=:99.0
80-
sleep 3
81-
sudo apt-get update
82-
sudo apt-get install g++-multilib
83-
sudo apt-get install -y build-essential
84-
sudo apt-get install libudev-dev
85-
- name: preinstall
86-
run: |
87-
npm install -g node-gyp
88-
npm install -g vsce
89-
npm install -g gulp
90-
- name: install
91-
run: npm install
92-
- name: scripts
93-
run: |
94-
gulp tslint
95-
vsce package
96-
- name: upload .vsix to github tag
97-
uses: svenstaro/upload-release-action@v2
98-
with:
99-
repo_token: ${{ secrets.OAUTH_TOKEN }}
100-
file: ${{github.workspace}}/vscode-arduino*.vsix
101-
tag: ${{ github.ref }}
102-
overwrite: true
103-
file_glob: true
104-
- name: check for production tag
105-
id: check-version
106-
run: |
107-
if [[ ${{ env.VERSION }} =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
108-
echo ::set-output name=ISPRODUCTION::true
109-
fi
110-
- name: publish
111-
if: steps.check-version.outputs.ISPRODUCTION == 'true'
112-
env:
113-
PROD_AIKEY: ${{ secrets.PROD_AIKEY }}
114-
run: |
115-
gulp genAikey
116-
vsce publish -p ${{ secrets.VSCE_TOKEN }}

.github/workflows/remove-labels.yml

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: Remove labels from closed issues
2+
3+
on:
4+
issues:
5+
types:
6+
- closed
7+
8+
jobs:
9+
label_issues:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Remove labels
13+
uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90
14+
with:
15+
remove-labels: triage, needs-more-info

.github/workflows/stale-issues.yml

+16-12
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,26 @@
1-
name: Mark stale issues and close them
1+
name: Label and close stale issues
22

33
on:
44
schedule:
55
- cron: "0 * * * *"
6+
workflow_dispatch:
67

78
jobs:
89
stale:
9-
1010
runs-on: ubuntu-latest
11-
1211
steps:
13-
- uses: blackchoey/stale@releases/v1.2
12+
- uses: actions/stale@v4.1.0
1413
with:
15-
repo-token: ${{ secrets.GITHUB_TOKEN }}
16-
stale-issue-message: 'This issue has been automatically marked as stale because it has no recent activities. It will be closed if no further activity occurs within 3 days. Thank you for your contributions.'
17-
stale-issue-label: 'stale'
18-
days-before-stale: 7
19-
only-labels: 'needs more info'
20-
last-updated-user-type: 'collaborator'
21-
days-before-close: 3
22-
operations-per-run: 150
14+
days-before-stale: 30
15+
days-before-close: 7
16+
stale-issue-message: >-
17+
This issue has been automatically marked as stale because it has been
18+
inactive for 30 days. To reactivate the issue, simply post a comment
19+
with the requested information to help us diagnose this issue. If this
20+
issue remains inactive for another 7 days, it will be automatically
21+
closed.
22+
close-issue-message: >-
23+
This issue has been automatically closed due to inactivity. If you are
24+
still experiencing problems, please open a new issue.
25+
stale-issue-label: stale
26+
only-labels: needs-more-info

.github/workflows/triage-issues.yml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: Label new issues
2+
3+
on:
4+
issues:
5+
types:
6+
- opened
7+
- reopened
8+
9+
jobs:
10+
label_issues:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Add triage label
14+
uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90
15+
with:
16+
add-labels: triage

.vscodeignore

+3-1
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ gulpfile.js
1515
*.log
1616
webpack.config.js
1717
node_modules/**
18-
vendor/**
18+
vendor/**
19+
azure-pipelines.yml
20+
build/**

CHANGELOG.md

+20
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,26 @@
11
# Change Log
22
All notable changes to this project will be documented in this file.
33

4+
## Version 0.4.8
5+
6+
- Release date: November 9, 2021
7+
8+
### Changed
9+
10+
- Fix application insights key [31dd3a9](https://github.com/microsoft/vscode-arduino/commit/31dd3a94c64eb12a5483038c5bfe668abad36f91)
11+
12+
## Version 0.4.7
13+
14+
- Release date: November 5, 2021
15+
16+
### Changed
17+
18+
- Add support for ST-Link v3.0 [#1366](https://github.com/microsoft/vscode-arduino/pull/1366)
19+
- Fix empty board and examples list [#1367](https://github.com/microsoft/vscode-arduino/pull/1367)
20+
- Fix ESLint parsing for enums [#1368](https://github.com/microsoft/vscode-arduino/pull/1368)
21+
- Fix build cwd [#1375](https://github.com/microsoft/vscode-arduino/pull/1375)
22+
- Fix stack overflow in board configuration view [#1379](https://github.com/microsoft/vscode-arduino/pull/1379)
23+
424
## Version 0.4.6
525

626
- Release date: September 29, 2021

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@ This extension provides several commands in the Command Palette (<kbd>F1</kbd> o
7474
| `arduino.commandPath` | Path to an executable (or script) relative to `arduino.path`. The default value is `arduino_debug.exe` for Windows, `Contents/MacOS/Arduino` for Mac and `arduino` for Linux, You also can use a custom launch script to run Arduino by modifying this setting. (Requires a restart after change) Example: `run-arduino.bat` for Windows, `Contents/MacOS/run-arduino.sh` for Mac and `bin/run-arduino.sh` for Linux. |
7575
| `arduino.additionalUrls` | Additional Boards Manager URLs for 3rd party packages. You can have multiple URLs in one string with a comma(`,`) as separator, or have a string array. The default value is empty. |
7676
| `arduino.logLevel` | CLI output log level. Could be info or verbose. The default value is `"info"`. |
77-
| `arduino.allowPDEFiletype` | Allow the VSCode Arduino extension to open .pde files from pre-1.0.0 versions of Arduino. Note that this will break Processing code. Default value is `false`. |
77+
| `arduino.clearOutputOnBuild` | Clear the output logs before uploading or verifying. Default value is `false`. |
78+
| `arduino.allowPDEFiletype` | Allow the VSCode Arduino extension to open .pde files from pre-1.0.0 versions of Arduino. Note that this will break Processing code. Default value is `false`. |
7879
| `arduino.enableUSBDetection` | Enable/disable USB detection from the VSCode Arduino extension. The default value is `true`. When your device is plugged in to your computer, it will pop up a message "`Detected board ****, Would you like to switch to this board type`". After clicking the `Yes` button, it will automatically detect which serial port (COM) is connected a USB device. If your device does not support this feature, please provide us with the PID/VID of your device; the code format is defined in `misc/usbmapping.json`.To learn more about how to list the vid/pid, use the following tools: https://github.com/EmergingTechnologyAdvisors/node-serialport `npm install -g serialport` `serialport-list -f jsonline`|
7980
| `arduino.disableTestingOpen` | Enable/disable automatic sending of a test message to the serial port for checking the open status. The default value is `false` (a test message will be sent). |
8081
| `arduino.skipHeaderProvider` | Enable/disable the extension providing completion items for headers. This functionality is included in newer versions of the C++ extension. The default value is `false`.|

0 commit comments

Comments
 (0)