Skip to content

Commit 63204b1

Browse files
authored
Merge branch 'main' into main
2 parents fae9928 + 10583a5 commit 63204b1

File tree

6 files changed

+718
-63
lines changed

6 files changed

+718
-63
lines changed

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,39 @@ updates:
77
# See: https://docs.github.com/en/code-security/supply-chain-security/keeping-your-actions-up-to-date-with-dependabot
88
- package-ecosystem: github-actions
99
directory: / # Check the repository's workflows under /.github/workflows/
10+
assignees:
11+
- per1234
12+
open-pull-requests-limit: 100
1013
schedule:
1114
interval: daily
1215
labels:
1316
- "topic: infrastructure"
1417
- package-ecosystem: github-actions
1518
target-branch: production
1619
directory: /
20+
assignees:
21+
- per1234
22+
open-pull-requests-limit: 100
1723
schedule:
1824
interval: daily
1925
labels:
2026
- "topic: infrastructure"
2127
- package-ecosystem: gomod
2228
target-branch: production
2329
directory: /.github/workflows/assets/validate-registry/
30+
assignees:
31+
- per1234
32+
open-pull-requests-limit: 100
2433
schedule:
2534
interval: daily
2635
labels:
2736
- "topic: infrastructure"
2837
- package-ecosystem: pip
2938
target-branch: production
3039
directory: /
40+
assignees:
41+
- per1234
42+
open-pull-requests-limit: 100
3143
schedule:
3244
interval: daily
3345
labels:

.github/workflows/manage-prs.yml

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ env:
55
MAINTAINERS: |
66
# GitHub user names to request reviews from in cases where PRs can't be managed automatically.
77
- per1234
8-
CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT: check-submissions-failed
8+
CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PREFIX: check-submissions-failed-
99
ERROR_MESSAGE_PREFIX: ":x: **ERROR:** "
1010

1111
on:
@@ -114,7 +114,7 @@ jobs:
114114
run: echo "::set-output name=head::$(jq -c .head.sha "${{ steps.configuration.outputs.path }}/${{ env.JSON_IDENTIFIER }}")"
115115

116116
- name: Upload diff file to workflow artifact
117-
uses: actions/upload-artifact@v3
117+
uses: actions/upload-artifact@v4
118118
with:
119119
path: ${{ steps.configuration.outputs.path }}/${{ steps.configuration.outputs.filename }}
120120
name: ${{ steps.configuration.outputs.artifact }}
@@ -144,13 +144,13 @@ jobs:
144144
location: ${{ runner.temp }}
145145

146146
- name: Download diff
147-
uses: actions/download-artifact@v3
147+
uses: actions/download-artifact@v4
148148
with:
149149
path: ${{ needs.diff.outputs.path }}
150150
name: ${{ needs.diff.outputs.artifact }}
151151

152152
- name: Remove no longer needed artifact
153-
uses: geekyeggo/delete-artifact@v2
153+
uses: geekyeggo/delete-artifact@v5
154154
with:
155155
name: ${{ needs.diff.outputs.artifact }}
156156

@@ -376,15 +376,23 @@ jobs:
376376
if: env.PASS == 'false'
377377
run: touch ${{ env.FAIL_FLAG_PATH }} # Arbitrary file to provide content for the flag artifact
378378

379+
# Each workflow artifact must have a unique name. The job matrix doesn't provide a guaranteed unique string to use
380+
# for a name so it is necessary to generate one.
381+
- name: Generate unique artifact suffix
382+
if: env.PASS == 'false'
383+
run: |
384+
echo "CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_SUFFIX=$(cat /proc/sys/kernel/random/uuid)" >> "$GITHUB_ENV"
385+
379386
# The value of a job matrix output is set by whichever job happened to run last, not of use for this application.
380387
# So it's necessary to use an alternative means of indicating that at least one submission failed the checks.
381388
- name: Upload failure flag artifact
382389
if: env.PASS == 'false'
383-
uses: actions/upload-artifact@v3
390+
uses: actions/upload-artifact@v4
384391
with:
385392
if-no-files-found: error
393+
include-hidden-files: true
386394
path: ${{ env.FAIL_FLAG_PATH }}
387-
name: ${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT }}
395+
name: ${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PREFIX }}${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_SUFFIX }}
388396

389397
check-submissions-result:
390398
needs: check-submissions
@@ -393,13 +401,22 @@ jobs:
393401
outputs:
394402
pass: ${{ steps.failure-flag-exists.outcome == 'failure' }}
395403

404+
env:
405+
CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PATH: ${{ github.workspace }}/artifacts
406+
396407
steps:
408+
- name: Download submission check failure flag artifacts
409+
uses: actions/download-artifact@v4
410+
with:
411+
path: ${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PATH }}
412+
pattern: ${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PREFIX }}*
413+
397414
- name: Check for existence of submission check failure flag artifact
398415
id: failure-flag-exists
399-
uses: actions/download-artifact@v3
400416
continue-on-error: true
401-
with:
402-
name: ${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT }}
417+
# actions/download-artifact does not create a folder per its `path` input if no artifacts match `pattern`.
418+
run: |
419+
test -d "${{ env.CHECK_SUBMISSIONS_FAIL_FLAG_ARTIFACT_PATH }}"
403420
404421
check-submissions-fail:
405422
needs:

