Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: arduino/arduino-create-agent
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1.4.0
Choose a base ref
...
head repository: arduino/arduino-create-agent
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing with 1,984 additions and 1,346 deletions.
  1. +45 −24 .github/workflows/check-certificates.yml
  2. +19 −6 .github/workflows/check-go-dependencies-task.yml
  3. +2 −2 .github/workflows/check-go-task.yml
  4. +28 −7 .github/workflows/publish-go-tester-task.yml
  5. +145 −81 .github/workflows/release.yml
  6. +5 −4 .github/workflows/sync-labels.yml
  7. +1 −1 .github/workflows/test-go-integration-task.yml
  8. +1 −1 .github/workflows/test-go-task.yml
  9. +2 −2 .gitignore
  10. +4 −0 .licensed.yml
  11. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/bitcurves.dep.yml
  12. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/brainpool.dep.yml
  13. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/eax.dep.yml
  14. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/internal/byteutil.dep.yml
  15. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/ocb.dep.yml
  16. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp.dep.yml
  17. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/aes/keywrap.dep.yml
  18. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/armor.dep.yml
  19. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/ecdh.dep.yml
  20. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/ecdsa.dep.yml
  21. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/ed25519.dep.yml
  22. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/ed448.dep.yml
  23. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/eddsa.dep.yml
  24. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/elgamal.dep.yml
  25. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/errors.dep.yml
  26. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/internal/algorithm.dep.yml
  27. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/internal/ecc.dep.yml
  28. +63 −0 ...s/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/internal/ecc/curve25519.dep.yml
  29. +62 −0 ...ino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/internal/ecc/curve25519/field.dep.yml
  30. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/internal/encoding.dep.yml
  31. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/packet.dep.yml
  32. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/s2k.dep.yml
  33. +7 −8 ...go/{golang.org/x/crypto/sha3.dep.yml → github.com/ProtonMail/go-crypto/openpgp/symmetric.dep.yml}
  34. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/x25519.dep.yml
  35. +3 −3 .licenses/arduino-create-agent/go/github.com/ProtonMail/go-crypto/openpgp/x448.dep.yml
  36. +1 −1 .licenses/arduino-create-agent/go/github.com/arduino/go-paths-helper.dep.yml
  37. +1 −1 .licenses/arduino-create-agent/go/github.com/arduino/go-serial-utils.dep.yml
  38. +1 −1 .licenses/arduino-create-agent/go/github.com/arduino/pluggable-discovery-protocol-handler/v2.dep.yml
  39. +2 −1 .licenses/arduino-create-agent/go/github.com/blang/semver.dep.yml
  40. +3 −3 .licenses/arduino-create-agent/go/github.com/codeclysm/extract/{v3.dep.yml → v4.dep.yml}
  41. +2 −1 .licenses/arduino-create-agent/go/github.com/creack/goselect.dep.yml
  42. +1 −1 .licenses/arduino-create-agent/go/github.com/gin-contrib/cors.dep.yml
  43. +1 −1 .licenses/arduino-create-agent/go/github.com/gin-contrib/sse.dep.yml
  44. +1 −1 .licenses/arduino-create-agent/go/github.com/gin-gonic/gin.dep.yml
  45. +2 −2 .licenses/arduino-create-agent/go/github.com/gin-gonic/gin/binding.dep.yml
  46. +2 −2 .licenses/arduino-create-agent/go/github.com/gin-gonic/gin/internal/bytesconv.dep.yml
  47. +2 −2 .licenses/arduino-create-agent/go/github.com/gin-gonic/gin/internal/json.dep.yml
  48. +2 −2 .licenses/arduino-create-agent/go/github.com/gin-gonic/gin/render.dep.yml
  49. +1 −1 .licenses/arduino-create-agent/go/github.com/go-playground/validator/v10.dep.yml
  50. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io.dep.yml
  51. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io/message.dep.yml
  52. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io/parser.dep.yml
  53. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io/polling.dep.yml
  54. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io/transport.dep.yml
  55. +1 −1 .licenses/arduino-create-agent/go/github.com/googollee/go-engine.io/websocket.dep.yml
  56. +1 −1 .licenses/arduino-create-agent/go/github.com/h2non/filetype.dep.yml
  57. +1 −1 .licenses/arduino-create-agent/go/github.com/h2non/filetype/matchers.dep.yml
  58. +1 −1 .licenses/arduino-create-agent/go/github.com/h2non/filetype/matchers/isobmff.dep.yml
  59. +1 −1 .licenses/arduino-create-agent/go/github.com/h2non/filetype/types.dep.yml
  60. +1 −1 .licenses/arduino-create-agent/go/github.com/mattn/go-shellwords.dep.yml
  61. +1 −1 .licenses/arduino-create-agent/go/github.com/pelletier/go-toml/v2.dep.yml
  62. +3 −3 .licenses/arduino-create-agent/go/github.com/pelletier/go-toml/v2/internal/characters.dep.yml
  63. +3 −3 .licenses/arduino-create-agent/go/github.com/pelletier/go-toml/v2/internal/danger.dep.yml
  64. +3 −3 .licenses/arduino-create-agent/go/github.com/pelletier/go-toml/v2/internal/tracker.dep.yml
  65. +3 −3 .licenses/arduino-create-agent/go/github.com/pelletier/go-toml/v2/unstable.dep.yml
  66. +1 −1 .licenses/arduino-create-agent/go/github.com/ulikunitz/xz.dep.yml
  67. +2 −2 .licenses/arduino-create-agent/go/github.com/ulikunitz/xz/internal/hash.dep.yml
  68. +2 −2 .licenses/arduino-create-agent/go/github.com/ulikunitz/xz/internal/xlog.dep.yml
  69. +2 −2 .licenses/arduino-create-agent/go/github.com/ulikunitz/xz/lzma.dep.yml
  70. +1 −1 .licenses/arduino-create-agent/go/github.com/xrash/smetrics.dep.yml
  71. +3 −3 .licenses/arduino-create-agent/go/go.bug.st/serial.dep.yml
  72. +5 −5 .licenses/arduino-create-agent/go/go.bug.st/serial/enumerator.dep.yml
  73. +5 −5 .licenses/arduino-create-agent/go/go.bug.st/serial/unixutils.dep.yml
  74. +2 −2 .licenses/arduino-create-agent/go/goa.design/goa/v3/http.dep.yml
  75. +2 −2 .licenses/arduino-create-agent/go/goa.design/goa/v3/http/middleware.dep.yml
  76. +2 −2 .licenses/arduino-create-agent/go/goa.design/goa/v3/middleware.dep.yml
  77. +2 −2 .licenses/arduino-create-agent/go/goa.design/goa/v3/pkg.dep.yml
  78. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/crypto/argon2.dep.yml
  79. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/crypto/blake2b.dep.yml
  80. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/crypto/cast5.dep.yml
  81. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/html.dep.yml
  82. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/html/atom.dep.yml
  83. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/http2.dep.yml
  84. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/http2/h2c.dep.yml
  85. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/internal/socks.dep.yml
  86. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/net/proxy.dep.yml
  87. +6 −6 .licenses/arduino-create-agent/go/golang.org/x/sys/unix.dep.yml
  88. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/text/internal/language.dep.yml
  89. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/text/internal/language/compact.dep.yml
  90. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/text/internal/tag.dep.yml
  91. +3 −3 .licenses/arduino-create-agent/go/golang.org/x/text/language.dep.yml
  92. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/encoding/protowire.dep.yml
  93. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/detrand.dep.yml
  94. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/encoding/messageset.dep.yml
  95. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/errors.dep.yml
  96. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/flags.dep.yml
  97. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/genid.dep.yml
  98. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/order.dep.yml
  99. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/pragma.dep.yml
  100. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/internal/strs.dep.yml
  101. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/proto.dep.yml
  102. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/reflect/protoreflect.dep.yml
  103. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/reflect/protoregistry.dep.yml
  104. +3 −3 .licenses/arduino-create-agent/go/google.golang.org/protobuf/runtime/protoiface.dep.yml
  105. +1 −1 .licenses/arduino-create-agent/go/gopkg.in/inconshreveable/go-update.v0/download.dep.yml
  106. +10 −10 README.md
  107. +16 −6 Taskfile.yml
  108. +23 −1 certificates/certificates.go
  109. +7 −0 certificates/certificates_darwin.h
  110. +137 −0 certificates/certificates_darwin.m
  111. +56 −45 certificates/install_darwin.go
  112. +25 −0 certificates/install_default.go
  113. +18 −0 config/config.go
  114. +81 −79 conn.go
  115. +1 −1 gen/http/cli/arduino_create_agent/cli.go
  116. +1 −1 gen/http/tools/client/cli.go
  117. +1 −1 gen/http/tools/client/client.go
  118. +1 −1 gen/http/tools/client/encode_decode.go
  119. +1 −1 gen/http/tools/client/paths.go
  120. +1 −1 gen/http/tools/client/types.go
  121. +1 −1 gen/http/tools/server/encode_decode.go
  122. +1 −1 gen/http/tools/server/paths.go
  123. +1 −1 gen/http/tools/server/server.go
  124. +1 −1 gen/http/tools/server/types.go
  125. +1 −1 gen/tools/client.go
  126. +1 −1 gen/tools/endpoints.go
  127. +1 −1 gen/tools/service.go
  128. +1 −1 gen/tools/views/view.go
  129. +10 −3 globals/globals.go
  130. +25 −23 go.mod
  131. +48 −51 go.sum
  132. +337 −227 home.html
  133. +2 −2 index/index_test.go
  134. +90 −14 main.go
  135. +45 −5 main_test.go
  136. +65 −94 serial.go
  137. +50 −34 serialport.go
  138. +42 −12 systray/systray_real.go
  139. +2 −2 tests/conftest.py
  140. +6 −0 tests/test_info.py
  141. +6 −0 tests/test_v2.py
  142. +9 −0 tests/test_ws.py
  143. +13 −158 tools/download.go
  144. +36 −13 tools/download_test.go
  145. +0 −55 tools/testdata/test_tool_index.json
  146. +6 −14 tools/tools.go
  147. +4 −2 updater/updater_darwin.go
  148. +39 −13 utilities/utilities.go
  149. +3 −2 v2/http.go
  150. +4 −4 v2/pkgs/pkgs.go
  151. +0 −55 v2/pkgs/testdata/test_tool_index.json
  152. +130 −35 v2/pkgs/tools.go
  153. +15 −13 v2/pkgs/tools_test.go
69 changes: 45 additions & 24 deletions .github/workflows/check-certificates.yml
Original file line number Diff line number Diff line change
@@ -26,7 +26,7 @@ jobs:
if: >
(github.event_name != 'pull_request' && github.repository == 'arduino/arduino-create-agent') ||
(github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == 'arduino/arduino-create-agent')
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04

strategy:
fail-fast: false
@@ -37,9 +37,11 @@ jobs:
- identifier: macOS signing certificate # Text used to identify certificate in notifications.
certificate-secret: INSTALLER_CERT_MAC_P12 # Name of the secret that contains the certificate.
password-secret: INSTALLER_CERT_MAC_PASSWORD # Name of the secret that contains the certificate password.
type: pkcs12
- identifier: Windows signing certificate
certificate-secret: INSTALLER_CERT_WINDOWS_PFX
password-secret: INSTALLER_CERT_WINDOWS_PASSWORD
certificate-secret: INSTALLER_CERT_WINDOWS_CER
# The password for the Windows certificate is not needed, because its not a container, but a single certificate.
type: x509

steps:
- name: Set certificate path environment variable
@@ -58,9 +60,10 @@ jobs:
CERTIFICATE_PASSWORD: ${{ secrets[matrix.certificate.password-secret] }}
run: |
(
openssl pkcs12 \
openssl ${{ matrix.certificate.type }} \
-in "${{ env.CERTIFICATE_PATH }}" \
-noout -passin env:CERTIFICATE_PASSWORD
-noout -passin env:CERTIFICATE_PASSWORD \
-legacy
) || (
echo "::error::Verification of ${{ matrix.certificate.identifier }} failed!!!"
exit 1
@@ -83,25 +86,43 @@ jobs:
CERTIFICATE_PASSWORD: ${{ secrets[matrix.certificate.password-secret] }}
id: get-days-before-expiration
run: |
EXPIRATION_DATE="$(
(
openssl pkcs12 \
-in "${{ env.CERTIFICATE_PATH }}" \
-clcerts \
-nodes \
-passin env:CERTIFICATE_PASSWORD
) | (
openssl x509 \
-noout \
-enddate
) | (
grep \
--max-count=1 \
--only-matching \
--perl-regexp \
'notAfter=(\K.*)'
)
)"
if [[ ${{ matrix.certificate.type }} == "pkcs12" ]]; then
EXPIRATION_DATE="$(
(
openssl pkcs12 \
-in ${{ env.CERTIFICATE_PATH }} \
-clcerts \
-nodes \
-passin env:CERTIFICATE_PASSWORD \
-legacy
) | (
openssl x509 \
-noout \
-enddate
) | (
grep \
--max-count=1 \
--only-matching \
--perl-regexp \
'notAfter=(\K.*)'
)
)"
elif [[ ${{ matrix.certificate.type }} == "x509" ]]; then
EXPIRATION_DATE="$(
(
openssl x509 \
-in ${{ env.CERTIFICATE_PATH }} \
-noout \
-enddate
) | (
grep \
--max-count=1 \
--only-matching \
--perl-regexp \
'notAfter=(\K.*)'
)
)"
fi
DAYS_BEFORE_EXPIRATION="$((($(date --utc --date="$EXPIRATION_DATE" +%s) - $(date --utc +%s)) / 60 / 60 / 24))"
25 changes: 19 additions & 6 deletions .github/workflows/check-go-dependencies-task.yml
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ name: Check Go Dependencies