.github/workflows/sync-labels.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ on:
1919

2020
env:
2121
CONFIGURATIONS_FOLDER: .github/label-configuration-files
22-
CONFIGURATIONS_ARTIFACT: label-configuration-files
22+
CONFIGURATIONS_ARTIFACT_PREFIX: label-configuration-file-
2323

2424
jobs:
2525
check:
@@ -70,13 +70,13 @@ jobs:
7070
file-url: https://raw.githubusercontent.com/arduino/tooling-project-assets/main/workflow-templates/assets/sync-labels/${{ matrix.filename }}
7171

7272
- name: Pass configuration files to next job via workflow artifact
73-
uses: actions/upload-artifact@v3
73+
uses: actions/upload-artifact@v4
7474
with:
7575
path: |
7676
*.yaml
7777
*.yml
7878
if-no-files-found: error
79-
name: ${{ env.CONFIGURATIONS_ARTIFACT }}
79+
name: ${{ env.CONFIGURATIONS_ARTIFACT_PREFIX }}${{ matrix.filename }}
8080

8181
sync:
8282
needs: download
@@ -107,16 +107,17 @@ jobs:
107107
- name: Checkout repository
108108
uses: actions/checkout@v4
109109

110-
- name: Download configuration files artifact
111-
uses: actions/download-artifact@v3
110+
- name: Download configuration file artifacts
111+
uses: actions/download-artifact@v4
112112
with:
113-
name: ${{ env.CONFIGURATIONS_ARTIFACT }}
113+
merge-multiple: true
114+
pattern: ${{ env.CONFIGURATIONS_ARTIFACT_PREFIX }}*
114115
path: ${{ env.CONFIGURATIONS_FOLDER }}
115116

116-
- name: Remove unneeded artifact
117-
uses: geekyeggo/delete-artifact@v2
117+
- name: Remove unneeded artifacts
118+
uses: geekyeggo/delete-artifact@v5
118119
with:
119-
name: ${{ env.CONFIGURATIONS_ARTIFACT }}
120+
name: ${{ env.CONFIGURATIONS_ARTIFACT_PREFIX }}*
120121

121122
- name: Merge label configuration files
122123
run: |

FAQ.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
- [When I install a library that I know depends on another library, will this other library be installed as well?](#when-i-install-a-library-that-i-know-depends-on-another-library-will-this-other-library-be-installed-as-well)
2727
- [Can I install multiple versions of one library and use the proper one in my sketches?](#can-i-install-multiple-versions-of-one-library-and-use-the-proper-one-in-my-sketches)
2828
- [How can I remove a library I installed via Library Manager?](#how-can-i-remove-a-library-i-installed-via-library-manager)
29+
- [Security & Malware Reporting](#security--malware-reporting)
2930

3031
<!-- tocstop -->
3132

@@ -43,9 +44,10 @@ When a library is [added to the library list](README.md#adding-a-library-to-libr
4344

4445
More information:
4546

47+
- https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-installing-a-library#installing-a-library
4648
- https://docs.arduino.cc/software/ide-v1/tutorials/installing-libraries#using-the-library-manager
4749
- https://arduino.github.io/arduino-cli/latest/commands/arduino-cli_lib/
48-
- https://create.arduino.cc/projecthub/Arduino_Genuino/getting-started-with-arduino-web-editor-on-various-platforms-4b3e4a
50+
- https://docs.arduino.cc/arduino-cloud/guides/editor/#library-manager
4951

5052
### How is the Library Manager index generated?
5153

@@ -195,3 +197,11 @@ This version of the Arduino IDE does not have an integrated uninstall functional
195197
#### Arduino CLI
196198

197199
Libraries can be uninstalled via [the `arduino-cli lib uninstall` command](https://arduino.github.io/arduino-cli/latest/commands/arduino-cli_lib_uninstall/).
200+
201+
## Security & Malware Reporting
202+
203+
If you think you found a vulnerability, malware or other security-related defect in any Arduino Library projects, please take a look at our security policy and report it to our Security Team 🛡️.
204+
205+
Thank you!
206+
207+
E-mail contact: [email protected]

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ This repository contains the list of libraries in the
1515
- [Changing the URL of a library already in Library Manager](#changing-the-url-of-a-library-already-in-library-manager)
1616
- [Removing a library from Library Manager](#removing-a-library-from-library-manager)
1717
- [Report a problem with Library Manager](#report-a-problem-with-library-manager)
18+
- [Security & Malware Reporting](#security--malware-reporting)
1819

1920
<!-- tocstop -->
2021

@@ -118,3 +119,11 @@ This repository is not an appropriate place to request support or report problem
118119
own documentation for instructions or ask on the [Arduino Forum](https://forum.arduino.cc/).
119120

120121
If the problem is about something else, please submit an issue report [here](https://github.com/arduino/library-registry/issues/new/choose).
122+
123+
## Security & Malware Reporting
124+
125+
If you think you found a vulnerability, malware or other security-related defect in any Arduino Library projects, please take a look at our security policy and report it to our Security Team 🛡️.
126+
127+
Thank you!
128+
129+
E-mail contact: [email protected]

0 commit comments

Comments
 (0)