env:
# See: https://github.com/actions/setup-go/tree/v3#readme
GO_VERSION: "1.21"
GO_VERSION: "1.23"

# See: https://docs.github.com/actions/using-workflows/events-that-trigger-workflows
on:
@@ -72,11 +72,17 @@ jobs:
with:
submodules: recursive

# This is required to allow licensee/setup-licensed to install Licensed via Ruby gem.
- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ruby # Install latest version

- name: Install licensed
uses: jonabc/setup-licensed@v1
uses: licensee/setup-licensed@v1.3.2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
version: 3.x
version: 5.x

- name: Install Go
uses: actions/setup-go@v5
@@ -105,9 +111,10 @@ jobs:
# Some might find it convenient to have CI generate the cache rather than setting up for it locally
- name: Upload cache to workflow artifact
if: failure() && steps.diff.outcome == 'failure'
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
if-no-files-found: error
include-hidden-files: true
name: dep-licenses-cache
path: ${{ env.CACHE_PATH }}

@@ -122,11 +129,17 @@ jobs:
with:
submodules: recursive

# This is required to allow licensee/setup-licensed to install Licensed via Ruby gem.
- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ruby # Install latest version

- name: Install licensed
uses: jonabc/setup-licensed@v1
uses: licensee/setup-licensed@v1.3.2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
version: 3.x
version: 5.x

- name: Install Go
uses: actions/setup-go@v5
4 changes: 2 additions & 2 deletions .github/workflows/check-go-task.yml
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ name: Check Go

env:
# See: https://github.com/actions/setup-go/tree/main#supported-version-syntax
GO_VERSION: "1.21"
GO_VERSION: "1.23"

# See: https://docs.github.com/actions/using-workflows/events-that-trigger-workflows
on:
@@ -82,7 +82,7 @@ jobs:
version: 3.x

- name: Install Dependencies
run: sudo apt update && sudo apt install -y --no-install-recommends build-essential libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev
run: sudo apt update && sudo apt install -y --no-install-recommends build-essential libgtk-3-dev libwebkit2gtk-4.1-0 libappindicator3-dev

- name: Check for errors
env:
35 changes: 28 additions & 7 deletions .github/workflows/publish-go-tester-task.yml
Original file line number Diff line number Diff line change
@@ -30,7 +30,8 @@ on:
repository_dispatch:

env:
GO_VERSION: "1.21"
PROJECT_NAME: arduino-cloud-agent
GO_VERSION: "1.23"

jobs:
run-determination:
@@ -64,7 +65,7 @@ jobs:
#use the strategy instead because we still use the native build
strategy:
matrix:
os: [ubuntu-20.04, windows-2019, macos-12]
os: [ubuntu-22.04, windows-2019, macos-13]
arch: [-amd64]
include:
- os: windows-2019
@@ -119,18 +120,38 @@ jobs:
run: task go:build-win # GOARCH=amd64 by default on the runners
if: runner.os == 'Windows' && matrix.arch == '-amd64'

- name: Build the Agent for macos
- name: Build the Agent for macos amd 64
env:
MACOSX_DEPLOYMENT_TARGET: 10.15 # minimum supported version for mac
CGO_CFLAGS: -mmacosx-version-min=10.15
CGO_LDFLAGS: -mmacosx-version-min=10.15
run: task go:build
run: |
task go:build
mv ${{ env.PROJECT_NAME }} ${{ env.PROJECT_NAME}}_amd64
if: runner.os == 'macOS'

- name: Build the Agent for macos arm 64
env:
MACOSX_DEPLOYMENT_TARGET: 10.15 # minimum supported version for mac
CGO_CFLAGS: -mmacosx-version-min=10.15
CGO_LDFLAGS: -mmacosx-version-min=10.15
GOARCH: arm64
CGO_ENABLED: 1
run: |
task go:build
mv ${{ env.PROJECT_NAME }} ${{ env.PROJECT_NAME}}_arm64
if: runner.os == 'macOS'

- name: Create universal macos executable
run: |
lipo -create -output ${{ env.PROJECT_NAME }} ${{ env.PROJECT_NAME}}_amd64 ${{ env.PROJECT_NAME}}_arm64
rm ${{ env.PROJECT_NAME}}_amd64 ${{ env.PROJECT_NAME}}_arm64
if: runner.os == 'macOS'

- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: arduino-create-agent-${{ matrix.os }}${{ matrix.arch }}
name: ${{ env.PROJECT_NAME}}-${{ matrix.os }}${{ matrix.arch }}
path: |
arduino-create-agent*
${{ env.PROJECT_NAME}}*
if-no-files-found: error
Loading