From 93c65e1e2d6045d4c6536e33a03d13da1e479c2e Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Mon, 24 Nov 2025 11:46:42 +0100 Subject: [PATCH 01/27] feat: update examples to 0.5.1 (#100) * feat: update examples to 0.5.1 * fixup! feat: update examples to 0.5.1 --- Taskfile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Taskfile.yml b/Taskfile.yml index d97c88a0..10ef00c7 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -8,7 +8,7 @@ vars: GOLANGCI_LINT_VERSION: v2.4.0 GOIMPORTS_VERSION: v0.29.0 DPRINT_VERSION: 0.48.0 - EXAMPLE_VERSION: "0.5.0" + EXAMPLE_VERSION: "0.5.1" RUNNER_VERSION: "0.5.0" VERSION: # if version is not passed we hack the semver by encoding the commit as pre-release sh: echo "${VERSION:-0.0.0-$(git rev-parse --short HEAD)}" From 7e2e6ba5ed92ad7f0ffbb42aa5a323a5275ef3af Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Tue, 25 Nov 2025 16:09:07 +0100 Subject: [PATCH 02/27] fix(pkg/board): handle adb connection error (#98) * fix(pkg/board): handle adb connection error * add a warning * don't expose the function * rename errors * fixup! rename errors * fixup! don't expose the function * implement code review suggestions * nit --- pkg/board/board.go | 2 ++ pkg/board/remote/adb/adb.go | 42 ++++++++++++++++++++++++++++++++++--- 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/pkg/board/board.go b/pkg/board/board.go index 3dac4af2..b8a1ec1c 100644 --- a/pkg/board/board.go +++ b/pkg/board/board.go @@ -192,6 +192,8 @@ func FromFQBN(ctx context.Context, fqbn string) ([]Board, error) { if name, err := GetCustomName(ctx, conn); err == nil { customName = name } + } else { + slog.Warn("failed to get custom name", "serial", serial, "error", err) } boards = append(boards, Board{ diff --git a/pkg/board/remote/adb/adb.go b/pkg/board/remote/adb/adb.go index eb401305..277aaad3 100644 --- a/pkg/board/remote/adb/adb.go +++ b/pkg/board/remote/adb/adb.go @@ -46,14 +46,50 @@ type ADBConnection struct { // Ensures ADBConnection implements the RemoteConn interface at compile time. var _ remote.RemoteConn = (*ADBConnection)(nil) +var ( + // ErrNotFound is returned when the ADB device is not found. + ErrNotFound = fmt.Errorf("ADB device not found") + // ErrDeviceOffline is returned when the ADB device is not reachable. + // This usually requires a restart of the adbd server daemon on the device. + ErrDeviceOffline = fmt.Errorf("ADB device is offline") +) + +// FromSerial creates an ADBConnection from a device serial number. +// returns an error NotFoundErr if the device is not found, and DeviceOfflineErr if the device is offline. func FromSerial(serial string, adbPath string) (*ADBConnection, error) { if adbPath == "" { adbPath = FindAdbPath() } + isConnected := func(serial, adbPath string) (bool, error) { + cmd, err := paths.NewProcess(nil, adbPath, "-s", serial, "get-state") + if err != nil { + return false, fmt.Errorf("failed to create ADB command: %w", err) + } + + output, err := cmd.RunAndCaptureCombinedOutput(context.TODO()) + if err != nil { + slog.Error("unable to connect to ADB device", "error", err, "output", string(output), "serial", serial) + if bytes.Contains(output, []byte("device offline")) { + return false, ErrDeviceOffline + } else if bytes.Contains(output, []byte("not found")) { + return false, ErrNotFound + } + return false, fmt.Errorf("failed to get ADB device state: %w: %s", err, output) + } + + return string(bytes.TrimSpace(output)) == "device", nil + } + + if connected, err := isConnected(serial, adbPath); err != nil { + return nil, err + } else if !connected { + return nil, fmt.Errorf("device %s is not connected", serial) + } + return &ADBConnection{ - host: serial, adbPath: adbPath, + host: serial, }, nil } @@ -65,8 +101,8 @@ func FromHost(host string, adbPath string) (*ADBConnection, error) { if err != nil { return nil, err } - if err := cmd.Run(); err != nil { - return nil, fmt.Errorf("failed to connect to ADB host %s: %w", host, err) + if out, err := cmd.RunAndCaptureCombinedOutput(context.TODO()); err != nil { + return nil, fmt.Errorf("failed to connect to ADB host %s: %w: %s", host, err, out) } return FromSerial(host, adbPath) } From 8d4eb51dfa9c1aaecf41cd94d8e45a2e8dd15798 Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Tue, 25 Nov 2025 17:40:02 +0100 Subject: [PATCH 03/27] [API] Show compatible models in the brick list/details (#94) * remove models field from brick list * add lite model information to brickDetails endpoint * fix test * fix test end2end * refactoring * rename struct * fix tests * add unit test for brick details --- internal/api/docs/openapi.yaml | 19 +- internal/e2e/client/client.gen.go | 23 ++- internal/e2e/daemon/brick_test.go | 13 ++ internal/orchestrator/bricks/bricks.go | 11 +- internal/orchestrator/bricks/bricks_test.go | 171 ++++++++++++++++++ internal/orchestrator/bricks/types.go | 20 +- .../orchestrator/modelsindex/models_index.go | 18 +- 7 files changed, 242 insertions(+), 33 deletions(-) diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index f2b3a999..0b767d6f 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -1147,6 +1147,15 @@ components: $ref: '#/components/schemas/ErrorResponse' description: Precondition Failed schemas: + AIModel: + properties: + description: + type: string + id: + type: string + name: + type: string + type: object AIModelItem: properties: brick_ids: @@ -1314,6 +1323,11 @@ components: type: string id: type: string + models: + items: + $ref: '#/components/schemas/AIModel' + nullable: true + type: array name: type: string readme: @@ -1365,11 +1379,6 @@ components: type: string id: type: string - models: - items: - type: string - nullable: true - type: array name: type: string status: diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index f6094430..2325f388 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -1,6 +1,6 @@ // Package client provides primitives to interact with the openapi HTTP API. // -// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT. +// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.1 DO NOT EDIT. package client import ( @@ -41,6 +41,13 @@ const ( StarsDesc ListLibrariesParamsSort = "stars_desc" ) +// AIModel defines model for AIModel. +type AIModel struct { + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` +} + // AIModelItem defines model for AIModelItem. type AIModelItem struct { BrickIds *[]string `json:"brick_ids"` @@ -141,6 +148,7 @@ type BrickDetailsResult struct { CodeExamples *[]CodeExample `json:"code_examples"` Description *string `json:"description,omitempty"` Id *string `json:"id,omitempty"` + Models *[]AIModel `json:"models"` Name *string `json:"name,omitempty"` Readme *string `json:"readme,omitempty"` Status *string `json:"status,omitempty"` @@ -164,13 +172,12 @@ type BrickInstance struct { // BrickListItem defines model for BrickListItem. type BrickListItem struct { - Author *string `json:"author,omitempty"` - Category *string `json:"category,omitempty"` - Description *string `json:"description,omitempty"` - Id *string `json:"id,omitempty"` - Models *[]string `json:"models"` - Name *string `json:"name,omitempty"` - Status *string `json:"status,omitempty"` + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Status *string `json:"status,omitempty"` } // BrickListResult defines model for BrickListResult. diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index fa1cab40..488a670a 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -115,6 +115,17 @@ func TestBricksDetails(t *testing.T) { }, } + expectedModelLiteInfo := []client.AIModel{ + { + Id: f.Ptr("mobilenet-image-classification"), + Name: f.Ptr("General purpose image classification"), + Description: f.Ptr("General purpose image classification model based on MobileNetV2. This model is trained on the ImageNet dataset and can classify images into 1000 categories."), + }, + { + Id: f.Ptr("person-classification"), + Name: f.Ptr("Person classification"), + Description: f.Ptr("Person classification model based on WakeVision dataset. This model is trained to classify images into two categories: person and not-person."), + }} response, err := httpClient.GetBrickDetailsWithResponse(t.Context(), validBrickID, func(ctx context.Context, req *http.Request) error { return nil }) require.NoError(t, err) require.Equal(t, http.StatusOK, response.StatusCode(), "status code should be 200 ok") @@ -133,5 +144,7 @@ func TestBricksDetails(t *testing.T) { require.NotEmpty(t, *response.JSON200.Readme) require.NotNil(t, response.JSON200.UsedByApps, "UsedByApps should not be nil") require.Equal(t, expectedUsedByApps, *(response.JSON200.UsedByApps)) + require.NotNil(t, response.JSON200.Models, "Models should not be nil") + require.Equal(t, expectedModelLiteInfo, *(response.JSON200.Models)) }) } diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index 691249d0..bcc4f016 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -64,9 +64,6 @@ func (s *Service) List() (BrickListResult, error) { Description: brick.Description, Category: brick.Category, Status: "installed", - Models: f.Map(s.modelsIndex.GetModelsByBrick(brick.ID), func(m modelsindex.AIModel) string { - return m.ID - }), } } return res, nil @@ -193,7 +190,6 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, if err != nil { return BrickDetailsResult{}, fmt.Errorf("unable to get used by apps: %w", err) } - return BrickDetailsResult{ ID: id, Name: brick.Name, @@ -206,6 +202,13 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, ApiDocsPath: apiDocsPath, CodeExamples: codeExamples, UsedByApps: usedByApps, + Models: f.Map(s.modelsIndex.GetModelsByBrick(brick.ID), func(m modelsindex.AIModel) AIModel { + return AIModel{ + ID: m.ID, + Name: m.Name, + Description: m.ModuleDescription, + } + }), }, nil } diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index c14cebfd..8f378e20 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -16,6 +16,8 @@ package bricks import ( + "os" + "path/filepath" "testing" "github.com/arduino/go-paths-helper" @@ -24,6 +26,9 @@ import ( "github.com/arduino/arduino-app-cli/internal/orchestrator/app" "github.com/arduino/arduino-app-cli/internal/orchestrator/bricksindex" + "github.com/arduino/arduino-app-cli/internal/orchestrator/config" + "github.com/arduino/arduino-app-cli/internal/orchestrator/modelsindex" + "github.com/arduino/arduino-app-cli/internal/store" ) func TestBrickCreate(t *testing.T) { @@ -318,3 +323,169 @@ func TestGetBrickInstanceVariableDetails(t *testing.T) { }) } } + +func TestBricksDetails(t *testing.T) { + tmpDir := t.TempDir() + appsDir := filepath.Join(tmpDir, "ArduinoApps") + dataDir := filepath.Join(tmpDir, "Data") + assetsDir := filepath.Join(dataDir, "assets") + + require.NoError(t, os.MkdirAll(appsDir, 0755)) + require.NoError(t, os.MkdirAll(assetsDir, 0755)) + + t.Setenv("ARDUINO_APP_CLI__APPS_DIR", appsDir) + t.Setenv("ARDUINO_APP_CLI__DATA_DIR", dataDir) + + cfg, err := config.NewFromEnv() + require.NoError(t, err) + + for _, brick := range []string{"object_detection", "weather_forecast", "one_model_brick"} { + createFakeBrickAssets(t, assetsDir, brick) + } + createFakeApp(t, appsDir) + + bIndex := &bricksindex.BricksIndex{ + Bricks: []bricksindex.Brick{ + { + ID: "arduino:object_detection", + Name: "Object Detection", + Category: "video", + ModelName: "yolox-object-detection", // Default model + Variables: []bricksindex.BrickVariable{ + {Name: "EI_OBJ_DETECTION_MODEL", DefaultValue: "default_path", Description: "path to the model file"}, + {Name: "CUSTOM_MODEL_PATH", DefaultValue: "/home/arduino/.arduino-bricks/ei-models", Description: "path to the custom model directory"}, + }, + }, + { + ID: "arduino:weather_forecast", + Name: "Weather Forecast", + Category: "miscellaneous", + ModelName: "", + }, + { + ID: "arduino:one_model_brick", + Name: "one model brick", + Category: "video", + ModelName: "face-detection", // Default model + Variables: []bricksindex.BrickVariable{}, + }, + }, + } + mIndex := &modelsindex.ModelsIndex{ + Models: []modelsindex.AIModel{ + + { + ID: "yolox-object-detection", + Name: "General purpose object detection - YoloX", + ModuleDescription: "General purpose object detection...", + Bricks: []string{"arduino:object_detection", "arduino:video_object_detection"}, + }, + { + ID: "face-detection", + Name: "Lightweight-Face-Detection", + Bricks: []string{"arduino:object_detection", "arduino:video_object_detection", "arduino:one_model_brick"}, + }, + }} + + svc := &Service{ + bricksIndex: bIndex, + modelsIndex: mIndex, + staticStore: store.NewStaticStore(assetsDir), + } + idProvider := app.NewAppIDProvider(cfg) + + t.Run("Brick Not Found", func(t *testing.T) { + res, err := svc.BricksDetails("arduino:non_existing", idProvider, cfg) + require.Error(t, err) + require.Equal(t, ErrBrickNotFound, err) + require.Empty(t, res.ID) + }) + + t.Run("Success - Full Details - multiple models", func(t *testing.T) { + res, err := svc.BricksDetails("arduino:object_detection", idProvider, cfg) + require.NoError(t, err) + + require.Equal(t, "arduino:object_detection", res.ID) + require.Equal(t, "Object Detection", res.Name) + require.Equal(t, "Arduino", res.Author) + require.Equal(t, "installed", res.Status) + require.Contains(t, res.Variables, "EI_OBJ_DETECTION_MODEL") + require.Equal(t, "default_path", res.Variables["EI_OBJ_DETECTION_MODEL"].DefaultValue) + require.Equal(t, "# Documentation", res.Readme) + require.Contains(t, res.ApiDocsPath, filepath.Join("arduino", "app_bricks", "object_detection", "API.md")) + require.Len(t, res.CodeExamples, 1) + require.Contains(t, res.CodeExamples[0].Path, "blink.ino") + require.Len(t, res.UsedByApps, 1) + require.Equal(t, "My App", res.UsedByApps[0].Name) + require.NotEmpty(t, res.UsedByApps[0].ID) + require.Len(t, res.Models, 2) + require.Equal(t, "yolox-object-detection", res.Models[0].ID) + require.Equal(t, "General purpose object detection - YoloX", res.Models[0].Name) + require.Equal(t, "General purpose object detection...", res.Models[0].Description) + require.Equal(t, "face-detection", res.Models[1].ID) + require.Equal(t, "Lightweight-Face-Detection", res.Models[1].Name) + require.Equal(t, "", res.Models[1].Description) + }) + + t.Run("Success - Full Details - no models", func(t *testing.T) { + res, err := svc.BricksDetails("arduino:weather_forecast", idProvider, cfg) + require.NoError(t, err) + + require.Equal(t, "arduino:weather_forecast", res.ID) + require.Equal(t, "Weather Forecast", res.Name) + require.Equal(t, "Arduino", res.Author) + require.Equal(t, "installed", res.Status) + require.Empty(t, res.Variables) + require.Equal(t, "# Documentation", res.Readme) + require.Contains(t, res.ApiDocsPath, filepath.Join("arduino", "app_bricks", "weather_forecast", "API.md")) + require.Len(t, res.CodeExamples, 1) + require.Contains(t, res.CodeExamples[0].Path, "blink.ino") + require.Len(t, res.UsedByApps, 1) + require.Equal(t, "My App", res.UsedByApps[0].Name) + require.NotEmpty(t, res.UsedByApps[0].ID) + require.Len(t, res.Models, 0) + }) + + t.Run("Success - Full Details - one model", func(t *testing.T) { + res, err := svc.BricksDetails("arduino:one_model_brick", idProvider, cfg) + require.NoError(t, err) + + require.Equal(t, "arduino:one_model_brick", res.ID) + require.Equal(t, "one model brick", res.Name) + require.Len(t, res.Models, 1) + require.Equal(t, "face-detection", res.Models[0].ID) + require.Equal(t, "Lightweight-Face-Detection", res.Models[0].Name) + require.Equal(t, "", res.Models[0].Description) + }) +} + +func createFakeBrickAssets(t *testing.T, assetsDir, brick string) { + t.Helper() + + brickDocDir := filepath.Join(assetsDir, "docs", "arduino", brick) + require.NoError(t, os.MkdirAll(brickDocDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(brickDocDir, "README.md"), + []byte("# Documentation"), 0600)) + + brickExDir := filepath.Join(assetsDir, "examples", "arduino", brick) + require.NoError(t, os.MkdirAll(brickExDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(brickExDir, "blink.ino"), + []byte("void setup() {}"), 0600)) +} + +func createFakeApp(t *testing.T, appsDir string) { + t.Helper() + myAppDir := filepath.Join(appsDir, "MyApp") + require.NoError(t, os.MkdirAll(myAppDir, 0755)) + + appYamlContent := ` +name: My App +bricks: + - arduino:object_detection: + - arduino:weather_forecast: +` + require.NoError(t, os.WriteFile(filepath.Join(myAppDir, "app.yaml"), []byte(appYamlContent), 0600)) + pythonDir := filepath.Join(myAppDir, "python") + require.NoError(t, os.MkdirAll(pythonDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(pythonDir, "main.py"), []byte("print('hello')"), 0600)) +} diff --git a/internal/orchestrator/bricks/types.go b/internal/orchestrator/bricks/types.go index 868c563a..f27b0652 100644 --- a/internal/orchestrator/bricks/types.go +++ b/internal/orchestrator/bricks/types.go @@ -20,13 +20,12 @@ type BrickListResult struct { } type BrickListItem struct { - ID string `json:"id"` - Name string `json:"name"` - Author string `json:"author"` - Description string `json:"description"` - Category string `json:"category"` - Status string `json:"status"` - Models []string `json:"models"` + ID string `json:"id"` + Name string `json:"name"` + Author string `json:"author"` + Description string `json:"description"` + Category string `json:"category"` + Status string `json:"status"` } type AppBrickInstancesResult struct { @@ -78,4 +77,11 @@ type BrickDetailsResult struct { ApiDocsPath string `json:"api_docs_path"` CodeExamples []CodeExample `json:"code_examples"` UsedByApps []AppReference `json:"used_by_apps"` + Models []AIModel `json:"models"` +} + +type AIModel struct { + ID string `json:"id"` + Name string `json:"name"` + Description string `json:"description"` } diff --git a/internal/orchestrator/modelsindex/models_index.go b/internal/orchestrator/modelsindex/models_index.go index e18797f1..c9a47347 100644 --- a/internal/orchestrator/modelsindex/models_index.go +++ b/internal/orchestrator/modelsindex/models_index.go @@ -54,26 +54,26 @@ type AIModel struct { } type ModelsIndex struct { - models []AIModel + Models []AIModel } func (m *ModelsIndex) GetModels() []AIModel { - return m.models + return m.Models } func (m *ModelsIndex) GetModelByID(id string) (*AIModel, bool) { - idx := slices.IndexFunc(m.models, func(v AIModel) bool { return v.ID == id }) + idx := slices.IndexFunc(m.Models, func(v AIModel) bool { return v.ID == id }) if idx == -1 { return nil, false } - return &m.models[idx], true + return &m.Models[idx], true } func (m *ModelsIndex) GetModelsByBrick(brick string) []AIModel { var matches []AIModel - for i := range m.models { - if len(m.models[i].Bricks) > 0 && slices.Contains(m.models[i].Bricks, brick) { - matches = append(matches, m.models[i]) + for i := range m.Models { + if len(m.Models[i].Bricks) > 0 && slices.Contains(m.Models[i].Bricks, brick) { + matches = append(matches, m.Models[i]) } } if len(matches) == 0 { @@ -84,7 +84,7 @@ func (m *ModelsIndex) GetModelsByBrick(brick string) []AIModel { func (m *ModelsIndex) GetModelsByBricks(bricks []string) []AIModel { var matchingModels []AIModel - for _, model := range m.models { + for _, model := range m.Models { for _, modelBrick := range model.Bricks { if slices.Contains(bricks, modelBrick) { matchingModels = append(matchingModels, model) @@ -113,5 +113,5 @@ func GenerateModelsIndexFromFile(dir *paths.Path) (*ModelsIndex, error) { models[i] = model } } - return &ModelsIndex{models: models}, nil + return &ModelsIndex{Models: models}, nil } From 3d8b8ea911db31b198c3b49c61d02a1f8e3a4d9b Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Wed, 26 Nov 2025 10:47:12 +0100 Subject: [PATCH 04/27] [API] Add compatible models in brickinstance details (#99) * add compatible models in brickinstance details * fix test e2e * fix test e2e * add unit tests * fix tests * remove omitempty from field compatible_modules * update field name for brick details endpoint --- internal/api/docs/openapi.yaml | 15 +- internal/e2e/client/client.gen.go | 39 ++-- internal/e2e/daemon/brick_test.go | 4 +- ...bricks_test.go => bricks_instance_test.go} | 27 ++- internal/orchestrator/bricks/bricks.go | 9 +- internal/orchestrator/bricks/bricks_test.go | 174 ++++++++++++++++-- internal/orchestrator/bricks/types.go | 52 +++--- 7 files changed, 254 insertions(+), 66 deletions(-) rename internal/e2e/daemon/{instance_bricks_test.go => bricks_instance_test.go} (93%) diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index 0b767d6f..f50969e6 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -1319,15 +1319,15 @@ components: $ref: '#/components/schemas/CodeExample' nullable: true type: array - description: - type: string - id: - type: string - models: + compatible_models: items: $ref: '#/components/schemas/AIModel' nullable: true type: array + description: + type: string + id: + type: string name: type: string readme: @@ -1350,6 +1350,11 @@ components: type: string category: type: string + compatible_models: + items: + $ref: '#/components/schemas/AIModel' + nullable: true + type: array config_variables: items: $ref: '#/components/schemas/BrickConfigVariable' diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index 2325f388..1f3e6bbd 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -142,29 +142,30 @@ type BrickCreateUpdateRequest struct { // BrickDetailsResult defines model for BrickDetailsResult. type BrickDetailsResult struct { - ApiDocsPath *string `json:"api_docs_path,omitempty"` - Author *string `json:"author,omitempty"` - Category *string `json:"category,omitempty"` - CodeExamples *[]CodeExample `json:"code_examples"` - Description *string `json:"description,omitempty"` - Id *string `json:"id,omitempty"` - Models *[]AIModel `json:"models"` - Name *string `json:"name,omitempty"` - Readme *string `json:"readme,omitempty"` - Status *string `json:"status,omitempty"` - UsedByApps *[]AppReference `json:"used_by_apps"` - Variables *map[string]BrickVariable `json:"variables,omitempty"` + ApiDocsPath *string `json:"api_docs_path,omitempty"` + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + CodeExamples *[]CodeExample `json:"code_examples"` + CompatibleModels *[]AIModel `json:"compatible_models"` + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Readme *string `json:"readme,omitempty"` + Status *string `json:"status,omitempty"` + UsedByApps *[]AppReference `json:"used_by_apps"` + Variables *map[string]BrickVariable `json:"variables,omitempty"` } // BrickInstance defines model for BrickInstance. type BrickInstance struct { - Author *string `json:"author,omitempty"` - Category *string `json:"category,omitempty"` - ConfigVariables *[]BrickConfigVariable `json:"config_variables,omitempty"` - Id *string `json:"id,omitempty"` - Model *string `json:"model,omitempty"` - Name *string `json:"name,omitempty"` - Status *string `json:"status,omitempty"` + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + CompatibleModels *[]AIModel `json:"compatible_models"` + ConfigVariables *[]BrickConfigVariable `json:"config_variables,omitempty"` + Id *string `json:"id,omitempty"` + Model *string `json:"model,omitempty"` + Name *string `json:"name,omitempty"` + Status *string `json:"status,omitempty"` // Variables Deprecated: use config_variables instead. This field is kept for backward compatibility. Variables *map[string]string `json:"variables,omitempty"` diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index 488a670a..b5f2b6d8 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -144,7 +144,7 @@ func TestBricksDetails(t *testing.T) { require.NotEmpty(t, *response.JSON200.Readme) require.NotNil(t, response.JSON200.UsedByApps, "UsedByApps should not be nil") require.Equal(t, expectedUsedByApps, *(response.JSON200.UsedByApps)) - require.NotNil(t, response.JSON200.Models, "Models should not be nil") - require.Equal(t, expectedModelLiteInfo, *(response.JSON200.Models)) + require.NotNil(t, response.JSON200.CompatibleModels, "Models should not be nil") + require.Equal(t, expectedModelLiteInfo, *(response.JSON200.CompatibleModels)) }) } diff --git a/internal/e2e/daemon/instance_bricks_test.go b/internal/e2e/daemon/bricks_instance_test.go similarity index 93% rename from internal/e2e/daemon/instance_bricks_test.go rename to internal/e2e/daemon/bricks_instance_test.go index c210a9e6..0a6375bc 100644 --- a/internal/e2e/daemon/instance_bricks_test.go +++ b/internal/e2e/daemon/bricks_instance_test.go @@ -51,6 +51,18 @@ var ( Value: f.Ptr("/models/ootb/ei/mobilenet-v2-224px.eim"), }, } + + expectedModelInfo = []client.AIModel{ + { + Id: f.Ptr("mobilenet-image-classification"), + Name: f.Ptr("General purpose image classification"), + Description: f.Ptr("General purpose image classification model based on MobileNetV2. This model is trained on the ImageNet dataset and can classify images into 1000 categories."), + }, + { + Id: f.Ptr("person-classification"), + Name: f.Ptr("Person classification"), + Description: f.Ptr("Person classification model based on WakeVision dataset. This model is trained to classify images into two categories: person and not-person."), + }} ) func setupTestApp(t *testing.T) (*client.CreateAppResp, *client.ClientWithResponses) { @@ -78,7 +90,6 @@ func setupTestApp(t *testing.T) (*client.CreateAppResp, *client.ClientWithRespon ) require.NoError(t, err) require.Equal(t, http.StatusOK, resp.StatusCode()) - return createResp, httpClient } @@ -135,6 +146,20 @@ func TestGetAppBrickInstanceById(t *testing.T) { require.NotEmpty(t, brickInstance.JSON200) require.Equal(t, ImageClassifactionBrickID, *brickInstance.JSON200.Id) require.Equal(t, expectedConfigVariables, (*brickInstance.JSON200.ConfigVariables)) + require.NotNil(t, brickInstance.JSON200.CompatibleModels) + require.Equal(t, expectedModelInfo, *(brickInstance.JSON200.CompatibleModels)) + }) + t.Run("GetAppBrickInstanceByBrickIDWithCompatibleModels_Success", func(t *testing.T) { + brickInstance, err := httpClient.GetAppBrickInstanceByBrickIDWithResponse( + t.Context(), + *createResp.JSON201.Id, + ImageClassifactionBrickID, + func(ctx context.Context, req *http.Request) error { return nil }) + require.NoError(t, err) + require.NotEmpty(t, brickInstance.JSON200) + require.Equal(t, ImageClassifactionBrickID, *brickInstance.JSON200.Id) + require.NotNil(t, brickInstance.JSON200.CompatibleModels) + require.Equal(t, expectedModelInfo, *(brickInstance.JSON200.CompatibleModels)) }) t.Run("GetAppBrickInstanceByBrickID_InvalidAppID_Fails", func(t *testing.T) { diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index bcc4f016..3b722b3d 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -121,6 +121,13 @@ func (s *Service) AppBrickInstanceDetails(a *app.ArduinoApp, brickID string) (Br Variables: variables, ConfigVariables: configVariables, ModelID: modelID, + CompatibleModels: f.Map(s.modelsIndex.GetModelsByBrick(brick.ID), func(m modelsindex.AIModel) AIModel { + return AIModel{ + ID: m.ID, + Name: m.Name, + Description: m.ModuleDescription, + } + }), }, nil } @@ -202,7 +209,7 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, ApiDocsPath: apiDocsPath, CodeExamples: codeExamples, UsedByApps: usedByApps, - Models: f.Map(s.modelsIndex.GetModelsByBrick(brick.ID), func(m modelsindex.AIModel) AIModel { + CompatibleModels: f.Map(s.modelsIndex.GetModelsByBrick(brick.ID), func(m modelsindex.AIModel) AIModel { return AIModel{ ID: m.ID, Name: m.Name, diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index 8f378e20..f9804b25 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -418,13 +418,13 @@ func TestBricksDetails(t *testing.T) { require.Len(t, res.UsedByApps, 1) require.Equal(t, "My App", res.UsedByApps[0].Name) require.NotEmpty(t, res.UsedByApps[0].ID) - require.Len(t, res.Models, 2) - require.Equal(t, "yolox-object-detection", res.Models[0].ID) - require.Equal(t, "General purpose object detection - YoloX", res.Models[0].Name) - require.Equal(t, "General purpose object detection...", res.Models[0].Description) - require.Equal(t, "face-detection", res.Models[1].ID) - require.Equal(t, "Lightweight-Face-Detection", res.Models[1].Name) - require.Equal(t, "", res.Models[1].Description) + require.Len(t, res.CompatibleModels, 2) + require.Equal(t, "yolox-object-detection", res.CompatibleModels[0].ID) + require.Equal(t, "General purpose object detection - YoloX", res.CompatibleModels[0].Name) + require.Equal(t, "General purpose object detection...", res.CompatibleModels[0].Description) + require.Equal(t, "face-detection", res.CompatibleModels[1].ID) + require.Equal(t, "Lightweight-Face-Detection", res.CompatibleModels[1].Name) + require.Equal(t, "", res.CompatibleModels[1].Description) }) t.Run("Success - Full Details - no models", func(t *testing.T) { @@ -443,7 +443,7 @@ func TestBricksDetails(t *testing.T) { require.Len(t, res.UsedByApps, 1) require.Equal(t, "My App", res.UsedByApps[0].Name) require.NotEmpty(t, res.UsedByApps[0].ID) - require.Len(t, res.Models, 0) + require.Len(t, res.CompatibleModels, 0) }) t.Run("Success - Full Details - one model", func(t *testing.T) { @@ -452,10 +452,10 @@ func TestBricksDetails(t *testing.T) { require.Equal(t, "arduino:one_model_brick", res.ID) require.Equal(t, "one model brick", res.Name) - require.Len(t, res.Models, 1) - require.Equal(t, "face-detection", res.Models[0].ID) - require.Equal(t, "Lightweight-Face-Detection", res.Models[0].Name) - require.Equal(t, "", res.Models[0].Description) + require.Len(t, res.CompatibleModels, 1) + require.Equal(t, "face-detection", res.CompatibleModels[0].ID) + require.Equal(t, "Lightweight-Face-Detection", res.CompatibleModels[0].Name) + require.Equal(t, "", res.CompatibleModels[0].Description) }) } @@ -489,3 +489,153 @@ bricks: require.NoError(t, os.MkdirAll(pythonDir, 0755)) require.NoError(t, os.WriteFile(filepath.Join(pythonDir, "main.py"), []byte("print('hello')"), 0600)) } + +func TestAppBrickInstanceModelsDetails(t *testing.T) { + + bIndex := &bricksindex.BricksIndex{ + Bricks: []bricksindex.Brick{ + { + ID: "arduino:object_detection", + Name: "Object Detection", + Category: "video", + ModelName: "yolox-object-detection", // Default model + Variables: []bricksindex.BrickVariable{ + {Name: "EI_OBJ_DETECTION_MODEL", DefaultValue: "default_path", Description: "path to the model file"}, + {Name: "CUSTOM_MODEL_PATH", DefaultValue: "/home/arduino/.arduino-bricks/ei-models", Description: "path to the custom model directory"}, + }, + }, + { + ID: "arduino:weather_forecast", + Name: "Weather Forecast", + Category: "miscellaneous", + ModelName: "", + }, + }, + } + + mIndex := &modelsindex.ModelsIndex{ + Models: []modelsindex.AIModel{ + + { + ID: "yolox-object-detection", + Name: "General purpose object detection - YoloX", + ModuleDescription: "General purpose object detection...", + Bricks: []string{"arduino:object_detection", "arduino:video_object_detection"}, + }, + { + ID: "face-detection", + Name: "Lightweight-Face-Detection", + Bricks: []string{"arduino:object_detection", "arduino:video_object_detection"}, + }, + }} + + svc := &Service{ + bricksIndex: bIndex, + modelsIndex: mIndex, + } + + tests := []struct { + name string + app *app.ArduinoApp + brickID string + expectedError string + validate func(*testing.T, BrickInstance) + }{ + { + name: "Brick not found in global Index", + brickID: "arduino:non_existent_brick", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{Bricks: []app.Brick{}}, + }, + expectedError: "brick not found", + }, + { + name: "Brick found in Index but not added to App", + brickID: "arduino:object_detection", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + {ID: "arduino:weather_forecast"}, + }, + }, + }, + expectedError: "brick arduino:object_detection not added in the app", + }, + { + name: "Success - Standard Brick without Model", + brickID: "arduino:weather_forecast", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + {ID: "arduino:weather_forecast"}, + }, + }, + }, + validate: func(t *testing.T, res BrickInstance) { + require.Equal(t, "arduino:weather_forecast", res.ID) + require.Equal(t, "Weather Forecast", res.Name) + require.Equal(t, "installed", res.Status) + require.Empty(t, res.ModelID) + require.Empty(t, res.CompatibleModels) + }, + }, + { + name: "Success - Brick with Default Model", + brickID: "arduino:object_detection", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + { + ID: "arduino:object_detection", + }, + }, + }, + }, + validate: func(t *testing.T, res BrickInstance) { + require.Equal(t, "arduino:object_detection", res.ID) + require.Equal(t, "yolox-object-detection", res.ModelID) + require.Len(t, res.CompatibleModels, 2) + require.Equal(t, "yolox-object-detection", res.CompatibleModels[0].ID) + require.Equal(t, "face-detection", res.CompatibleModels[1].ID) + }, + }, + { + name: "Success - Brick with Overridden Model in App", + brickID: "arduino:object_detection", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + { + ID: "arduino:object_detection", + Model: "face-detection", + }, + }, + }, + }, + validate: func(t *testing.T, res BrickInstance) { + require.Equal(t, "arduino:object_detection", res.ID) + require.Equal(t, "face-detection", res.ModelID) + require.Len(t, res.CompatibleModels, 2) + require.Equal(t, "yolox-object-detection", res.CompatibleModels[0].ID) + require.Equal(t, "face-detection", res.CompatibleModels[1].ID) + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + result, err := svc.AppBrickInstanceDetails(tt.app, tt.brickID) + + if tt.expectedError != "" { + require.Error(t, err) + require.Equal(t, err.Error(), tt.expectedError) + return + } + + require.NoError(t, err) + if tt.validate != nil { + tt.validate(t, result) + } + }) + } +} diff --git a/internal/orchestrator/bricks/types.go b/internal/orchestrator/bricks/types.go index f27b0652..782ec2f2 100644 --- a/internal/orchestrator/bricks/types.go +++ b/internal/orchestrator/bricks/types.go @@ -33,16 +33,22 @@ type AppBrickInstancesResult struct { } type BrickInstance struct { - ID string `json:"id"` - Name string `json:"name"` - Author string `json:"author"` - Category string `json:"category"` - Status string `json:"status"` - Variables map[string]string `json:"variables,omitempty" description:"Deprecated: use config_variables instead. This field is kept for backward compatibility."` - ConfigVariables []BrickConfigVariable `json:"config_variables,omitempty"` - ModelID string `json:"model,omitempty"` + ID string `json:"id"` + Name string `json:"name"` + Author string `json:"author"` + Category string `json:"category"` + Status string `json:"status"` + Variables map[string]string `json:"variables,omitempty" description:"Deprecated: use config_variables instead. This field is kept for backward compatibility."` + ConfigVariables []BrickConfigVariable `json:"config_variables,omitempty"` + ModelID string `json:"model,omitempty"` + CompatibleModels []AIModel `json:"compatible_models"` } +type AIModel struct { + ID string `json:"id"` + Name string `json:"name"` + Description string `json:"description"` +} type BrickConfigVariable struct { Name string `json:"name"` Value string `json:"value"` @@ -66,22 +72,16 @@ type AppReference struct { } type BrickDetailsResult struct { - ID string `json:"id"` - Name string `json:"name"` - Author string `json:"author"` - Description string `json:"description"` - Category string `json:"category"` - Status string `json:"status"` - Variables map[string]BrickVariable `json:"variables,omitempty"` - Readme string `json:"readme"` - ApiDocsPath string `json:"api_docs_path"` - CodeExamples []CodeExample `json:"code_examples"` - UsedByApps []AppReference `json:"used_by_apps"` - Models []AIModel `json:"models"` -} - -type AIModel struct { - ID string `json:"id"` - Name string `json:"name"` - Description string `json:"description"` + ID string `json:"id"` + Name string `json:"name"` + Author string `json:"author"` + Description string `json:"description"` + Category string `json:"category"` + Status string `json:"status"` + Variables map[string]BrickVariable `json:"variables,omitempty"` + Readme string `json:"readme"` + ApiDocsPath string `json:"api_docs_path"` + CodeExamples []CodeExample `json:"code_examples"` + UsedByApps []AppReference `json:"used_by_apps"` + CompatibleModels []AIModel `json:"compatible_models"` } From 1861a8fdacc8e347e79d923af123618ae5e702c1 Mon Sep 17 00:00:00 2001 From: Davide Date: Wed, 26 Nov 2025 12:12:04 +0100 Subject: [PATCH 05/27] refact: use the `Load` function uniformely in all the yaml loaders (#107) * feat(tests): add bricks index test and YAML data for bricks * refactor: rename index generation functions to Load for consistency * use paths.path as argument in app.load * use dir instead of path in app.Load --------- Co-authored-by: Luca Rinaldi --- cmd/arduino-app-cli/app/app.go | 2 +- .../internal/servicelocator/servicelocator.go | 4 +- internal/api/handlers/app_delete.go | 2 +- internal/api/handlers/app_details.go | 4 +- internal/api/handlers/app_logs.go | 2 +- internal/api/handlers/app_ports.go | 2 +- internal/api/handlers/app_sketch_libs.go | 6 +- internal/api/handlers/app_start.go | 2 +- internal/api/handlers/app_stop.go | 2 +- internal/api/handlers/bricks.go | 10 +- internal/e2e/daemon/brick_test.go | 2 +- internal/orchestrator/app/app.go | 21 +- internal/orchestrator/app/app_test.go | 19 +- internal/orchestrator/app/parser_test.go | 2 +- internal/orchestrator/app_status.go | 2 +- internal/orchestrator/bricks/bricks.go | 2 +- internal/orchestrator/bricks/bricks_test.go | 48 +-- .../orchestrator/bricksindex/bricks_index.go | 2 +- .../bricksindex/bricks_index_test.go | 296 +++++++++--------- .../bricksindex/testdata/bricks-list.yaml | 133 ++++++++ internal/orchestrator/helpers.go | 2 +- .../orchestrator/modelsindex/models_index.go | 2 +- .../modelsindex/modelsindex_test.go | 4 +- internal/orchestrator/orchestrator.go | 4 +- internal/orchestrator/orchestrator_test.go | 30 +- internal/orchestrator/provision_test.go | 4 +- 26 files changed, 382 insertions(+), 227 deletions(-) create mode 100644 internal/orchestrator/bricksindex/testdata/bricks-list.yaml diff --git a/cmd/arduino-app-cli/app/app.go b/cmd/arduino-app-cli/app/app.go index d8aae2fb..fca105b8 100644 --- a/cmd/arduino-app-cli/app/app.go +++ b/cmd/arduino-app-cli/app/app.go @@ -50,5 +50,5 @@ func Load(idOrPath string) (app.ArduinoApp, error) { return app.ArduinoApp{}, fmt.Errorf("invalid app path: %s", idOrPath) } - return app.Load(id.ToPath().String()) + return app.Load(id.ToPath()) } diff --git a/cmd/arduino-app-cli/internal/servicelocator/servicelocator.go b/cmd/arduino-app-cli/internal/servicelocator/servicelocator.go index edcd721d..22cbc58b 100644 --- a/cmd/arduino-app-cli/internal/servicelocator/servicelocator.go +++ b/cmd/arduino-app-cli/internal/servicelocator/servicelocator.go @@ -42,11 +42,11 @@ func Init(cfg config.Configuration) { var ( GetBricksIndex = sync.OnceValue(func() *bricksindex.BricksIndex { - return f.Must(bricksindex.GenerateBricksIndexFromFile(GetStaticStore().GetAssetsFolder())) + return f.Must(bricksindex.Load(GetStaticStore().GetAssetsFolder())) }) GetModelsIndex = sync.OnceValue(func() *modelsindex.ModelsIndex { - return f.Must(modelsindex.GenerateModelsIndexFromFile(GetStaticStore().GetAssetsFolder())) + return f.Must(modelsindex.Load(GetStaticStore().GetAssetsFolder())) }) GetProvisioner = sync.OnceValue(func() *orchestrator.Provision { diff --git a/internal/api/handlers/app_delete.go b/internal/api/handlers/app_delete.go index 6503d124..99d72cf1 100644 --- a/internal/api/handlers/app_delete.go +++ b/internal/api/handlers/app_delete.go @@ -42,7 +42,7 @@ func HandleAppDelete( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/app_details.go b/internal/api/handlers/app_details.go index 72c74bdd..1795ae42 100644 --- a/internal/api/handlers/app_details.go +++ b/internal/api/handlers/app_details.go @@ -45,7 +45,7 @@ func HandleAppDetails( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) @@ -81,7 +81,7 @@ func HandleAppDetailsEdits( render.EncodeResponse(w, http.StatusPreconditionFailed, models.ErrorResponse{Details: "invalid id"}) return } - appToEdit, err := app.Load(id.ToPath().String()) + appToEdit, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/app_logs.go b/internal/api/handlers/app_logs.go index 2cf44c87..0fece050 100644 --- a/internal/api/handlers/app_logs.go +++ b/internal/api/handlers/app_logs.go @@ -43,7 +43,7 @@ func HandleAppLogs( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/app_ports.go b/internal/api/handlers/app_ports.go index 8671cd7e..c405c3a3 100644 --- a/internal/api/handlers/app_ports.go +++ b/internal/api/handlers/app_ports.go @@ -47,7 +47,7 @@ func HandleAppPorts( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/app_sketch_libs.go b/internal/api/handlers/app_sketch_libs.go index 43969572..7e280a2f 100644 --- a/internal/api/handlers/app_sketch_libs.go +++ b/internal/api/handlers/app_sketch_libs.go @@ -36,7 +36,7 @@ func HandleSketchAddLibrary(idProvider *app.IDProvider) http.HandlerFunc { render.EncodeResponse(w, http.StatusBadRequest, models.ErrorResponse{Details: "cannot alter examples"}) return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) // Get query param addDeps (default false) addDeps, _ := strconv.ParseBool(r.URL.Query().Get("add_deps")) @@ -78,7 +78,7 @@ func HandleSketchRemoveLibrary(idProvider *app.IDProvider) http.HandlerFunc { render.EncodeResponse(w, http.StatusBadRequest, models.ErrorResponse{Details: "cannot alter examples"}) return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) return @@ -114,7 +114,7 @@ func HandleSketchListLibraries(idProvider *app.IDProvider) http.HandlerFunc { render.EncodeResponse(w, http.StatusPreconditionFailed, models.ErrorResponse{Details: "invalid id"}) return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) return diff --git a/internal/api/handlers/app_start.go b/internal/api/handlers/app_start.go index 0293aff0..bfd8a034 100644 --- a/internal/api/handlers/app_start.go +++ b/internal/api/handlers/app_start.go @@ -47,7 +47,7 @@ func HandleAppStart( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/app_stop.go b/internal/api/handlers/app_stop.go index f5a9979c..a013ef9e 100644 --- a/internal/api/handlers/app_stop.go +++ b/internal/api/handlers/app_stop.go @@ -38,7 +38,7 @@ func HandleAppStop( return } - app, err := app.Load(id.ToPath().String()) + app, err := app.Load(id.ToPath()) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", id.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/api/handlers/bricks.go b/internal/api/handlers/bricks.go index 9ac76632..f3d22c6d 100644 --- a/internal/api/handlers/bricks.go +++ b/internal/api/handlers/bricks.go @@ -55,7 +55,7 @@ func HandleAppBrickInstancesList( } appPath := appId.ToPath() - app, err := app.Load(appPath.String()) + app, err := app.Load(appPath) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", appId.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) @@ -85,7 +85,7 @@ func HandleAppBrickInstanceDetails( } appPath := appId.ToPath() - app, err := app.Load(appPath.String()) + app, err := app.Load(appPath) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", appId.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) @@ -120,7 +120,7 @@ func HandleBrickCreate( } appPath := appId.ToPath() - app, err := app.Load(appPath.String()) + app, err := app.Load(appPath) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", appId.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) @@ -190,7 +190,7 @@ func HandleBrickUpdates( } appPath := appId.ToPath() - app, err := app.Load(appPath.String()) + app, err := app.Load(appPath) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", appId.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) @@ -236,7 +236,7 @@ func HandleBrickDelete( } appPath := appId.ToPath() - app, err := app.Load(appPath.String()) + app, err := app.Load(appPath) if err != nil { slog.Error("Unable to parse the app.yaml", slog.String("error", err.Error()), slog.String("path", appId.String())) render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to find the app"}) diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index b5f2b6d8..02736884 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -72,7 +72,7 @@ func TestBricksList(t *testing.T) { require.NoError(t, err) staticStore := store.NewStaticStore(paths.New("testdata", "assets", cfg.RunnerVersion).String()) - brickIndex, err := bricksindex.GenerateBricksIndexFromFile(staticStore.GetAssetsFolder()) + brickIndex, err := bricksindex.Load(staticStore.GetAssetsFolder()) require.NoError(t, err) // Compare the response with the bricks index diff --git a/internal/orchestrator/app/app.go b/internal/orchestrator/app/app.go index c40c9009..813ca64c 100644 --- a/internal/orchestrator/app/app.go +++ b/internal/orchestrator/app/app.go @@ -37,26 +37,25 @@ type ArduinoApp struct { // Load creates an App instance by reading all the files composing an app and grouping them // by file type. -func Load(appPath string) (ArduinoApp, error) { - path := paths.New(appPath) - if path == nil { +func Load(appPath *paths.Path) (ArduinoApp, error) { + if appPath == nil { return ArduinoApp{}, errors.New("empty app path") } - exist, err := path.IsDirCheck() + exist, err := appPath.IsDirCheck() if err != nil { return ArduinoApp{}, fmt.Errorf("app path is not valid: %w", err) } if !exist { - return ArduinoApp{}, fmt.Errorf("app path must be a directory: %s", path) + return ArduinoApp{}, fmt.Errorf("app path must be a directory: %s", appPath) } - path, err = path.Abs() + appPath, err = appPath.Abs() if err != nil { return ArduinoApp{}, fmt.Errorf("cannot get absolute path for app: %w", err) } app := ArduinoApp{ - FullPath: path, + FullPath: appPath, Descriptor: AppDescriptor{}, } @@ -71,13 +70,13 @@ func Load(appPath string) (ArduinoApp, error) { return ArduinoApp{}, errors.New("descriptor app.yaml file missing from app") } - if path.Join("python", "main.py").Exist() { - app.MainPythonFile = path.Join("python", "main.py") + if appPath.Join("python", "main.py").Exist() { + app.MainPythonFile = appPath.Join("python", "main.py") } - if path.Join("sketch", "sketch.ino").Exist() { + if appPath.Join("sketch", "sketch.ino").Exist() { // TODO: check sketch casing? - app.MainSketchPath = path.Join("sketch") + app.MainSketchPath = appPath.Join("sketch") } if app.MainPythonFile == nil && app.MainSketchPath == nil { diff --git a/internal/orchestrator/app/app_test.go b/internal/orchestrator/app/app_test.go index 47e3f53f..db9cc048 100644 --- a/internal/orchestrator/app/app_test.go +++ b/internal/orchestrator/app/app_test.go @@ -25,27 +25,34 @@ import ( ) func TestLoad(t *testing.T) { + t.Run("it fails if the app path is nil", func(t *testing.T) { + app, err := Load(nil) + assert.Error(t, err) + assert.Empty(t, app) + assert.Contains(t, err.Error(), "empty app path") + }) + t.Run("it fails if the app path is empty", func(t *testing.T) { - app, err := Load("") + app, err := Load(paths.New("")) assert.Error(t, err) assert.Empty(t, app) assert.Contains(t, err.Error(), "empty app path") }) t.Run("it fails if the app path exist but it's a file", func(t *testing.T) { - _, err := Load("testdata/app.yaml") + _, err := Load(paths.New("testdata/app.yaml")) assert.Error(t, err) assert.Contains(t, err.Error(), "app path must be a directory") }) t.Run("it fails if the app path does not exist", func(t *testing.T) { - _, err := Load("testdata/this-folder-does-not-exist") + _, err := Load(paths.New("testdata/this-folder-does-not-exist")) assert.Error(t, err) assert.Contains(t, err.Error(), "app path is not valid") }) t.Run("it loads an app correctly", func(t *testing.T) { - app, err := Load("testdata/AppSimple") + app, err := Load(paths.New("testdata/AppSimple")) assert.NoError(t, err) assert.NotEmpty(t, app) @@ -61,7 +68,7 @@ func TestMissingDescriptor(t *testing.T) { appFolderPath := paths.New("testdata", "MissingDescriptor") // Load app - app, err := Load(appFolderPath.String()) + app, err := Load(appFolderPath) assert.Error(t, err) assert.ErrorContains(t, err, "descriptor app.yaml file missing from app") assert.Empty(t, app) @@ -71,7 +78,7 @@ func TestMissingMains(t *testing.T) { appFolderPath := paths.New("testdata", "MissingMains") // Load app - app, err := Load(appFolderPath.String()) + app, err := Load(appFolderPath) assert.Error(t, err) assert.ErrorContains(t, err, "main python file and sketch file missing from app") assert.Empty(t, app) diff --git a/internal/orchestrator/app/parser_test.go b/internal/orchestrator/app/parser_test.go index 123d38f4..fe8c8f59 100644 --- a/internal/orchestrator/app/parser_test.go +++ b/internal/orchestrator/app/parser_test.go @@ -115,7 +115,7 @@ bricks: err = os.WriteFile(appYaml.String(), []byte(appDescriptor), 0600) require.NoError(t, err) - app, err := Load(tempDir) + app, err := Load(paths.New(tempDir)) require.NoError(t, err) require.Equal(t, "Test App", app.Name) require.Equal(t, 1, len(app.Descriptor.Bricks)) diff --git a/internal/orchestrator/app_status.go b/internal/orchestrator/app_status.go index 481e240f..7e9c32fc 100644 --- a/internal/orchestrator/app_status.go +++ b/internal/orchestrator/app_status.go @@ -97,7 +97,7 @@ func parseDockerStatusEvent(ctx context.Context, cfg config.Configuration, docke } // FIXME: create an helper function to transform an app.ArduinoApp into an ortchestrator.AppInfo - app, err := app.Load(appStatus.AppPath.String()) + app, err := app.Load(appStatus.AppPath) if err != nil { slog.Warn("error loading app", "appPath", appStatus.AppPath.String(), "error", err) return AppInfo{}, err diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index 3b722b3d..cc9128c7 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -247,7 +247,7 @@ func getUsedByApps( } for _, file := range appPaths { - app, err := app.Load(file.String()) + app, err := app.Load(file) if err != nil { // we are not considering the broken apps slog.Warn("unable to parse app.yaml, skipping", "path", file.String(), "error", err.Error()) diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index f9804b25..4fee6fde 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -32,12 +32,12 @@ import ( ) func TestBrickCreate(t *testing.T) { - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(paths.New("testdata")) + bricksIndex, err := bricksindex.Load(paths.New("testdata")) require.Nil(t, err) brickService := NewService(nil, bricksIndex, nil) t.Run("fails if brick id does not exist", func(t *testing.T) { - err = brickService.BrickCreate(BrickCreateUpdateRequest{ID: "not-existing-id"}, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickCreate(BrickCreateUpdateRequest{ID: "not-existing-id"}, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "brick \"not-existing-id\" not found", err.Error()) }) @@ -46,7 +46,7 @@ func TestBrickCreate(t *testing.T) { req := BrickCreateUpdateRequest{ID: "arduino:arduino_cloud", Variables: map[string]string{ "NON_EXISTING_VARIABLE": "some-value", }} - err = brickService.BrickCreate(req, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickCreate(req, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "variable \"NON_EXISTING_VARIABLE\" does not exist on brick \"arduino:arduino_cloud\"", err.Error()) }) @@ -56,7 +56,7 @@ func TestBrickCreate(t *testing.T) { "ARDUINO_DEVICE_ID": "", "ARDUINO_SECRET": "a-secret-a", }} - err = brickService.BrickCreate(req, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickCreate(req, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "required variable \"ARDUINO_DEVICE_ID\" cannot be empty", err.Error()) }) @@ -70,10 +70,10 @@ func TestBrickCreate(t *testing.T) { req := BrickCreateUpdateRequest{ID: "arduino:arduino_cloud", Variables: map[string]string{ "ARDUINO_SECRET": "a-secret-a", }} - err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp))) require.NoError(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 1) require.Equal(t, "arduino:arduino_cloud", after.Descriptor.Bricks[0].ID) @@ -88,9 +88,9 @@ func TestBrickCreate(t *testing.T) { require.Nil(t, paths.New("testdata/dummy-app").CopyDirTo(tempDummyApp)) req := BrickCreateUpdateRequest{ID: "arduino:dbstorage_sqlstore"} - err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp))) require.Nil(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 2) require.Equal(t, "arduino:dbstorage_sqlstore", after.Descriptor.Bricks[1].ID) @@ -102,7 +102,7 @@ func TestBrickCreate(t *testing.T) { require.Nil(t, err) err = paths.New("testdata/dummy-app").CopyDirTo(tempDummyApp) require.Nil(t, err) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(paths.New("testdata")) + bricksIndex, err := bricksindex.Load(paths.New("testdata")) require.Nil(t, err) brickService := NewService(nil, bricksIndex, nil) @@ -116,10 +116,10 @@ func TestBrickCreate(t *testing.T) { }, } - err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickCreate(req, f.Must(app.Load(tempDummyApp))) require.Nil(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 1) require.Equal(t, "arduino:arduino_cloud", after.Descriptor.Bricks[0].ID) @@ -129,18 +129,18 @@ func TestBrickCreate(t *testing.T) { } func TestUpdateBrick(t *testing.T) { - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(paths.New("testdata")) + bricksIndex, err := bricksindex.Load(paths.New("testdata")) require.Nil(t, err) brickService := NewService(nil, bricksIndex, nil) t.Run("fails if brick id does not exist into brick index", func(t *testing.T) { - err = brickService.BrickUpdate(BrickCreateUpdateRequest{ID: "not-existing-id"}, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickUpdate(BrickCreateUpdateRequest{ID: "not-existing-id"}, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "brick \"not-existing-id\" not found into the brick index", err.Error()) }) t.Run("fails if brick is present into the index but not in the app ", func(t *testing.T) { - err = brickService.BrickUpdate(BrickCreateUpdateRequest{ID: "arduino:dbstorage_sqlstore"}, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickUpdate(BrickCreateUpdateRequest{ID: "arduino:dbstorage_sqlstore"}, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "brick \"arduino:dbstorage_sqlstore\" not found into the bricks of the app", err.Error()) }) @@ -149,7 +149,7 @@ func TestUpdateBrick(t *testing.T) { req := BrickCreateUpdateRequest{ID: "arduino:arduino_cloud", Variables: map[string]string{ "NON_EXISTING_VARIABLE": "some-value", }} - err = brickService.BrickUpdate(req, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickUpdate(req, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "variable \"NON_EXISTING_VARIABLE\" does not exist on brick \"arduino:arduino_cloud\"", err.Error()) }) @@ -160,7 +160,7 @@ func TestUpdateBrick(t *testing.T) { "ARDUINO_DEVICE_ID": "", "ARDUINO_SECRET": "a-secret-a", }} - err = brickService.BrickUpdate(req, f.Must(app.Load("testdata/dummy-app"))) + err = brickService.BrickUpdate(req, f.Must(app.Load(paths.New("testdata/dummy-app")))) require.Error(t, err) require.Equal(t, "required variable \"ARDUINO_DEVICE_ID\" cannot be empty", err.Error()) }) @@ -174,10 +174,10 @@ func TestUpdateBrick(t *testing.T) { req := BrickCreateUpdateRequest{ID: "arduino:arduino_cloud", Variables: map[string]string{ "ARDUINO_SECRET": "a-secret-a", }} - err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp))) require.NoError(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 1) require.Equal(t, "arduino:arduino_cloud", after.Descriptor.Bricks[0].ID) @@ -189,7 +189,7 @@ func TestUpdateBrick(t *testing.T) { tempDummyApp := paths.New("testdata/dummy-app.temp") require.Nil(t, tempDummyApp.RemoveAll()) require.Nil(t, paths.New("testdata/dummy-app").CopyDirTo(tempDummyApp)) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(paths.New("testdata")) + bricksIndex, err := bricksindex.Load(paths.New("testdata")) require.Nil(t, err) brickService := NewService(nil, bricksIndex, nil) @@ -203,10 +203,10 @@ func TestUpdateBrick(t *testing.T) { }, } - err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp))) require.Nil(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 1) require.Equal(t, "arduino:arduino_cloud", after.Descriptor.Bricks[0].ID) @@ -218,7 +218,7 @@ func TestUpdateBrick(t *testing.T) { tempDummyApp := paths.New("testdata/dummy-app-for-update.temp") require.Nil(t, tempDummyApp.RemoveAll()) require.Nil(t, paths.New("testdata/dummy-app-for-update").CopyDirTo(tempDummyApp)) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(paths.New("testdata")) + bricksIndex, err := bricksindex.Load(paths.New("testdata")) require.Nil(t, err) brickService := NewService(nil, bricksIndex, nil) @@ -231,10 +231,10 @@ func TestUpdateBrick(t *testing.T) { }, } - err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp.String()))) + err = brickService.BrickUpdate(req, f.Must(app.Load(tempDummyApp))) require.Nil(t, err) - after, err := app.Load(tempDummyApp.String()) + after, err := app.Load(tempDummyApp) require.Nil(t, err) require.Len(t, after.Descriptor.Bricks, 1) require.Equal(t, "arduino:arduino_cloud", after.Descriptor.Bricks[0].ID) diff --git a/internal/orchestrator/bricksindex/bricks_index.go b/internal/orchestrator/bricksindex/bricks_index.go index e4b774f4..9e52f1c6 100644 --- a/internal/orchestrator/bricksindex/bricks_index.go +++ b/internal/orchestrator/bricksindex/bricks_index.go @@ -91,7 +91,7 @@ func unmarshalBricksIndex(content io.Reader) (*BricksIndex, error) { return &index, nil } -func GenerateBricksIndexFromFile(dir *paths.Path) (*BricksIndex, error) { +func Load(dir *paths.Path) (*BricksIndex, error) { content, err := dir.Join("bricks-list.yaml").Open() if err != nil { return nil, err diff --git a/internal/orchestrator/bricksindex/bricks_index_test.go b/internal/orchestrator/bricksindex/bricks_index_test.go index 5b2a1546..8b02c8e0 100644 --- a/internal/orchestrator/bricksindex/bricks_index_test.go +++ b/internal/orchestrator/bricksindex/bricks_index_test.go @@ -16,152 +16,16 @@ package bricksindex import ( + "os" "testing" - yaml "github.com/goccy/go-yaml" + "github.com/arduino/go-paths-helper" "github.com/stretchr/testify/require" ) -func TestBricksIndex(t *testing.T) { - x := `bricks: -- id: arduino:image_classification - name: Image Classification - description: "Brick for image classification using a pre-trained model. It processes\ - \ images and returns the predicted class label and confidence score.\nBrick is\ - \ designed to work with pre-trained models provided by framework or with custom\ - \ image classification models trained on Edge Impulse platform. \n" - require_container: true - require_model: true - ports: [] - model_name: mobilenet-image-classification - variables: - - name: CUSTOM_MODEL_PATH - default_value: /opt/models/ei/ - description: path to the custom model directory - - name: EI_CLASSIFICATION_MODEL - default_value: /models/ootb/ei/mobilenet-v2-224px.eim - description: path to the model file -- id: arduino:camera_scanner - name: Camera Scanner - description: Scans a camera for barcodes and QR codes - require_container: false - require_model: false - ports: [] -- id: arduino:streamlit_ui - name: Streamlit UI - description: A simplified user interface based on Streamlit and Python. - require_container: false - require_model: false - ports: - - 7000 -- id: arduino:keyword_spotter - name: Keyword Spotter - description: 'Brick for keyword spotting using a pre-trained model. It processes - audio input to detect specific keywords or phrases. - - Brick is designed to work with pre-trained models provided by framework or with - custom audio classification models trained on Edge Impulse platform. - - ' - require_container: true - require_model: true - ports: [] - model_name: keyword-spotting-hello-world - variables: - - name: CUSTOM_MODEL_PATH - default_value: /opt/models/ei/ - description: path to the custom model directory - - name: EI_KEYWORK_SPOTTING_MODEL - default_value: /models/ootb/ei/keyword-spotting-hello-world.eim - description: path to the model file -- id: arduino:mqtt - name: MQTT Connector - description: MQTT connector module. Acts as a client for receiving and publishing - messages to an MQTT broker. - require_container: false - require_model: false - ports: [] -- id: arduino:web_ui - name: Web UI - description: A user interface based on HTML and JavaScript that can rely on additional - APIs and a WebSocket exposed by a web server. - require_container: false - require_model: false - ports: - - 7000 -- id: arduino:dbstorage_tsstore - name: Database Storage - Time Series Store - description: Simplified time series database storage layer for Arduino sensor samples - built on top of InfluxDB. - require_container: true - require_model: false - ports: [] - variables: - - name: APP_HOME - default_value: . - - name: DB_PASSWORD - default_value: Arduino15 - description: Database password - - name: DB_USERNAME - default_value: admin - description: Edge Impulse project API key - - name: INFLUXDB_ADMIN_TOKEN - default_value: 392edbf2-b8a2-481f-979d-3f188b2c05f0 - description: InfluxDB admin token -- id: arduino:dbstorage_sqlstore - name: Database Storage - SQLStore - description: Simplified database storage layer for Arduino sensor data using SQLite - local database. - require_container: false - require_model: false - ports: [] -- id: arduino:object_detection - name: Object Detection - description: "Brick for object detection using a pre-trained model. It processes\ - \ images and returns the predicted class label, bounding-boxes and confidence\ - \ score.\nBrick is designed to work with pre-trained models provided by framework\ - \ or with custom object detection models trained on Edge Impulse platform. \n" - require_container: true - require_model: true - ports: [] - model_name: yolox-object-detection - variables: - - name: CUSTOM_MODEL_PATH - default_value: /opt/models/ei/ - description: path to the custom model directory - - name: EI_OBJ_DETECTION_MODEL - default_value: /models/ootb/ei/yolo-x-nano.eim - description: path to the model file -- id: arduino:weather_forecast - name: Weather Forecast - description: Online weather forecast module for Arduino using open-meteo.com geolocation - and weather APIs. Requires an internet connection. - require_container: false - require_model: false - ports: [] -- id: arduino:visual_anomaly_detection - name: Visual Anomaly Detection - description: "Brick for visual anomaly detection using a pre-trained model. It processes\ - \ images and returns detected anomalies and bounding-boxes.\nBrick is designed\ - \ to work with pre-trained models provided by framework or with custom object\ - \ detection models trained on Edge Impulse platform. \n" - require_container: true - require_model: true - ports: [] - model_name: concreate-crack-anomaly-detection - variables: - - name: CUSTOM_MODEL_PATH - default_value: /opt/models/ei/ - description: path to the custom model directory - - name: EI_V_ANOMALY_DETECTION_MODEL - default_value: /models/ootb/ei/concrete-crack-anomaly-detection.eim - description: path to the model file -` - - var index BricksIndex - err := yaml.Unmarshal([]byte(x), &index) +func TestGenerateBricksIndexFromFile(t *testing.T) { + index, err := Load(paths.New("testdata")) require.NoError(t, err) - require.Len(t, index.Bricks, 11) // Check if ports are correctly set b, found := index.FindBrickByID("arduino:web_ui") @@ -184,3 +48,155 @@ func TestBricksIndex(t *testing.T) { require.False(t, b.Variables[0].IsRequired()) require.False(t, b.Variables[1].IsRequired()) } + +func TestBricksIndexYAMLFormats(t *testing.T) { + testCases := []struct { + name string + yamlContent string + expectedError string + expectedBricks []Brick + }{ + { + // TODO: add a validator fo the bricks-list to validate the field + name: "missing bricks field does not cuase error", + yamlContent: `other_field: value`, + expectedBricks: nil, + }, + { + name: "bad YAML format invalid indentation", + yamlContent: `bricks: + - id: arduino:test_brick + name: Test Brick + description: A test brick`, + expectedError: "found character '\t' that cannot start any token", + }, + { + name: "empty bricks", + yamlContent: `bricks: []`, + expectedBricks: []Brick{}, + }, + { + name: "bad YAML format unclosed quotes", + yamlContent: `bricks: +- id: "arduino:test_brick + name: Test Brick + description: A test brick`, + expectedError: "could not find end character of double-quoted text", + }, + { + name: "bad YAML format missing colon", + yamlContent: `bricks: +- id arduino:test_brick + name: Test Brick`, + expectedError: "unexpected key name", + }, + { + name: "bad YAML format invalid syntax", + yamlContent: `bricks: +- id: arduino:test_brick + name: Test Brick + description: A test brick + ports: [7000,`, + expectedError: "sequence end token ']' not found", + }, + { + name: "bad YAML format tab characters", + yamlContent: "bricks:\n\t- id: arduino:test_brick\n\t name: Test Brick", + expectedError: "found character '\t' that cannot start any token", + }, + { + name: "simple brick", + yamlContent: `bricks: +- id: arduino:simple_brick + name: Test Brick + description: A test brick +`, + expectedBricks: []Brick{ + { + ID: "arduino:simple_brick", + Name: "Test Brick", + Description: "A test brick", + Category: "", + RequiresDisplay: "", + RequireContainer: false, + RequireModel: false, + RequiredDevices: nil, + Variables: nil, + Ports: nil, + ModelName: "", + MountDevicesIntoContainer: false, + }, + }, + }, + { + name: "valid YAML with complex variables", + yamlContent: `bricks: +- id: arduino:complex_brick + name: Complex Brick + description: A complex test brick + category: storage + require_container: true + require_model: true + require_devices: false + mount_devices_into_container: true + model_name: a-complex-model + required_devices: + - camera + ports: + - 7000 + - 8080 + variables: + - name: REQUIRED_VAR + default_value: "" + description: A required variable + - name: OPTIONAL_VAR + default_value: "default_value" + description: An optional variable`, + expectedBricks: []Brick{ + { + ID: "arduino:complex_brick", + Name: "Complex Brick", + Description: "A complex test brick", + Category: "storage", + RequiresDisplay: "", + RequireContainer: true, + RequireModel: true, + RequiredDevices: []string{"camera"}, + MountDevicesIntoContainer: true, + Variables: []BrickVariable{ + { + Name: "REQUIRED_VAR", + DefaultValue: "", + Description: "A required variable", + }, + { + Name: "OPTIONAL_VAR", + DefaultValue: "default_value", + Description: "An optional variable", + }, + }, + Ports: []string{"7000", "8080"}, + ModelName: "a-complex-model", + }, + }, + }, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + tempDir := t.TempDir() + brickIndex := paths.New(tempDir, "bricks-list.yaml") + err := os.WriteFile(brickIndex.String(), []byte(tc.yamlContent), 0600) + require.NoError(t, err) + + index, err := Load(paths.New(tempDir)) + if tc.expectedError != "" { + require.Error(t, err) + require.Contains(t, err.Error(), tc.expectedError) + } else { + require.NoError(t, err) + require.Equal(t, index.Bricks, tc.expectedBricks, "bricsk mistmatch") + } + }) + } +} diff --git a/internal/orchestrator/bricksindex/testdata/bricks-list.yaml b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml new file mode 100644 index 00000000..0bd036f8 --- /dev/null +++ b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml @@ -0,0 +1,133 @@ +bricks: +- id: arduino:image_classification + name: Image Classification + description: "Brick for image classification using a pre-trained model. It processes\ + \ images and returns the predicted class label and confidence score.\nBrick is\ + \ designed to work with pre-trained models provided by framework or with custom\ + \ image classification models trained on Edge Impulse platform. \n" + require_container: true + require_model: true + ports: [] + model_name: mobilenet-image-classification + variables: + - name: CUSTOM_MODEL_PATH + default_value: /opt/models/ei/ + description: path to the custom model directory + - name: EI_CLASSIFICATION_MODEL + default_value: /models/ootb/ei/mobilenet-v2-224px.eim + description: path to the model file +- id: arduino:camera_scanner + name: Camera Scanner + description: Scans a camera for barcodes and QR codes + require_container: false + require_model: false + ports: [] +- id: arduino:streamlit_ui + name: Streamlit UI + description: A simplified user interface based on Streamlit and Python. + require_container: false + require_model: false + ports: + - 7000 +- id: arduino:keyword_spotter + name: Keyword Spotter + description: 'Brick for keyword spotting using a pre-trained model. It processes + audio input to detect specific keywords or phrases. + + Brick is designed to work with pre-trained models provided by framework or with + custom audio classification models trained on Edge Impulse platform. + + ' + require_container: true + require_model: true + ports: [] + model_name: keyword-spotting-hello-world + variables: + - name: CUSTOM_MODEL_PATH + default_value: /opt/models/ei/ + description: path to the custom model directory + - name: EI_KEYWORK_SPOTTING_MODEL + default_value: /models/ootb/ei/keyword-spotting-hello-world.eim + description: path to the model file +- id: arduino:mqtt + name: MQTT Connector + description: MQTT connector module. Acts as a client for receiving and publishing + messages to an MQTT broker. + require_container: false + require_model: false + ports: [] +- id: arduino:web_ui + name: Web UI + description: A user interface based on HTML and JavaScript that can rely on additional + APIs and a WebSocket exposed by a web server. + require_container: false + require_model: false + ports: + - 7000 +- id: arduino:dbstorage_tsstore + name: Database Storage - Time Series Store + description: Simplified time series database storage layer for Arduino sensor samples + built on top of InfluxDB. + require_container: true + require_model: false + ports: [] + variables: + - name: APP_HOME + default_value: . + - name: DB_PASSWORD + default_value: Arduino15 + description: Database password + - name: DB_USERNAME + default_value: admin + description: Edge Impulse project API key + - name: INFLUXDB_ADMIN_TOKEN + default_value: 392edbf2-b8a2-481f-979d-3f188b2c05f0 + description: InfluxDB admin token +- id: arduino:dbstorage_sqlstore + name: Database Storage - SQLStore + description: Simplified database storage layer for Arduino sensor data using SQLite + local database. + require_container: false + require_model: false + ports: [] +- id: arduino:object_detection + name: Object Detection + description: "Brick for object detection using a pre-trained model. It processes\ + \ images and returns the predicted class label, bounding-boxes and confidence\ + \ score.\nBrick is designed to work with pre-trained models provided by framework\ + \ or with custom object detection models trained on Edge Impulse platform. \n" + require_container: true + require_model: true + ports: [] + model_name: yolox-object-detection + variables: + - name: CUSTOM_MODEL_PATH + default_value: /opt/models/ei/ + description: path to the custom model directory + - name: EI_OBJ_DETECTION_MODEL + default_value: /models/ootb/ei/yolo-x-nano.eim + description: path to the model file +- id: arduino:weather_forecast + name: Weather Forecast + description: Online weather forecast module for Arduino using open-meteo.com geolocation + and weather APIs. Requires an internet connection. + require_container: false + require_model: false + ports: [] +- id: arduino:visual_anomaly_detection + name: Visual Anomaly Detection + description: "Brick for visual anomaly detection using a pre-trained model. It processes\ + \ images and returns detected anomalies and bounding-boxes.\nBrick is designed\ + \ to work with pre-trained models provided by framework or with custom object\ + \ detection models trained on Edge Impulse platform. \n" + require_container: true + require_model: true + ports: [] + model_name: concreate-crack-anomaly-detection + variables: + - name: CUSTOM_MODEL_PATH + default_value: /opt/models/ei/ + description: path to the custom model directory + - name: EI_V_ANOMALY_DETECTION_MODEL + default_value: /models/ootb/ei/concrete-crack-anomaly-detection.eim + description: path to the model file \ No newline at end of file diff --git a/internal/orchestrator/helpers.go b/internal/orchestrator/helpers.go index 5a637b07..3b94b654 100644 --- a/internal/orchestrator/helpers.go +++ b/internal/orchestrator/helpers.go @@ -193,7 +193,7 @@ func getRunningApp( if idx == -1 { return nil, nil } - app, err := app.Load(apps[idx].AppPath.String()) + app, err := app.Load(apps[idx].AppPath) if err != nil { return nil, fmt.Errorf("failed to load running app: %w", err) } diff --git a/internal/orchestrator/modelsindex/models_index.go b/internal/orchestrator/modelsindex/models_index.go index c9a47347..c24eb203 100644 --- a/internal/orchestrator/modelsindex/models_index.go +++ b/internal/orchestrator/modelsindex/models_index.go @@ -95,7 +95,7 @@ func (m *ModelsIndex) GetModelsByBricks(bricks []string) []AIModel { return matchingModels } -func GenerateModelsIndexFromFile(dir *paths.Path) (*ModelsIndex, error) { +func Load(dir *paths.Path) (*ModelsIndex, error) { content, err := dir.Join("models-list.yaml").ReadFile() if err != nil { return nil, err diff --git a/internal/orchestrator/modelsindex/modelsindex_test.go b/internal/orchestrator/modelsindex/modelsindex_test.go index 53ffb585..7f760390 100644 --- a/internal/orchestrator/modelsindex/modelsindex_test.go +++ b/internal/orchestrator/modelsindex/modelsindex_test.go @@ -9,7 +9,7 @@ import ( ) func TestModelsIndex(t *testing.T) { - modelsIndex, err := GenerateModelsIndexFromFile(paths.New("testdata")) + modelsIndex, err := Load(paths.New("testdata")) require.NoError(t, err) require.NotNil(t, modelsIndex) @@ -40,7 +40,7 @@ func TestModelsIndex(t *testing.T) { t.Run("it fails if model-list.yaml does not exist", func(t *testing.T) { nonExistentPath := paths.New("nonexistentdir") - modelsIndex, err := GenerateModelsIndexFromFile(nonExistentPath) + modelsIndex, err := Load(nonExistentPath) assert.Error(t, err) assert.Nil(t, modelsIndex) }) diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 8eedff6f..1a61145c 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -614,7 +614,7 @@ func ListApps( } for _, file := range appPaths { - app, err := app.Load(file.String()) + app, err := app.Load(file) if err != nil { result.BrokenApps = append(result.BrokenApps, BrokenAppInfo{ Name: file.Base(), @@ -956,7 +956,7 @@ func GetDefaultApp(cfg config.Configuration) (*app.ArduinoApp, error) { return nil, nil } - app, err := app.Load(string(defaultAppPath)) + app, err := app.Load(paths.New(string(defaultAppPath))) if err != nil { // If the app is not valid, we remove the file slog.Warn("default app is not valid", slog.String("path", string(defaultAppPath)), slog.String("error", err.Error())) diff --git a/internal/orchestrator/orchestrator_test.go b/internal/orchestrator/orchestrator_test.go index 223b4705..d6c6a4dc 100644 --- a/internal/orchestrator/orchestrator_test.go +++ b/internal/orchestrator/orchestrator_test.go @@ -90,7 +90,7 @@ func TestCloneApp(t *testing.T) { }) // The app.yaml will have the name set to the new-name - clonedApp := f.Must(app.Load(appDir.String())) + clonedApp := f.Must(app.Load(appDir)) require.Equal(t, "new-name", clonedApp.Name) }) t.Run("with icon", func(t *testing.T) { @@ -108,7 +108,7 @@ func TestCloneApp(t *testing.T) { }) // The app.yaml will have the icon set to 🦄 - clonedApp := f.Must(app.Load(appDir.String())) + clonedApp := f.Must(app.Load(appDir)) require.Equal(t, "with-icon", clonedApp.Name) require.Equal(t, "🦄", clonedApp.Descriptor.Icon) }) @@ -164,7 +164,7 @@ func TestEditApp(t *testing.T) { appDir := cfg.AppsDir().Join("app-default") t.Run("previously not default", func(t *testing.T) { - app := f.Must(app.Load(appDir.String())) + app := f.Must(app.Load(appDir)) previousDefaultApp, err := GetDefaultApp(cfg) require.NoError(t, err) @@ -178,7 +178,7 @@ func TestEditApp(t *testing.T) { require.True(t, appDir.EquivalentTo(currentDefaultApp.FullPath)) }) t.Run("previously default", func(t *testing.T) { - app := f.Must(app.Load(appDir.String())) + app := f.Must(app.Load(appDir)) err := SetDefaultApp(&app, cfg) require.NoError(t, err) @@ -200,12 +200,12 @@ func TestEditApp(t *testing.T) { _, err := CreateApp(t.Context(), CreateAppRequest{Name: originalAppName}, idProvider, cfg) require.NoError(t, err) appDir := cfg.AppsDir().Join(originalAppName) - userApp := f.Must(app.Load(appDir.String())) + userApp := f.Must(app.Load(appDir)) originalPath := userApp.FullPath err = EditApp(AppEditRequest{Name: f.Ptr("new-name")}, &userApp, cfg) require.NoError(t, err) - editedApp, err := app.Load(cfg.AppsDir().Join("new-name").String()) + editedApp, err := app.Load(cfg.AppsDir().Join("new-name")) require.NoError(t, err) require.Equal(t, "new-name", editedApp.Name) require.True(t, originalPath.NotExist()) // The original app directory should be removed after renaming @@ -215,7 +215,7 @@ func TestEditApp(t *testing.T) { _, err := CreateApp(t.Context(), CreateAppRequest{Name: existingAppName}, idProvider, cfg) require.NoError(t, err) appDir := cfg.AppsDir().Join(existingAppName) - existingApp := f.Must(app.Load(appDir.String())) + existingApp := f.Must(app.Load(appDir)) err = EditApp(AppEditRequest{Name: f.Ptr(existingAppName)}, &existingApp, cfg) require.ErrorIs(t, err, ErrAppAlreadyExists) @@ -227,14 +227,14 @@ func TestEditApp(t *testing.T) { _, err := CreateApp(t.Context(), CreateAppRequest{Name: commonAppName}, idProvider, cfg) require.NoError(t, err) commonAppDir := cfg.AppsDir().Join(commonAppName) - commonApp := f.Must(app.Load(commonAppDir.String())) + commonApp := f.Must(app.Load(commonAppDir)) err = EditApp(AppEditRequest{ Icon: f.Ptr("💻"), Description: f.Ptr("new desc"), }, &commonApp, cfg) require.NoError(t, err) - editedApp := f.Must(app.Load(commonAppDir.String())) + editedApp := f.Must(app.Load(commonAppDir)) require.Equal(t, "new desc", editedApp.Descriptor.Description) require.Equal(t, "💻", editedApp.Descriptor.Icon) }) @@ -427,7 +427,7 @@ func TestGetAppEnvironmentVariablesWithDefaults(t *testing.T) { require.NoError(t, err) appId := createApp(t, "app1", false, idProvider, cfg) - appDesc, err := app.Load(appId.ToPath().String()) + appDesc, err := app.Load(appId.ToPath()) require.NoError(t, err) appDesc.Descriptor.Bricks = []app.Brick{ { @@ -461,7 +461,7 @@ bricks: `) err = cfg.AssetsDir().Join("bricks-list.yaml").WriteFile(bricksIndexContent) require.NoError(t, err) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(cfg.AssetsDir()) + bricksIndex, err := bricksindex.Load(cfg.AssetsDir()) assert.NoError(t, err) modelsIndexContent := []byte(` @@ -483,7 +483,7 @@ models: `) err = cfg.AssetsDir().Join("models-list.yaml").WriteFile(modelsIndexContent) require.NoError(t, err) - modelIndex, err := modelsindex.GenerateModelsIndexFromFile(cfg.AssetsDir()) + modelIndex, err := modelsindex.Load(cfg.AssetsDir()) require.NoError(t, err) env := getAppEnvironmentVariables(appDesc, bricksIndex, modelIndex) @@ -512,7 +512,7 @@ func TestGetAppEnvironmentVariablesWithCustomModelOverrides(t *testing.T) { require.NoError(t, err) appId := createApp(t, "app1", false, idProvider, cfg) - appDesc, err := app.Load(appId.ToPath().String()) + appDesc, err := app.Load(appId.ToPath()) require.NoError(t, err) appDesc.Descriptor.Bricks = []app.Brick{ { @@ -546,7 +546,7 @@ bricks: `) err = cfg.AssetsDir().Join("bricks-list.yaml").WriteFile(bricksIndexContent) require.NoError(t, err) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(cfg.AssetsDir()) + bricksIndex, err := bricksindex.Load(cfg.AssetsDir()) assert.NoError(t, err) modelsIndexContent := []byte(` @@ -568,7 +568,7 @@ models: `) err = cfg.AssetsDir().Join("models-list.yaml").WriteFile(modelsIndexContent) require.NoError(t, err) - modelIndex, err := modelsindex.GenerateModelsIndexFromFile(cfg.AssetsDir()) + modelIndex, err := modelsindex.Load(cfg.AssetsDir()) require.NoError(t, err) env := getAppEnvironmentVariables(appDesc, bricksIndex, modelIndex) diff --git a/internal/orchestrator/provision_test.go b/internal/orchestrator/provision_test.go index b2ca0bb0..1bd7aa65 100644 --- a/internal/orchestrator/provision_test.go +++ b/internal/orchestrator/provision_test.go @@ -104,7 +104,7 @@ bricks: require.NoError(t, err) // Override brick index with custom test content - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(cfg.AssetsDir()) + bricksIndex, err := bricksindex.Load(cfg.AssetsDir()) require.Nil(t, err, "Failed to load bricks index with custom content") br, ok := bricksIndex.FindBrickByID("arduino:video_object_detection") @@ -301,7 +301,7 @@ bricks: err := cfg.AssetsDir().Join("bricks-list.yaml").WriteFile(bricksIndexContent) require.NoError(t, err) - bricksIndex, err := bricksindex.GenerateBricksIndexFromFile(cfg.AssetsDir()) + bricksIndex, err := bricksindex.Load(cfg.AssetsDir()) require.Nil(t, err, "Failed to load bricks index with custom content") br, ok := bricksIndex.FindBrickByID("arduino:dbstorage_tsstore") require.True(t, ok, "Brick arduino:dbstorage_tsstore should exist in the index") From d7d175357e6d4e70ee72a6525a6af568547ac9da Mon Sep 17 00:00:00 2001 From: Giulio Date: Wed, 26 Nov 2025 17:49:58 +0100 Subject: [PATCH 06/27] Add require_model to the brick list (#93) * brick - add require on list and details * require_model for the app bricks * fixing yaml ser * list app brick detalis * add tests on reqmodel * rename to RequireModel * TestBricksList test * TestAppBrickInstanceDetails * fix * update tests * add RequireModel to test * add test IC * remove models * Update internal/orchestrator/bricksindex/testdata/bricks-list.yaml Co-authored-by: Davide * Update internal/orchestrator/bricksindex/testdata/bricks-list.yaml Co-authored-by: Davide * Update internal/orchestrator/bricks/testdata/bricks-list.yaml Co-authored-by: Davide * revert --------- Co-authored-by: Davide --- internal/api/docs/openapi.yaml | 8 ++++ internal/e2e/client/client.gen.go | 22 ++++++---- internal/e2e/daemon/app_test.go | 7 ++-- internal/e2e/daemon/brick_test.go | 1 + internal/orchestrator/bricks/bricks.go | 16 +++++--- internal/orchestrator/bricks/bricks_test.go | 13 ++++-- .../bricks/testdata/bricks-list.yaml | 5 +++ internal/orchestrator/bricks/types.go | 15 ++++--- .../bricksindex/bricks_index_test.go | 41 ++++++++++++------- .../bricksindex/testdata/bricks-list.yaml | 11 ++++- internal/orchestrator/orchestrator.go | 8 ++-- 11 files changed, 100 insertions(+), 47 deletions(-) diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index f50969e6..f32c9a76 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -1204,6 +1204,8 @@ components: type: string name: type: string + require_model: + type: boolean required: - id - name @@ -1332,6 +1334,8 @@ components: type: string readme: type: string + require_model: + type: boolean status: type: string used_by_apps: @@ -1365,6 +1369,8 @@ components: type: string name: type: string + require_model: + type: boolean status: type: string variables: @@ -1386,6 +1392,8 @@ components: type: string name: type: string + require_model: + type: boolean status: type: string type: object diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index 1f3e6bbd..496680c9 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -71,9 +71,10 @@ type AppBrickInstancesResult struct { // AppDetailedBrick defines model for AppDetailedBrick. type AppDetailedBrick struct { - Category *string `json:"category,omitempty"` - Id string `json:"id"` - Name string `json:"name"` + Category *string `json:"category,omitempty"` + Id string `json:"id"` + Name string `json:"name"` + RequireModel *bool `json:"require_model,omitempty"` } // AppDetailedInfo defines model for AppDetailedInfo. @@ -151,6 +152,7 @@ type BrickDetailsResult struct { Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Readme *string `json:"readme,omitempty"` + RequireModel *bool `json:"require_model,omitempty"` Status *string `json:"status,omitempty"` UsedByApps *[]AppReference `json:"used_by_apps"` Variables *map[string]BrickVariable `json:"variables,omitempty"` @@ -165,6 +167,7 @@ type BrickInstance struct { Id *string `json:"id,omitempty"` Model *string `json:"model,omitempty"` Name *string `json:"name,omitempty"` + RequireModel *bool `json:"require_model,omitempty"` Status *string `json:"status,omitempty"` // Variables Deprecated: use config_variables instead. This field is kept for backward compatibility. @@ -173,12 +176,13 @@ type BrickInstance struct { // BrickListItem defines model for BrickListItem. type BrickListItem struct { - Author *string `json:"author,omitempty"` - Category *string `json:"category,omitempty"` - Description *string `json:"description,omitempty"` - Id *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Status *string `json:"status,omitempty"` + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + RequireModel *bool `json:"require_model,omitempty"` + Status *string `json:"status,omitempty"` } // BrickListResult defines model for BrickListResult. diff --git a/internal/e2e/daemon/app_test.go b/internal/e2e/daemon/app_test.go index 1de8ff64..b62b882b 100644 --- a/internal/e2e/daemon/app_test.go +++ b/internal/e2e/daemon/app_test.go @@ -783,9 +783,10 @@ func TestAppDetails(t *testing.T) { require.Len(t, *detailsResp.JSON200.Bricks, 1) require.Equal(t, client.AppDetailedBrick{ - Id: ImageClassifactionBrickID, - Name: "Image Classification", - Category: f.Ptr("video"), + Id: ImageClassifactionBrickID, + Name: "Image Classification", + Category: f.Ptr("video"), + RequireModel: f.Ptr(true), }, (*detailsResp.JSON200.Bricks)[0], ) diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index 02736884..5d709bb3 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -83,6 +83,7 @@ func TestBricksList(t *testing.T) { require.Equal(t, bIdx.Description, *brick.Description) require.Equal(t, "Arduino", *brick.Author) require.Equal(t, "installed", *brick.Status) + require.Equal(t, bIdx.RequireModel, *brick.RequireModel) } } diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index cc9128c7..df49c1ec 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -58,12 +58,13 @@ func (s *Service) List() (BrickListResult, error) { res := BrickListResult{Bricks: make([]BrickListItem, len(s.bricksIndex.Bricks))} for i, brick := range s.bricksIndex.Bricks { res.Bricks[i] = BrickListItem{ - ID: brick.ID, - Name: brick.Name, - Author: "Arduino", // TODO: for now we only support our bricks - Description: brick.Description, - Category: brick.Category, - Status: "installed", + ID: brick.ID, + Name: brick.Name, + Author: "Arduino", // TODO: for now we only support our bricks + Description: brick.Description, + Category: brick.Category, + Status: "installed", + RequireModel: brick.RequireModel, } } return res, nil @@ -85,6 +86,7 @@ func (s *Service) AppBrickInstancesList(a *app.ArduinoApp) (AppBrickInstancesRes Author: "Arduino", // TODO: for now we only support our bricks Category: brick.Category, Status: "installed", + RequireModel: brick.RequireModel, ModelID: brickInstance.Model, // TODO: in case is not set by the user, should we return the default model? Variables: variablesMap, // TODO: do we want to show also the default value of not explicitly set variables? ConfigVariables: configVariables, @@ -118,6 +120,7 @@ func (s *Service) AppBrickInstanceDetails(a *app.ArduinoApp, brickID string) (Br Author: "Arduino", // TODO: for now we only support our bricks Category: brick.Category, Status: "installed", // For now every Arduino brick are installed + RequireModel: brick.RequireModel, Variables: variables, ConfigVariables: configVariables, ModelID: modelID, @@ -203,6 +206,7 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, Author: "Arduino", // TODO: for now we only support our bricks Description: brick.Description, Category: brick.Category, + RequireModel: brick.RequireModel, Status: "installed", // For now every Arduino brick are installed Variables: variables, Readme: readme, diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index 4fee6fde..0077a5b2 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -503,12 +503,14 @@ func TestAppBrickInstanceModelsDetails(t *testing.T) { {Name: "EI_OBJ_DETECTION_MODEL", DefaultValue: "default_path", Description: "path to the model file"}, {Name: "CUSTOM_MODEL_PATH", DefaultValue: "/home/arduino/.arduino-bricks/ei-models", Description: "path to the custom model directory"}, }, + RequireModel: true, }, { - ID: "arduino:weather_forecast", - Name: "Weather Forecast", - Category: "miscellaneous", - ModelName: "", + ID: "arduino:weather_forecast", + Name: "Weather Forecast", + Category: "miscellaneous", + ModelName: "", + RequireModel: false, }, }, } @@ -577,6 +579,7 @@ func TestAppBrickInstanceModelsDetails(t *testing.T) { require.Equal(t, "installed", res.Status) require.Empty(t, res.ModelID) require.Empty(t, res.CompatibleModels) + require.False(t, res.RequireModel) }, }, { @@ -597,6 +600,7 @@ func TestAppBrickInstanceModelsDetails(t *testing.T) { require.Len(t, res.CompatibleModels, 2) require.Equal(t, "yolox-object-detection", res.CompatibleModels[0].ID) require.Equal(t, "face-detection", res.CompatibleModels[1].ID) + require.True(t, res.RequireModel) }, }, { @@ -618,6 +622,7 @@ func TestAppBrickInstanceModelsDetails(t *testing.T) { require.Len(t, res.CompatibleModels, 2) require.Equal(t, "yolox-object-detection", res.CompatibleModels[0].ID) require.Equal(t, "face-detection", res.CompatibleModels[1].ID) + require.True(t, res.RequireModel) }, }, } diff --git a/internal/orchestrator/bricks/testdata/bricks-list.yaml b/internal/orchestrator/bricks/testdata/bricks-list.yaml index 8e3114d6..9a8c68c4 100644 --- a/internal/orchestrator/bricks/testdata/bricks-list.yaml +++ b/internal/orchestrator/bricks/testdata/bricks-list.yaml @@ -23,3 +23,8 @@ bricks: mount_devices_into_container: false ports: [] category: storage +- id: arduino:brick-with-require-model + name: A brick with required model + description: "Brick with required model" + require_model: true + model_name: mobilenet-image-classification \ No newline at end of file diff --git a/internal/orchestrator/bricks/types.go b/internal/orchestrator/bricks/types.go index 782ec2f2..1fca898f 100644 --- a/internal/orchestrator/bricks/types.go +++ b/internal/orchestrator/bricks/types.go @@ -20,12 +20,13 @@ type BrickListResult struct { } type BrickListItem struct { - ID string `json:"id"` - Name string `json:"name"` - Author string `json:"author"` - Description string `json:"description"` - Category string `json:"category"` - Status string `json:"status"` + ID string `json:"id"` + Name string `json:"name"` + Author string `json:"author"` + Description string `json:"description"` + Category string `json:"category"` + Status string `json:"status"` + RequireModel bool `json:"require_model"` } type AppBrickInstancesResult struct { @@ -40,6 +41,7 @@ type BrickInstance struct { Status string `json:"status"` Variables map[string]string `json:"variables,omitempty" description:"Deprecated: use config_variables instead. This field is kept for backward compatibility."` ConfigVariables []BrickConfigVariable `json:"config_variables,omitempty"` + RequireModel bool `json:"require_model"` ModelID string `json:"model,omitempty"` CompatibleModels []AIModel `json:"compatible_models"` } @@ -78,6 +80,7 @@ type BrickDetailsResult struct { Description string `json:"description"` Category string `json:"category"` Status string `json:"status"` + RequireModel bool `json:"require_model"` Variables map[string]BrickVariable `json:"variables,omitempty"` Readme string `json:"readme"` ApiDocsPath string `json:"api_docs_path"` diff --git a/internal/orchestrator/bricksindex/bricks_index_test.go b/internal/orchestrator/bricksindex/bricks_index_test.go index 8b02c8e0..b8bf7c0a 100644 --- a/internal/orchestrator/bricksindex/bricks_index_test.go +++ b/internal/orchestrator/bricksindex/bricks_index_test.go @@ -28,25 +28,36 @@ func TestGenerateBricksIndexFromFile(t *testing.T) { require.NoError(t, err) // Check if ports are correctly set - b, found := index.FindBrickByID("arduino:web_ui") + bWebUI, found := index.FindBrickByID("arduino:web_ui") require.True(t, found) - require.Equal(t, []string{"7000"}, b.Ports) + require.Equal(t, []string{"7000"}, bWebUI.Ports) // Check if variables are correctly set - b, found = index.FindBrickByID("arduino:image_classification") + bIC, found := index.FindBrickByID("arduino:image_classification") require.True(t, found) - require.Equal(t, "Image Classification", b.Name) - require.Equal(t, "mobilenet-image-classification", b.ModelName) - require.True(t, b.RequireModel) - require.Len(t, b.Variables, 2) - require.Equal(t, "CUSTOM_MODEL_PATH", b.Variables[0].Name) - require.Equal(t, "/opt/models/ei/", b.Variables[0].DefaultValue) - require.Equal(t, "path to the custom model directory", b.Variables[0].Description) - require.Equal(t, "EI_CLASSIFICATION_MODEL", b.Variables[1].Name) - require.Equal(t, "/models/ootb/ei/mobilenet-v2-224px.eim", b.Variables[1].DefaultValue) - require.Equal(t, "path to the model file", b.Variables[1].Description) - require.False(t, b.Variables[0].IsRequired()) - require.False(t, b.Variables[1].IsRequired()) + require.Equal(t, "Image Classification", bIC.Name) + require.Equal(t, "mobilenet-image-classification", bIC.ModelName) + require.Len(t, bIC.Variables, 2) + require.Equal(t, "CUSTOM_MODEL_PATH", bIC.Variables[0].Name) + require.Equal(t, "/opt/models/ei/", bIC.Variables[0].DefaultValue) + require.Equal(t, "path to the custom model directory", bIC.Variables[0].Description) + require.Equal(t, "EI_CLASSIFICATION_MODEL", bIC.Variables[1].Name) + require.Equal(t, "/models/ootb/ei/mobilenet-v2-224px.eim", bIC.Variables[1].DefaultValue) + require.Equal(t, "path to the model file", bIC.Variables[1].Description) + require.False(t, bIC.Variables[0].IsRequired()) + require.False(t, bIC.Variables[1].IsRequired()) + + bRequireModel, found := index.FindBrickByID("arduino:model_required") + require.True(t, found) + require.True(t, bRequireModel.RequireModel) + + bDb, found := index.FindBrickByID("arduino:dbstorage_tsstore") + require.True(t, found) + require.False(t, bDb.RequireModel) + + bNoRequireModel, found := index.FindBrickByID("arduino:missing-model-require") + require.True(t, found) + require.False(t, bNoRequireModel.RequireModel) } func TestBricksIndexYAMLFormats(t *testing.T) { diff --git a/internal/orchestrator/bricksindex/testdata/bricks-list.yaml b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml index 0bd036f8..c494df17 100644 --- a/internal/orchestrator/bricksindex/testdata/bricks-list.yaml +++ b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml @@ -130,4 +130,13 @@ bricks: description: path to the custom model directory - name: EI_V_ANOMALY_DETECTION_MODEL default_value: /models/ootb/ei/concrete-crack-anomaly-detection.eim - description: path to the model file \ No newline at end of file + description: path to the model file +- id: arduino:missing-model-require + name: Camera Scanner + description: Scans a camera for barcodes and QR codes + require_container: false + ports: [] +- id: arduino:model_required + name: Model Required Brick + description: A brick that requires a model + require_model: true diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 1a61145c..74851180 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -673,9 +673,10 @@ type AppDetailedInfo struct { } type AppDetailedBrick struct { - ID string `json:"id" required:"true"` - Name string `json:"name" required:"true"` - Category string `json:"category,omitempty"` + ID string `json:"id" required:"true"` + Name string `json:"name" required:"true"` + Category string `json:"category,omitempty"` + RequireModel bool `json:"require_model"` } func AppDetails( @@ -738,6 +739,7 @@ func AppDetails( } res.Name = bi.Name res.Category = bi.Category + res.RequireModel = bi.RequireModel return res }), }, nil From 12a78dbeba57919783cd6812cb1488df75fd6c1e Mon Sep 17 00:00:00 2001 From: Giulio Date: Thu, 27 Nov 2025 10:55:24 +0100 Subject: [PATCH 07/27] deprecate require_devices (#111) --- internal/orchestrator/bricks/testdata/bricks-list.yaml | 2 -- internal/orchestrator/bricksindex/bricks_index_test.go | 1 - internal/orchestrator/orchestrator_test.go | 2 -- internal/orchestrator/provision.go | 2 +- 4 files changed, 1 insertion(+), 6 deletions(-) diff --git a/internal/orchestrator/bricks/testdata/bricks-list.yaml b/internal/orchestrator/bricks/testdata/bricks-list.yaml index 9a8c68c4..e38eeeb4 100644 --- a/internal/orchestrator/bricks/testdata/bricks-list.yaml +++ b/internal/orchestrator/bricks/testdata/bricks-list.yaml @@ -4,7 +4,6 @@ bricks: description: Connects to Arduino Cloud require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -19,7 +18,6 @@ bricks: local database. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: storage diff --git a/internal/orchestrator/bricksindex/bricks_index_test.go b/internal/orchestrator/bricksindex/bricks_index_test.go index b8bf7c0a..b8d28c07 100644 --- a/internal/orchestrator/bricksindex/bricks_index_test.go +++ b/internal/orchestrator/bricksindex/bricks_index_test.go @@ -148,7 +148,6 @@ func TestBricksIndexYAMLFormats(t *testing.T) { category: storage require_container: true require_model: true - require_devices: false mount_devices_into_container: true model_name: a-complex-model required_devices: diff --git a/internal/orchestrator/orchestrator_test.go b/internal/orchestrator/orchestrator_test.go index d6c6a4dc..ab42d287 100644 --- a/internal/orchestrator/orchestrator_test.go +++ b/internal/orchestrator/orchestrator_test.go @@ -447,7 +447,6 @@ bricks: \ or with custom object detection models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false ports: [] category: video model_name: yolox-object-detection @@ -533,7 +532,6 @@ bricks: \ or with custom object detection models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false category: video model_name: yolox-object-detection variables: diff --git a/internal/orchestrator/provision.go b/internal/orchestrator/provision.go index 393fbc8c..c5ab52b6 100644 --- a/internal/orchestrator/provision.go +++ b/internal/orchestrator/provision.go @@ -257,7 +257,7 @@ func generateMainComposeFile( } // 4. Retrieve the required devices that we have to mount - slog.Debug("Brick config", slog.Bool("require_devices", idxBrick.MountDevicesIntoContainer), slog.Any("ports", ports), slog.Any("required_devices", idxBrick.RequiredDevices)) + slog.Debug("Brick config", slog.Bool("mount_devices_into_container", idxBrick.MountDevicesIntoContainer), slog.Any("ports", ports), slog.Any("required_devices", idxBrick.RequiredDevices)) if idxBrick.MountDevicesIntoContainer { servicesThatRequireDevices = slices.AppendSeq(servicesThatRequireDevices, maps.Keys(svcs)) } From 299f6e245ef7eafd2a6a46fc5d902d2e217b837b Mon Sep 17 00:00:00 2001 From: Per Tillisch Date: Thu, 27 Nov 2025 05:27:45 -0800 Subject: [PATCH 08/27] feat: Do not exit from default Python script (#106) When a new App is created, it is populated with a simple Python script and "bare minimum" Arduino sketch. For initial explorations of a new system, or when troubleshooting, it is common to create very simple programs (AKA "Hello, world!"). Although a complex App will typically consist of a Python script and Arduino sketch program working in coordination, for users with prior experience with Arduino the natural approach to creating a minimal App will be to simply write some familiar Arduino sketch code, leaving the default Python script code as-is. The App is considered to be in a "stopped" state as soon as the Python script exits. This is the correct approach, but may be confusing to users due to the fact that, except perhaps under exceptional conditions, the Arduino sketch program runs perpetually. The author of a minimal sketch-based "Hello, world!" App will find it unintuitive if their App goes into a "stopped" state immediately after starting. The previous default Python script produced exactly that result. The default Python script is hereby changed to the more intuitive behavior of running perpetually. Co-authored-by: Davide --- .../app/generator/app_template/python/main.py | 17 +++++++++++++---- .../testdata/app-all.golden/python/main.py | 17 +++++++++++++---- .../app-no-sketch.golden/python/main.py | 17 +++++++++++++---- 3 files changed, 39 insertions(+), 12 deletions(-) diff --git a/internal/orchestrator/app/generator/app_template/python/main.py b/internal/orchestrator/app/generator/app_template/python/main.py index 9ef98b13..fb56fb23 100644 --- a/internal/orchestrator/app/generator/app_template/python/main.py +++ b/internal/orchestrator/app/generator/app_template/python/main.py @@ -1,6 +1,15 @@ -def main(): - print("Hello World!") +import time +from arduino.app_utils import App -if __name__ == "__main__": - main() +print("Hello world!") + + +def loop(): + """This function is called repeatedly by the App framework.""" + # You can replace this with any code you want your App to run repeatedly. + time.sleep(10) + + +# See: https://docs.arduino.cc/software/app-lab/tutorials/getting-started/#app-run +App.run(user_loop=loop) diff --git a/internal/orchestrator/app/generator/testdata/app-all.golden/python/main.py b/internal/orchestrator/app/generator/testdata/app-all.golden/python/main.py index 9ef98b13..fb56fb23 100644 --- a/internal/orchestrator/app/generator/testdata/app-all.golden/python/main.py +++ b/internal/orchestrator/app/generator/testdata/app-all.golden/python/main.py @@ -1,6 +1,15 @@ -def main(): - print("Hello World!") +import time +from arduino.app_utils import App -if __name__ == "__main__": - main() +print("Hello world!") + + +def loop(): + """This function is called repeatedly by the App framework.""" + # You can replace this with any code you want your App to run repeatedly. + time.sleep(10) + + +# See: https://docs.arduino.cc/software/app-lab/tutorials/getting-started/#app-run +App.run(user_loop=loop) diff --git a/internal/orchestrator/app/generator/testdata/app-no-sketch.golden/python/main.py b/internal/orchestrator/app/generator/testdata/app-no-sketch.golden/python/main.py index 9ef98b13..fb56fb23 100644 --- a/internal/orchestrator/app/generator/testdata/app-no-sketch.golden/python/main.py +++ b/internal/orchestrator/app/generator/testdata/app-no-sketch.golden/python/main.py @@ -1,6 +1,15 @@ -def main(): - print("Hello World!") +import time +from arduino.app_utils import App -if __name__ == "__main__": - main() +print("Hello world!") + + +def loop(): + """This function is called repeatedly by the App framework.""" + # You can replace this with any code you want your App to run repeatedly. + time.sleep(10) + + +# See: https://docs.arduino.cc/software/app-lab/tutorials/getting-started/#app-run +App.run(user_loop=loop) From b6723a5a4c90e3c57ce66f072e8d061460810dac Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Thu, 27 Nov 2025 15:38:31 +0100 Subject: [PATCH 09/27] fix: force app stop also if it isn't running (#112) --- internal/orchestrator/orchestrator.go | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 74851180..841e31f1 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -388,16 +388,6 @@ func stopAppWithCmd(ctx context.Context, docker command.Cli, app app.ArduinoApp, ctx, cancel := context.WithCancel(ctx) defer cancel() - appStatus, err := getAppStatus(ctx, docker, app) - if err != nil { - yield(StreamMessage{error: err}) - return - } - if appStatus.Status != StatusStarting && appStatus.Status != StatusRunning { - yield(StreamMessage{data: fmt.Sprintf("app %q is not running", app.Name)}) - return - } - if !yield(StreamMessage{data: fmt.Sprintf("Stopping app %q", app.Name)}) { return } @@ -413,7 +403,16 @@ func stopAppWithCmd(ctx context.Context, docker command.Cli, app app.ArduinoApp, }) if app.MainSketchPath != nil { - // TODO: check that the app sketch is running before attempting to stop it. + // Before stopping the microcontroller we want to make sure that the app was running. + appStatus, err := getAppStatus(ctx, docker, app) + if err != nil { + yield(StreamMessage{error: err}) + return + } + if appStatus.Status != StatusStarting && appStatus.Status != StatusRunning { + yield(StreamMessage{data: fmt.Sprintf("app %q is not running", app.Name)}) + return + } if err := micro.Disable(); err != nil { yield(StreamMessage{error: err}) From c309a644e076d8ce490c9056865a03c46357397b Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Thu, 27 Nov 2025 17:37:58 +0100 Subject: [PATCH 10/27] fix: prevent app-cli to restart adbd (#117) --- .../arduino-app-cli/etc/needrestart/conf.d/arduino-adbd.conf | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 debian/arduino-app-cli/etc/needrestart/conf.d/arduino-adbd.conf diff --git a/debian/arduino-app-cli/etc/needrestart/conf.d/arduino-adbd.conf b/debian/arduino-app-cli/etc/needrestart/conf.d/arduino-adbd.conf new file mode 100644 index 00000000..1ffff052 --- /dev/null +++ b/debian/arduino-app-cli/etc/needrestart/conf.d/arduino-adbd.conf @@ -0,0 +1,3 @@ +# exclude adbd from service that need to be restarted. +$nrconf{override_rc}{qr(^adbd\.service$)} = 0; + From 3f54506d4a97e63397195753eae099ddae154720 Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Fri, 28 Nov 2025 08:58:06 +0100 Subject: [PATCH 11/27] [Bug] remove compatible models from brick instance list endpoint (#120) * remove compatible models from brick instance list endpoint * add unit and e2e test --- internal/api/docs/openapi.yaml | 29 ++- internal/e2e/client/client.gen.go | 17 +- internal/e2e/daemon/bricks_instance_test.go | 9 + internal/orchestrator/bricks/bricks.go | 4 +- internal/orchestrator/bricks/bricks_test.go | 188 ++++++++++++++++++++ internal/orchestrator/bricks/types.go | 14 +- 6 files changed, 255 insertions(+), 6 deletions(-) diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index f32c9a76..77721c82 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -1192,7 +1192,7 @@ components: properties: bricks: items: - $ref: '#/components/schemas/BrickInstance' + $ref: '#/components/schemas/BrickInstanceListItem' nullable: true type: array type: object @@ -1380,6 +1380,33 @@ components: for backward compatibility.' type: object type: object + BrickInstanceListItem: + properties: + author: + type: string + category: + type: string + config_variables: + items: + $ref: '#/components/schemas/BrickConfigVariable' + type: array + id: + type: string + model: + type: string + name: + type: string + require_model: + type: boolean + status: + type: string + variables: + additionalProperties: + type: string + description: 'Deprecated: use config_variables instead. This field is kept + for backward compatibility.' + type: object + type: object BrickListItem: properties: author: diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index 496680c9..25472727 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -66,7 +66,7 @@ type AIModelsListResult struct { // AppBrickInstancesResult defines model for AppBrickInstancesResult. type AppBrickInstancesResult struct { - Bricks *[]BrickInstance `json:"bricks"` + Bricks *[]BrickInstanceListItem `json:"bricks"` } // AppDetailedBrick defines model for AppDetailedBrick. @@ -174,6 +174,21 @@ type BrickInstance struct { Variables *map[string]string `json:"variables,omitempty"` } +// BrickInstanceListItem defines model for BrickInstanceListItem. +type BrickInstanceListItem struct { + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + ConfigVariables *[]BrickConfigVariable `json:"config_variables,omitempty"` + Id *string `json:"id,omitempty"` + Model *string `json:"model,omitempty"` + Name *string `json:"name,omitempty"` + RequireModel *bool `json:"require_model,omitempty"` + Status *string `json:"status,omitempty"` + + // Variables Deprecated: use config_variables instead. This field is kept for backward compatibility. + Variables *map[string]string `json:"variables,omitempty"` +} + // BrickListItem defines model for BrickListItem. type BrickListItem struct { Author *string `json:"author,omitempty"` diff --git a/internal/e2e/daemon/bricks_instance_test.go b/internal/e2e/daemon/bricks_instance_test.go index 0a6375bc..1b8ee7c5 100644 --- a/internal/e2e/daemon/bricks_instance_test.go +++ b/internal/e2e/daemon/bricks_instance_test.go @@ -97,11 +97,20 @@ func TestGetAppBrickInstances(t *testing.T) { var actualBody models.ErrorResponse createResp, httpClient := setupTestApp(t) t.Run("GetAppBrickInstances_Success", func(t *testing.T) { + expectedVariables := map[string]string{ + "CUSTOM_MODEL_PATH": "/home/arduino/.arduino-bricks/ei-models", + "EI_CLASSIFICATION_MODEL": "/models/ootb/ei/mobilenet-v2-224px.eim", + } + brickInstances, err := httpClient.GetAppBrickInstancesWithResponse(t.Context(), *createResp.JSON201.Id, func(ctx context.Context, req *http.Request) error { return nil }) require.NoError(t, err) require.Len(t, *brickInstances.JSON200.Bricks, 1) require.Equal(t, ImageClassifactionBrickID, *(*brickInstances.JSON200.Bricks)[0].Id) require.Equal(t, expectedConfigVariables, *(*brickInstances.JSON200.Bricks)[0].ConfigVariables) + require.Equal(t, "Arduino", *(*brickInstances.JSON200.Bricks)[0].Author) + require.Equal(t, "video", *(*brickInstances.JSON200.Bricks)[0].Category) + require.True(t, *(*brickInstances.JSON200.Bricks)[0].RequireModel) + require.Equal(t, expectedVariables, *(*brickInstances.JSON200.Bricks)[0].Variables) }) diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index df49c1ec..85e6e601 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -71,7 +71,7 @@ func (s *Service) List() (BrickListResult, error) { } func (s *Service) AppBrickInstancesList(a *app.ArduinoApp) (AppBrickInstancesResult, error) { - res := AppBrickInstancesResult{BrickInstances: make([]BrickInstance, len(a.Descriptor.Bricks))} + res := AppBrickInstancesResult{BrickInstances: make([]BrickInstanceListItem, len(a.Descriptor.Bricks))} for i, brickInstance := range a.Descriptor.Bricks { brick, found := s.bricksIndex.FindBrickByID(brickInstance.ID) if !found { @@ -80,7 +80,7 @@ func (s *Service) AppBrickInstancesList(a *app.ArduinoApp) (AppBrickInstancesRes variablesMap, configVariables := getBrickConfigDetails(brick, brickInstance.Variables) - res.BrickInstances[i] = BrickInstance{ + res.BrickInstances[i] = BrickInstanceListItem{ ID: brick.ID, Name: brick.Name, Author: "Arduino", // TODO: for now we only support our bricks diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index 0077a5b2..266d41ef 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -644,3 +644,191 @@ func TestAppBrickInstanceModelsDetails(t *testing.T) { }) } } + +func TestAppBrickInstancesList(t *testing.T) { + + bIndex := &bricksindex.BricksIndex{ + Bricks: []bricksindex.Brick{ + { + ID: "arduino:weather_forecast", + Name: "Weather Forecast", + Category: "miscellaneous", + RequireModel: false, + Variables: []bricksindex.BrickVariable{}, + }, + { + ID: "arduino:object_detection", + Name: "Object Detection", + Category: "video", + ModelName: "yolox-object-detection", + RequireModel: true, + Variables: []bricksindex.BrickVariable{ + {Name: "CUSTOM_MODEL_PATH", DefaultValue: "/home/arduino/.arduino-bricks/ei-models", Description: "path to the custom model directory"}, + {Name: "EI_OBJ_DETECTION_MODEL", DefaultValue: "/models/ootb/ei/yolo-x-nano.eim", Description: "path to the model file"}, + }, + }, + { + ID: "arduino:audio_classification", + Name: "Audio Classification", + Category: "audio", + ModelName: "glass-breaking", + RequireModel: true, + Variables: []bricksindex.BrickVariable{ + {Name: "CUSTOM_MODEL_PATH", DefaultValue: "/home/arduino/.arduino-bricks/ei-models"}, + {Name: "EI_AUDIO_CLASSIFICATION_MODEL", DefaultValue: "/models/ootb/ei/glass-breaking.eim"}, + }, + }, + { + ID: "arduino:streamlit_ui", + Name: "WebUI - Streamlit", + Category: "ui", + RequireModel: false, + Ports: []string{"7000", "8000"}, + }, + }, + } + + svc := &Service{ + bricksIndex: bIndex, + modelsIndex: &modelsindex.ModelsIndex{}, + } + + tests := []struct { + name string + app *app.ArduinoApp + expectedError string + validate func(*testing.T, AppBrickInstancesResult) + }{ + { + name: "Error - Brick not found in Index", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + {ID: "arduino:non_existent_brick"}, + }, + }, + }, + expectedError: "brick not found with id arduino:non_existent_brick", + }, + { + name: "Success - Empty App", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{}, + }, + }, + validate: func(t *testing.T, res AppBrickInstancesResult) { + require.Empty(t, res.BrickInstances) + }, + }, + { + name: "Success - Simple Brick", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + {ID: "arduino:weather_forecast"}, + }, + }, + }, + validate: func(t *testing.T, res AppBrickInstancesResult) { + require.Len(t, res.BrickInstances, 1) + brick := res.BrickInstances[0] + + require.Equal(t, "arduino:weather_forecast", brick.ID) + require.Equal(t, "Weather Forecast", brick.Name) + require.Equal(t, "miscellaneous", brick.Category) + require.Equal(t, "installed", brick.Status) + require.Equal(t, "Arduino", brick.Author) + require.False(t, brick.RequireModel) + require.Empty(t, brick.ModelID) + }, + }, + { + name: "Success - Brick with Model Configured", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + { + ID: "arduino:object_detection", + Model: "face-detection", // default model overridden + Variables: map[string]string{ + "CUSTOM_MODEL_PATH": "/custom/path", + }, + }, + }, + }, + }, + validate: func(t *testing.T, res AppBrickInstancesResult) { + require.Len(t, res.BrickInstances, 1) + brick := res.BrickInstances[0] + + require.Equal(t, "arduino:object_detection", brick.ID) + require.Equal(t, "video", brick.Category) + require.True(t, brick.RequireModel) + require.Equal(t, "face-detection", brick.ModelID) + + foundCustom := false + for _, v := range brick.ConfigVariables { + if v.Name == "CUSTOM_MODEL_PATH" { + require.Equal(t, "/custom/path", v.Value) + foundCustom = true + } + } + require.True(t, foundCustom, "Variable CUSTOM_MODEL_PATH should be present and overridden") + }, + }, + { + name: "Success - Multiple Bricks", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + {ID: "arduino:streamlit_ui"}, + {ID: "arduino:audio_classification", Model: "glass-breaking"}, + }, + }, + }, + validate: func(t *testing.T, res AppBrickInstancesResult) { + require.Len(t, res.BrickInstances, 2) + + // Brick 1: Streamlit UI + b1 := res.BrickInstances[0] + require.Equal(t, "arduino:streamlit_ui", b1.ID) + require.Equal(t, "WebUI - Streamlit", b1.Name) + require.Equal(t, "Arduino", b1.Author) + require.Equal(t, "ui", b1.Category) + require.Equal(t, "installed", b1.Status) + require.Equal(t, "", b1.ModelID) + require.Empty(t, b1.Variables) + require.Empty(t, b1.ConfigVariables) + require.False(t, b1.RequireModel) + + // Brick 2: Audio Classification + b2 := res.BrickInstances[1] + require.Equal(t, "arduino:audio_classification", b2.ID) + require.Equal(t, "audio", b2.Category) + require.True(t, b2.RequireModel) + require.Equal(t, "glass-breaking", b2.ModelID) + require.Equal(t, 2, len(b2.ConfigVariables)) + require.Equal(t, "/home/arduino/.arduino-bricks/ei-models", b2.ConfigVariables[0].Value) + require.Equal(t, "/models/ootb/ei/glass-breaking.eim", b2.ConfigVariables[1].Value) + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + result, err := svc.AppBrickInstancesList(tt.app) + + if tt.expectedError != "" { + require.Error(t, err) + require.Contains(t, err.Error(), tt.expectedError) + return + } + + require.NoError(t, err) + if tt.validate != nil { + tt.validate(t, result) + } + }) + } +} diff --git a/internal/orchestrator/bricks/types.go b/internal/orchestrator/bricks/types.go index 1fca898f..bd63bd57 100644 --- a/internal/orchestrator/bricks/types.go +++ b/internal/orchestrator/bricks/types.go @@ -30,9 +30,19 @@ type BrickListItem struct { } type AppBrickInstancesResult struct { - BrickInstances []BrickInstance `json:"bricks"` + BrickInstances []BrickInstanceListItem `json:"bricks"` +} +type BrickInstanceListItem struct { + ID string `json:"id"` + Name string `json:"name"` + Author string `json:"author"` + Category string `json:"category"` + Status string `json:"status"` + Variables map[string]string `json:"variables,omitempty" description:"Deprecated: use config_variables instead. This field is kept for backward compatibility."` + ConfigVariables []BrickConfigVariable `json:"config_variables,omitempty"` + RequireModel bool `json:"require_model"` + ModelID string `json:"model,omitempty"` } - type BrickInstance struct { ID string `json:"id"` Name string `json:"name"` From 86853c9db36164cdcf564704a0b1f9acab00ccda Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Fri, 28 Nov 2025 14:20:10 +0100 Subject: [PATCH 12/27] remove no-python option for creating app (#121) * remove no-python option for creating app * remove flag no-python * fix test * fix test --- cmd/arduino-app-cli/app/new.go | 8 ++--- cmd/gendoc/docs.go | 1 - internal/api/docs/openapi.yaml | 6 ---- internal/api/handlers/app_create.go | 9 ------ internal/e2e/client/client.gen.go | 19 ------------ internal/e2e/daemon/app_test.go | 30 ------------------- .../app/generator/app_generator.go | 23 ++++---------- .../app/generator/app_generator_test.go | 12 ++------ .../testdata/app-no-python.golden/.gitignore | 2 -- .../testdata/app-no-python.golden/README.md | 7 ----- .../testdata/app-no-python.golden/app.yaml | 18 ----------- .../app-no-python.golden/sketch/sketch.ino | 9 ------ .../app-no-python.golden/sketch/sketch.yaml | 11 ------- internal/orchestrator/orchestrator.go | 14 +-------- 14 files changed, 11 insertions(+), 158 deletions(-) delete mode 100644 internal/orchestrator/app/generator/testdata/app-no-python.golden/.gitignore delete mode 100644 internal/orchestrator/app/generator/testdata/app-no-python.golden/README.md delete mode 100644 internal/orchestrator/app/generator/testdata/app-no-python.golden/app.yaml delete mode 100644 internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.ino delete mode 100644 internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.yaml diff --git a/cmd/arduino-app-cli/app/new.go b/cmd/arduino-app-cli/app/new.go index 066f9a7b..fec533b9 100644 --- a/cmd/arduino-app-cli/app/new.go +++ b/cmd/arduino-app-cli/app/new.go @@ -32,7 +32,6 @@ func newCreateCmd(cfg config.Configuration) *cobra.Command { icon string description string bricks []string - noPyton bool noSketch bool fromApp string ) @@ -44,7 +43,7 @@ func newCreateCmd(cfg config.Configuration) *cobra.Command { RunE: func(cmd *cobra.Command, args []string) error { cobra.MinimumNArgs(1) name := args[0] - return createHandler(cmd.Context(), cfg, name, icon, description, noPyton, noSketch, fromApp) + return createHandler(cmd.Context(), cfg, name, icon, description, noSketch, fromApp) }, } @@ -52,14 +51,12 @@ func newCreateCmd(cfg config.Configuration) *cobra.Command { cmd.Flags().StringVarP(&description, "description", "d", "", "Description for the app") cmd.Flags().StringVarP(&fromApp, "from-app", "", "", "Create the new app from the path of an existing app") cmd.Flags().StringArrayVarP(&bricks, "bricks", "b", []string{}, "List of bricks to include in the app") - cmd.Flags().BoolVarP(&noPyton, "no-python", "", false, "Do not include Python files") cmd.Flags().BoolVarP(&noSketch, "no-sketch", "", false, "Do not include Sketch files") - cmd.MarkFlagsMutuallyExclusive("no-python", "no-sketch") return cmd } -func createHandler(ctx context.Context, cfg config.Configuration, name string, icon string, description string, noPython, noSketch bool, fromApp string) error { +func createHandler(ctx context.Context, cfg config.Configuration, name string, icon string, description string, noSketch bool, fromApp string) error { if fromApp != "" { id, err := servicelocator.GetAppIDProvider().ParseID(fromApp) if err != nil { @@ -88,7 +85,6 @@ func createHandler(ctx context.Context, cfg config.Configuration, name string, i Name: name, Icon: icon, Description: description, - SkipPython: noPython, SkipSketch: noSketch, }, servicelocator.GetAppIDProvider(), cfg) if err != nil { diff --git a/cmd/gendoc/docs.go b/cmd/gendoc/docs.go index 8e85e2a8..0b36ffe8 100644 --- a/cmd/gendoc/docs.go +++ b/cmd/gendoc/docs.go @@ -609,7 +609,6 @@ Contains a JSON object with the details of an error. Path: "/v1/apps", Request: handlers.CreateAppRequest{}, Parameters: (*struct { - SkipPython bool `query:"skip-python" description:"If true, the app will not be created with the python part."` SkipSketch bool `query:"skip-sketch" description:"If true, the app will not be created with the sketch part."` })(nil), CustomSuccessResponse: &CustomResponseDef{ diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index 77721c82..82619741 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -45,12 +45,6 @@ paths: description: Creates a new app in the default app location. operationId: createApp parameters: - - description: If true, the app will not be created with the python part. - in: query - name: skip-python - schema: - description: If true, the app will not be created with the python part. - type: boolean - description: If true, the app will not be created with the sketch part. in: query name: skip-sketch diff --git a/internal/api/handlers/app_create.go b/internal/api/handlers/app_create.go index ed26ee61..9e757bfe 100644 --- a/internal/api/handlers/app_create.go +++ b/internal/api/handlers/app_create.go @@ -44,17 +44,9 @@ func HandleAppCreate( defer r.Body.Close() queryParams := r.URL.Query() - skipPythonStr := queryParams.Get("skip-python") skipSketchStr := queryParams.Get("skip-sketch") - - skipPython := queryParamsValidator(skipPythonStr) skipSketch := queryParamsValidator(skipSketchStr) - if skipPython && skipSketch { - render.EncodeResponse(w, http.StatusBadRequest, models.ErrorResponse{Details: "cannot skip both python and sketch"}) - return - } - var req CreateAppRequest if err := json.NewDecoder(r.Body).Decode(&req); err != nil { slog.Error("unable to decode app create request", slog.String("error", err.Error())) @@ -68,7 +60,6 @@ func HandleAppCreate( Name: req.Name, Icon: req.Icon, Description: req.Description, - SkipPython: skipPython, SkipSketch: skipSketch, }, idProvider, diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index 25472727..6e9ef61c 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -423,9 +423,6 @@ type GetAppsParams struct { // CreateAppParams defines parameters for CreateApp. type CreateAppParams struct { - // SkipPython If true, the app will not be created with the python part. - SkipPython *bool `form:"skip-python,omitempty" json:"skip-python,omitempty"` - // SkipSketch If true, the app will not be created with the sketch part. SkipSketch *bool `form:"skip-sketch,omitempty" json:"skip-sketch,omitempty"` } @@ -1287,22 +1284,6 @@ func NewCreateAppRequestWithBody(server string, params *CreateAppParams, content if params != nil { queryValues := queryURL.Query() - if params.SkipPython != nil { - - if queryFrag, err := runtime.StyleParamWithLocation("form", true, "skip-python", runtime.ParamLocationQuery, *params.SkipPython); err != nil { - return nil, err - } else if parsed, err := url.ParseQuery(queryFrag); err != nil { - return nil, err - } else { - for k, v := range parsed { - for _, v2 := range v { - queryValues.Add(k, v2) - } - } - } - - } - if params.SkipSketch != nil { if queryFrag, err := runtime.StyleParamWithLocation("form", true, "skip-sketch", runtime.ParamLocationQuery, *params.SkipSketch); err != nil { diff --git a/internal/e2e/daemon/app_test.go b/internal/e2e/daemon/app_test.go index b62b882b..86479fc9 100644 --- a/internal/e2e/daemon/app_test.go +++ b/internal/e2e/daemon/app_test.go @@ -93,7 +93,6 @@ func TestCreateApp(t *testing.T) { { name: "should return 400 bad request when icon is not a single emoji", parameters: client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, body: client.CreateAppRequest{ @@ -107,7 +106,6 @@ func TestCreateApp(t *testing.T) { { name: "should create app successfully when icon is empty", parameters: client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, body: client.CreateAppRequest{ @@ -121,7 +119,6 @@ func TestCreateApp(t *testing.T) { { name: "should return 201 Created on first successful creation", parameters: client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, body: defaultRequestBody, @@ -130,30 +127,15 @@ func TestCreateApp(t *testing.T) { { name: "should return 409 Conflict when creating a duplicate app", parameters: client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, body: defaultRequestBody, expectedStatusCode: http.StatusConflict, expectedErrorDetails: f.Ptr("app already exists"), }, - { - name: "should return 201 Created on successful creation with skip_python", - parameters: client.CreateAppParams{ - SkipPython: f.Ptr(true), - SkipSketch: f.Ptr(false), - }, - body: client.CreateAppRequest{ - Icon: f.Ptr("🌎"), - Name: "HelloWorld_2", - Description: f.Ptr("My HelloWorld_2 description"), - }, - expectedStatusCode: http.StatusCreated, - }, { name: "should return 201 Created on successful creation with skip_sketch", parameters: client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(true), }, body: client.CreateAppRequest{ @@ -163,16 +145,6 @@ func TestCreateApp(t *testing.T) { }, expectedStatusCode: http.StatusCreated, }, - { - name: "should return 400 Bad Request when creating an app with both filters set to true", - parameters: client.CreateAppParams{ - SkipPython: f.Ptr(true), - SkipSketch: f.Ptr(true), - }, - body: defaultRequestBody, - expectedStatusCode: http.StatusBadRequest, - expectedErrorDetails: f.Ptr("cannot skip both python and sketch"), - }, } for _, tc := range testCases { @@ -985,7 +957,6 @@ func TestAppList(t *testing.T) { expectedAppNumber := 5 for i := 0; i < expectedAppNumber; i++ { r, err := httpClient.CreateApp(t.Context(), &client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, client.CreateAppRequest{ Icon: f.Ptr("🌎"), @@ -1003,7 +974,6 @@ func TestAppList(t *testing.T) { t.Run("AppListDefault_success", func(t *testing.T) { r, err := httpClient.CreateApp(t.Context(), &client.CreateAppParams{ - SkipPython: f.Ptr(false), SkipSketch: f.Ptr(false), }, client.CreateAppRequest{ Icon: f.Ptr("🌎"), diff --git a/internal/orchestrator/app/generator/app_generator.go b/internal/orchestrator/app/generator/app_generator.go index 0eec26ae..e77a48f7 100644 --- a/internal/orchestrator/app/generator/app_generator.go +++ b/internal/orchestrator/app/generator/app_generator.go @@ -33,35 +33,22 @@ import ( const templateRoot = "app_template" -type Opts int - -const ( - None Opts = 0 - SkipSketch Opts = 1 << iota - SkipPython -) - //go:embed all:app_template var fsApp embed.FS -func GenerateApp(basePath *paths.Path, app app.AppDescriptor, options Opts) error { +func GenerateApp(basePath *paths.Path, app app.AppDescriptor, skipSketch bool) error { if err := basePath.MkdirAll(); err != nil { return fmt.Errorf("failed to create app directory: %w", err) } - isSkipSketchSet := options&SkipSketch != 0 - isSkipPythonSet := options&SkipPython != 0 - - if !isSkipSketchSet { + if !skipSketch { if err := generateSketch(basePath); err != nil { return fmt.Errorf("failed to create sketch: %w", err) } } - if !isSkipPythonSet { - if err := generatePython(basePath); err != nil { - return fmt.Errorf("failed to create python: %w", err) - } - } + if err := generatePython(basePath); err != nil { + return fmt.Errorf("failed to create python: %w", err) + } if err := generateApp(basePath, app); err != nil { return fmt.Errorf("failed to create app.yaml: %w", err) } diff --git a/internal/orchestrator/app/generator/app_generator_test.go b/internal/orchestrator/app/generator/app_generator_test.go index 5763d386..729ce950 100644 --- a/internal/orchestrator/app/generator/app_generator_test.go +++ b/internal/orchestrator/app/generator/app_generator_test.go @@ -40,31 +40,25 @@ func TestGenerateApp(t *testing.T) { testCases := []struct { name string - options Opts + skipSketch bool goldenPath string }{ { name: "generate complete app", - options: None, goldenPath: "testdata/app-all.golden", }, { name: "skip sketch", - options: SkipSketch, + skipSketch: true, goldenPath: "testdata/app-no-sketch.golden", }, - { - name: "skip python", - options: SkipPython, - goldenPath: "testdata/app-no-python.golden", - }, } for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { tempDir := t.TempDir() - err := GenerateApp(paths.New(tempDir), baseApp, tc.options) + err := GenerateApp(paths.New(tempDir), baseApp, tc.skipSketch) require.NoError(t, err) if os.Getenv("UPDATE_GOLDEN") == "true" { diff --git a/internal/orchestrator/app/generator/testdata/app-no-python.golden/.gitignore b/internal/orchestrator/app/generator/testdata/app-no-python.golden/.gitignore deleted file mode 100644 index 90ae0403..00000000 --- a/internal/orchestrator/app/generator/testdata/app-no-python.golden/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -# ignore app cache folder -.cache/ diff --git a/internal/orchestrator/app/generator/testdata/app-no-python.golden/README.md b/internal/orchestrator/app/generator/testdata/app-no-python.golden/README.md deleted file mode 100644 index d1bf5cce..00000000 --- a/internal/orchestrator/app/generator/testdata/app-no-python.golden/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# 🚀 test app all - -### Description - -test description. - -Available application ports: 8080, 9000, 90 diff --git a/internal/orchestrator/app/generator/testdata/app-no-python.golden/app.yaml b/internal/orchestrator/app/generator/testdata/app-no-python.golden/app.yaml deleted file mode 100644 index 7d1f9868..00000000 --- a/internal/orchestrator/app/generator/testdata/app-no-python.golden/app.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# app.yaml: The main configuration file for your Arduino App. -# This file describes the application's metadata and properties. - -# The user-visible name of the application. -name: test app all - -# A brief description of what the application does. -description: "test description." - -# The icon for the application, can be an emoji or a short string. -icon: 🚀 - -# A list of network ports that the application exposes. -# Example: [80, 443] -ports: [8080, 9000, 90] - -# A list of bricks used by this application. -bricks: [] diff --git a/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.ino b/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.ino deleted file mode 100644 index 95c2b6eb..00000000 --- a/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.ino +++ /dev/null @@ -1,9 +0,0 @@ -void setup() { - // put your setup code here, to run once: - -} - -void loop() { - // put your main code here, to run repeatedly: - -} diff --git a/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.yaml b/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.yaml deleted file mode 100644 index d9fe917e..00000000 --- a/internal/orchestrator/app/generator/testdata/app-no-python.golden/sketch/sketch.yaml +++ /dev/null @@ -1,11 +0,0 @@ -profiles: - default: - fqbn: arduino:zephyr:unoq - platforms: - - platform: arduino:zephyr - libraries: - - MsgPack (0.4.2) - - DebugLog (0.8.4) - - ArxContainer (0.7.0) - - ArxTypeTraits (0.3.1) -default_profile: default diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 841e31f1..745ff922 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -748,7 +748,6 @@ type CreateAppRequest struct { Name string Icon string Description string - SkipPython bool SkipSketch bool } @@ -762,9 +761,6 @@ func CreateApp( idProvider *app.IDProvider, cfg config.Configuration, ) (CreateAppResponse, error) { - if req.SkipPython && req.SkipSketch { - return CreateAppResponse{}, fmt.Errorf("cannot skip both python and sketch") - } if req.Name == "" { return CreateAppResponse{}, fmt.Errorf("app name cannot be empty") } @@ -783,16 +779,8 @@ func CreateApp( if err := newApp.IsValid(); err != nil { return CreateAppResponse{}, fmt.Errorf("%w: %v", app.ErrInvalidApp, err) } - var options appgenerator.Opts = 0 - - if req.SkipSketch { - options |= appgenerator.SkipSketch - } - if req.SkipPython { - options |= appgenerator.SkipPython - } - if err := appgenerator.GenerateApp(basePath, newApp, options); err != nil { + if err := appgenerator.GenerateApp(basePath, newApp, req.SkipSketch); err != nil { return CreateAppResponse{}, fmt.Errorf("failed to create app: %w", err) } id, err := idProvider.IDFromPath(basePath) From 3687b09ceec3038e28341532dd002d09a2aca7db Mon Sep 17 00:00:00 2001 From: Davide Date: Fri, 28 Nov 2025 20:01:40 +0100 Subject: [PATCH 13/27] fix: manage missing sketch folder (#123) * refactor: rename MainSketchPath to mainSketchPath and update related methods * test: add tests for sketch library operations when sketch folder is missing * fix: correct description formatting in app.yaml for MissingSketch --- internal/orchestrator/app/app.go | 13 ++- internal/orchestrator/app/app_test.go | 17 +++- .../app/testdata/MissingSketch/app.yaml | 2 + .../app/testdata/MissingSketch/python/main.py | 2 + internal/orchestrator/orchestrator.go | 22 +++-- internal/orchestrator/sketch_libs.go | 21 ++++- internal/orchestrator/sketch_libs_test.go | 88 +++++++++++++++++++ 7 files changed, 148 insertions(+), 17 deletions(-) create mode 100644 internal/orchestrator/app/testdata/MissingSketch/app.yaml create mode 100644 internal/orchestrator/app/testdata/MissingSketch/python/main.py create mode 100644 internal/orchestrator/sketch_libs_test.go diff --git a/internal/orchestrator/app/app.go b/internal/orchestrator/app/app.go index 813ca64c..dff16ed3 100644 --- a/internal/orchestrator/app/app.go +++ b/internal/orchestrator/app/app.go @@ -30,7 +30,7 @@ import ( type ArduinoApp struct { Name string MainPythonFile *paths.Path - MainSketchPath *paths.Path + mainSketchPath *paths.Path FullPath *paths.Path // FullPath is the path to the App folder Descriptor AppDescriptor } @@ -76,10 +76,10 @@ func Load(appPath *paths.Path) (ArduinoApp, error) { if appPath.Join("sketch", "sketch.ino").Exist() { // TODO: check sketch casing? - app.MainSketchPath = appPath.Join("sketch") + app.mainSketchPath = appPath.Join("sketch") } - if app.MainPythonFile == nil && app.MainSketchPath == nil { + if app.MainPythonFile == nil && app.mainSketchPath == nil { return ArduinoApp{}, errors.New("main python file and sketch file missing from app") } @@ -91,6 +91,13 @@ func Load(appPath *paths.Path) (ArduinoApp, error) { return app, nil } +func (a *ArduinoApp) GetSketchPath() (*paths.Path, bool) { + if a == nil || a.mainSketchPath == nil { + return nil, false + } + return a.mainSketchPath, true +} + // GetDescriptorPath returns the path to the app descriptor file (app.yaml or app.yml) func (a *ArduinoApp) GetDescriptorPath() *paths.Path { descriptorFile := a.FullPath.Join("app.yaml") diff --git a/internal/orchestrator/app/app_test.go b/internal/orchestrator/app/app_test.go index db9cc048..d8b36eef 100644 --- a/internal/orchestrator/app/app_test.go +++ b/internal/orchestrator/app/app_test.go @@ -58,9 +58,22 @@ func TestLoad(t *testing.T) { assert.NotNil(t, app.MainPythonFile) assert.Equal(t, f.Must(filepath.Abs("testdata/AppSimple/python/main.py")), app.MainPythonFile.String()) + sketchPath, ok := app.GetSketchPath() + assert.True(t, ok) + assert.NotNil(t, sketchPath) + assert.Equal(t, f.Must(filepath.Abs("testdata/AppSimple/sketch")), sketchPath.String()) + }) + + t.Run("it loads an app with misssing sketch folder", func(t *testing.T) { + app, err := Load(paths.New("testdata/MissingSketch")) + assert.NoError(t, err) + assert.NotEmpty(t, app) + + assert.NotNil(t, app.MainPythonFile) - assert.NotNil(t, app.MainSketchPath) - assert.Equal(t, f.Must(filepath.Abs("testdata/AppSimple/sketch")), app.MainSketchPath.String()) + sketchPath, ok := app.GetSketchPath() + assert.False(t, ok) + assert.Nil(t, sketchPath) }) } diff --git a/internal/orchestrator/app/testdata/MissingSketch/app.yaml b/internal/orchestrator/app/testdata/MissingSketch/app.yaml new file mode 100644 index 00000000..adabfa89 --- /dev/null +++ b/internal/orchestrator/app/testdata/MissingSketch/app.yaml @@ -0,0 +1,2 @@ +name: "An app with only python" +description: "An app with only python" diff --git a/internal/orchestrator/app/testdata/MissingSketch/python/main.py b/internal/orchestrator/app/testdata/MissingSketch/python/main.py new file mode 100644 index 00000000..f353b145 --- /dev/null +++ b/internal/orchestrator/app/testdata/MissingSketch/python/main.py @@ -0,0 +1,2 @@ + +print("Hello world!") \ No newline at end of file diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 745ff922..51a808cd 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -154,7 +154,8 @@ func StartApp( if !yield(StreamMessage{progress: &Progress{Name: "preparing", Progress: 0.0}}) { return } - if appToStart.MainSketchPath != nil { + + if _, ok := appToStart.GetSketchPath(); ok { if !yield(StreamMessage{progress: &Progress{Name: "sketch compiling and uploading", Progress: 0.0}}) { return } @@ -175,7 +176,7 @@ func StartApp( return } provisionStartProgress := float32(0.0) - if appToStart.MainSketchPath != nil { + if _, ok := appToStart.GetSketchPath(); ok { provisionStartProgress = 10.0 } @@ -402,7 +403,7 @@ func stopAppWithCmd(ctx context.Context, docker command.Cli, app app.ArduinoApp, } }) - if app.MainSketchPath != nil { + if _, ok := app.GetSketchPath(); ok { // Before stopping the microcontroller we want to make sure that the app was running. appStatus, err := getAppStatus(ctx, docker, app) if err != nil { @@ -1150,9 +1151,12 @@ func compileUploadSketch( defer func() { _, _ = srv.Destroy(ctx, &rpc.DestroyRequest{Instance: inst}) }() - sketchPath := arduinoApp.MainSketchPath.String() + sketchPath, ok := arduinoApp.GetSketchPath() + if !ok { + return fmt.Errorf("no sketch path found in the Arduino app") + } buildPath := arduinoApp.SketchBuildPath().String() - sketchResp, err := srv.LoadSketch(ctx, &rpc.LoadSketchRequest{SketchPath: sketchPath}) + sketchResp, err := srv.LoadSketch(ctx, &rpc.LoadSketchRequest{SketchPath: sketchPath.String()}) if err != nil { return err } @@ -1163,7 +1167,7 @@ func compileUploadSketch( } initReq := &rpc.InitRequest{ Instance: inst, - SketchPath: sketchPath, + SketchPath: sketchPath.String(), Profile: profile, } @@ -1203,7 +1207,7 @@ func compileUploadSketch( compileReq := rpc.CompileRequest{ Instance: inst, Fqbn: "arduino:zephyr:unoq", - SketchPath: sketchPath, + SketchPath: sketchPath.String(), BuildPath: buildPath, Jobs: 2, } @@ -1229,12 +1233,12 @@ func compileUploadSketch( slog.Info("Used library " + lib.GetName() + " (" + lib.GetVersion() + ") in " + lib.GetInstallDir()) } - if err := uploadSketchInRam(ctx, w, srv, inst, sketchPath, buildPath); err != nil { + if err := uploadSketchInRam(ctx, w, srv, inst, sketchPath.String(), buildPath); err != nil { slog.Warn("failed to upload in ram mode, trying to configure the board in ram mode, and retry", slog.String("error", err.Error())) if err := configureMicroInRamMode(ctx, w, srv, inst); err != nil { return err } - return uploadSketchInRam(ctx, w, srv, inst, sketchPath, buildPath) + return uploadSketchInRam(ctx, w, srv, inst, sketchPath.String(), buildPath) } return nil } diff --git a/internal/orchestrator/sketch_libs.go b/internal/orchestrator/sketch_libs.go index 3ef3b7ff..cb058924 100644 --- a/internal/orchestrator/sketch_libs.go +++ b/internal/orchestrator/sketch_libs.go @@ -17,6 +17,7 @@ package orchestrator import ( "context" + "errors" "log/slog" "time" @@ -30,6 +31,11 @@ import ( const indexUpdateInterval = 10 * time.Minute func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryReleaseID, addDeps bool) ([]LibraryReleaseID, error) { + sketchPath, ok := app.GetSketchPath() + if !ok { + return []LibraryReleaseID{}, errors.New("cannot add a library. Missing sketch folder") + } + srv := commands.NewArduinoCoreServer() var inst *rpc.Instance if res, err := srv.Create(ctx, &rpc.CreateRequest{}); err != nil { @@ -58,7 +64,7 @@ func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryRel resp, err := srv.ProfileLibAdd(ctx, &rpc.ProfileLibAddRequest{ Instance: inst, - SketchPath: app.MainSketchPath.String(), + SketchPath: sketchPath.String(), Library: &rpc.SketchProfileLibraryReference{ Library: &rpc.SketchProfileLibraryReference_IndexLibrary_{ IndexLibrary: &rpc.SketchProfileLibraryReference_IndexLibrary{ @@ -77,6 +83,10 @@ func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryRel } func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryReleaseID) (LibraryReleaseID, error) { + sketchPath, ok := app.GetSketchPath() + if !ok { + return LibraryReleaseID{}, errors.New("cannot remove a library. Missing sketch folder") + } srv := commands.NewArduinoCoreServer() var inst *rpc.Instance if res, err := srv.Create(ctx, &rpc.CreateRequest{}); err != nil { @@ -102,7 +112,7 @@ func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef Library }, }, }, - SketchPath: app.MainSketchPath.String(), + SketchPath: sketchPath.String(), }) if err != nil { return LibraryReleaseID{}, err @@ -111,10 +121,15 @@ func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef Library } func ListSketchLibraries(ctx context.Context, app app.ArduinoApp) ([]LibraryReleaseID, error) { + sketchPath, ok := app.GetSketchPath() + if !ok { + return []LibraryReleaseID{}, errors.New("cannot list libraries. Missing sketch folder") + } + srv := commands.NewArduinoCoreServer() resp, err := srv.ProfileLibList(ctx, &rpc.ProfileLibListRequest{ - SketchPath: app.MainSketchPath.String(), + SketchPath: sketchPath.String(), }) if err != nil { return nil, err diff --git a/internal/orchestrator/sketch_libs_test.go b/internal/orchestrator/sketch_libs_test.go new file mode 100644 index 00000000..d863e60e --- /dev/null +++ b/internal/orchestrator/sketch_libs_test.go @@ -0,0 +1,88 @@ +// This file is part of arduino-app-cli. +// +// Copyright 2025 ARDUINO SA (http://www.arduino.cc/) +// +// This software is released under the GNU General Public License version 3, +// which covers the main part of arduino-app-cli. +// The terms of this license can be found at: +// https://www.gnu.org/licenses/gpl-3.0.en.html +// +// You can be released from the requirements of the above licenses by purchasing +// a commercial license. Buying such a license is mandatory if you want to +// modify or otherwise use the software for commercial activities involving the +// Arduino software without disclosing the source code of your own applications. +// To purchase a commercial license, send an email to license@arduino.cc. + +package orchestrator + +import ( + "context" + "testing" + + "github.com/arduino/go-paths-helper" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + + "github.com/arduino/arduino-app-cli/internal/orchestrator/app" +) + +func TestListSketchLibraries(t *testing.T) { + t.Run("fail to list libraries if the sketch folder is missing", func(t *testing.T) { + pythonApp, err := app.Load(createTestAppPythonOnly(t)) + require.NoError(t, err) + + libs, err := ListSketchLibraries(context.Background(), pythonApp) + require.Error(t, err) + assert.Contains(t, err.Error(), "cannot list libraries. Missing sketch folder") + assert.Empty(t, libs) + }) + + t.Run("fail to add library if the sketch folder is missing", func(t *testing.T) { + pythonApp, err := app.Load(createTestAppPythonOnly(t)) + require.NoError(t, err) + + libs, err := AddSketchLibrary(context.Background(), pythonApp, LibraryReleaseID{}, false) + require.Error(t, err) + assert.Contains(t, err.Error(), "cannot add a library. Missing sketch folder") + assert.Empty(t, libs) + }) + + t.Run("fail to remove library if the sketch folder is missing", func(t *testing.T) { + pythonApp, err := app.Load(createTestAppPythonOnly(t)) + require.NoError(t, err) + + id, err := RemoveSketchLibrary(context.Background(), pythonApp, LibraryReleaseID{}) + require.Error(t, err) + assert.Contains(t, err.Error(), "cannot remove a library. Missing sketch folder") + assert.Empty(t, id) + }) +} + +// Helper function to create a test app without sketch path (Python-only) +func createTestAppPythonOnly(t *testing.T) *paths.Path { + tempDir := t.TempDir() + + appYaml := paths.New(tempDir, "app.yaml") + require.NoError(t, appYaml.WriteFile([]byte(` +name: test-python-app +version: 1.0.0 +description: Test Python-only app +`))) + + // Create python directory and file + pythonDir := paths.New(tempDir, "python") + require.NoError(t, pythonDir.MkdirAll()) + + pythonFile := pythonDir.Join("main.py") + require.NoError(t, pythonFile.WriteFile([]byte(` +import time + +def main(): + print("Hello from Python!") + time.sleep(1) + +if __name__ == "__main__": + main() +`))) + return paths.New(tempDir) +} From 17f979f2fac03c6097af5d0d594661519aa62376 Mon Sep 17 00:00:00 2001 From: Marco Colombo Date: Mon, 1 Dec 2025 12:06:21 +0100 Subject: [PATCH 14/27] feat: mount /dev/snd/by-id in python container (#119) --- internal/orchestrator/provision.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/internal/orchestrator/provision.go b/internal/orchestrator/provision.go index c5ab52b6..eae5a380 100644 --- a/internal/orchestrator/provision.go +++ b/internal/orchestrator/provision.go @@ -335,6 +335,16 @@ func generateMainComposeFile( }) } } + if devices.hasSoundDevice { + // If we are adding sound devices, mount also /dev/snd/by-id if it exists to allow access to by-id links + if paths.New("/dev/snd/by-id").Exist() { + volumes = append(volumes, volume{ + Type: "bind", + Source: "/dev/snd/by-id", + Target: "/dev/snd/by-id", + }) + } + } volumes = addLedControl(volumes) From a7317dc2e1894df47578628f451ea43a24c916bd Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Mon, 1 Dec 2025 18:04:18 +0100 Subject: [PATCH 15/27] [API] Change the GET /v1/bricks/{id} variables field (#126) * add config variables for brick details * update unit tests * update openapi and e2e test * code review fix * make lint happy --- internal/api/docs/openapi.yaml | 8 ++++ internal/e2e/client/client.gen.go | 29 +++++++------- internal/e2e/daemon/brick_test.go | 17 +++++++++ internal/orchestrator/bricks/bricks.go | 42 +++++++++++++++------ internal/orchestrator/bricks/bricks_test.go | 22 ++++++++++- internal/orchestrator/bricks/types.go | 3 +- 6 files changed, 94 insertions(+), 27 deletions(-) diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index 82619741..fdecc22d 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -1320,6 +1320,11 @@ components: $ref: '#/components/schemas/AIModel' nullable: true type: array + config_variables: + items: + $ref: '#/components/schemas/BrickConfigVariable' + nullable: true + type: array description: type: string id: @@ -1340,6 +1345,9 @@ components: variables: additionalProperties: $ref: '#/components/schemas/BrickVariable' + description: 'Deprecated: use config_variables instead. This field is kept + for backward compatibility.' + nullable: true type: object type: object BrickInstance: diff --git a/internal/e2e/client/client.gen.go b/internal/e2e/client/client.gen.go index 6e9ef61c..eb1a7971 100644 --- a/internal/e2e/client/client.gen.go +++ b/internal/e2e/client/client.gen.go @@ -143,19 +143,22 @@ type BrickCreateUpdateRequest struct { // BrickDetailsResult defines model for BrickDetailsResult. type BrickDetailsResult struct { - ApiDocsPath *string `json:"api_docs_path,omitempty"` - Author *string `json:"author,omitempty"` - Category *string `json:"category,omitempty"` - CodeExamples *[]CodeExample `json:"code_examples"` - CompatibleModels *[]AIModel `json:"compatible_models"` - Description *string `json:"description,omitempty"` - Id *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Readme *string `json:"readme,omitempty"` - RequireModel *bool `json:"require_model,omitempty"` - Status *string `json:"status,omitempty"` - UsedByApps *[]AppReference `json:"used_by_apps"` - Variables *map[string]BrickVariable `json:"variables,omitempty"` + ApiDocsPath *string `json:"api_docs_path,omitempty"` + Author *string `json:"author,omitempty"` + Category *string `json:"category,omitempty"` + CodeExamples *[]CodeExample `json:"code_examples"` + CompatibleModels *[]AIModel `json:"compatible_models"` + ConfigVariables *[]BrickConfigVariable `json:"config_variables"` + Description *string `json:"description,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Readme *string `json:"readme,omitempty"` + RequireModel *bool `json:"require_model,omitempty"` + Status *string `json:"status,omitempty"` + UsedByApps *[]AppReference `json:"used_by_apps"` + + // Variables Deprecated: use config_variables instead. This field is kept for backward compatibility. + Variables *map[string]BrickVariable `json:"variables"` } // BrickInstance defines model for BrickInstance. diff --git a/internal/e2e/daemon/brick_test.go b/internal/e2e/daemon/brick_test.go index 5d709bb3..c0a13390 100644 --- a/internal/e2e/daemon/brick_test.go +++ b/internal/e2e/daemon/brick_test.go @@ -127,6 +127,21 @@ func TestBricksDetails(t *testing.T) { Name: f.Ptr("Person classification"), Description: f.Ptr("Person classification model based on WakeVision dataset. This model is trained to classify images into two categories: person and not-person."), }} + expectConfigVariables := []client.BrickConfigVariable{ + { + Name: f.Ptr("CUSTOM_MODEL_PATH"), + Value: f.Ptr("/home/arduino/.arduino-bricks/ei-models"), + Description: f.Ptr("path to the custom model directory"), + Required: f.Ptr(false), + }, + { + Name: f.Ptr("EI_CLASSIFICATION_MODEL"), + Value: f.Ptr("/models/ootb/ei/mobilenet-v2-224px.eim"), + Description: f.Ptr("path to the model file"), + Required: f.Ptr(false), + }, + } + response, err := httpClient.GetBrickDetailsWithResponse(t.Context(), validBrickID, func(ctx context.Context, req *http.Request) error { return nil }) require.NoError(t, err) require.Equal(t, http.StatusOK, response.StatusCode(), "status code should be 200 ok") @@ -147,5 +162,7 @@ func TestBricksDetails(t *testing.T) { require.Equal(t, expectedUsedByApps, *(response.JSON200.UsedByApps)) require.NotNil(t, response.JSON200.CompatibleModels, "Models should not be nil") require.Equal(t, expectedModelLiteInfo, *(response.JSON200.CompatibleModels)) + require.NotNil(t, response.JSON200.ConfigVariables, "ConfigVariables should not be nil") + require.Equal(t, expectConfigVariables, *(response.JSON200.ConfigVariables)) }) } diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index 85e6e601..b9e0da7d 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -78,7 +78,7 @@ func (s *Service) AppBrickInstancesList(a *app.ArduinoApp) (AppBrickInstancesRes return AppBrickInstancesResult{}, fmt.Errorf("brick not found with id %s", brickInstance.ID) } - variablesMap, configVariables := getBrickConfigDetails(brick, brickInstance.Variables) + variablesMap, configVariables := getInstanceBrickConfigVariableDetails(brick, brickInstance.Variables) res.BrickInstances[i] = BrickInstanceListItem{ ID: brick.ID, @@ -107,7 +107,7 @@ func (s *Service) AppBrickInstanceDetails(a *app.ArduinoApp, brickID string) (Br return BrickInstance{}, fmt.Errorf("brick %s not added in the app", brickID) } - variables, configVariables := getBrickConfigDetails(brick, a.Descriptor.Bricks[brickIndex].Variables) + variables, configVariables := getInstanceBrickConfigVariableDetails(brick, a.Descriptor.Bricks[brickIndex].Variables) modelID := a.Descriptor.Bricks[brickIndex].Model if modelID == "" { @@ -134,7 +134,7 @@ func (s *Service) AppBrickInstanceDetails(a *app.ArduinoApp, brickID string) (Br }, nil } -func getBrickConfigDetails( +func getInstanceBrickConfigVariableDetails( brick *bricksindex.Brick, userVariables map[string]string, ) (map[string]string, []BrickConfigVariable) { variablesMap := make(map[string]string, len(brick.Variables)) @@ -167,15 +167,6 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, return BrickDetailsResult{}, ErrBrickNotFound } - variables := make(map[string]BrickVariable, len(brick.Variables)) - for _, v := range brick.Variables { - variables[v.Name] = BrickVariable{ - DefaultValue: v.DefaultValue, - Description: v.Description, - Required: v.IsRequired(), - } - } - readme, err := s.staticStore.GetBrickReadmeFromID(brick.ID) if err != nil { return BrickDetailsResult{}, fmt.Errorf("cannot open docs for brick %s: %w", id, err) @@ -200,6 +191,9 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, if err != nil { return BrickDetailsResult{}, fmt.Errorf("unable to get used by apps: %w", err) } + + variables, configVariables := getBrickConfigVariableDetails(brick) + return BrickDetailsResult{ ID: id, Name: brick.Name, @@ -220,9 +214,33 @@ func (s *Service) BricksDetails(id string, idProvider *app.IDProvider, Description: m.ModuleDescription, } }), + ConfigVariables: configVariables, }, nil } +func getBrickConfigVariableDetails( + brick *bricksindex.Brick) (map[string]BrickVariable, []BrickConfigVariable) { + variablesMap := make(map[string]BrickVariable, len(brick.Variables)) + variableDetails := make([]BrickConfigVariable, 0, len(brick.Variables)) + + for _, v := range brick.Variables { + variablesMap[v.Name] = BrickVariable{ + DefaultValue: v.DefaultValue, + Description: v.Description, + Required: v.IsRequired(), + } + + variableDetails = append(variableDetails, BrickConfigVariable{ + Name: v.Name, + Value: v.DefaultValue, + Description: v.Description, + Required: v.IsRequired(), + }) + } + + return variablesMap, variableDetails +} + func getUsedByApps( cfg config.Configuration, brickId string, idProvider *app.IDProvider) ([]AppReference, error) { var ( diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index 266d41ef..ef51fad6 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -317,7 +317,7 @@ func TestGetBrickInstanceVariableDetails(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - actualVariableMap, actualConfigVariables := getBrickConfigDetails(tt.brick, tt.userVariables) + actualVariableMap, actualConfigVariables := getInstanceBrickConfigVariableDetails(tt.brick, tt.userVariables) require.Equal(t, tt.expectedVariableMap, actualVariableMap) require.Equal(t, tt.expectedConfigVariables, actualConfigVariables) }) @@ -402,6 +402,21 @@ func TestBricksDetails(t *testing.T) { }) t.Run("Success - Full Details - multiple models", func(t *testing.T) { + expectConfigVariables := []BrickConfigVariable{ + { + Name: "EI_OBJ_DETECTION_MODEL", + Value: "default_path", + Description: "path to the model file", + Required: false, + }, + { + Name: "CUSTOM_MODEL_PATH", + Value: "/home/arduino/.arduino-bricks/ei-models", + Description: "path to the custom model directory", + Required: false, + }, + } + res, err := svc.BricksDetails("arduino:object_detection", idProvider, cfg) require.NoError(t, err) @@ -425,6 +440,8 @@ func TestBricksDetails(t *testing.T) { require.Equal(t, "face-detection", res.CompatibleModels[1].ID) require.Equal(t, "Lightweight-Face-Detection", res.CompatibleModels[1].Name) require.Equal(t, "", res.CompatibleModels[1].Description) + require.Len(t, res.ConfigVariables, 2) + require.Equal(t, expectConfigVariables, res.ConfigVariables) }) t.Run("Success - Full Details - no models", func(t *testing.T) { @@ -444,6 +461,7 @@ func TestBricksDetails(t *testing.T) { require.Equal(t, "My App", res.UsedByApps[0].Name) require.NotEmpty(t, res.UsedByApps[0].ID) require.Len(t, res.CompatibleModels, 0) + require.Empty(t, res.ConfigVariables) }) t.Run("Success - Full Details - one model", func(t *testing.T) { @@ -456,6 +474,8 @@ func TestBricksDetails(t *testing.T) { require.Equal(t, "face-detection", res.CompatibleModels[0].ID) require.Equal(t, "Lightweight-Face-Detection", res.CompatibleModels[0].Name) require.Equal(t, "", res.CompatibleModels[0].Description) + require.Empty(t, res.ConfigVariables) + require.Empty(t, res.Variables) }) } diff --git a/internal/orchestrator/bricks/types.go b/internal/orchestrator/bricks/types.go index bd63bd57..e4b1b747 100644 --- a/internal/orchestrator/bricks/types.go +++ b/internal/orchestrator/bricks/types.go @@ -91,10 +91,11 @@ type BrickDetailsResult struct { Category string `json:"category"` Status string `json:"status"` RequireModel bool `json:"require_model"` - Variables map[string]BrickVariable `json:"variables,omitempty"` + Variables map[string]BrickVariable `json:"variables,omitempty" description:"Deprecated: use config_variables instead. This field is kept for backward compatibility."` Readme string `json:"readme"` ApiDocsPath string `json:"api_docs_path"` CodeExamples []CodeExample `json:"code_examples"` UsedByApps []AppReference `json:"used_by_apps"` CompatibleModels []AIModel `json:"compatible_models"` + ConfigVariables []BrickConfigVariable `json:"config_variables"` } From 51dab70346f2080179b869194049e5dfe7e86f0a Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Wed, 3 Dec 2025 10:36:16 +0100 Subject: [PATCH 16/27] update runner (#132) --- Taskfile.yml | 4 +- .../arduino/app_bricks/cloud_llm/API.md | 107 ------------- .../app_bricks/air_quality_monitoring/API.md | 0 .../arduino/app_bricks/arduino_cloud/API.md | 0 .../app_bricks/audio_classification/API.md | 7 +- .../app_bricks/camera_code_detection/API.md | 0 .../arduino/app_bricks/cloud_llm/API.md | 120 ++++++++++++++ .../app_bricks/dbstorage_sqlstore/API.md | 0 .../app_bricks/dbstorage_tsstore/API.md | 0 .../app_bricks/image_classification/API.md | 0 .../app_bricks/keyword_spotting/API.md | 0 .../arduino/app_bricks/mood_detector/API.md | 0 .../app_bricks/motion_detection/API.md | 0 .../api-docs/arduino/app_bricks/mqtt/API.md | 0 .../app_bricks/object_detection/API.md | 10 +- .../arduino/app_bricks/streamlit_ui/API.md | 0 .../vibration_anomaly_detection/API.md | 0 .../video_imageclassification/API.md | 0 .../app_bricks/video_objectdetection/API.md | 0 .../visual_anomaly_detection/API.md | 0 .../arduino/app_bricks/wave_generator/API.md | 151 ++++++++++++++++++ .../app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 37 +++-- .../arduino/app_peripherals/microphone/API.md | 0 .../arduino/app_peripherals/speaker/API.md | 8 +- .../arduino/app_peripherals/usb_camera/API.md | 0 .../assets/{0.5.0 => 0.6.0}/bricks-list.yaml | 38 +++-- .../audio_classification/brick_compose.yaml | 2 +- .../dbstorage_tsstore/brick_compose.yaml | 0 .../image_classification/brick_compose.yaml | 2 +- .../keyword_spotting/brick_compose.yaml | 2 +- .../motion_detection/brick_compose.yaml | 2 +- .../object_detection/brick_compose.yaml | 2 +- .../brick_compose.yaml | 2 +- .../brick_compose.yaml | 2 +- .../video_object_detection/brick_compose.yaml | 4 +- .../brick_compose.yaml | 2 +- .../docs/arduino/arduino_cloud/README.md | 0 .../arduino/audio_classification/README.md | 0 .../arduino/camera_code_detection/README.md | 0 .../0.6.0/docs/arduino/cloud_llm/README.md | 109 +++++++++++++ .../docs/arduino/dbstorage_sqlstore/README.md | 4 +- .../docs/arduino/dbstorage_tsstore/README.md | 0 .../arduino/image_classification/README.md | 0 .../docs/arduino/keyword_spotting/README.md | 0 .../docs/arduino/mood_detector/README.md | 0 .../docs/arduino/motion_detection/README.md | 0 .../docs/arduino/object_detection/README.md | 0 .../docs/arduino/streamlit_ui/README.md | 0 .../vibration_anomaly_detection/README.md | 0 .../video_image_classification/README.md | 0 .../arduino/video_object_detection/README.md | 0 .../visual_anomaly_detection/README.md | 0 .../docs/arduino/wave_generator/README.md | 119 ++++++++++++++ .../docs/arduino/weather_forecast/README.md | 0 .../docs/arduino/web_ui/README.md | 0 .../arduino/arduino_cloud/1_led_blink.py | 2 +- .../2_light_with_colors_monitor.py | 2 +- .../3_light_with_colors_command.py | 2 +- .../1_glass_breaking_from_mic.py | 2 +- .../2_glass_breaking_from_file.py | 6 +- .../camera_code_detection/1_detection.py | 2 +- .../camera_code_detection/2_detection_list.py | 2 +- .../3_detection_with_overrides.py | 2 +- .../arduino/cloud_llm/1_simple_prompt.py | 24 +++ .../cloud_llm/2_streaming_responses.py | 25 +++ .../examples/arduino/cloud_llm/3_no_memory.py | 24 +++ .../store_and_read_example.py | 2 +- .../arduino/dbstorage_tsstore/1_write_read.py | 2 +- .../dbstorage_tsstore/2_read_all_samples.py | 2 +- .../image_classification_example.py | 2 +- .../arduino/keyword_spotting/1_hello_world.py | 2 +- .../object_detection_example.py | 2 +- .../object_detection_example.py | 2 +- .../arduino/wave_generator/01_basic_tone.py | 34 ++++ .../wave_generator/02_waveform_types.py | 41 +++++ .../wave_generator/03_frequency_sweep.py | 51 ++++++ .../wave_generator/04_envelope_control.py | 63 ++++++++ .../wave_generator/05_external_speaker.py | 77 +++++++++ .../weather_forecast_by_city_example.py | 2 +- .../weather_forecast_by_coords_example.py | 2 +- .../examples/arduino/web_ui/1_serve_webapp.py | 2 +- .../arduino/web_ui/2_serve_webapp_and_api.py | 2 +- .../arduino/web_ui/3_connect_disconnect.py | 2 +- .../examples/arduino/web_ui/4_on_message.py | 2 +- .../examples/arduino/web_ui/5_send_message.py | 2 +- .../assets/{0.5.0 => 0.6.0}/models-list.yaml | 37 +++-- .../arduino/app_bricks/cloud_llm/API.md | 107 ------------- .../app_bricks/air_quality_monitoring/API.md | 0 .../arduino/app_bricks/arduino_cloud/API.md | 0 .../app_bricks/audio_classification/API.md | 7 +- .../app_bricks/camera_code_detection/API.md | 0 .../arduino/app_bricks/cloud_llm/API.md | 120 ++++++++++++++ .../app_bricks/dbstorage_sqlstore/API.md | 0 .../app_bricks/dbstorage_tsstore/API.md | 0 .../app_bricks/image_classification/API.md | 0 .../app_bricks/keyword_spotting/API.md | 0 .../arduino/app_bricks/mood_detector/API.md | 0 .../app_bricks/motion_detection/API.md | 0 .../api-docs/arduino/app_bricks/mqtt/API.md | 0 .../app_bricks/object_detection/API.md | 10 +- .../arduino/app_bricks/streamlit_ui/API.md | 0 .../vibration_anomaly_detection/API.md | 0 .../video_imageclassification/API.md | 0 .../app_bricks/video_objectdetection/API.md | 0 .../visual_anomaly_detection/API.md | 0 .../arduino/app_bricks/wave_generator/API.md | 151 ++++++++++++++++++ .../app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 37 +++-- .../arduino/app_peripherals/microphone/API.md | 0 .../arduino/app_peripherals/speaker/API.md | 8 +- .../arduino/app_peripherals/usb_camera/API.md | 0 .../assets/{0.5.0 => 0.6.0}/bricks-list.yaml | 38 +++-- .../audio_classification/brick_compose.yaml | 2 +- .../dbstorage_tsstore/brick_compose.yaml | 0 .../image_classification/brick_compose.yaml | 2 +- .../keyword_spotting/brick_compose.yaml | 2 +- .../motion_detection/brick_compose.yaml | 2 +- .../object_detection/brick_compose.yaml | 2 +- .../brick_compose.yaml | 2 +- .../brick_compose.yaml | 2 +- .../video_object_detection/brick_compose.yaml | 4 +- .../brick_compose.yaml | 2 +- .../docs/arduino/arduino_cloud/README.md | 0 .../arduino/audio_classification/README.md | 0 .../arduino/camera_code_detection/README.md | 0 .../0.6.0/docs/arduino/cloud_llm/README.md | 109 +++++++++++++ .../docs/arduino/dbstorage_sqlstore/README.md | 4 +- .../docs/arduino/dbstorage_tsstore/README.md | 0 .../arduino/image_classification/README.md | 0 .../docs/arduino/keyword_spotting/README.md | 0 .../docs/arduino/mood_detector/README.md | 0 .../docs/arduino/motion_detection/README.md | 0 .../docs/arduino/object_detection/README.md | 0 .../docs/arduino/streamlit_ui/README.md | 0 .../vibration_anomaly_detection/README.md | 0 .../video_image_classification/README.md | 0 .../arduino/video_object_detection/README.md | 0 .../visual_anomaly_detection/README.md | 0 .../docs/arduino/wave_generator/README.md | 119 ++++++++++++++ .../docs/arduino/weather_forecast/README.md | 0 .../docs/arduino/web_ui/README.md | 0 .../arduino/arduino_cloud/1_led_blink.py | 2 +- .../2_light_with_colors_monitor.py | 2 +- .../3_light_with_colors_command.py | 2 +- .../1_glass_breaking_from_mic.py | 2 +- .../2_glass_breaking_from_file.py | 6 +- .../camera_code_detection/1_detection.py | 2 +- .../camera_code_detection/2_detection_list.py | 2 +- .../3_detection_with_overrides.py | 2 +- .../arduino/cloud_llm/1_simple_prompt.py | 24 +++ .../cloud_llm/2_streaming_responses.py | 25 +++ .../examples/arduino/cloud_llm/3_no_memory.py | 24 +++ .../store_and_read_example.py | 2 +- .../arduino/dbstorage_tsstore/1_write_read.py | 2 +- .../dbstorage_tsstore/2_read_all_samples.py | 2 +- .../image_classification_example.py | 2 +- .../arduino/keyword_spotting/1_hello_world.py | 2 +- .../object_detection_example.py | 2 +- .../object_detection_example.py | 2 +- .../arduino/wave_generator/01_basic_tone.py | 34 ++++ .../wave_generator/02_waveform_types.py | 41 +++++ .../wave_generator/03_frequency_sweep.py | 51 ++++++ .../wave_generator/04_envelope_control.py | 63 ++++++++ .../wave_generator/05_external_speaker.py | 77 +++++++++ .../weather_forecast_by_city_example.py | 2 +- .../weather_forecast_by_coords_example.py | 2 +- .../examples/arduino/web_ui/1_serve_webapp.py | 2 +- .../arduino/web_ui/2_serve_webapp_and_api.py | 2 +- .../arduino/web_ui/3_connect_disconnect.py | 2 +- .../examples/arduino/web_ui/4_on_message.py | 2 +- .../examples/arduino/web_ui/5_send_message.py | 2 +- .../assets/{0.5.0 => 0.6.0}/models-list.yaml | 37 +++-- internal/orchestrator/config/config.go | 2 +- 174 files changed, 1931 insertions(+), 383 deletions(-) delete mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/audio_classification/API.md (91%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/object_detection/API.md (90%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/api-docs/arduino/app_bricks/web_ui/API.md (76%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/api-docs/arduino/app_peripherals/speaker/API.md (79%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/bricks-list.yaml (93%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/compose/arduino/audio_classification/brick_compose.yaml (97%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/image_classification/brick_compose.yaml (97%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/keyword_spotting/brick_compose.yaml (97%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/motion_detection/brick_compose.yaml (97%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/object_detection/brick_compose.yaml (97%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (97%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/compose/arduino/video_image_classification/brick_compose.yaml (97%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/video_object_detection/brick_compose.yaml (86%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (97%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/arduino_cloud/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/audio_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/camera_code_detection/README.md (100%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/docs/arduino/dbstorage_sqlstore/README.md (97%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/keyword_spotting/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/mood_detector/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/motion_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/streamlit_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/video_image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/video_object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/visual_anomaly_detection/README.md (100%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/weather_forecast/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/docs/arduino/web_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/arduino_cloud/1_led_blink.py (90%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (88%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (92%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (84%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (60%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/camera_code_detection/1_detection.py (89%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/camera_code_detection/2_detection_list.py (90%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (91%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (85%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_tsstore/1_write_read.py (84%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (93%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/image_classification/image_classification_example.py (90%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/keyword_spotting/1_hello_world.py (82%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/object_detection/object_detection_example.py (91%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/visual_anomaly_detection/object_detection_example.py (91%) create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py create mode 100644 debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (81%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (81%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/web_ui/1_serve_webapp.py (80%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/web_ui/2_serve_webapp_and_api.py (79%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/examples/arduino/web_ui/3_connect_disconnect.py (81%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/web_ui/4_on_message.py (80%) rename {internal/e2e/daemon/testdata/assets/0.5.0 => debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0}/examples/arduino/web_ui/5_send_message.py (80%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.5.0 => 0.6.0}/models-list.yaml (94%) delete mode 100644 internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/audio_classification/API.md (91%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/object_detection/API.md (90%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/api-docs/arduino/app_bricks/web_ui/API.md (76%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/api-docs/arduino/app_peripherals/speaker/API.md (79%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/bricks-list.yaml (93%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/compose/arduino/audio_classification/brick_compose.yaml (97%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/image_classification/brick_compose.yaml (97%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/keyword_spotting/brick_compose.yaml (97%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/motion_detection/brick_compose.yaml (97%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/object_detection/brick_compose.yaml (97%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (97%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/compose/arduino/video_image_classification/brick_compose.yaml (97%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/video_object_detection/brick_compose.yaml (86%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (97%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/arduino_cloud/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/audio_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/camera_code_detection/README.md (100%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/docs/arduino/dbstorage_sqlstore/README.md (97%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/keyword_spotting/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/mood_detector/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/motion_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/streamlit_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/video_image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/video_object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/visual_anomaly_detection/README.md (100%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/weather_forecast/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/docs/arduino/web_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/arduino_cloud/1_led_blink.py (90%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (88%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (92%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (84%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (60%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/camera_code_detection/1_detection.py (89%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/camera_code_detection/2_detection_list.py (90%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (91%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (85%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_tsstore/1_write_read.py (84%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (93%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/image_classification/image_classification_example.py (90%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/keyword_spotting/1_hello_world.py (82%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/object_detection/object_detection_example.py (91%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/visual_anomaly_detection/object_detection_example.py (91%) create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py create mode 100644 internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (81%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (81%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/web_ui/1_serve_webapp.py (80%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/web_ui/2_serve_webapp_and_api.py (79%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/examples/arduino/web_ui/3_connect_disconnect.py (81%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/web_ui/4_on_message.py (80%) rename {debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0 => internal/e2e/daemon/testdata/assets/0.6.0}/examples/arduino/web_ui/5_send_message.py (80%) rename internal/e2e/daemon/testdata/assets/{0.5.0 => 0.6.0}/models-list.yaml (94%) diff --git a/Taskfile.yml b/Taskfile.yml index 10ef00c7..5d7725b1 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -8,8 +8,8 @@ vars: GOLANGCI_LINT_VERSION: v2.4.0 GOIMPORTS_VERSION: v0.29.0 DPRINT_VERSION: 0.48.0 - EXAMPLE_VERSION: "0.5.1" - RUNNER_VERSION: "0.5.0" + EXAMPLE_VERSION: "0.6.0" + RUNNER_VERSION: "0.6.0" VERSION: # if version is not passed we hack the semver by encoding the commit as pre-release sh: echo "${VERSION:-0.0.0-$(git rev-parse --short HEAD)}" diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md deleted file mode 100644 index ba9da420..00000000 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md +++ /dev/null @@ -1,107 +0,0 @@ -# cloud_llm API Reference - -## Index - -- Class `CloudLLM` -- Class `CloudModel` - ---- - -## `CloudLLM` class - -```python -class CloudLLM(api_key: str, model: Union[str, CloudModel], system_prompt: str, temperature: Optional[float], timeout: int) -``` - -A simplified, opinionated wrapper for common LangChain conversational patterns. - -This class provides a single interface to manage stateless chat and chat with memory. - -### Parameters - -- **api_key**: The API key for the LLM service. -- **model**: The model identifier as per LangChain specification (e.g., "anthropic:claude-3-sonnet-20240229") -or by using a CloudModels enum (e.g. CloudModels.OPENAI_GPT). Defaults to CloudModel.ANTHROPIC_CLAUDE. -- **system_prompt**: The global system-level instruction for the AI. -- **temperature**, default=0.7: The sampling temperature for response generation. Defaults to 0.7. -- **timeout**, default=30 seconds: The maximum time to wait for a response from the LLM service, in seconds. Defaults to 30 seconds. - -### Raises - -- **ValueError**: If the API key is missing. - -### Methods - -#### `with_memory(max_messages: int)` - -Enables conversational memory for this instance. - -This allows the chatbot to remember previous user and AI messages. -Calling this modifies the instance to be stateful. - -##### Parameters - -- **max_messages**: The total number of past messages (user + AI) to -keep in the conversation window. Set to 0 to disable memory. - -##### Returns - -- (*self*): The current CloudLLM instance for method chaining. - -#### `chat(message: str)` - -Sends a single message to the AI and gets a complete response synchronously. - -This is the primary way to interact. It automatically handles memory -based on how the instance was configured. - -##### Parameters - -- **message**: The user's message. - -##### Returns - --: The AI's complete response as a string. - -##### Raises - -- **RuntimeError**: If the chat model is not initialized or if text generation fails. - -#### `chat_stream(message: str)` - -Sends a single message to the AI and streams the response as a synchronous generator. - -Use this to get tokens as they are generated, perfect for a streaming UI. - -##### Parameters - -- **message**: The user's message. - -##### Returns - -- (*str*): Chunks of the AI's response as they become available. - -##### Raises - -- **RuntimeError**: If the chat model is not initialized or if text generation fails. -- **AlreadyGenerating**: If the chat model is already streaming a response. - -#### `stop_stream()` - -Signals the LLM to stop generating a response. - -#### `clear_memory()` - -Clears the conversational memory. - -This only has an effect if with_memory() has been called. - - ---- - -## `CloudModel` class - -```python -class CloudModel() -``` - diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 91% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md index 87a5213e..7573beee 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md @@ -67,7 +67,7 @@ Stop real-time audio classification. Terminates audio capture and releases any associated resources. -#### `classify_from_file(audio_path: str, confidence: int)` +#### `classify_from_file(audio_path: str, confidence: float)` Classify audio content from a WAV file. @@ -80,9 +80,8 @@ Supported sample widths: ##### Parameters - **audio_path** (*str*): Path to the `.wav` audio file to classify. -- **confidence** (*int*) (optional): Confidence threshold (0–1). If None, -the default confidence level specified during initialization -will be applied. +- **confidence** (*float*) (optional): Minimum confidence threshold (0.0–1.0) required +for a detection to be considered valid. Defaults to 0.8 (80%). ##### Returns diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md new file mode 100644 index 00000000..d2dd5903 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md @@ -0,0 +1,120 @@ +# cloud_llm API Reference + +## Index + +- Class `CloudLLM` +- Class `CloudModel` + +--- + +## `CloudLLM` class + +```python +class CloudLLM(api_key: str, model: Union[str, CloudModel], system_prompt: str, temperature: Optional[float], timeout: int) +``` + +A Brick for interacting with cloud-based Large Language Models (LLMs). + +This class wraps LangChain functionality to provide a simplified, unified interface +for chatting with models like Claude, GPT, and Gemini. It supports both synchronous +'one-shot' responses and streaming output, with optional conversational memory. + +### Parameters + +- **api_key** (*str*): The API access key for the target LLM service. Defaults to the +'API_KEY' environment variable. +- **model** (*Union[str, CloudModel]*): The model identifier. Accepts a `CloudModel` +enum member (e.g., `CloudModel.OPENAI_GPT`) or its corresponding raw string +value (e.g., `'gpt-4o-mini'`). Defaults to `CloudModel.ANTHROPIC_CLAUDE`. +- **system_prompt** (*str*): A system-level instruction that defines the AI's persona +and constraints (e.g., "You are a helpful assistant"). Defaults to empty. +- **temperature** (*Optional[float]*): The sampling temperature between 0.0 and 1.0. +Higher values make output more random/creative; lower values make it more +deterministic. Defaults to 0.7. +- **timeout** (*int*): The maximum duration in seconds to wait for a response before +timing out. Defaults to 30. + +### Raises + +- **ValueError**: If `api_key` is not provided (empty string). + +### Methods + +#### `with_memory(max_messages: int)` + +Enables conversational memory for this instance. + +Configures the Brick to retain a window of previous messages, allowing the +AI to maintain context across multiple interactions. + +##### Parameters + +- **max_messages** (*int*): The maximum number of messages (user + AI) to keep +in history. Older messages are discarded. Set to 0 to disable memory. +Defaults to 10. + +##### Returns + +- (*CloudLLM*): The current instance, allowing for method chaining. + +#### `chat(message: str)` + +Sends a message to the AI and blocks until the complete response is received. + +This method automatically manages conversation history if memory is enabled. + +##### Parameters + +- **message** (*str*): The input text prompt from the user. + +##### Returns + +- (*str*): The complete text response generated by the AI. + +##### Raises + +- **RuntimeError**: If the internal chain is not initialized or if the API request fails. + +#### `chat_stream(message: str)` + +Sends a message to the AI and yields response tokens as they are generated. + +This allows for processing or displaying the response in real-time (streaming). +The generation can be interrupted by calling `stop_stream()`. + +##### Parameters + +- **message** (*str*): The input text prompt from the user. + +##### Returns + +- (*str*): Chunks of text (tokens) from the AI response. + +##### Raises + +- **RuntimeError**: If the internal chain is not initialized or if the API request fails. +- **AlreadyGenerating**: If a streaming session is already active. + +#### `stop_stream()` + +Signals the active streaming generation to stop. + +This sets an internal flag that causes the `chat_stream` iterator to break +early. It has no effect if no stream is currently running. + +#### `clear_memory()` + +Clears the conversational memory history. + +Resets the stored context. This is useful for starting a new conversation +topic without previous context interfering. Only applies if memory is enabled. + + +--- + +## `CloudModel` class + +```python +class CloudModel() +``` + diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/image_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/image_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/mood_detector/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/motion_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/mqtt/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/mqtt/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md similarity index 90% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md index c8c84812..bf58415c 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md @@ -19,6 +19,14 @@ This module processes an input image and returns: - Corresponding class labels - Confidence scores for each detection +### Parameters + +- **confidence** (*float*): Minimum confidence threshold for detections. Default is 0.3 (30%). + +### Raises + +- **ValueError**: If model information cannot be retrieved. + ### Methods #### `detect_from_file(image_path: str, confidence: float)` @@ -60,7 +68,7 @@ Draw bounding boxes on an image enclosing detected objects using PIL. ##### Returns -: Image with bounding boxes and key points drawn. -None if no detection or invalid image. +None if input image or detections are invalid. #### `process(item)` diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md new file mode 100644 index 00000000..f8977727 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md @@ -0,0 +1,151 @@ +# wave_generator API Reference + +## Index + +- Class `WaveGenerator` + +--- + +## `WaveGenerator` class + +```python +class WaveGenerator(sample_rate: int, wave_type: WaveType, block_duration: float, attack: float, release: float, glide: float, speaker: Speaker) +``` + +Continuous wave generator brick for audio synthesis. + +This brick generates continuous audio waveforms (sine, square, sawtooth, triangle) +and streams them to a USB speaker in real-time. It provides smooth transitions +between frequency and amplitude changes using configurable envelope parameters. + +The generator runs continuously in a background thread, producing audio blocks +at a steady rate with minimal latency. + +### Parameters + +- **sample_rate** (*int*): Audio sample rate in Hz (default: 16000). +- **wave_type** (*WaveType*): Initial waveform type (default: "sine"). +- **block_duration** (*float*): Duration of each audio block in seconds (default: 0.01). +- **attack** (*float*): Attack time for amplitude envelope in seconds (default: 0.01). +- **release** (*float*): Release time for amplitude envelope in seconds (default: 0.03). +- **glide** (*float*): Frequency glide time (portamento) in seconds (default: 0.02). +- **speaker** (*Speaker*) (optional): Pre-configured Speaker instance. If None, WaveGenerator +will create an internal Speaker optimized for real-time synthesis with: +- periodsize aligned to block_duration (eliminates buffer mismatch) +- queue_maxsize=8 (low latency: ~80ms max buffer) +- format=FLOAT_LE, channels=1 + +If providing an external Speaker, ensure: +- sample_rate matches WaveGenerator's sample_rate +- periodsize = int(sample_rate × block_duration) for optimal alignment +- Speaker is started/stopped manually (WaveGenerator won't manage its lifecycle) + +Example external Speaker configuration: + speaker = Speaker( + device="plughw:CARD=UH34", + sample_rate=16000, + format="FLOAT_LE", + periodsize=160, # 16000 × 0.01 = 160 frames + queue_maxsize=8 + ) + +### Raises + +- **SpeakerException**: If no USB speaker is found or device is busy. + +### Attributes + +- **sample_rate** (*int*): Audio sample rate in Hz (default: 16000). +- **wave_type** (*WaveType*): Type of waveform to generate. +- **frequency** (*float*): Current output frequency in Hz. +- **amplitude** (*float*): Current output amplitude (0.0-1.0). + +### Methods + +#### `start()` + +Start the wave generator and audio output. + +This starts the speaker device (if internally owned) and launches the producer thread +that continuously generates and streams audio blocks. + +#### `stop()` + +Stop the wave generator and audio output. + +This stops the producer thread and closes the speaker device (if internally owned). + +#### `set_frequency(frequency: float)` + +Set the target output frequency. + +The frequency will smoothly transition to the new value over the +configured glide time. + +##### Parameters + +- **frequency** (*float*): Target frequency in Hz (typically 20-8000 Hz). + +#### `set_amplitude(amplitude: float)` + +Set the target output amplitude. + +The amplitude will smoothly transition to the new value over the +configured attack/release time. + +##### Parameters + +- **amplitude** (*float*): Target amplitude in range [0.0, 1.0]. + +#### `set_wave_type(wave_type: WaveType)` + +Change the waveform type. + +##### Parameters + +- **wave_type** (*WaveType*): One of "sine", "square", "sawtooth", "triangle". + +##### Raises + +- **ValueError**: If wave_type is not valid. + +#### `set_volume(volume: int)` + +Set the speaker volume level. + +This is a wrapper that controls the hardware volume of the USB speaker device. + +##### Parameters + +- **volume** (*int*): Hardware volume level (0-100). + +##### Raises + +- **SpeakerException**: If the mixer is not available or if volume cannot be set. + +#### `get_volume()` + +Get the current speaker volume level. + +##### Returns + +- (*int*): Current hardware volume level (0-100). + +#### `set_envelope_params(attack: float, release: float, glide: float)` + +Update envelope parameters. + +##### Parameters + +- **attack** (*float*) (optional): Attack time in seconds. +- **release** (*float*) (optional): Release time in seconds. +- **glide** (*float*) (optional): Frequency glide time in seconds. + +#### `get_state()` + +Get current generator state. + +##### Returns + +- (*dict*): Dictionary containing current frequency, amplitude, wave type, etc. + diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md similarity index 76% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md index 4619aed5..ec08afdb 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md @@ -9,7 +9,7 @@ ## `WebUI` class ```python -class WebUI(addr: str, port: int, ui_path_prefix: str, api_path_prefix: str, assets_dir_path: str, certs_dir_path: str, use_ssl: bool) +class WebUI(addr: str, port: int, ui_path_prefix: str, api_path_prefix: str, assets_dir_path: str, certs_dir_path: str, use_tls: bool, use_ssl: bool | None) ``` Module for deploying a web server that can host a web application and expose APIs to its clients. @@ -24,21 +24,38 @@ and support real-time communication between the client and the server. - **ui_path_prefix** (*str*) (optional), default="" (root): URL prefix for UI routes. Defaults to "" (root). - **api_path_prefix** (*str*) (optional), default="" (root): URL prefix for API routes. Defaults to "" (root). - **assets_dir_path** (*str*) (optional), default="/app/assets": Path to static assets directory. Defaults to "/app/assets". -- **certs_dir_path** (*str*) (optional), default="/app/certs": Path to SSL certificates directory. Defaults to "/app/certs". -- **use_ssl** (*bool*) (optional), default=False: Enable SSL/HTTPS. Defaults to False. +- **certs_dir_path** (*str*) (optional), default="/app/certs": Path to TLS certificates directory. Defaults to "/app/certs". +- **use_tls** (*bool*) (optional), default=False: Enable TLS/HTTPS. Defaults to False. +- **use_ssl** (*bool*) (optional), default=None: Deprecated. Use use_tls instead. Defaults to None. ### Methods +#### `local_url()` + +Get the locally addressable URL of the web server. + +##### Returns + +- (*str*): The server's URL (including protocol, address, and port). + +#### `url()` + +Get the externally addressable URL of the web server. + +##### Returns + +- (*str*): The server's URL (including protocol, address, and port). + #### `start()` Start the web server asynchronously. -This sets up static file routing and WebSocket event handlers, configures SSL if enabled, and launches the server using Uvicorn. +This sets up static file routing and WebSocket event handlers, configures TLS if enabled, and launches the server using Uvicorn. ##### Raises - **RuntimeError**: If 'index.html' is missing in the static assets directory. -- **RuntimeError**: If SSL is enabled but certificates are missing or fail to generate. +- **RuntimeError**: If TLS is enabled but certificates fail to generate. - **RuntimeWarning**: If the server is already running. #### `stop()` @@ -47,7 +64,7 @@ Stop the web server gracefully. Waits up to 5 seconds for current requests to finish before terminating. -#### `expose_api(method: str, path: str, function: callable)` +#### `expose_api(method: str, path: str, function: Callable)` Register a route with the specified HTTP method and path. @@ -57,7 +74,7 @@ The path will be prefixed with the api_path_prefix configured during initializat - **method** (*str*): HTTP method to use (e.g., "GET", "POST"). - **path** (*str*): URL path for the API endpoint (without the prefix). -- **function** (*callable*): Function to execute when the route is accessed. +- **function** (*Callable*): Function to execute when the route is accessed. #### `on_connect(callback: Callable[[str], None])` @@ -79,7 +96,7 @@ The callback should accept a single argument: the session ID (sid) of the discon - **callback** (*Callable[[str], None]*): Function to call when a client disconnects. Receives the session ID (sid) as its only argument. -#### `on_message(message_type: str, callback: Callable[[str, any], any])` +#### `on_message(message_type: str, callback: Callable[[str, Any], Any])` Register a callback function for a specific WebSocket message type received by clients. @@ -91,10 +108,10 @@ with a message type suffix "_response". ##### Parameters - **message_type** (*str*): The message type name to listen for. -- **callback** (*Callable[[str, any], any]*): Function to handle the message. Receives two arguments: +- **callback** (*Callable[[str, Any], Any]*): Function to handle the message. Receives two arguments: the session ID (sid) and the incoming message data. -#### `send_message(message_type: str, message: dict | str, room: str)` +#### `send_message(message_type: str, message: dict | str, room: str | None)` Send a message to connected WebSocket clients. diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/microphone/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/microphone/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md similarity index 79% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md index 3cddad0f..94c64118 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md @@ -21,7 +21,7 @@ Custom exception for Speaker errors. ## `Speaker` class ```python -class Speaker(device: str, sample_rate: int, channels: int, format: str) +class Speaker(device: str, sample_rate: int, channels: int, format: str, periodsize: int, queue_maxsize: int) ``` Speaker class for reproducing audio using ALSA PCM interface. @@ -32,6 +32,12 @@ Speaker class for reproducing audio using ALSA PCM interface. - **sample_rate** (*int*): Sample rate in Hz (default: 16000). - **channels** (*int*): Number of audio channels (default: 1). - **format** (*str*): Audio format (default: "S16_LE"). +- **periodsize** (*int*): ALSA period size in frames (default: None = use hardware default). +For real-time synthesis, set to match generation block size. +For streaming/file playback, leave as None for hardware-optimal value. +- **queue_maxsize** (*int*): Maximum application queue depth in blocks (default: 100). +Lower values (5-20) reduce latency for interactive audio. +Higher values (50-200) provide stability for streaming. ### Raises diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/bricks-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml similarity index 93% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/bricks-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml index a4747e86..eaf2186d 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/bricks-list.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml @@ -5,7 +5,6 @@ bricks: local database. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: storage @@ -17,7 +16,6 @@ bricks: \ or with custom object detection models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -38,7 +36,6 @@ bricks: ' require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: text @@ -47,7 +44,6 @@ bricks: description: Scans a camera for barcodes and QR codes require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -64,7 +60,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: audio @@ -81,7 +76,6 @@ bricks: description: Connects to Arduino Cloud require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -90,6 +84,15 @@ bricks: description: Arduino Cloud Device ID - name: ARDUINO_SECRET description: Arduino Cloud Secret +- id: arduino:wave_generator + name: Wave Generator + description: Continuous wave generator for audio synthesis. Generates sine, square, + sawtooth, and triangle waveforms with smooth frequency and amplitude transitions. + require_container: false + require_model: false + mount_devices_into_container: false + ports: [] + category: audio - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ @@ -98,7 +101,6 @@ bricks: \ image classification models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -115,7 +117,6 @@ bricks: description: A simplified user interface based on Streamlit and Python. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: - 7000 @@ -135,7 +136,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -155,7 +155,6 @@ bricks: APIs and a WebSocket exposed by a web server. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: - 7000 @@ -172,7 +171,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: audio @@ -202,7 +200,6 @@ bricks: ' require_container: true require_model: true - require_devices: true mount_devices_into_container: true ports: [] category: video @@ -224,7 +221,6 @@ bricks: and weather APIs. Requires an internet connection. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: miscellaneous @@ -241,7 +237,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -259,7 +254,6 @@ bricks: built on top of InfluxDB. require_container: true require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: storage @@ -283,7 +277,6 @@ bricks: \ detection models trained on the Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: image @@ -312,7 +305,6 @@ bricks: ' require_container: true require_model: true - require_devices: true mount_devices_into_container: true ports: [] category: null @@ -328,3 +320,15 @@ bricks: description: path to the model file - name: VIDEO_DEVICE default_value: /dev/video1 +- id: arduino:cloud_llm + name: Cloud LLM + description: Cloud LLM Brick enables seamless integration with cloud-based Large + Language Models (LLMs) for advanced AI capabilities in your Arduino projects. + require_container: false + require_model: false + mount_devices_into_container: false + ports: [] + category: null + variables: + - name: API_KEY + description: API Key for the cloud-based LLM service diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml index 6dbe38e4..0a710c5f 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-audio-classifier-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml index d8207271..fe20b37e 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-classification-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml index b4dd7963..4340871e 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-keyword-spot-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml index ef7fc730..abc10e77 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-motion-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml index 9d418913..99871411 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-obj-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml index aca4e2a2..e07c2890 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-anomaly-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml index 7e054acc..3dd8139a 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-video-classification-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml similarity index 86% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml index dbca6363..804bc638 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-video-obj-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: @@ -13,7 +13,7 @@ services: volumes: - "${CUSTOM_MODEL_PATH:-/home/arduino/.arduino-bricks/ei-models/}:${CUSTOM_MODEL_PATH:-/home/arduino/.arduino-bricks/ei-models/}" - "/run/udev:/run/udev" - command: ["--model-file", "${EI_OBJ_DETECTION_MODEL:-/models/ootb/ei/yolo-x-nano.eim}", "--dont-print-predictions", "--mode", "streaming", "--force-target", "--preview-original-resolution", "--camera", "${VIDEO_DEVICE:-/dev/video1}"] + command: ["--model-file", "${EI_OBJ_DETECTION_MODEL:-/models/ootb/ei/yolo-x-nano.eim}", "--dont-print-predictions", "--mode", "streaming", "--preview-original-resolution", "--camera", "${VIDEO_DEVICE:-/dev/video1}"] healthcheck: test: [ "CMD-SHELL", "wget -q --spider http://ei-video-obj-detection-runner:4912 || exit 1" ] interval: 2s diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml index 0e71d75a..ced99fcb 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-obj-video-anomalies-det-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/arduino_cloud/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/arduino_cloud/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/audio_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/audio_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/camera_code_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/camera_code_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md new file mode 100644 index 00000000..add84514 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md @@ -0,0 +1,109 @@ +# Cloud LLM Brick + +The Cloud LLM Brick provides a seamless interface to interact with cloud-based Large Language Models (LLMs) such as OpenAI's GPT, Anthropic's Claude, and Google's Gemini. It abstracts the complexity of REST APIs, enabling you to send prompts, receive responses, and maintain conversational context within your Arduino projects. + +## Overview + +This Brick acts as a gateway to powerful AI models hosted in the cloud. It is designed to handle the nuances of network communication, authentication, and session management. Whether you need a simple one-off answer or a continuous conversation with memory, the Cloud LLM Brick provides a unified API for different providers. + +## Features + +- **Multi-Provider Support**: Compatible with major LLM providers including Anthropic (Claude), OpenAI (GPT), and Google (Gemini). +- **Conversational Memory**: Built-in support for windowed history, allowing the AI to remember context from previous exchanges. +- **Streaming Responses**: Receive text chunks in real-time as they are generated, ideal for responsive user interfaces. +- **Configurable Behavior**: Customize system prompts, temperature (creativity), and request timeouts. +- **Simple API**: Unified `chat` and `chat_stream` methods regardless of the underlying model provider. + +## Prerequisites + +- **Internet Connection**: The board must be connected to the internet to reach the LLM provider's API. +- **API Key**: A valid API key for the chosen service (e.g., OpenAI API Key, Anthropic API Key). +- **Python Dependencies**: The Brick relies on LangChain integration packages (`langchain-anthropic`, `langchain-openai`, `langchain-google-genai`). + +## Code Example and Usage + +### Basic Conversation + +This example initializes the Brick with an OpenAI model and performs a simple chat interaction. + +**Note:** The API key is not hardcoded. It is retrieved automatically from the **Brick Configuration** in App Lab. + +```python +import os +from arduino.app_bricks.cloud_llm import CloudLLM, CloudModel +from arduino.app_utils import App + +# Initialize the Brick (API key is loaded from configuration) +llm = CloudLLM( + model=CloudModel.OPENAI_GPT, + system_prompt="You are a helpful assistant for an IoT device." +) + +def simple_chat(): + # Send a prompt and print the response + response = llm.chat("What is the capital of Italy?") + print(f"AI: {response}") + +# Run the application +App.run(simple_chat) +``` + +### Streaming with Memory + +This example demonstrates how to enable conversational memory and process the response as a stream of tokens. + +```python +from arduino.app_bricks.cloud_llm import CloudLLM, CloudModel +from arduino.app_utils import App + +# Initialize with memory enabled (keeps last 10 messages) +# API Key is retrieved automatically from Brick Configuration +llm = CloudLLM( + model=CloudModel.ANTHROPIC_CLAUDE +).with_memory(max_messages=10) + +def chat_loop(): + while True: + user_input = input("You: ") + if user_input.lower() in ["exit", "quit"]: + break + + print("AI: ", end="", flush=True) + + # Stream the response token by token + for token in llm.chat_stream(user_input): + print(token, end="", flush=True) + print() # Newline after response + +App.run(chat_loop) +``` + +## Configuration + +The Brick is initialized with the following parameters: + +| Parameter | Type | Default | Description | +| :-------------- | :-------------------- | :---------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | +| `api_key` | `str` | `os.getenv("API_KEY")` | The authentication key for the LLM provider. **Recommended:** Set this via the **Brick Configuration** menu in App Lab instead of code. | +| `model` | `str` \| `CloudModel` | `CloudModel.ANTHROPIC_CLAUDE` | The specific model to use. Accepts a `CloudModel` enum or its string value. | +| `system_prompt` | `str` | `""` | A base instruction that defines the AI's behavior and persona. | +| `temperature` | `float` | `0.7` | Controls randomness. `0.0` is deterministic, `1.0` is creative. | +| `timeout` | `int` | `30` | Maximum time (in seconds) to wait for a response. | + +### Supported Models + +You can select a model using the `CloudModel` enum or by passing the corresponding raw string identifier. + +| Enum Constant | Raw String ID | Provider Documentation | +| :---------------------------- | :------------------------- | :-------------------------------------------------------------------------- | +| `CloudModel.ANTHROPIC_CLAUDE` | `claude-3-7-sonnet-latest` | [Anthropic Models](https://docs.anthropic.com/en/docs/about-claude/models) | +| `CloudModel.OPENAI_GPT` | `gpt-4o-mini` | [OpenAI Models](https://platform.openai.com/docs/models) | +| `CloudModel.GOOGLE_GEMINI` | `gemini-2.5-flash` | [Google Gemini Models](https://ai.google.dev/gemini-api/docs/models/gemini) | + +## Methods + +- **`chat(message)`**: Sends a message and returns the complete response string. Blocks until generation is finished. +- **`chat_stream(message)`**: Returns a generator yielding response tokens as they arrive. +- **`stop_stream()`**: Interrupts an active streaming generation. +- **`with_memory(max_messages)`**: Enables history tracking. `max_messages` defines the context window size. +- **`clear_memory()`**: Resets the conversation history. \ No newline at end of file diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md index 704a9e62..53a837d0 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md @@ -35,7 +35,7 @@ db = SQLStore("example.db") # ... Do work # Close database -db.close() +db.stop() ``` To create a new table: @@ -65,4 +65,4 @@ db.store("users", data) The SQLStore automatically creates a directory structure for database storage, placing files in `data/dbstorage_sqlstore/` within your application directory. The brick supports automatic type inference when creating tables, mapping Python types (*int*, *float*, *str*, *bytes*) to corresponding SQLite column types (*INTEGER*, *REAL*, *TEXT*, *BLOB*). -The `store()` method can automatically create tables if they don't exist by analyzing the data types of the provided values. This makes it easy to get started without defining schemas upfront, while still allowing explicit table creation for more control over column definitions and constraints. \ No newline at end of file +The `store()` method can automatically create tables if they don't exist by analyzing the data types of the provided values. This makes it easy to get started without defining schemas upfront, while still allowing explicit table creation for more control over column definitions and constraints. diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/dbstorage_tsstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/dbstorage_tsstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/keyword_spotting/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/keyword_spotting/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/mood_detector/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/mood_detector/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/motion_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/motion_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/streamlit_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/streamlit_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/vibration_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/vibration_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/video_image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/video_image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/video_object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/video_object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/visual_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/visual_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md new file mode 100644 index 00000000..23a1f9f8 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md @@ -0,0 +1,119 @@ +# Wave Generator brick + +This brick provides continuous wave generation for real-time audio synthesis with multiple waveform types and smooth transitions. + +## Overview + +The Wave Generator brick allows you to: + +- Generate continuous audio waveforms in real-time +- Select between different waveform types (sine, square, sawtooth, triangle) +- Control frequency and amplitude dynamically during playback +- Configure smooth transitions with attack, release, and glide (portamento) parameters +- Stream audio to USB speakers with minimal latency + +It runs continuously in a background thread, producing audio blocks at a steady rate with configurable envelope parameters for professional-sounding synthesis. + +## Features + +- Four waveform types: sine, square, sawtooth, and triangle +- Real-time frequency and amplitude control with smooth transitions +- Configurable envelope parameters (attack, release, glide) +- Hardware volume control support +- Thread-safe operation for concurrent access +- Efficient audio generation using NumPy vectorization +- Custom speaker configuration support + +## Prerequisites + +Before using the Wave Generator brick, ensure you have the following: + +- USB-C® Hub with external power supply (5V, 3A) +- USB audio device (USB speaker or USB-C → 3.5mm adapter) +- Arduino UNO Q running in Network Mode or SBC Mode (USB-C port needed for the hub) + +## Code example and usage + +Here is a basic example for generating a 440 Hz sine wave tone: + +```python +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator() + +App.start_brick(wave_gen) + +# Set frequency to A4 note (440 Hz) +wave_gen.set_frequency(440.0) + +# Set amplitude to 80% +wave_gen.set_amplitude(0.8) + +App.run() +``` + +You can customize the waveform type and envelope parameters: + +```python +wave_gen = WaveGenerator( + wave_type="square", + attack=0.01, + release=0.03, + glide=0.02 +) + +App.start_brick(wave_gen) + +# Change waveform during playback +wave_gen.set_wave_type("triangle") + +# Adjust envelope parameters +wave_gen.set_envelope_params(attack=0.05, release=0.1, glide=0.05) + +App.run() +``` + +For specific hardware configurations, you can provide a custom Speaker instance: + +```python +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_peripherals.speaker import Speaker +from arduino.app_utils import App + +# Create Speaker with optimal real-time configuration +speaker = Speaker( + device=Speaker.USB_SPEAKER_2, + sample_rate=16000, + channels=1, + format="FLOAT_LE", + periodsize=480, # 16000 Hz × 0.03s = 480 frames (eliminates buffer mismatch) + queue_maxsize=10 # Low latency configuration +) + +# Start external Speaker manually (WaveGenerator won't manage its lifecycle) +speaker.start() + +wave_gen = WaveGenerator(sample_rate=16000, speaker=speaker) + +App.start_brick(wave_gen) +wave_gen.set_frequency(440.0) +wave_gen.set_amplitude(0.7) + +App.run() + +# Stop external Speaker manually +speaker.stop() +``` + +**Note:** When providing an external Speaker, you manage its lifecycle (start/stop). WaveGenerator only validates configuration and uses it for playback. + +## Understanding Wave Generation + +The Wave Generator brick produces audio through continuous waveform synthesis. + +The `frequency` parameter controls the pitch of the output sound, measured in Hertz (Hz), where typical audible frequencies range from 20 Hz to 8000 Hz. + +The `amplitude` parameter controls the volume as a value between 0.0 (silent) and 1.0 (maximum), with smooth transitions handled by the attack and release envelope parameters. + +The `glide` parameter (also known as portamento) smoothly transitions between frequencies over time, creating sliding pitch effects similar to a theremin or synthesizer. Setting glide to 0 disables this effect but may cause audible clicks during fast frequency changes. diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/weather_forecast/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/weather_forecast/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/web_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/web_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py similarity index 90% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py index 58cd9470..3a9df8ca 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 88% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py index 40371db7..1fce305b 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 92% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py index 5e730ea9..4b8c5bf9 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 84% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py index 36b2be12..1eed6c3a 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 60% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py index 68bdd710..237aaba1 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 @@ -6,7 +6,5 @@ # EXAMPLE_REQUIRES = "Requires an audio file with the glass breaking sound." from arduino.app_bricks.audio_classification import AudioClassification -classifier = AudioClassification() - -classification = classifier.classify_from_file("glass_breaking.wav") +classification = AudioClassification.classify_from_file("glass_breaking.wav") print("Result:", classification) diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py similarity index 89% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py index 6dfdb41a..1facd326 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py similarity index 90% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py index 6288d571..7d63bb46 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 91% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py index 8a672470..d128cd96 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py new file mode 100644 index 00000000..7c325de8 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Chat with an LLM" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + print(llm.chat(prompt)) + print() + + +App.run(ask_prompt) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py new file mode 100644 index 00000000..9538cbda --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py @@ -0,0 +1,25 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Streaming responses from an LLM" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + for token in llm.chat_stream(prompt): + print(token, end="", flush=True) + print() + + +App.run(ask_prompt) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py new file mode 100644 index 00000000..f30419bf --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Conversation with memory" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) +llm.with_memory(0) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + print(llm.chat(prompt)) + + +App.run(ask_prompt) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 85% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py index e3e31edb..54d070cd 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 84% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py index 9b4185d6..42c19b90 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 93% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py index 2adee9d9..21ee99a2 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py similarity index 90% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py index 7dd28c57..7597172e 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py similarity index 82% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py index b5687f86..346cf45d 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py similarity index 91% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py index f2ca3b9f..166f5b7c 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 91% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py index 5dc0d2cc..42a8864e 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py new file mode 100644 index 00000000..5acd492f --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py @@ -0,0 +1,34 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Basic Wave Generator Example + +Generates a simple 440Hz sine wave (A4 note) and demonstrates +basic frequency and amplitude control. +""" + +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +# Create wave generator with default settings +wave_gen = WaveGenerator( + sample_rate=16000, + wave_type="sine", + glide=0.02, # 20ms smooth frequency transitions +) + +# Start the generator +App.start_brick(wave_gen) + +# Set initial frequency and amplitude +wave_gen.set_frequency(440.0) # A4 note (440 Hz) +wave_gen.set_amplitude(0.7) # 70% amplitude +wave_gen.set_volume(80) # 80% hardware volume + +print("Playing 440Hz sine wave (A4 note)") +print("Press Ctrl+C to stop") + +# Keep the application running +App.run() diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py new file mode 100644 index 00000000..320757c3 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py @@ -0,0 +1,41 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Waveform Comparison Example + +Cycles through different waveform types to hear the difference +between sine, square, sawtooth, and triangle waves. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator(sample_rate=16000, glide=0.02) +App.start_brick(wave_gen) + +# Set constant frequency and amplitude +wave_gen.set_frequency(440.0) +wave_gen.set_amplitude(0.6) + +waveforms = ["sine", "square", "sawtooth", "triangle"] + + +def cycle_waveforms(): + """Cycle through different waveform types.""" + for wave_type in waveforms: + print(f"Playing {wave_type} wave...") + wave_gen.set_wave_type(wave_type) + time.sleep(3) + # Silence + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Cycling through waveforms:") +print("sine → square → sawtooth → triangle") +print("Press Ctrl+C to stop") + +App.run(user_loop=cycle_waveforms) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py new file mode 100644 index 00000000..614d9962 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py @@ -0,0 +1,51 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Frequency Sweep Example + +Demonstrates smooth frequency transitions (glide/portamento effect) +by sweeping through different frequency ranges. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator( + wave_type="sine", + glide=0.05, # 50ms glide for noticeable portamento +) + +App.start_brick(wave_gen) +wave_gen.set_amplitude(0.7) + + +def frequency_sweep(): + """Sweep through frequency ranges.""" + + # Low to high sweep + print("Sweeping low to high (220Hz → 880Hz)...") + for freq in range(220, 881, 20): + wave_gen.set_frequency(float(freq)) + time.sleep(0.1) + + time.sleep(0.5) + + # High to low sweep + print("Sweeping high to low (880Hz → 220Hz)...") + for freq in range(880, 219, -20): + wave_gen.set_frequency(float(freq)) + time.sleep(0.1) + # Fade out + print("Fading out...") + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Frequency sweep demonstration") +print("Listen for smooth glide between frequencies") +print("Press Ctrl+C to stop") + +App.run(user_loop=frequency_sweep) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py new file mode 100644 index 00000000..395099fb --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py @@ -0,0 +1,63 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Envelope Control Example + +Demonstrates amplitude envelope control with different +attack and release times for various sonic effects. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator(wave_type="sine") +App.start_brick(wave_gen) + +wave_gen.set_frequency(440.0) +wave_gen.set_volume(80) + + +def envelope_demo(): + """Demonstrate different envelope settings.""" + + # Fast attack, fast release (percussive) + print("1. Percussive (fast attack/release)...") + wave_gen.set_envelope_params(attack=0.001, release=0.01, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.5) + wave_gen.set_amplitude(0.0) + time.sleep(1) + + # Slow attack, fast release (pad-like) + print("2. Pad-like (slow attack, fast release)...") + wave_gen.set_envelope_params(attack=0.2, release=0.05, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(1) + wave_gen.set_amplitude(0.0) + time.sleep(1) + + # Fast attack, slow release (sustained) + print("3. Sustained (fast attack, slow release)...") + wave_gen.set_envelope_params(attack=0.01, release=0.3, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.5) + wave_gen.set_amplitude(0.0) + time.sleep(1.5) + + # Medium attack and release (balanced) + print("4. Balanced (medium attack/release)...") + wave_gen.set_envelope_params(attack=0.05, release=0.05, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.8) + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Envelope Control Demonstration") +print("Listen to different attack/release characteristics") +print("Press Ctrl+C to stop") + +App.run(user_loop=envelope_demo) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py new file mode 100644 index 00000000..715e9cc3 --- /dev/null +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py @@ -0,0 +1,77 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Custom Speaker Configuration Example + +Demonstrates how to use a pre-configured Speaker instance with WaveGenerator. +Use this approach when you need: +- Specific USB speaker selection (USB_SPEAKER_2, etc.) +- Different audio format (S16_LE, etc.) +- Explicit device name ("plughw:CARD=Device,DEV=0") +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_peripherals.speaker import Speaker +from arduino.app_utils import App + +# List available USB speakers +available_speakers = Speaker.list_usb_devices() +print(f"Available USB speakers: {available_speakers}") + +# Create and configure a Speaker with specific parameters +# For optimal real-time synthesis, align periodsize with WaveGenerator block_duration +block_duration = 0.03 # Default WaveGenerator block duration +sample_rate = 16000 +periodsize = int(sample_rate * block_duration) # 480 frames @ 16kHz + +speaker = Speaker( + device=Speaker.USB_SPEAKER_1, # or explicit device like "plughw:CARD=Device" + sample_rate=sample_rate, + channels=1, + format="FLOAT_LE", + periodsize=periodsize, # Align with WaveGenerator blocks (eliminates glitches) + queue_maxsize=10, # Low latency for real-time audio +) + +# Start the external Speaker manually +# WaveGenerator won't manage its lifecycle (ownership pattern) +speaker.start() + +# Create WaveGenerator with the external speaker +wave_gen = WaveGenerator( + sample_rate=sample_rate, + speaker=speaker, # Pass pre-configured speaker + wave_type="sine", + glide=0.02, +) + +# Start the WaveGenerator (speaker already started above) +App.start_brick(wave_gen) + + +def play_sequence(): + """Play a simple frequency sequence.""" + frequencies = [261.63, 293.66, 329.63, 349.23, 392.00, 440.00, 493.88, 523.25] # C4 to C5 + + for freq in frequencies: + print(f"Playing {freq:.2f} Hz") + wave_gen.set_frequency(freq) + wave_gen.set_amplitude(0.7) + time.sleep(0.5) + + # Fade out + wave_gen.set_amplitude(0.0) + time.sleep(1) + + +print("Playing musical scale with external speaker...") +print("Press Ctrl+C to stop") + +App.run(user_loop=play_sequence) + +# Stop external Speaker manually (WaveGenerator doesn't manage external lifecycle) +speaker.stop() +print("Done") diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 81% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py index 44241a76..cb9a1081 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 81% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py index 740740a3..11b8ca9d 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py similarity index 80% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py index 55fb6ca7..4d8768aa 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 79% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py index ff1c7cc0..19afb676 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py similarity index 81% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py index 0a98cd99..74906149 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/4_on_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py similarity index 80% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/4_on_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py index cfec4c7c..7eb1316f 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/4_on_message.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/5_send_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py similarity index 80% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/5_send_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py index 9bb52450..00e19bc7 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/5_send_message.py +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/models-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml similarity index 94% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/models-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml index 7c511011..b4109df2 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/models-list.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml @@ -18,7 +18,7 @@ models: - yolox-object-detection: runner: brick name : "General purpose object detection - YoloX" - description: "General purpose object detection model based on YoloX Nano. This model is trained on the COCO dataset and can detect 80 different object classes." + description: "General purpose object detection model based on YoloX-Nano. This model is trained on the COCO dataset and can detect 80 different object classes." model_configuration: "EI_OBJ_DETECTION_MODEL": "/models/ootb/ei/yolo-x-nano.eim" model_labels: @@ -105,6 +105,7 @@ models: metadata: source: "edgeimpulse" ei-project-id: 717280 + ei-model-url: "https://studio.edgeimpulse.com/public/717280/live" source-model-id: "YOLOX-Nano" source-model-url: "https://github.com/Megvii-BaseDetection/YOLOX" bricks: @@ -1071,6 +1072,7 @@ models: metadata: source: "edgeimpulse" ei-project-id: 708500 + ei-model-url: "https://studio.edgeimpulse.com/public/708500/live" ei-gpu-mode: true source-model-id: "MobileNetV2" source-model-url: "https://www.tensorflow.org/api_docs/python/tf/keras/applications/MobileNetV2" @@ -1089,9 +1091,10 @@ models: metadata: source: "edgeimpulse" ei-project-id: 755016 + ei-model-url: "https://studio.edgeimpulse.com/public/755016/live" ei-gpu-mode: true source-model-id: "person-classification-wakevision" - source-model-url: "https://studio.edgeimpulse.com/studio/755016" + source-model-url: "https://studio.edgeimpulse.com/public/755016/live" bricks: - arduino:image_classification - arduino:video_image_classification @@ -1103,15 +1106,16 @@ models: "EI_V_ANOMALY_DETECTION_MODEL": "/models/ootb/ei/concrete-crack-anomaly-detection.eim" metadata: source: "edgeimpulse" - ei-project-id: 288658 + ei-project-id: 800941 + ei-model-url: "https://studio.edgeimpulse.com/public/800941/live" source-model-id: "concrete-crack-anomaly-detection" - source-model-url: "https://studio.edgeimpulse.com/public/288658" + source-model-url: "https://studio.edgeimpulse.com/public/800941/live" bricks: - arduino:visual_anomaly_detection - keyword-spotting-hey-arduino: runner: brick name : "Keyword spotting - Hey Arduino!" - description: "A keyword-spotting model to detect the 'Hey Arduino!' in audio recordings" + description: "A keyword-spotting model to detect the 'Hey Arduino!' in audio streams." model_configuration: "EI_KEYWORD_SPOTTING_MODEL": "/models/ootb/ei/keyword-spotting-hey-arduino.eim" model_labels: @@ -1120,12 +1124,14 @@ models: - "other" metadata: source: "edgeimpulse" - ei-project-id: 757509 + ei-project-id: 757509 + ei-model-url: "https://studio.edgeimpulse.com/studio/757509/live" ei-impulse-id: 30 source-model-id: "hey-arduino" - source-model-url: "https://studio.edgeimpulse.com/studio/757509" + source-model-url: "https://studio.edgeimpulse.com/studio/757509/live" + private: true bricks: - - arduino:keyword_spotter + - arduino:keyword_spotting - updown-wave-motion-detection: runner: brick name : "Continuous motion detection" @@ -1140,9 +1146,11 @@ models: metadata: source: "edgeimpulse" ei-project-id: 734960 + ei-model-url: "https://studio.edgeimpulse.com/public/734960/live" source-model-id: "continuous-motion-detection" - source-model-url: "https://studio.edgeimpulse.com/studio/734960" - brick: arduino:motion_detection + source-model-url: "https://studio.edgeimpulse.com/public/734960/live" + bricks: + - arduino:motion_detection - fan-anomaly-detection: runner: brick name : "Fan anomaly detection" @@ -1152,8 +1160,9 @@ models: metadata: source: "edgeimpulse" ei-project-id: 774707 + ei-model-url: "https://studio.edgeimpulse.com/public/774707/live" source-model-id: "fan-anomaly-detection" - source-model-url: "https://studio.edgeimpulse.com/studio/774707" + source-model-url: "https://studio.edgeimpulse.com/public/774707/live" bricks: - arduino:vibration_anomaly_detection - glass-breaking: @@ -1168,7 +1177,9 @@ models: metadata: source: "edgeimpulse" ei-project-id: 749446 + ei-model-url: "https://studio.edgeimpulse.com/public/749446/live" source-model-id: "glass-breaking" - source-model-url: "https://studio.edgeimpulse.com/studio/749446" + source-model-url: "https://studio.edgeimpulse.com/public/749446/live" + private: true bricks: - - arduino:audio_classifier + - arduino:audio_classification diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md deleted file mode 100644 index ba9da420..00000000 --- a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/cloud_llm/API.md +++ /dev/null @@ -1,107 +0,0 @@ -# cloud_llm API Reference - -## Index - -- Class `CloudLLM` -- Class `CloudModel` - ---- - -## `CloudLLM` class - -```python -class CloudLLM(api_key: str, model: Union[str, CloudModel], system_prompt: str, temperature: Optional[float], timeout: int) -``` - -A simplified, opinionated wrapper for common LangChain conversational patterns. - -This class provides a single interface to manage stateless chat and chat with memory. - -### Parameters - -- **api_key**: The API key for the LLM service. -- **model**: The model identifier as per LangChain specification (e.g., "anthropic:claude-3-sonnet-20240229") -or by using a CloudModels enum (e.g. CloudModels.OPENAI_GPT). Defaults to CloudModel.ANTHROPIC_CLAUDE. -- **system_prompt**: The global system-level instruction for the AI. -- **temperature**, default=0.7: The sampling temperature for response generation. Defaults to 0.7. -- **timeout**, default=30 seconds: The maximum time to wait for a response from the LLM service, in seconds. Defaults to 30 seconds. - -### Raises - -- **ValueError**: If the API key is missing. - -### Methods - -#### `with_memory(max_messages: int)` - -Enables conversational memory for this instance. - -This allows the chatbot to remember previous user and AI messages. -Calling this modifies the instance to be stateful. - -##### Parameters - -- **max_messages**: The total number of past messages (user + AI) to -keep in the conversation window. Set to 0 to disable memory. - -##### Returns - -- (*self*): The current CloudLLM instance for method chaining. - -#### `chat(message: str)` - -Sends a single message to the AI and gets a complete response synchronously. - -This is the primary way to interact. It automatically handles memory -based on how the instance was configured. - -##### Parameters - -- **message**: The user's message. - -##### Returns - --: The AI's complete response as a string. - -##### Raises - -- **RuntimeError**: If the chat model is not initialized or if text generation fails. - -#### `chat_stream(message: str)` - -Sends a single message to the AI and streams the response as a synchronous generator. - -Use this to get tokens as they are generated, perfect for a streaming UI. - -##### Parameters - -- **message**: The user's message. - -##### Returns - -- (*str*): Chunks of the AI's response as they become available. - -##### Raises - -- **RuntimeError**: If the chat model is not initialized or if text generation fails. -- **AlreadyGenerating**: If the chat model is already streaming a response. - -#### `stop_stream()` - -Signals the LLM to stop generating a response. - -#### `clear_memory()` - -Clears the conversational memory. - -This only has an effect if with_memory() has been called. - - ---- - -## `CloudModel` class - -```python -class CloudModel() -``` - diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 91% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md index 87a5213e..7573beee 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/audio_classification/API.md +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md @@ -67,7 +67,7 @@ Stop real-time audio classification. Terminates audio capture and releases any associated resources. -#### `classify_from_file(audio_path: str, confidence: int)` +#### `classify_from_file(audio_path: str, confidence: float)` Classify audio content from a WAV file. @@ -80,9 +80,8 @@ Supported sample widths: ##### Parameters - **audio_path** (*str*): Path to the `.wav` audio file to classify. -- **confidence** (*int*) (optional): Confidence threshold (0–1). If None, -the default confidence level specified during initialization -will be applied. +- **confidence** (*float*) (optional): Minimum confidence threshold (0.0–1.0) required +for a detection to be considered valid. Defaults to 0.8 (80%). ##### Returns diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md new file mode 100644 index 00000000..d2dd5903 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md @@ -0,0 +1,120 @@ +# cloud_llm API Reference + +## Index + +- Class `CloudLLM` +- Class `CloudModel` + +--- + +## `CloudLLM` class + +```python +class CloudLLM(api_key: str, model: Union[str, CloudModel], system_prompt: str, temperature: Optional[float], timeout: int) +``` + +A Brick for interacting with cloud-based Large Language Models (LLMs). + +This class wraps LangChain functionality to provide a simplified, unified interface +for chatting with models like Claude, GPT, and Gemini. It supports both synchronous +'one-shot' responses and streaming output, with optional conversational memory. + +### Parameters + +- **api_key** (*str*): The API access key for the target LLM service. Defaults to the +'API_KEY' environment variable. +- **model** (*Union[str, CloudModel]*): The model identifier. Accepts a `CloudModel` +enum member (e.g., `CloudModel.OPENAI_GPT`) or its corresponding raw string +value (e.g., `'gpt-4o-mini'`). Defaults to `CloudModel.ANTHROPIC_CLAUDE`. +- **system_prompt** (*str*): A system-level instruction that defines the AI's persona +and constraints (e.g., "You are a helpful assistant"). Defaults to empty. +- **temperature** (*Optional[float]*): The sampling temperature between 0.0 and 1.0. +Higher values make output more random/creative; lower values make it more +deterministic. Defaults to 0.7. +- **timeout** (*int*): The maximum duration in seconds to wait for a response before +timing out. Defaults to 30. + +### Raises + +- **ValueError**: If `api_key` is not provided (empty string). + +### Methods + +#### `with_memory(max_messages: int)` + +Enables conversational memory for this instance. + +Configures the Brick to retain a window of previous messages, allowing the +AI to maintain context across multiple interactions. + +##### Parameters + +- **max_messages** (*int*): The maximum number of messages (user + AI) to keep +in history. Older messages are discarded. Set to 0 to disable memory. +Defaults to 10. + +##### Returns + +- (*CloudLLM*): The current instance, allowing for method chaining. + +#### `chat(message: str)` + +Sends a message to the AI and blocks until the complete response is received. + +This method automatically manages conversation history if memory is enabled. + +##### Parameters + +- **message** (*str*): The input text prompt from the user. + +##### Returns + +- (*str*): The complete text response generated by the AI. + +##### Raises + +- **RuntimeError**: If the internal chain is not initialized or if the API request fails. + +#### `chat_stream(message: str)` + +Sends a message to the AI and yields response tokens as they are generated. + +This allows for processing or displaying the response in real-time (streaming). +The generation can be interrupted by calling `stop_stream()`. + +##### Parameters + +- **message** (*str*): The input text prompt from the user. + +##### Returns + +- (*str*): Chunks of text (tokens) from the AI response. + +##### Raises + +- **RuntimeError**: If the internal chain is not initialized or if the API request fails. +- **AlreadyGenerating**: If a streaming session is already active. + +#### `stop_stream()` + +Signals the active streaming generation to stop. + +This sets an internal flag that causes the `chat_stream` iterator to break +early. It has no effect if no stream is currently running. + +#### `clear_memory()` + +Clears the conversational memory history. + +Resets the stored context. This is useful for starting a new conversation +topic without previous context interfering. Only applies if memory is enabled. + + +--- + +## `CloudModel` class + +```python +class CloudModel() +``` + diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/image_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/image_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/mood_detector/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/motion_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/mqtt/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/mqtt/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md similarity index 90% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md index c8c84812..bf58415c 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/object_detection/API.md +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md @@ -19,6 +19,14 @@ This module processes an input image and returns: - Corresponding class labels - Confidence scores for each detection +### Parameters + +- **confidence** (*float*): Minimum confidence threshold for detections. Default is 0.3 (30%). + +### Raises + +- **ValueError**: If model information cannot be retrieved. + ### Methods #### `detect_from_file(image_path: str, confidence: float)` @@ -60,7 +68,7 @@ Draw bounding boxes on an image enclosing detected objects using PIL. ##### Returns -: Image with bounding boxes and key points drawn. -None if no detection or invalid image. +None if input image or detections are invalid. #### `process(item)` diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md new file mode 100644 index 00000000..f8977727 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md @@ -0,0 +1,151 @@ +# wave_generator API Reference + +## Index + +- Class `WaveGenerator` + +--- + +## `WaveGenerator` class + +```python +class WaveGenerator(sample_rate: int, wave_type: WaveType, block_duration: float, attack: float, release: float, glide: float, speaker: Speaker) +``` + +Continuous wave generator brick for audio synthesis. + +This brick generates continuous audio waveforms (sine, square, sawtooth, triangle) +and streams them to a USB speaker in real-time. It provides smooth transitions +between frequency and amplitude changes using configurable envelope parameters. + +The generator runs continuously in a background thread, producing audio blocks +at a steady rate with minimal latency. + +### Parameters + +- **sample_rate** (*int*): Audio sample rate in Hz (default: 16000). +- **wave_type** (*WaveType*): Initial waveform type (default: "sine"). +- **block_duration** (*float*): Duration of each audio block in seconds (default: 0.01). +- **attack** (*float*): Attack time for amplitude envelope in seconds (default: 0.01). +- **release** (*float*): Release time for amplitude envelope in seconds (default: 0.03). +- **glide** (*float*): Frequency glide time (portamento) in seconds (default: 0.02). +- **speaker** (*Speaker*) (optional): Pre-configured Speaker instance. If None, WaveGenerator +will create an internal Speaker optimized for real-time synthesis with: +- periodsize aligned to block_duration (eliminates buffer mismatch) +- queue_maxsize=8 (low latency: ~80ms max buffer) +- format=FLOAT_LE, channels=1 + +If providing an external Speaker, ensure: +- sample_rate matches WaveGenerator's sample_rate +- periodsize = int(sample_rate × block_duration) for optimal alignment +- Speaker is started/stopped manually (WaveGenerator won't manage its lifecycle) + +Example external Speaker configuration: + speaker = Speaker( + device="plughw:CARD=UH34", + sample_rate=16000, + format="FLOAT_LE", + periodsize=160, # 16000 × 0.01 = 160 frames + queue_maxsize=8 + ) + +### Raises + +- **SpeakerException**: If no USB speaker is found or device is busy. + +### Attributes + +- **sample_rate** (*int*): Audio sample rate in Hz (default: 16000). +- **wave_type** (*WaveType*): Type of waveform to generate. +- **frequency** (*float*): Current output frequency in Hz. +- **amplitude** (*float*): Current output amplitude (0.0-1.0). + +### Methods + +#### `start()` + +Start the wave generator and audio output. + +This starts the speaker device (if internally owned) and launches the producer thread +that continuously generates and streams audio blocks. + +#### `stop()` + +Stop the wave generator and audio output. + +This stops the producer thread and closes the speaker device (if internally owned). + +#### `set_frequency(frequency: float)` + +Set the target output frequency. + +The frequency will smoothly transition to the new value over the +configured glide time. + +##### Parameters + +- **frequency** (*float*): Target frequency in Hz (typically 20-8000 Hz). + +#### `set_amplitude(amplitude: float)` + +Set the target output amplitude. + +The amplitude will smoothly transition to the new value over the +configured attack/release time. + +##### Parameters + +- **amplitude** (*float*): Target amplitude in range [0.0, 1.0]. + +#### `set_wave_type(wave_type: WaveType)` + +Change the waveform type. + +##### Parameters + +- **wave_type** (*WaveType*): One of "sine", "square", "sawtooth", "triangle". + +##### Raises + +- **ValueError**: If wave_type is not valid. + +#### `set_volume(volume: int)` + +Set the speaker volume level. + +This is a wrapper that controls the hardware volume of the USB speaker device. + +##### Parameters + +- **volume** (*int*): Hardware volume level (0-100). + +##### Raises + +- **SpeakerException**: If the mixer is not available or if volume cannot be set. + +#### `get_volume()` + +Get the current speaker volume level. + +##### Returns + +- (*int*): Current hardware volume level (0-100). + +#### `set_envelope_params(attack: float, release: float, glide: float)` + +Update envelope parameters. + +##### Parameters + +- **attack** (*float*) (optional): Attack time in seconds. +- **release** (*float*) (optional): Release time in seconds. +- **glide** (*float*) (optional): Frequency glide time in seconds. + +#### `get_state()` + +Get current generator state. + +##### Returns + +- (*dict*): Dictionary containing current frequency, amplitude, wave type, etc. + diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md similarity index 76% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md index 4619aed5..ec08afdb 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_bricks/web_ui/API.md +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md @@ -9,7 +9,7 @@ ## `WebUI` class ```python -class WebUI(addr: str, port: int, ui_path_prefix: str, api_path_prefix: str, assets_dir_path: str, certs_dir_path: str, use_ssl: bool) +class WebUI(addr: str, port: int, ui_path_prefix: str, api_path_prefix: str, assets_dir_path: str, certs_dir_path: str, use_tls: bool, use_ssl: bool | None) ``` Module for deploying a web server that can host a web application and expose APIs to its clients. @@ -24,21 +24,38 @@ and support real-time communication between the client and the server. - **ui_path_prefix** (*str*) (optional), default="" (root): URL prefix for UI routes. Defaults to "" (root). - **api_path_prefix** (*str*) (optional), default="" (root): URL prefix for API routes. Defaults to "" (root). - **assets_dir_path** (*str*) (optional), default="/app/assets": Path to static assets directory. Defaults to "/app/assets". -- **certs_dir_path** (*str*) (optional), default="/app/certs": Path to SSL certificates directory. Defaults to "/app/certs". -- **use_ssl** (*bool*) (optional), default=False: Enable SSL/HTTPS. Defaults to False. +- **certs_dir_path** (*str*) (optional), default="/app/certs": Path to TLS certificates directory. Defaults to "/app/certs". +- **use_tls** (*bool*) (optional), default=False: Enable TLS/HTTPS. Defaults to False. +- **use_ssl** (*bool*) (optional), default=None: Deprecated. Use use_tls instead. Defaults to None. ### Methods +#### `local_url()` + +Get the locally addressable URL of the web server. + +##### Returns + +- (*str*): The server's URL (including protocol, address, and port). + +#### `url()` + +Get the externally addressable URL of the web server. + +##### Returns + +- (*str*): The server's URL (including protocol, address, and port). + #### `start()` Start the web server asynchronously. -This sets up static file routing and WebSocket event handlers, configures SSL if enabled, and launches the server using Uvicorn. +This sets up static file routing and WebSocket event handlers, configures TLS if enabled, and launches the server using Uvicorn. ##### Raises - **RuntimeError**: If 'index.html' is missing in the static assets directory. -- **RuntimeError**: If SSL is enabled but certificates are missing or fail to generate. +- **RuntimeError**: If TLS is enabled but certificates fail to generate. - **RuntimeWarning**: If the server is already running. #### `stop()` @@ -47,7 +64,7 @@ Stop the web server gracefully. Waits up to 5 seconds for current requests to finish before terminating. -#### `expose_api(method: str, path: str, function: callable)` +#### `expose_api(method: str, path: str, function: Callable)` Register a route with the specified HTTP method and path. @@ -57,7 +74,7 @@ The path will be prefixed with the api_path_prefix configured during initializat - **method** (*str*): HTTP method to use (e.g., "GET", "POST"). - **path** (*str*): URL path for the API endpoint (without the prefix). -- **function** (*callable*): Function to execute when the route is accessed. +- **function** (*Callable*): Function to execute when the route is accessed. #### `on_connect(callback: Callable[[str], None])` @@ -79,7 +96,7 @@ The callback should accept a single argument: the session ID (sid) of the discon - **callback** (*Callable[[str], None]*): Function to call when a client disconnects. Receives the session ID (sid) as its only argument. -#### `on_message(message_type: str, callback: Callable[[str, any], any])` +#### `on_message(message_type: str, callback: Callable[[str, Any], Any])` Register a callback function for a specific WebSocket message type received by clients. @@ -91,10 +108,10 @@ with a message type suffix "_response". ##### Parameters - **message_type** (*str*): The message type name to listen for. -- **callback** (*Callable[[str, any], any]*): Function to handle the message. Receives two arguments: +- **callback** (*Callable[[str, Any], Any]*): Function to handle the message. Receives two arguments: the session ID (sid) and the incoming message data. -#### `send_message(message_type: str, message: dict | str, room: str)` +#### `send_message(message_type: str, message: dict | str, room: str | None)` Send a message to connected WebSocket clients. diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/microphone/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/microphone/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md similarity index 79% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md index 3cddad0f..94c64118 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/api-docs/arduino/app_peripherals/speaker/API.md +++ b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md @@ -21,7 +21,7 @@ Custom exception for Speaker errors. ## `Speaker` class ```python -class Speaker(device: str, sample_rate: int, channels: int, format: str) +class Speaker(device: str, sample_rate: int, channels: int, format: str, periodsize: int, queue_maxsize: int) ``` Speaker class for reproducing audio using ALSA PCM interface. @@ -32,6 +32,12 @@ Speaker class for reproducing audio using ALSA PCM interface. - **sample_rate** (*int*): Sample rate in Hz (default: 16000). - **channels** (*int*): Number of audio channels (default: 1). - **format** (*str*): Audio format (default: "S16_LE"). +- **periodsize** (*int*): ALSA period size in frames (default: None = use hardware default). +For real-time synthesis, set to match generation block size. +For streaming/file playback, leave as None for hardware-optimal value. +- **queue_maxsize** (*int*): Maximum application queue depth in blocks (default: 100). +Lower values (5-20) reduce latency for interactive audio. +Higher values (50-200) provide stability for streaming. ### Raises diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/bricks-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml similarity index 93% rename from internal/e2e/daemon/testdata/assets/0.5.0/bricks-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml index a4747e86..eaf2186d 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/bricks-list.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml @@ -5,7 +5,6 @@ bricks: local database. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: storage @@ -17,7 +16,6 @@ bricks: \ or with custom object detection models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -38,7 +36,6 @@ bricks: ' require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: text @@ -47,7 +44,6 @@ bricks: description: Scans a camera for barcodes and QR codes require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -64,7 +60,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: audio @@ -81,7 +76,6 @@ bricks: description: Connects to Arduino Cloud require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -90,6 +84,15 @@ bricks: description: Arduino Cloud Device ID - name: ARDUINO_SECRET description: Arduino Cloud Secret +- id: arduino:wave_generator + name: Wave Generator + description: Continuous wave generator for audio synthesis. Generates sine, square, + sawtooth, and triangle waveforms with smooth frequency and amplitude transitions. + require_container: false + require_model: false + mount_devices_into_container: false + ports: [] + category: audio - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ @@ -98,7 +101,6 @@ bricks: \ image classification models trained on Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: video @@ -115,7 +117,6 @@ bricks: description: A simplified user interface based on Streamlit and Python. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: - 7000 @@ -135,7 +136,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -155,7 +155,6 @@ bricks: APIs and a WebSocket exposed by a web server. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: - 7000 @@ -172,7 +171,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: audio @@ -202,7 +200,6 @@ bricks: ' require_container: true require_model: true - require_devices: true mount_devices_into_container: true ports: [] category: video @@ -224,7 +221,6 @@ bricks: and weather APIs. Requires an internet connection. require_container: false require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: miscellaneous @@ -241,7 +237,6 @@ bricks: ' require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: null @@ -259,7 +254,6 @@ bricks: built on top of InfluxDB. require_container: true require_model: false - require_devices: false mount_devices_into_container: false ports: [] category: storage @@ -283,7 +277,6 @@ bricks: \ detection models trained on the Edge Impulse platform. \n" require_container: true require_model: true - require_devices: false mount_devices_into_container: false ports: [] category: image @@ -312,7 +305,6 @@ bricks: ' require_container: true require_model: true - require_devices: true mount_devices_into_container: true ports: [] category: null @@ -328,3 +320,15 @@ bricks: description: path to the model file - name: VIDEO_DEVICE default_value: /dev/video1 +- id: arduino:cloud_llm + name: Cloud LLM + description: Cloud LLM Brick enables seamless integration with cloud-based Large + Language Models (LLMs) for advanced AI capabilities in your Arduino projects. + require_container: false + require_model: false + mount_devices_into_container: false + ports: [] + category: null + variables: + - name: API_KEY + description: API Key for the cloud-based LLM service diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml index 6dbe38e4..0a710c5f 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/audio_classification/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-audio-classifier-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml index d8207271..fe20b37e 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/image_classification/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-classification-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml index b4dd7963..4340871e 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/keyword_spotting/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-keyword-spot-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml index ef7fc730..abc10e77 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/motion_detection/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-motion-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml index 9d418913..99871411 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/object_detection/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-obj-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml index aca4e2a2..e07c2890 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-anomaly-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml similarity index 97% rename from internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml index 7e054acc..3dd8139a 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/compose/arduino/video_image_classification/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-video-classification-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml similarity index 86% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml index dbca6363..804bc638 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/video_object_detection/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-video-obj-detection-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: @@ -13,7 +13,7 @@ services: volumes: - "${CUSTOM_MODEL_PATH:-/home/arduino/.arduino-bricks/ei-models/}:${CUSTOM_MODEL_PATH:-/home/arduino/.arduino-bricks/ei-models/}" - "/run/udev:/run/udev" - command: ["--model-file", "${EI_OBJ_DETECTION_MODEL:-/models/ootb/ei/yolo-x-nano.eim}", "--dont-print-predictions", "--mode", "streaming", "--force-target", "--preview-original-resolution", "--camera", "${VIDEO_DEVICE:-/dev/video1}"] + command: ["--model-file", "${EI_OBJ_DETECTION_MODEL:-/models/ootb/ei/yolo-x-nano.eim}", "--dont-print-predictions", "--mode", "streaming", "--preview-original-resolution", "--camera", "${VIDEO_DEVICE:-/dev/video1}"] healthcheck: test: [ "CMD-SHELL", "wget -q --spider http://ei-video-obj-detection-runner:4912 || exit 1" ] interval: 2s diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml index 0e71d75a..ced99fcb 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml @@ -2,7 +2,7 @@ # CUSTOM_MODEL_PATH = path to the custom model directory services: ei-obj-video-anomalies-det-runner: - image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.5.0 + image: ${DOCKER_REGISTRY_BASE:-ghcr.io/arduino/}app-bricks/ei-models-runner:0.6.0 logging: driver: "json-file" options: diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/arduino_cloud/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/arduino_cloud/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/audio_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/audio_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/camera_code_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/camera_code_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md new file mode 100644 index 00000000..add84514 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md @@ -0,0 +1,109 @@ +# Cloud LLM Brick + +The Cloud LLM Brick provides a seamless interface to interact with cloud-based Large Language Models (LLMs) such as OpenAI's GPT, Anthropic's Claude, and Google's Gemini. It abstracts the complexity of REST APIs, enabling you to send prompts, receive responses, and maintain conversational context within your Arduino projects. + +## Overview + +This Brick acts as a gateway to powerful AI models hosted in the cloud. It is designed to handle the nuances of network communication, authentication, and session management. Whether you need a simple one-off answer or a continuous conversation with memory, the Cloud LLM Brick provides a unified API for different providers. + +## Features + +- **Multi-Provider Support**: Compatible with major LLM providers including Anthropic (Claude), OpenAI (GPT), and Google (Gemini). +- **Conversational Memory**: Built-in support for windowed history, allowing the AI to remember context from previous exchanges. +- **Streaming Responses**: Receive text chunks in real-time as they are generated, ideal for responsive user interfaces. +- **Configurable Behavior**: Customize system prompts, temperature (creativity), and request timeouts. +- **Simple API**: Unified `chat` and `chat_stream` methods regardless of the underlying model provider. + +## Prerequisites + +- **Internet Connection**: The board must be connected to the internet to reach the LLM provider's API. +- **API Key**: A valid API key for the chosen service (e.g., OpenAI API Key, Anthropic API Key). +- **Python Dependencies**: The Brick relies on LangChain integration packages (`langchain-anthropic`, `langchain-openai`, `langchain-google-genai`). + +## Code Example and Usage + +### Basic Conversation + +This example initializes the Brick with an OpenAI model and performs a simple chat interaction. + +**Note:** The API key is not hardcoded. It is retrieved automatically from the **Brick Configuration** in App Lab. + +```python +import os +from arduino.app_bricks.cloud_llm import CloudLLM, CloudModel +from arduino.app_utils import App + +# Initialize the Brick (API key is loaded from configuration) +llm = CloudLLM( + model=CloudModel.OPENAI_GPT, + system_prompt="You are a helpful assistant for an IoT device." +) + +def simple_chat(): + # Send a prompt and print the response + response = llm.chat("What is the capital of Italy?") + print(f"AI: {response}") + +# Run the application +App.run(simple_chat) +``` + +### Streaming with Memory + +This example demonstrates how to enable conversational memory and process the response as a stream of tokens. + +```python +from arduino.app_bricks.cloud_llm import CloudLLM, CloudModel +from arduino.app_utils import App + +# Initialize with memory enabled (keeps last 10 messages) +# API Key is retrieved automatically from Brick Configuration +llm = CloudLLM( + model=CloudModel.ANTHROPIC_CLAUDE +).with_memory(max_messages=10) + +def chat_loop(): + while True: + user_input = input("You: ") + if user_input.lower() in ["exit", "quit"]: + break + + print("AI: ", end="", flush=True) + + # Stream the response token by token + for token in llm.chat_stream(user_input): + print(token, end="", flush=True) + print() # Newline after response + +App.run(chat_loop) +``` + +## Configuration + +The Brick is initialized with the following parameters: + +| Parameter | Type | Default | Description | +| :-------------- | :-------------------- | :---------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | +| `api_key` | `str` | `os.getenv("API_KEY")` | The authentication key for the LLM provider. **Recommended:** Set this via the **Brick Configuration** menu in App Lab instead of code. | +| `model` | `str` \| `CloudModel` | `CloudModel.ANTHROPIC_CLAUDE` | The specific model to use. Accepts a `CloudModel` enum or its string value. | +| `system_prompt` | `str` | `""` | A base instruction that defines the AI's behavior and persona. | +| `temperature` | `float` | `0.7` | Controls randomness. `0.0` is deterministic, `1.0` is creative. | +| `timeout` | `int` | `30` | Maximum time (in seconds) to wait for a response. | + +### Supported Models + +You can select a model using the `CloudModel` enum or by passing the corresponding raw string identifier. + +| Enum Constant | Raw String ID | Provider Documentation | +| :---------------------------- | :------------------------- | :-------------------------------------------------------------------------- | +| `CloudModel.ANTHROPIC_CLAUDE` | `claude-3-7-sonnet-latest` | [Anthropic Models](https://docs.anthropic.com/en/docs/about-claude/models) | +| `CloudModel.OPENAI_GPT` | `gpt-4o-mini` | [OpenAI Models](https://platform.openai.com/docs/models) | +| `CloudModel.GOOGLE_GEMINI` | `gemini-2.5-flash` | [Google Gemini Models](https://ai.google.dev/gemini-api/docs/models/gemini) | + +## Methods + +- **`chat(message)`**: Sends a message and returns the complete response string. Blocks until generation is finished. +- **`chat_stream(message)`**: Returns a generator yielding response tokens as they arrive. +- **`stop_stream()`**: Interrupts an active streaming generation. +- **`with_memory(max_messages)`**: Enables history tracking. `max_messages` defines the context window size. +- **`clear_memory()`**: Resets the conversation history. \ No newline at end of file diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md similarity index 97% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md index 704a9e62..53a837d0 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/docs/arduino/dbstorage_sqlstore/README.md +++ b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md @@ -35,7 +35,7 @@ db = SQLStore("example.db") # ... Do work # Close database -db.close() +db.stop() ``` To create a new table: @@ -65,4 +65,4 @@ db.store("users", data) The SQLStore automatically creates a directory structure for database storage, placing files in `data/dbstorage_sqlstore/` within your application directory. The brick supports automatic type inference when creating tables, mapping Python types (*int*, *float*, *str*, *bytes*) to corresponding SQLite column types (*INTEGER*, *REAL*, *TEXT*, *BLOB*). -The `store()` method can automatically create tables if they don't exist by analyzing the data types of the provided values. This makes it easy to get started without defining schemas upfront, while still allowing explicit table creation for more control over column definitions and constraints. \ No newline at end of file +The `store()` method can automatically create tables if they don't exist by analyzing the data types of the provided values. This makes it easy to get started without defining schemas upfront, while still allowing explicit table creation for more control over column definitions and constraints. diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/dbstorage_tsstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/dbstorage_tsstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/keyword_spotting/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/keyword_spotting/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/mood_detector/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/mood_detector/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/motion_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/motion_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/streamlit_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/streamlit_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/vibration_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/vibration_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/video_image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/video_image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/video_object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/video_object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/visual_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/visual_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md new file mode 100644 index 00000000..23a1f9f8 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md @@ -0,0 +1,119 @@ +# Wave Generator brick + +This brick provides continuous wave generation for real-time audio synthesis with multiple waveform types and smooth transitions. + +## Overview + +The Wave Generator brick allows you to: + +- Generate continuous audio waveforms in real-time +- Select between different waveform types (sine, square, sawtooth, triangle) +- Control frequency and amplitude dynamically during playback +- Configure smooth transitions with attack, release, and glide (portamento) parameters +- Stream audio to USB speakers with minimal latency + +It runs continuously in a background thread, producing audio blocks at a steady rate with configurable envelope parameters for professional-sounding synthesis. + +## Features + +- Four waveform types: sine, square, sawtooth, and triangle +- Real-time frequency and amplitude control with smooth transitions +- Configurable envelope parameters (attack, release, glide) +- Hardware volume control support +- Thread-safe operation for concurrent access +- Efficient audio generation using NumPy vectorization +- Custom speaker configuration support + +## Prerequisites + +Before using the Wave Generator brick, ensure you have the following: + +- USB-C® Hub with external power supply (5V, 3A) +- USB audio device (USB speaker or USB-C → 3.5mm adapter) +- Arduino UNO Q running in Network Mode or SBC Mode (USB-C port needed for the hub) + +## Code example and usage + +Here is a basic example for generating a 440 Hz sine wave tone: + +```python +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator() + +App.start_brick(wave_gen) + +# Set frequency to A4 note (440 Hz) +wave_gen.set_frequency(440.0) + +# Set amplitude to 80% +wave_gen.set_amplitude(0.8) + +App.run() +``` + +You can customize the waveform type and envelope parameters: + +```python +wave_gen = WaveGenerator( + wave_type="square", + attack=0.01, + release=0.03, + glide=0.02 +) + +App.start_brick(wave_gen) + +# Change waveform during playback +wave_gen.set_wave_type("triangle") + +# Adjust envelope parameters +wave_gen.set_envelope_params(attack=0.05, release=0.1, glide=0.05) + +App.run() +``` + +For specific hardware configurations, you can provide a custom Speaker instance: + +```python +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_peripherals.speaker import Speaker +from arduino.app_utils import App + +# Create Speaker with optimal real-time configuration +speaker = Speaker( + device=Speaker.USB_SPEAKER_2, + sample_rate=16000, + channels=1, + format="FLOAT_LE", + periodsize=480, # 16000 Hz × 0.03s = 480 frames (eliminates buffer mismatch) + queue_maxsize=10 # Low latency configuration +) + +# Start external Speaker manually (WaveGenerator won't manage its lifecycle) +speaker.start() + +wave_gen = WaveGenerator(sample_rate=16000, speaker=speaker) + +App.start_brick(wave_gen) +wave_gen.set_frequency(440.0) +wave_gen.set_amplitude(0.7) + +App.run() + +# Stop external Speaker manually +speaker.stop() +``` + +**Note:** When providing an external Speaker, you manage its lifecycle (start/stop). WaveGenerator only validates configuration and uses it for playback. + +## Understanding Wave Generation + +The Wave Generator brick produces audio through continuous waveform synthesis. + +The `frequency` parameter controls the pitch of the output sound, measured in Hertz (Hz), where typical audible frequencies range from 20 Hz to 8000 Hz. + +The `amplitude` parameter controls the volume as a value between 0.0 (silent) and 1.0 (maximum), with smooth transitions handled by the attack and release envelope parameters. + +The `glide` parameter (also known as portamento) smoothly transitions between frequencies over time, creating sliding pitch effects similar to a theremin or synthesizer. Setting glide to 0 disables this effect but may cause audible clicks during fast frequency changes. diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/weather_forecast/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/weather_forecast/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/web_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.5.0/docs/arduino/web_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py similarity index 90% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py index 58cd9470..3a9df8ca 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/arduino_cloud/1_led_blink.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 88% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py index 40371db7..1fce305b 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 92% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py index 5e730ea9..4b8c5bf9 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 84% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py index 36b2be12..1eed6c3a 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 60% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py index 68bdd710..237aaba1 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 @@ -6,7 +6,5 @@ # EXAMPLE_REQUIRES = "Requires an audio file with the glass breaking sound." from arduino.app_bricks.audio_classification import AudioClassification -classifier = AudioClassification() - -classification = classifier.classify_from_file("glass_breaking.wav") +classification = AudioClassification.classify_from_file("glass_breaking.wav") print("Result:", classification) diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py similarity index 89% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py index 6dfdb41a..1facd326 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/1_detection.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py similarity index 90% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py index 6288d571..7d63bb46 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/2_detection_list.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 91% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py index 8a672470..d128cd96 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py new file mode 100644 index 00000000..7c325de8 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Chat with an LLM" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + print(llm.chat(prompt)) + print() + + +App.run(ask_prompt) diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py new file mode 100644 index 00000000..9538cbda --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py @@ -0,0 +1,25 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Streaming responses from an LLM" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + for token in llm.chat_stream(prompt): + print(token, end="", flush=True) + print() + + +App.run(ask_prompt) diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py new file mode 100644 index 00000000..f30419bf --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +# EXAMPLE_NAME = "Conversation with memory" +# EXAMPLE_REQUIRES = "Requires a valid API key to a cloud LLM service." + +from arduino.app_bricks.cloud_llm import CloudLLM +from arduino.app_utils import App + +llm = CloudLLM( + api_key="YOUR_API_KEY", # Replace with your actual API key +) +llm.with_memory(0) + + +def ask_prompt(): + prompt = input("Enter your prompt (or type 'exit' to quit): ") + if prompt.lower() == "exit": + raise StopIteration() + print(llm.chat(prompt)) + + +App.run(ask_prompt) diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 85% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py index e3e31edb..54d070cd 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 84% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py index 9b4185d6..42c19b90 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/1_write_read.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 93% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py index 2adee9d9..21ee99a2 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py similarity index 90% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py index 7dd28c57..7597172e 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/image_classification/image_classification_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py similarity index 82% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py index b5687f86..346cf45d 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/keyword_spotting/1_hello_world.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py similarity index 91% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py index f2ca3b9f..166f5b7c 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/object_detection/object_detection_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 91% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py index 5dc0d2cc..42a8864e 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/visual_anomaly_detection/object_detection_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py new file mode 100644 index 00000000..5acd492f --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py @@ -0,0 +1,34 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Basic Wave Generator Example + +Generates a simple 440Hz sine wave (A4 note) and demonstrates +basic frequency and amplitude control. +""" + +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +# Create wave generator with default settings +wave_gen = WaveGenerator( + sample_rate=16000, + wave_type="sine", + glide=0.02, # 20ms smooth frequency transitions +) + +# Start the generator +App.start_brick(wave_gen) + +# Set initial frequency and amplitude +wave_gen.set_frequency(440.0) # A4 note (440 Hz) +wave_gen.set_amplitude(0.7) # 70% amplitude +wave_gen.set_volume(80) # 80% hardware volume + +print("Playing 440Hz sine wave (A4 note)") +print("Press Ctrl+C to stop") + +# Keep the application running +App.run() diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py new file mode 100644 index 00000000..320757c3 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py @@ -0,0 +1,41 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Waveform Comparison Example + +Cycles through different waveform types to hear the difference +between sine, square, sawtooth, and triangle waves. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator(sample_rate=16000, glide=0.02) +App.start_brick(wave_gen) + +# Set constant frequency and amplitude +wave_gen.set_frequency(440.0) +wave_gen.set_amplitude(0.6) + +waveforms = ["sine", "square", "sawtooth", "triangle"] + + +def cycle_waveforms(): + """Cycle through different waveform types.""" + for wave_type in waveforms: + print(f"Playing {wave_type} wave...") + wave_gen.set_wave_type(wave_type) + time.sleep(3) + # Silence + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Cycling through waveforms:") +print("sine → square → sawtooth → triangle") +print("Press Ctrl+C to stop") + +App.run(user_loop=cycle_waveforms) diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py new file mode 100644 index 00000000..614d9962 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py @@ -0,0 +1,51 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Frequency Sweep Example + +Demonstrates smooth frequency transitions (glide/portamento effect) +by sweeping through different frequency ranges. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator( + wave_type="sine", + glide=0.05, # 50ms glide for noticeable portamento +) + +App.start_brick(wave_gen) +wave_gen.set_amplitude(0.7) + + +def frequency_sweep(): + """Sweep through frequency ranges.""" + + # Low to high sweep + print("Sweeping low to high (220Hz → 880Hz)...") + for freq in range(220, 881, 20): + wave_gen.set_frequency(float(freq)) + time.sleep(0.1) + + time.sleep(0.5) + + # High to low sweep + print("Sweeping high to low (880Hz → 220Hz)...") + for freq in range(880, 219, -20): + wave_gen.set_frequency(float(freq)) + time.sleep(0.1) + # Fade out + print("Fading out...") + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Frequency sweep demonstration") +print("Listen for smooth glide between frequencies") +print("Press Ctrl+C to stop") + +App.run(user_loop=frequency_sweep) diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py new file mode 100644 index 00000000..395099fb --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py @@ -0,0 +1,63 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Envelope Control Example + +Demonstrates amplitude envelope control with different +attack and release times for various sonic effects. +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_utils import App + +wave_gen = WaveGenerator(wave_type="sine") +App.start_brick(wave_gen) + +wave_gen.set_frequency(440.0) +wave_gen.set_volume(80) + + +def envelope_demo(): + """Demonstrate different envelope settings.""" + + # Fast attack, fast release (percussive) + print("1. Percussive (fast attack/release)...") + wave_gen.set_envelope_params(attack=0.001, release=0.01, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.5) + wave_gen.set_amplitude(0.0) + time.sleep(1) + + # Slow attack, fast release (pad-like) + print("2. Pad-like (slow attack, fast release)...") + wave_gen.set_envelope_params(attack=0.2, release=0.05, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(1) + wave_gen.set_amplitude(0.0) + time.sleep(1) + + # Fast attack, slow release (sustained) + print("3. Sustained (fast attack, slow release)...") + wave_gen.set_envelope_params(attack=0.01, release=0.3, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.5) + wave_gen.set_amplitude(0.0) + time.sleep(1.5) + + # Medium attack and release (balanced) + print("4. Balanced (medium attack/release)...") + wave_gen.set_envelope_params(attack=0.05, release=0.05, glide=0.0) + wave_gen.set_amplitude(0.8) + time.sleep(0.8) + wave_gen.set_amplitude(0.0) + time.sleep(2) + + +print("Envelope Control Demonstration") +print("Listen to different attack/release characteristics") +print("Press Ctrl+C to stop") + +App.run(user_loop=envelope_demo) diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py new file mode 100644 index 00000000..715e9cc3 --- /dev/null +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py @@ -0,0 +1,77 @@ +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) +# +# SPDX-License-Identifier: MPL-2.0 + +""" +Custom Speaker Configuration Example + +Demonstrates how to use a pre-configured Speaker instance with WaveGenerator. +Use this approach when you need: +- Specific USB speaker selection (USB_SPEAKER_2, etc.) +- Different audio format (S16_LE, etc.) +- Explicit device name ("plughw:CARD=Device,DEV=0") +""" + +import time +from arduino.app_bricks.wave_generator import WaveGenerator +from arduino.app_peripherals.speaker import Speaker +from arduino.app_utils import App + +# List available USB speakers +available_speakers = Speaker.list_usb_devices() +print(f"Available USB speakers: {available_speakers}") + +# Create and configure a Speaker with specific parameters +# For optimal real-time synthesis, align periodsize with WaveGenerator block_duration +block_duration = 0.03 # Default WaveGenerator block duration +sample_rate = 16000 +periodsize = int(sample_rate * block_duration) # 480 frames @ 16kHz + +speaker = Speaker( + device=Speaker.USB_SPEAKER_1, # or explicit device like "plughw:CARD=Device" + sample_rate=sample_rate, + channels=1, + format="FLOAT_LE", + periodsize=periodsize, # Align with WaveGenerator blocks (eliminates glitches) + queue_maxsize=10, # Low latency for real-time audio +) + +# Start the external Speaker manually +# WaveGenerator won't manage its lifecycle (ownership pattern) +speaker.start() + +# Create WaveGenerator with the external speaker +wave_gen = WaveGenerator( + sample_rate=sample_rate, + speaker=speaker, # Pass pre-configured speaker + wave_type="sine", + glide=0.02, +) + +# Start the WaveGenerator (speaker already started above) +App.start_brick(wave_gen) + + +def play_sequence(): + """Play a simple frequency sequence.""" + frequencies = [261.63, 293.66, 329.63, 349.23, 392.00, 440.00, 493.88, 523.25] # C4 to C5 + + for freq in frequencies: + print(f"Playing {freq:.2f} Hz") + wave_gen.set_frequency(freq) + wave_gen.set_amplitude(0.7) + time.sleep(0.5) + + # Fade out + wave_gen.set_amplitude(0.0) + time.sleep(1) + + +print("Playing musical scale with external speaker...") +print("Press Ctrl+C to stop") + +App.run(user_loop=play_sequence) + +# Stop external Speaker manually (WaveGenerator doesn't manage external lifecycle) +speaker.stop() +print("Done") diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 81% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py index 44241a76..cb9a1081 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 81% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py index 740740a3..11b8ca9d 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py similarity index 80% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py index 55fb6ca7..4d8768aa 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/1_serve_webapp.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 79% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py index ff1c7cc0..19afb676 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/2_serve_webapp_and_api.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py similarity index 81% rename from internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py index 0a98cd99..74906149 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/examples/arduino/web_ui/3_connect_disconnect.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/4_on_message.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py similarity index 80% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/4_on_message.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py index cfec4c7c..7eb1316f 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/4_on_message.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/5_send_message.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py similarity index 80% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/5_send_message.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py index 9bb52450..00e19bc7 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.5.0/examples/arduino/web_ui/5_send_message.py +++ b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright (C) 2025 ARDUINO SA +# SPDX-FileCopyrightText: Copyright (C) ARDUINO SRL (http://www.arduino.cc) # # SPDX-License-Identifier: MPL-2.0 diff --git a/internal/e2e/daemon/testdata/assets/0.5.0/models-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml similarity index 94% rename from internal/e2e/daemon/testdata/assets/0.5.0/models-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml index 7c511011..b4109df2 100644 --- a/internal/e2e/daemon/testdata/assets/0.5.0/models-list.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml @@ -18,7 +18,7 @@ models: - yolox-object-detection: runner: brick name : "General purpose object detection - YoloX" - description: "General purpose object detection model based on YoloX Nano. This model is trained on the COCO dataset and can detect 80 different object classes." + description: "General purpose object detection model based on YoloX-Nano. This model is trained on the COCO dataset and can detect 80 different object classes." model_configuration: "EI_OBJ_DETECTION_MODEL": "/models/ootb/ei/yolo-x-nano.eim" model_labels: @@ -105,6 +105,7 @@ models: metadata: source: "edgeimpulse" ei-project-id: 717280 + ei-model-url: "https://studio.edgeimpulse.com/public/717280/live" source-model-id: "YOLOX-Nano" source-model-url: "https://github.com/Megvii-BaseDetection/YOLOX" bricks: @@ -1071,6 +1072,7 @@ models: metadata: source: "edgeimpulse" ei-project-id: 708500 + ei-model-url: "https://studio.edgeimpulse.com/public/708500/live" ei-gpu-mode: true source-model-id: "MobileNetV2" source-model-url: "https://www.tensorflow.org/api_docs/python/tf/keras/applications/MobileNetV2" @@ -1089,9 +1091,10 @@ models: metadata: source: "edgeimpulse" ei-project-id: 755016 + ei-model-url: "https://studio.edgeimpulse.com/public/755016/live" ei-gpu-mode: true source-model-id: "person-classification-wakevision" - source-model-url: "https://studio.edgeimpulse.com/studio/755016" + source-model-url: "https://studio.edgeimpulse.com/public/755016/live" bricks: - arduino:image_classification - arduino:video_image_classification @@ -1103,15 +1106,16 @@ models: "EI_V_ANOMALY_DETECTION_MODEL": "/models/ootb/ei/concrete-crack-anomaly-detection.eim" metadata: source: "edgeimpulse" - ei-project-id: 288658 + ei-project-id: 800941 + ei-model-url: "https://studio.edgeimpulse.com/public/800941/live" source-model-id: "concrete-crack-anomaly-detection" - source-model-url: "https://studio.edgeimpulse.com/public/288658" + source-model-url: "https://studio.edgeimpulse.com/public/800941/live" bricks: - arduino:visual_anomaly_detection - keyword-spotting-hey-arduino: runner: brick name : "Keyword spotting - Hey Arduino!" - description: "A keyword-spotting model to detect the 'Hey Arduino!' in audio recordings" + description: "A keyword-spotting model to detect the 'Hey Arduino!' in audio streams." model_configuration: "EI_KEYWORD_SPOTTING_MODEL": "/models/ootb/ei/keyword-spotting-hey-arduino.eim" model_labels: @@ -1120,12 +1124,14 @@ models: - "other" metadata: source: "edgeimpulse" - ei-project-id: 757509 + ei-project-id: 757509 + ei-model-url: "https://studio.edgeimpulse.com/studio/757509/live" ei-impulse-id: 30 source-model-id: "hey-arduino" - source-model-url: "https://studio.edgeimpulse.com/studio/757509" + source-model-url: "https://studio.edgeimpulse.com/studio/757509/live" + private: true bricks: - - arduino:keyword_spotter + - arduino:keyword_spotting - updown-wave-motion-detection: runner: brick name : "Continuous motion detection" @@ -1140,9 +1146,11 @@ models: metadata: source: "edgeimpulse" ei-project-id: 734960 + ei-model-url: "https://studio.edgeimpulse.com/public/734960/live" source-model-id: "continuous-motion-detection" - source-model-url: "https://studio.edgeimpulse.com/studio/734960" - brick: arduino:motion_detection + source-model-url: "https://studio.edgeimpulse.com/public/734960/live" + bricks: + - arduino:motion_detection - fan-anomaly-detection: runner: brick name : "Fan anomaly detection" @@ -1152,8 +1160,9 @@ models: metadata: source: "edgeimpulse" ei-project-id: 774707 + ei-model-url: "https://studio.edgeimpulse.com/public/774707/live" source-model-id: "fan-anomaly-detection" - source-model-url: "https://studio.edgeimpulse.com/studio/774707" + source-model-url: "https://studio.edgeimpulse.com/public/774707/live" bricks: - arduino:vibration_anomaly_detection - glass-breaking: @@ -1168,7 +1177,9 @@ models: metadata: source: "edgeimpulse" ei-project-id: 749446 + ei-model-url: "https://studio.edgeimpulse.com/public/749446/live" source-model-id: "glass-breaking" - source-model-url: "https://studio.edgeimpulse.com/studio/749446" + source-model-url: "https://studio.edgeimpulse.com/public/749446/live" + private: true bricks: - - arduino:audio_classifier + - arduino:audio_classification diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index 0838f29d..4d3b3c76 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -28,7 +28,7 @@ import ( ) // runnerVersion do not edit, this is generate with `task generate:assets` -var runnerVersion = "0.5.0" +var runnerVersion = "0.6.0" type Configuration struct { appsDir *paths.Path From 67a2532e87059480a295b22f45afcc330824ee9d Mon Sep 17 00:00:00 2001 From: Marco Colombo Date: Thu, 4 Dec 2025 14:04:28 +0100 Subject: [PATCH 17/27] Fix list required devices (#137) --- internal/orchestrator/provision.go | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/internal/orchestrator/provision.go b/internal/orchestrator/provision.go index eae5a380..babac0ce 100644 --- a/internal/orchestrator/provision.go +++ b/internal/orchestrator/provision.go @@ -236,39 +236,39 @@ func generateMainComposeFile( ports[fmt.Sprintf("%s:%s", p, p)] = struct{}{} } + // 2. Collect all the required device classes + if len(idxBrick.RequiredDevices) > 0 { + for _, deviceClass := range idxBrick.RequiredDevices { + requiredDeviceClasses[deviceClass] = true + } + } + // The following code is needed only if the brick requires a container. // In case it doesn't we just skip to the next one. if !idxBrick.RequireContainer { continue } - // 2. Retrieve the brick_compose.yaml file. + // 3. Retrieve the brick_compose.yaml file. composeFilePath, err := staticStore.GetBrickComposeFilePathFromID(brick.ID) if err != nil { slog.Error("brick compose id not valid", slog.String("error", err.Error()), slog.String("brick_id", brick.ID)) continue } - // 3. Retrieve the compose services names. + // 4. Retrieve the compose services names. svcs, err := extractServicesFromComposeFile(composeFilePath) if err != nil { slog.Error("loading brick_compose", slog.String("brick_id", brick.ID), slog.String("path", composeFilePath.String()), slog.Any("error", err)) continue } - // 4. Retrieve the required devices that we have to mount + // 5. Retrieve the required devices that we have to mount slog.Debug("Brick config", slog.Bool("mount_devices_into_container", idxBrick.MountDevicesIntoContainer), slog.Any("ports", ports), slog.Any("required_devices", idxBrick.RequiredDevices)) if idxBrick.MountDevicesIntoContainer { servicesThatRequireDevices = slices.AppendSeq(servicesThatRequireDevices, maps.Keys(svcs)) } - // 5. Collect all the required device classes - if len(idxBrick.RequiredDevices) > 0 { - for _, deviceClass := range idxBrick.RequiredDevices { - requiredDeviceClasses[deviceClass] = true - } - } - composeFiles.Add(composeFilePath) maps.Insert(services, maps.All(svcs)) } From 741159c1b6c3af605660773f966c536a86c5a104 Mon Sep 17 00:00:00 2001 From: Giulio Date: Thu, 4 Dec 2025 14:21:46 +0100 Subject: [PATCH 18/27] Update examples to 0.6.1 (#138) Co-authored-by: Xayton <30591904+Xayton@users.noreply.github.com> --- Taskfile.yml | 4 ++-- .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../arduino-app-cli/assets/{0.6.0 => 0.6.1}/bricks-list.yaml | 2 ++ .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md | 0 .../docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../arduino/camera_code_detection/2_detection_list.py | 0 .../camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py | 0 .../examples/arduino/web_ui/5_send_message.py | 0 .../arduino-app-cli/assets/{0.6.0 => 0.6.1}/models-list.yaml | 0 .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../daemon/testdata/assets/{0.6.0 => 0.6.1}/bricks-list.yaml | 2 ++ .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md | 0 .../docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../arduino/camera_code_detection/2_detection_list.py | 0 .../camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py | 0 .../examples/arduino/web_ui/5_send_message.py | 0 .../daemon/testdata/assets/{0.6.0 => 0.6.1}/models-list.yaml | 0 internal/orchestrator/config/config.go | 2 +- 172 files changed, 7 insertions(+), 3 deletions(-) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/bricks-list.yaml (99%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/audio_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/camera_code_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/video_image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/video_object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/visual_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/1_detection.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/image_classification/image_classification_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/object_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/models-list.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/bricks-list.yaml (99%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/audio_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/camera_code_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/video_image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/video_object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/visual_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/1_detection.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/image_classification/image_classification_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/object_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/models-list.yaml (100%) diff --git a/Taskfile.yml b/Taskfile.yml index 5d7725b1..36122a16 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -8,8 +8,8 @@ vars: GOLANGCI_LINT_VERSION: v2.4.0 GOIMPORTS_VERSION: v0.29.0 DPRINT_VERSION: 0.48.0 - EXAMPLE_VERSION: "0.6.0" - RUNNER_VERSION: "0.6.0" + EXAMPLE_VERSION: "0.6.1" + RUNNER_VERSION: "0.6.1" VERSION: # if version is not passed we hack the semver by encoding the commit as pre-release sh: echo "${VERSION:-0.0.0-$(git rev-parse --short HEAD)}" diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml similarity index 99% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml index eaf2186d..8d79e540 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml @@ -93,6 +93,8 @@ bricks: mount_devices_into_container: false ports: [] category: audio + required_devices: + - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml similarity index 99% rename from internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml index eaf2186d..8d79e540 100644 --- a/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml @@ -93,6 +93,8 @@ bricks: mount_devices_into_container: false ports: [] category: audio + required_devices: + - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index 4d3b3c76..527732c6 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -28,7 +28,7 @@ import ( ) // runnerVersion do not edit, this is generate with `task generate:assets` -var runnerVersion = "0.6.0" +var runnerVersion = "0.6.1" type Configuration struct { appsDir *paths.Path From 18c26173dde6ac35ade408fdde85a867903b36fc Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Thu, 4 Dec 2025 15:16:26 +0100 Subject: [PATCH 19/27] Revert "Update examples to 0.6.1 (#138)" (#139) This reverts commit 741159c1b6c3af605660773f966c536a86c5a104. --- Taskfile.yml | 4 ++-- .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../arduino-app-cli/assets/{0.6.1 => 0.6.0}/bricks-list.yaml | 2 -- .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.1 => 0.6.0}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.1 => 0.6.0}/docs/arduino/cloud_llm/README.md | 0 .../docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/mood_detector/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/motion_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/object_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/wave_generator/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.1 => 0.6.0}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../arduino/camera_code_detection/2_detection_list.py | 0 .../camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.1 => 0.6.0}/examples/arduino/web_ui/4_on_message.py | 0 .../examples/arduino/web_ui/5_send_message.py | 0 .../arduino-app-cli/assets/{0.6.1 => 0.6.0}/models-list.yaml | 0 .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../daemon/testdata/assets/{0.6.1 => 0.6.0}/bricks-list.yaml | 2 -- .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.1 => 0.6.0}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.1 => 0.6.0}/docs/arduino/cloud_llm/README.md | 0 .../docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/mood_detector/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/motion_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/object_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/wave_generator/README.md | 0 .../{0.6.1 => 0.6.0}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.1 => 0.6.0}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../arduino/camera_code_detection/2_detection_list.py | 0 .../camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.1 => 0.6.0}/examples/arduino/web_ui/4_on_message.py | 0 .../examples/arduino/web_ui/5_send_message.py | 0 .../daemon/testdata/assets/{0.6.1 => 0.6.0}/models-list.yaml | 0 internal/orchestrator/config/config.go | 2 +- 172 files changed, 3 insertions(+), 7 deletions(-) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/bricks-list.yaml (99%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/arduino_cloud/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/audio_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/camera_code_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/cloud_llm/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/keyword_spotting/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/mood_detector/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/motion_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/streamlit_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/video_image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/video_object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/visual_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/wave_generator/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/weather_forecast/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/docs/arduino/web_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/1_detection.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/image_classification/image_classification_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/object_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/4_on_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/5_send_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.1 => 0.6.0}/models-list.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/bricks-list.yaml (99%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/arduino_cloud/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/audio_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/camera_code_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/cloud_llm/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/dbstorage_tsstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/keyword_spotting/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/mood_detector/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/motion_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/streamlit_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/video_image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/video_object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/visual_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/wave_generator/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/weather_forecast/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/docs/arduino/web_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/1_detection.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/image_classification/image_classification_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/object_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/4_on_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/examples/arduino/web_ui/5_send_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.1 => 0.6.0}/models-list.yaml (100%) diff --git a/Taskfile.yml b/Taskfile.yml index 36122a16..5d7725b1 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -8,8 +8,8 @@ vars: GOLANGCI_LINT_VERSION: v2.4.0 GOIMPORTS_VERSION: v0.29.0 DPRINT_VERSION: 0.48.0 - EXAMPLE_VERSION: "0.6.1" - RUNNER_VERSION: "0.6.1" + EXAMPLE_VERSION: "0.6.0" + RUNNER_VERSION: "0.6.0" VERSION: # if version is not passed we hack the semver by encoding the commit as pre-release sh: echo "${VERSION:-0.0.0-$(git rev-parse --short HEAD)}" diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml similarity index 99% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml index 8d79e540..eaf2186d 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml @@ -93,8 +93,6 @@ bricks: mount_devices_into_container: false ports: [] category: audio - required_devices: - - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md b/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md rename to internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml similarity index 99% rename from internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml index 8d79e540..eaf2186d 100644 --- a/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml @@ -93,8 +93,6 @@ bricks: mount_devices_into_container: false ports: [] category: audio - required_devices: - - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py b/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py rename to internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index 527732c6..4d3b3c76 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -28,7 +28,7 @@ import ( ) // runnerVersion do not edit, this is generate with `task generate:assets` -var runnerVersion = "0.6.1" +var runnerVersion = "0.6.0" type Configuration struct { appsDir *paths.Path From b252167e3f7657a0f778a78ed444e7e337a1bfbe Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Thu, 4 Dec 2025 15:33:16 +0100 Subject: [PATCH 20/27] feat: update the python runner to 0.6.1 (#140) * feat: update the python runner to 0.6.1 * re-run formatter --- Taskfile.yml | 2 +- .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../api-docs/arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../arduino-app-cli/assets/{0.6.0 => 0.6.1}/bricks-list.yaml | 2 ++ .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../compose/arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../arduino/audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../examples/arduino/camera_code_detection/2_detection_list.py | 0 .../arduino/camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py | 0 .../arduino-app-cli/assets/{0.6.0 => 0.6.1}/models-list.yaml | 0 .../api-docs/arduino/app_bricks/air_quality_monitoring/API.md | 0 .../api-docs/arduino/app_bricks/arduino_cloud/API.md | 0 .../api-docs/arduino/app_bricks/audio_classification/API.md | 0 .../api-docs/arduino/app_bricks/camera_code_detection/API.md | 0 .../api-docs/arduino/app_bricks/cloud_llm/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md | 0 .../api-docs/arduino/app_bricks/dbstorage_tsstore/API.md | 0 .../api-docs/arduino/app_bricks/image_classification/API.md | 0 .../api-docs/arduino/app_bricks/keyword_spotting/API.md | 0 .../api-docs/arduino/app_bricks/mood_detector/API.md | 0 .../api-docs/arduino/app_bricks/motion_detection/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md | 0 .../api-docs/arduino/app_bricks/object_detection/API.md | 0 .../api-docs/arduino/app_bricks/streamlit_ui/API.md | 0 .../arduino/app_bricks/vibration_anomaly_detection/API.md | 0 .../arduino/app_bricks/video_imageclassification/API.md | 0 .../api-docs/arduino/app_bricks/video_objectdetection/API.md | 0 .../api-docs/arduino/app_bricks/visual_anomaly_detection/API.md | 0 .../api-docs/arduino/app_bricks/wave_generator/API.md | 0 .../api-docs/arduino/app_bricks/weather_forecast/API.md | 0 .../{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md | 0 .../api-docs/arduino/app_peripherals/microphone/API.md | 0 .../api-docs/arduino/app_peripherals/speaker/API.md | 0 .../api-docs/arduino/app_peripherals/usb_camera/API.md | 0 .../daemon/testdata/assets/{0.6.0 => 0.6.1}/bricks-list.yaml | 2 ++ .../compose/arduino/audio_classification/brick_compose.yaml | 0 .../compose/arduino/dbstorage_tsstore/brick_compose.yaml | 0 .../compose/arduino/image_classification/brick_compose.yaml | 0 .../compose/arduino/keyword_spotting/brick_compose.yaml | 0 .../compose/arduino/motion_detection/brick_compose.yaml | 0 .../compose/arduino/object_detection/brick_compose.yaml | 0 .../arduino/vibration_anomaly_detection/brick_compose.yaml | 0 .../arduino/video_image_classification/brick_compose.yaml | 0 .../compose/arduino/video_object_detection/brick_compose.yaml | 0 .../compose/arduino/visual_anomaly_detection/brick_compose.yaml | 0 .../{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md | 0 .../docs/arduino/audio_classification/README.md | 0 .../docs/arduino/camera_code_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md | 0 .../docs/arduino/image_classification/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md | 0 .../docs/arduino/vibration_anomaly_detection/README.md | 0 .../docs/arduino/video_image_classification/README.md | 0 .../docs/arduino/video_object_detection/README.md | 0 .../docs/arduino/visual_anomaly_detection/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md | 0 .../{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md | 0 .../assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md | 0 .../examples/arduino/arduino_cloud/1_led_blink.py | 0 .../arduino/arduino_cloud/2_light_with_colors_monitor.py | 0 .../arduino/arduino_cloud/3_light_with_colors_command.py | 0 .../arduino/audio_classification/1_glass_breaking_from_mic.py | 0 .../arduino/audio_classification/2_glass_breaking_from_file.py | 0 .../examples/arduino/camera_code_detection/1_detection.py | 0 .../examples/arduino/camera_code_detection/2_detection_list.py | 0 .../arduino/camera_code_detection/3_detection_with_overrides.py | 0 .../examples/arduino/cloud_llm/1_simple_prompt.py | 0 .../examples/arduino/cloud_llm/2_streaming_responses.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py | 0 .../arduino/dbstorage_sqlstore/store_and_read_example.py | 0 .../examples/arduino/dbstorage_tsstore/1_write_read.py | 0 .../examples/arduino/dbstorage_tsstore/2_read_all_samples.py | 0 .../image_classification/image_classification_example.py | 0 .../examples/arduino/keyword_spotting/1_hello_world.py | 0 .../arduino/object_detection/object_detection_example.py | 0 .../visual_anomaly_detection/object_detection_example.py | 0 .../examples/arduino/wave_generator/01_basic_tone.py | 0 .../examples/arduino/wave_generator/02_waveform_types.py | 0 .../examples/arduino/wave_generator/03_frequency_sweep.py | 0 .../examples/arduino/wave_generator/04_envelope_control.py | 0 .../examples/arduino/wave_generator/05_external_speaker.py | 0 .../weather_forecast/weather_forecast_by_city_example.py | 0 .../weather_forecast/weather_forecast_by_coords_example.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py | 0 .../examples/arduino/web_ui/2_serve_webapp_and_api.py | 0 .../examples/arduino/web_ui/3_connect_disconnect.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py | 0 .../{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py | 0 .../daemon/testdata/assets/{0.6.0 => 0.6.1}/models-list.yaml | 0 internal/orchestrator/config/config.go | 2 +- 172 files changed, 6 insertions(+), 2 deletions(-) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/bricks-list.yaml (99%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/audio_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/camera_code_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/video_image_classification/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/video_object_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/visual_anomaly_detection/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/1_detection.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/image_classification/image_classification_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/object_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py (100%) rename debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/{0.6.0 => 0.6.1}/models-list.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/air_quality_monitoring/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/arduino_cloud/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/audio_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/camera_code_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/cloud_llm/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/image_classification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/keyword_spotting/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mood_detector/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/motion_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/mqtt/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/object_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/streamlit_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_imageclassification/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/video_objectdetection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/wave_generator/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/weather_forecast/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_bricks/web_ui/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/microphone/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/speaker/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/api-docs/arduino/app_peripherals/usb_camera/API.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/bricks-list.yaml (99%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/audio_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/dbstorage_tsstore/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/keyword_spotting/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/motion_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/vibration_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/video_image_classification/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/video_object_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/compose/arduino/visual_anomaly_detection/brick_compose.yaml (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/arduino_cloud/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/audio_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/camera_code_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/cloud_llm/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_sqlstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/dbstorage_tsstore/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/keyword_spotting/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/mood_detector/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/motion_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/streamlit_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/vibration_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/video_image_classification/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/video_object_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/visual_anomaly_detection/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/wave_generator/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/weather_forecast/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/docs/arduino/web_ui/README.md (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/1_led_blink.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/arduino_cloud/3_light_with_colors_command.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/1_glass_breaking_from_mic.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/audio_classification/2_glass_breaking_from_file.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/1_detection.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/2_detection_list.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/camera_code_detection/3_detection_with_overrides.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/1_simple_prompt.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/2_streaming_responses.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/cloud_llm/3_no_memory.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_sqlstore/store_and_read_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/1_write_read.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/dbstorage_tsstore/2_read_all_samples.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/image_classification/image_classification_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/keyword_spotting/1_hello_world.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/object_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/visual_anomaly_detection/object_detection_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/01_basic_tone.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/02_waveform_types.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/03_frequency_sweep.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/04_envelope_control.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/wave_generator/05_external_speaker.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_city_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/1_serve_webapp.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/2_serve_webapp_and_api.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/3_connect_disconnect.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/4_on_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/examples/arduino/web_ui/5_send_message.py (100%) rename internal/e2e/daemon/testdata/assets/{0.6.0 => 0.6.1}/models-list.yaml (100%) diff --git a/Taskfile.yml b/Taskfile.yml index 5d7725b1..9803e3dd 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -9,7 +9,7 @@ vars: GOIMPORTS_VERSION: v0.29.0 DPRINT_VERSION: 0.48.0 EXAMPLE_VERSION: "0.6.0" - RUNNER_VERSION: "0.6.0" + RUNNER_VERSION: "0.6.1" VERSION: # if version is not passed we hack the semver by encoding the commit as pre-release sh: echo "${VERSION:-0.0.0-$(git rev-parse --short HEAD)}" diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml similarity index 99% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml index eaf2186d..8d79e540 100644 --- a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/bricks-list.yaml +++ b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/bricks-list.yaml @@ -93,6 +93,8 @@ bricks: mount_devices_into_container: false ports: [] category: audio + required_devices: + - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/arduino_cloud/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/arduino_cloud/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/audio_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/audio_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/camera_code_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/camera_code_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/cloud_llm/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/cloud_llm/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/keyword_spotting/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/keyword_spotting/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/mood_detector/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/mood_detector/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/motion_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/motion_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/streamlit_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/streamlit_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_image_classification/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_image_classification/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/video_object_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/video_object_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/wave_generator/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/wave_generator/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/weather_forecast/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/weather_forecast/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/docs/arduino/web_ui/README.md rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/docs/arduino/web_ui/README.md diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/4_on_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/4_on_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/examples/arduino/web_ui/5_send_message.py rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/examples/arduino/web_ui/5_send_message.py diff --git a/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml b/debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml similarity index 100% rename from debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.0/models-list.yaml rename to debian/arduino-app-cli/home/arduino/.local/share/arduino-app-cli/assets/0.6.1/models-list.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/air_quality_monitoring/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/air_quality_monitoring/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/arduino_cloud/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/arduino_cloud/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/audio_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/audio_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/camera_code_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/camera_code_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/cloud_llm/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/cloud_llm/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_sqlstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/dbstorage_tsstore/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/image_classification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/image_classification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/keyword_spotting/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/keyword_spotting/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mood_detector/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mood_detector/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/motion_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/motion_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/mqtt/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/mqtt/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/object_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/object_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/streamlit_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/streamlit_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/vibration_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_imageclassification/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_imageclassification/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/video_objectdetection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/video_objectdetection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/visual_anomaly_detection/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/wave_generator/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/wave_generator/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/weather_forecast/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/weather_forecast/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_bricks/web_ui/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_bricks/web_ui/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/microphone/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/microphone/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/speaker/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/speaker/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md b/internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/api-docs/arduino/app_peripherals/usb_camera/API.md rename to internal/e2e/daemon/testdata/assets/0.6.1/api-docs/arduino/app_peripherals/usb_camera/API.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml similarity index 99% rename from internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml index eaf2186d..8d79e540 100644 --- a/internal/e2e/daemon/testdata/assets/0.6.0/bricks-list.yaml +++ b/internal/e2e/daemon/testdata/assets/0.6.1/bricks-list.yaml @@ -93,6 +93,8 @@ bricks: mount_devices_into_container: false ports: [] category: audio + required_devices: + - speaker - id: arduino:image_classification name: Image Classification description: "Brick for image classification using a pre-trained model. It processes\ diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/audio_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/audio_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/dbstorage_tsstore/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/dbstorage_tsstore/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/keyword_spotting/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/keyword_spotting/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/motion_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/motion_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/vibration_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/vibration_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_image_classification/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_image_classification/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/video_object_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/video_object_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/compose/arduino/visual_anomaly_detection/brick_compose.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/compose/arduino/visual_anomaly_detection/brick_compose.yaml diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/arduino_cloud/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/arduino_cloud/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/audio_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/audio_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/camera_code_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/camera_code_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/cloud_llm/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/cloud_llm/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_sqlstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_sqlstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/dbstorage_tsstore/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/dbstorage_tsstore/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/keyword_spotting/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/keyword_spotting/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/mood_detector/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/mood_detector/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/motion_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/motion_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/streamlit_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/streamlit_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/vibration_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/vibration_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_image_classification/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_image_classification/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/video_object_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/video_object_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/visual_anomaly_detection/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/visual_anomaly_detection/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/wave_generator/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/wave_generator/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/weather_forecast/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/weather_forecast/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md b/internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/docs/arduino/web_ui/README.md rename to internal/e2e/daemon/testdata/assets/0.6.1/docs/arduino/web_ui/README.md diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/1_led_blink.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/1_led_blink.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/2_light_with_colors_monitor.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/arduino_cloud/3_light_with_colors_command.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/arduino_cloud/3_light_with_colors_command.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/1_glass_breaking_from_mic.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/1_glass_breaking_from_mic.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/audio_classification/2_glass_breaking_from_file.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/audio_classification/2_glass_breaking_from_file.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/1_detection.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/1_detection.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/2_detection_list.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/2_detection_list.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/camera_code_detection/3_detection_with_overrides.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/camera_code_detection/3_detection_with_overrides.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/1_simple_prompt.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/1_simple_prompt.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/2_streaming_responses.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/2_streaming_responses.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/cloud_llm/3_no_memory.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/cloud_llm/3_no_memory.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_sqlstore/store_and_read_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_sqlstore/store_and_read_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/1_write_read.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/1_write_read.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/dbstorage_tsstore/2_read_all_samples.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/dbstorage_tsstore/2_read_all_samples.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/image_classification/image_classification_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/image_classification/image_classification_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/keyword_spotting/1_hello_world.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/keyword_spotting/1_hello_world.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/object_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/object_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/visual_anomaly_detection/object_detection_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/visual_anomaly_detection/object_detection_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/01_basic_tone.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/01_basic_tone.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/02_waveform_types.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/02_waveform_types.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/03_frequency_sweep.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/03_frequency_sweep.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/04_envelope_control.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/04_envelope_control.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/wave_generator/05_external_speaker.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/wave_generator/05_external_speaker.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_city_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_city_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/weather_forecast/weather_forecast_by_coords_example.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/1_serve_webapp.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/1_serve_webapp.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/2_serve_webapp_and_api.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/2_serve_webapp_and_api.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/3_connect_disconnect.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/3_connect_disconnect.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/4_on_message.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/4_on_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py b/internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/examples/arduino/web_ui/5_send_message.py rename to internal/e2e/daemon/testdata/assets/0.6.1/examples/arduino/web_ui/5_send_message.py diff --git a/internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml b/internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml similarity index 100% rename from internal/e2e/daemon/testdata/assets/0.6.0/models-list.yaml rename to internal/e2e/daemon/testdata/assets/0.6.1/models-list.yaml diff --git a/internal/orchestrator/config/config.go b/internal/orchestrator/config/config.go index 4d3b3c76..527732c6 100644 --- a/internal/orchestrator/config/config.go +++ b/internal/orchestrator/config/config.go @@ -28,7 +28,7 @@ import ( ) // runnerVersion do not edit, this is generate with `task generate:assets` -var runnerVersion = "0.6.0" +var runnerVersion = "0.6.1" type Configuration struct { appsDir *paths.Path From 66af8924809e1b58d4fc70c5364495a6d9dfd045 Mon Sep 17 00:00:00 2001 From: mirkoCrobu <214636120+mirkoCrobu@users.noreply.github.com> Date: Fri, 5 Dec 2025 12:26:40 +0100 Subject: [PATCH 21/27] Update the local libray index (#133) * update lib index during update * Apply suggestions from code review Co-authored-by: Davide --------- Co-authored-by: Luca Rinaldi Co-authored-by: Davide --- internal/update/arduino/arduino.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/update/arduino/arduino.go b/internal/update/arduino/arduino.go index 0c4e5d29..4958d002 100644 --- a/internal/update/arduino/arduino.go +++ b/internal/update/arduino/arduino.go @@ -82,6 +82,15 @@ func (a *ArduinoPlatformUpdater) ListUpgradablePackages(ctx context.Context, _ f return nil, err } + streamLibIndex, _ := commands.UpdateLibrariesIndexStreamResponseToCallbackFunction(ctx, func(curr *rpc.DownloadProgress) { + slog.Debug("downloading library index", "progress", curr.GetMessage()) + }) + + req := &rpc.UpdateLibrariesIndexRequest{Instance: inst} + if err := srv.UpdateLibrariesIndex(req, streamLibIndex); err != nil { + slog.Warn("error updating library index, skipping", slog.String("error", err.Error())) + } + if err := srv.Init( &rpc.InitRequest{Instance: inst}, commands.InitStreamResponseToCallbackFunction(ctx, func(r *rpc.InitResponse) error { From 70b5caa36eba06a5018d227937dd9a7b7931f750 Mon Sep 17 00:00:00 2001 From: Davide Date: Fri, 5 Dec 2025 14:40:29 +0100 Subject: [PATCH 22/27] feat: do not return hidden variables (#143) --- internal/orchestrator/bricks/bricks.go | 6 +++ internal/orchestrator/bricks/bricks_test.go | 49 +++++++++++++++++++ .../orchestrator/bricksindex/bricks_index.go | 1 + .../bricksindex/bricks_index_test.go | 9 ++++ .../bricksindex/testdata/bricks-list.yaml | 16 ++++++ 5 files changed, 81 insertions(+) diff --git a/internal/orchestrator/bricks/bricks.go b/internal/orchestrator/bricks/bricks.go index b9e0da7d..3248d129 100644 --- a/internal/orchestrator/bricks/bricks.go +++ b/internal/orchestrator/bricks/bricks.go @@ -141,6 +141,9 @@ func getInstanceBrickConfigVariableDetails( variableDetails := make([]BrickConfigVariable, 0, len(brick.Variables)) for _, v := range brick.Variables { + if v.Hidden { + continue + } finalValue := v.DefaultValue userValue, ok := userVariables[v.Name] @@ -224,6 +227,9 @@ func getBrickConfigVariableDetails( variableDetails := make([]BrickConfigVariable, 0, len(brick.Variables)) for _, v := range brick.Variables { + if v.Hidden { + continue + } variablesMap[v.Name] = BrickVariable{ DefaultValue: v.DefaultValue, Description: v.Description, diff --git a/internal/orchestrator/bricks/bricks_test.go b/internal/orchestrator/bricks/bricks_test.go index ef51fad6..332f5cb1 100644 --- a/internal/orchestrator/bricks/bricks_test.go +++ b/internal/orchestrator/bricks/bricks_test.go @@ -313,6 +313,20 @@ func TestGetBrickInstanceVariableDetails(t *testing.T) { expectedConfigVariables: []BrickConfigVariable{}, expectedVariableMap: map[string]string{}, }, + { + name: "hidden variables", + brick: &bricksindex.Brick{Variables: []bricksindex.BrickVariable{ + {Name: "HIDDEN_VAR", DefaultValue: "i-am-hidden", Description: "a-hidden-variable", Hidden: true}, + {Name: "VISIBLE_VAR", DefaultValue: "i-am-visible", Description: "a-visible-variable", Hidden: false}, + {Name: "VISIBLE_VAR_WITH_MISSING", DefaultValue: "i-am-visible-if-missing-hidden", Description: "a-visible-variable"}, + }}, + userVariables: map[string]string{}, + expectedConfigVariables: []BrickConfigVariable{ + {Name: "VISIBLE_VAR", Value: "i-am-visible", Description: "a-visible-variable", Required: false}, + {Name: "VISIBLE_VAR_WITH_MISSING", Value: "i-am-visible-if-missing-hidden", Description: "a-visible-variable", Required: false}, + }, + expectedVariableMap: map[string]string{"VISIBLE_VAR": "i-am-visible", "VISIBLE_VAR_WITH_MISSING": "i-am-visible-if-missing-hidden"}, + }, } for _, tt := range tests { @@ -705,6 +719,15 @@ func TestAppBrickInstancesList(t *testing.T) { RequireModel: false, Ports: []string{"7000", "8000"}, }, + { + ID: "arduino:with-hidden-vars", + Name: "I have some hidden variables", + Variables: []bricksindex.BrickVariable{ + {Name: "HIDDEN_VAR", DefaultValue: "/i/am/hidden", Hidden: true}, + {Name: "VISIBLE_VAR", DefaultValue: "/i/am/visible"}, + {Name: "VISIBLE_VAR_IF_MISSING", DefaultValue: "/i/am/visible", Hidden: false}, + }, + }, }, } @@ -833,6 +856,32 @@ func TestAppBrickInstancesList(t *testing.T) { require.Equal(t, "/models/ootb/ei/glass-breaking.eim", b2.ConfigVariables[1].Value) }, }, + { + name: "Success - hidden variables are not included", + app: &app.ArduinoApp{ + Descriptor: app.AppDescriptor{ + Bricks: []app.Brick{ + { + ID: "arduino:with-hidden-vars", + Variables: map[string]string{ + "HIDDEN_VAR": "/this/is/a/new/hidden/value", + "VISIBLE_VAR": "/this/is/a/new/visible/value", + }, + }, + }, + }, + }, + validate: func(t *testing.T, res AppBrickInstancesResult) { + require.Len(t, res.BrickInstances, 1) + brick := res.BrickInstances[0] + require.Equal(t, "arduino:with-hidden-vars", brick.ID) + expected := []BrickConfigVariable{ + {Name: "VISIBLE_VAR", Value: "/this/is/a/new/visible/value"}, + {Name: "VISIBLE_VAR_IF_MISSING", Value: "/i/am/visible"}, + } + require.Equal(t, expected, brick.ConfigVariables) + }, + }, } for _, tt := range tests { diff --git a/internal/orchestrator/bricksindex/bricks_index.go b/internal/orchestrator/bricksindex/bricks_index.go index 9e52f1c6..4fb7d065 100644 --- a/internal/orchestrator/bricksindex/bricks_index.go +++ b/internal/orchestrator/bricksindex/bricks_index.go @@ -42,6 +42,7 @@ type BrickVariable struct { Name string `yaml:"name"` DefaultValue string `yaml:"default_value"` Description string `yaml:"description,omitempty"` + Hidden bool `yaml:"hidden"` } func (v BrickVariable) IsRequired() bool { diff --git a/internal/orchestrator/bricksindex/bricks_index_test.go b/internal/orchestrator/bricksindex/bricks_index_test.go index b8d28c07..2db3bb0e 100644 --- a/internal/orchestrator/bricksindex/bricks_index_test.go +++ b/internal/orchestrator/bricksindex/bricks_index_test.go @@ -58,6 +58,15 @@ func TestGenerateBricksIndexFromFile(t *testing.T) { bNoRequireModel, found := index.FindBrickByID("arduino:missing-model-require") require.True(t, found) require.False(t, bNoRequireModel.RequireModel) + + withHidden, found := index.FindBrickByID("arduino:with-hidden-variables") + require.True(t, found) + require.Equal(t, "HIDDEN_VARIABLE", withHidden.Variables[0].Name) + require.True(t, withHidden.Variables[0].Hidden) + require.Equal(t, "VISIBLE_VARIABLE", withHidden.Variables[1].Name) + require.False(t, withHidden.Variables[1].Hidden) + require.Equal(t, "VISIBLE_VARIABLE_IF_MISSING_HIDDEN", withHidden.Variables[2].Name) + require.False(t, withHidden.Variables[2].Hidden) } func TestBricksIndexYAMLFormats(t *testing.T) { diff --git a/internal/orchestrator/bricksindex/testdata/bricks-list.yaml b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml index c494df17..6af413a5 100644 --- a/internal/orchestrator/bricksindex/testdata/bricks-list.yaml +++ b/internal/orchestrator/bricksindex/testdata/bricks-list.yaml @@ -140,3 +140,19 @@ bricks: name: Model Required Brick description: A brick that requires a model require_model: true +- id: arduino:with-hidden-variables + name: Visual Anomaly Detection + description: "Brick with hidden variables" + variables: + - name: HIDDEN_VARIABLE + default_value: a_hidden_value + description: this variable is hidden + hidden: true + - name: VISIBLE_VARIABLE + default_value: a_visible_value + description: this variable is visible because 'hidden' is set to false + hidden: false + - name: VISIBLE_VARIABLE_IF_MISSING_HIDDEN + default_value: another_visible_value + description: this variable is visiable because 'hidden' field is missing + hidden: false From f020963c1c74587476493fb5a504da5a7b6cee37 Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Fri, 5 Dec 2025 16:04:13 +0100 Subject: [PATCH 23/27] fix(pkg/board/remote): adb kill all port use wrong command (#147) * fix(pkg/board/remote): adb kill all port use wrong command * add adb forward test * embed the script in then dockerfile * Revert "embed the script in then dockerfile" This reverts commit b7481d3319ec84e81aaf6d3d453b8c315914d5ca. --- adbd.Dockerfile | 6 +- pkg/board/remote/adb/adb.go | 2 +- pkg/board/remote/remote_test.go | 130 ++++++++++++++------------------ scripts/pong-server.sh | 7 ++ 4 files changed, 67 insertions(+), 78 deletions(-) create mode 100755 scripts/pong-server.sh diff --git a/adbd.Dockerfile b/adbd.Dockerfile index 75826958..e658b9b4 100644 --- a/adbd.Dockerfile +++ b/adbd.Dockerfile @@ -1,7 +1,7 @@ FROM debian:trixie RUN apt-get update \ - && apt-get install -y --no-install-recommends adbd file ssh sudo \ + && apt-get install -y --no-install-recommends adbd file ssh sudo netcat-traditional \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* @@ -10,7 +10,9 @@ RUN useradd -m --create-home --shell /bin/bash --user-group --groups sudo arduin mkdir /home/arduino/ArduinoApps && \ chown -R arduino:arduino /home/arduino/ArduinoApps +ADD scripts/pong-server.sh /usr/local/bin/pong-server.sh + WORKDIR /home/arduino EXPOSE 22 -CMD ["/bin/sh", "-c", "/usr/sbin/sshd -D & su arduino -c adbd"] +CMD ["/bin/sh", "-c", "/usr/sbin/sshd -D & su arduino -c adbd & pong-server.sh"] diff --git a/pkg/board/remote/adb/adb.go b/pkg/board/remote/adb/adb.go index 277aaad3..a4dc7435 100644 --- a/pkg/board/remote/adb/adb.go +++ b/pkg/board/remote/adb/adb.go @@ -132,7 +132,7 @@ func (a *ADBConnection) Forward(ctx context.Context, localPort int, remotePort i } func (a *ADBConnection) ForwardKillAll(ctx context.Context) error { - cmd, err := paths.NewProcess(nil, a.adbPath, "-s", a.host, "killforward-all") + cmd, err := paths.NewProcess(nil, a.adbPath, "-s", a.host, "forward", "--remove-all") if err != nil { return err } diff --git a/pkg/board/remote/remote_test.go b/pkg/board/remote/remote_test.go index c9efa339..ca48e251 100644 --- a/pkg/board/remote/remote_test.go +++ b/pkg/board/remote/remote_test.go @@ -16,19 +16,16 @@ package remote_test import ( - "context" "fmt" + "net" "io" - "os/exec" - "strconv" "strings" "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "github.com/arduino/arduino-app-cli/cmd/feedback" "github.com/arduino/arduino-app-cli/internal/testtools" "github.com/arduino/arduino-app-cli/pkg/board/remote" "github.com/arduino/arduino-app-cli/pkg/board/remote/adb" @@ -123,7 +120,7 @@ func TestRemoteFS(t *testing.T) { } } -func TestSSHShell(t *testing.T) { +func TestRemoteShell(t *testing.T) { name, adbPort, sshPort := testtools.StartAdbDContainer(t) t.Cleanup(func() { testtools.StopAdbDContainer(t, name) }) @@ -187,83 +184,66 @@ func TestSSHShell(t *testing.T) { } -func TestSSHForwarder(t *testing.T) { - name, _, sshPort := testtools.StartAdbDContainer(t) +func TestRemoteForwarder(t *testing.T) { + name, adbPort, sshPort := testtools.StartAdbDContainer(t) t.Cleanup(func() { testtools.StopAdbDContainer(t, name) }) - conn, err := ssh.FromHost("arduino", "arduino", fmt.Sprintf("%s:%s", "localhost", sshPort)) - require.NoError(t, err) - - t.Run("Forward ADB", func(t *testing.T) { - ctx, cancel := context.WithCancel(t.Context()) - defer cancel() - - forwardPort, err := ports.GetAvailable() - require.NoError(t, err) - - err = conn.Forward(ctx, forwardPort, 5555) - if err != nil { - t.Errorf("Forward failed: %v", err) - } - if forwardPort <= 0 || forwardPort > 65535 { - t.Fatalf("invalid port: %d", forwardPort) - } - adb_forwarded_endpoint := fmt.Sprintf("localhost:%s", strconv.Itoa(forwardPort)) + const pongServerPort = 9999 + + remotes := []struct { + name string + conn remote.Forwarder + forwardPort int + }{ + { + name: "adb", + conn: func() remote.Forwarder { + conn, err := adb.FromHost("localhost:"+adbPort, "") + require.NoError(t, err) + return conn + }(), + forwardPort: func() int { + port, err := ports.GetAvailable() + require.NoError(t, err) + return port + }(), + }, + { + name: "ssh", + conn: func() remote.Forwarder { + conn, err := ssh.FromHost("arduino", "arduino", "127.0.0.1:"+sshPort) + require.NoError(t, err) + return conn + }(), + }, + + // We are skipping the local forwarder test, which is just an no op in this case. + } - out, err := exec.Command("adb", "connect", adb_forwarded_endpoint).CombinedOutput() - require.NoError(t, err, "adb connect output: %q", out) + for _, remote := range remotes { + t.Run(remote.name, func(t *testing.T) { + forwardPort, err := ports.GetAvailable() + require.NoError(t, err) - cmd := exec.Command("adb", "-s", adb_forwarded_endpoint, "shell", "echo", "Hello, World!") - out, err = cmd.CombinedOutput() - require.NoError(t, err, "command output: %q", out) - feedback.Printf("Command output:\n%s\n", string(out)) - require.NotNil(t, string(out)) - }) -} + err = remote.conn.Forward(t.Context(), forwardPort, pongServerPort) + assert.NoError(t, err) -func TestSSHKillForwarder(t *testing.T) { - name, _, sshPort := testtools.StartAdbDContainer(t) - t.Cleanup(func() { testtools.StopAdbDContainer(t, name) }) + conn, err := net.Dial("tcp", fmt.Sprintf("localhost:%d", forwardPort)) + require.NoError(t, err) - conn, err := ssh.FromHost("arduino", "arduino", fmt.Sprintf("%s:%s", "localhost", sshPort)) - require.NoError(t, err) + buf := [128]byte{} + n, err := conn.Read(buf[:]) + require.NoError(t, err) + require.Equal(t, "pong", string(buf[:n])) - t.Run("KillAllForwards", func(t *testing.T) { - ctx, cancel := context.WithCancel(t.Context()) - defer cancel() + err = conn.Close() + require.NoError(t, err) - forwardPort, err := ports.GetAvailable() - require.NoError(t, err) + err = remote.conn.ForwardKillAll(t.Context()) + assert.NoError(t, err) - err = conn.Forward(ctx, forwardPort, 5555) - if err != nil { - t.Errorf("Forward failed: %v", err) - } - if forwardPort <= 0 || forwardPort > 65535 { - t.Fatalf("invalid port: %d", forwardPort) - } - adb_forwarded_endpoint := fmt.Sprintf("localhost:%s", strconv.Itoa(forwardPort)) - - out, err := exec.Command("adb", "connect", adb_forwarded_endpoint).CombinedOutput() - require.NoError(t, err, "adb connect output: %q", out) - - cmd := exec.Command("adb", "-s", adb_forwarded_endpoint, "shell", "echo", "Hello, World!") - out, err = cmd.CombinedOutput() - require.NoError(t, err, "command output: %q", out) - feedback.Printf("Command output:\n%s\n", string(out)) - require.NotNil(t, string(out)) - - err = conn.ForwardKillAll(t.Context()) - require.NoError(t, err) - out, err = exec.Command("adb", "disconnect", adb_forwarded_endpoint).CombinedOutput() - require.NoError(t, err, "adb disconnect output: %q", out) - - out, err = exec.Command("adb", "connect", adb_forwarded_endpoint).CombinedOutput() - require.NoError(t, err, "adb connect output: %q", out) - - cmd = exec.Command("adb", "-s", adb_forwarded_endpoint, "shell", "echo", "Hello, World!") - out, err = cmd.CombinedOutput() - require.Error(t, err, "command output: %q", out) - feedback.Printf("Command output:\n%s\n", string(out)) - }) + _, err = net.Dial("tcp", fmt.Sprintf("localhost:%d", forwardPort)) + require.Error(t, err) + }) + } } diff --git a/scripts/pong-server.sh b/scripts/pong-server.sh new file mode 100755 index 00000000..585f79e0 --- /dev/null +++ b/scripts/pong-server.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +PORT=9999 + +while true; do + echo -n "pong" | nc -l -p $PORT +done From ed4e465e4013d4f561fe01a5fe4698d8c5df5d36 Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Tue, 9 Dec 2025 11:50:06 +0100 Subject: [PATCH 24/27] feat: add monitor command (#66) * feat: add bridge monitor command * Update internal/monitor/monitor.go Co-authored-by: Cristian Maglie * improve description * apply code review suggestions * propertly implement the internal function * handle also text type * Update internal/monitor/monitor.go Co-authored-by: Davide * Update internal/monitor/monitor.go Co-authored-by: Davide * Update internal/monitor/monitor.go Co-authored-by: Davide * add monitor test * fixup! add monitor test * fixup! fixup! add monitor test * fixup! fixup! fixup! add monitor test * fixup! fixup! fixup! fixup! add monitor test --------- Co-authored-by: Cristian Maglie Co-authored-by: Davide --- cmd/arduino-app-cli/app/app.go | 1 - cmd/arduino-app-cli/main.go | 2 + .../{app => monitor}/monitor.go | 43 +++++- internal/api/handlers/monitor.go | 145 ++++++++---------- internal/monitor/monitor.go | 90 +++++++++++ internal/monitor/monitor_test.go | 79 ++++++++++ 6 files changed, 272 insertions(+), 88 deletions(-) rename cmd/arduino-app-cli/{app => monitor}/monitor.go (51%) create mode 100644 internal/monitor/monitor.go create mode 100644 internal/monitor/monitor_test.go diff --git a/cmd/arduino-app-cli/app/app.go b/cmd/arduino-app-cli/app/app.go index fca105b8..48c98c7a 100644 --- a/cmd/arduino-app-cli/app/app.go +++ b/cmd/arduino-app-cli/app/app.go @@ -38,7 +38,6 @@ func NewAppCmd(cfg config.Configuration) *cobra.Command { appCmd.AddCommand(newRestartCmd(cfg)) appCmd.AddCommand(newLogsCmd(cfg)) appCmd.AddCommand(newListCmd(cfg)) - appCmd.AddCommand(newMonitorCmd(cfg)) appCmd.AddCommand(newCacheCleanCmd(cfg)) return appCmd diff --git a/cmd/arduino-app-cli/main.go b/cmd/arduino-app-cli/main.go index c9dfddca..849e4178 100644 --- a/cmd/arduino-app-cli/main.go +++ b/cmd/arduino-app-cli/main.go @@ -30,6 +30,7 @@ import ( "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/config" "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/daemon" "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/internal/servicelocator" + "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/monitor" "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/properties" "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/system" "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/version" @@ -78,6 +79,7 @@ func run(configuration cfg.Configuration) error { config.NewConfigCmd(configuration), system.NewSystemCmd(configuration), version.NewVersionCmd(Version), + monitor.NewMonitorCmd(), ) ctx := context.Background() diff --git a/cmd/arduino-app-cli/app/monitor.go b/cmd/arduino-app-cli/monitor/monitor.go similarity index 51% rename from cmd/arduino-app-cli/app/monitor.go rename to cmd/arduino-app-cli/monitor/monitor.go index cdf057e1..df6946e6 100644 --- a/cmd/arduino-app-cli/app/monitor.go +++ b/cmd/arduino-app-cli/monitor/monitor.go @@ -13,22 +13,51 @@ // Arduino software without disclosing the source code of your own applications. // To purchase a commercial license, send an email to license@arduino.cc. -package app +package monitor import ( + "io" + "os" + "github.com/spf13/cobra" - "github.com/arduino/arduino-app-cli/cmd/arduino-app-cli/completion" - "github.com/arduino/arduino-app-cli/internal/orchestrator/config" + "github.com/arduino/arduino-app-cli/cmd/feedback" + "github.com/arduino/arduino-app-cli/internal/monitor" ) -func newMonitorCmd(cfg config.Configuration) *cobra.Command { +func NewMonitorCmd() *cobra.Command { return &cobra.Command{ Use: "monitor", - Short: "Monitor the Arduino app", + Short: "Attach to the microcontroller serial monitor", RunE: func(cmd *cobra.Command, args []string) error { - panic("not implemented") + stdout, _, err := feedback.DirectStreams() + if err != nil { + return err + } + start, err := monitor.NewMonitorHandler(&combinedReadWrite{r: os.Stdin, w: stdout}) // nolint:forbidigo + if err != nil { + return err + } + go start() + <-cmd.Context().Done() + return nil }, - ValidArgsFunction: completion.ApplicationNames(cfg), } } + +type combinedReadWrite struct { + r io.Reader + w io.Writer +} + +func (crw *combinedReadWrite) Read(p []byte) (n int, err error) { + return crw.r.Read(p) +} + +func (crw *combinedReadWrite) Write(p []byte) (n int, err error) { + return crw.w.Write(p) +} + +func (crw *combinedReadWrite) Close() error { + return nil +} diff --git a/internal/api/handlers/monitor.go b/internal/api/handlers/monitor.go index 5aaf8f4d..08492cd1 100644 --- a/internal/api/handlers/monitor.go +++ b/internal/api/handlers/monitor.go @@ -16,71 +16,50 @@ package handlers import ( - "errors" "fmt" - "io" "log/slog" "net" "net/http" "strings" - "time" "github.com/gorilla/websocket" "github.com/arduino/arduino-app-cli/internal/api/models" + "github.com/arduino/arduino-app-cli/internal/monitor" "github.com/arduino/arduino-app-cli/internal/render" ) -func monitorStream(mon net.Conn, ws *websocket.Conn) { - logWebsocketError := func(msg string, err error) { - // Do not log simple close or interruption errors - if websocket.IsUnexpectedCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway, websocket.CloseNoStatusReceived, websocket.CloseAbnormalClosure) { - if e, ok := err.(*websocket.CloseError); ok { - slog.Error(msg, slog.String("closecause", fmt.Sprintf("%d: %s", e.Code, err))) - } else { - slog.Error(msg, slog.String("error", err.Error())) - } - } - } - logSocketError := func(msg string, err error) { - if !errors.Is(err, net.ErrClosed) && !errors.Is(err, io.EOF) { - slog.Error(msg, slog.String("error", err.Error())) - } +func HandleMonitorWS(allowedOrigins []string) http.HandlerFunc { + upgrader := websocket.Upgrader{ + ReadBufferSize: 1024, + WriteBufferSize: 1024, + CheckOrigin: func(r *http.Request) bool { + return checkOrigin(r.Header.Get("Origin"), allowedOrigins) + }, } - go func() { - defer mon.Close() - defer ws.Close() - for { - // Read from websocket and write to monitor - _, msg, err := ws.ReadMessage() - if err != nil { - logWebsocketError("Error reading from websocket", err) - return - } - if _, err := mon.Write(msg); err != nil { - logSocketError("Error writing to monitor", err) - return - } + + return func(w http.ResponseWriter, r *http.Request) { + // Upgrade the connection to websocket + conn, err := upgrader.Upgrade(w, r, nil) + if err != nil { + // Remember to close monitor connection if websocket upgrade fails. + + slog.Error("Failed to upgrade connection", slog.String("error", err.Error())) + render.EncodeResponse(w, http.StatusInternalServerError, map[string]string{"error": "Failed to upgrade connection: " + err.Error()}) + return } - }() - go func() { - defer mon.Close() - defer ws.Close() - buff := [1024]byte{} - for { - // Read from monitor and write to websocket - n, err := mon.Read(buff[:]) - if err != nil { - logSocketError("Error reading from monitor", err) - return - } - - if err := ws.WriteMessage(websocket.BinaryMessage, buff[:n]); err != nil { - logWebsocketError("Error writing to websocket", err) - return - } + + // Now the connection is managed by the websocket library, let's move the handlers in the goroutine + start, err := monitor.NewMonitorHandler(&wsReadWriteCloser{conn: conn}) + if err != nil { + slog.Error("Unable to start monitor handler", slog.String("error", err.Error())) + render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "Unable to start monitor handler: " + err.Error()}) + return } - }() + go start() + + // and return nothing to the http library + } } func splitOrigin(origin string) (scheme, host, port string, err error) { @@ -126,41 +105,47 @@ func checkOrigin(origin string, allowedOrigins []string) bool { return false } -func HandleMonitorWS(allowedOrigins []string) http.HandlerFunc { - // Do a dry-run of checkorigin, so it can panic if misconfigured now, not on first request - _ = checkOrigin("http://localhost", allowedOrigins) +type wsReadWriteCloser struct { + conn *websocket.Conn - upgrader := websocket.Upgrader{ - ReadBufferSize: 1024, - WriteBufferSize: 1024, - CheckOrigin: func(r *http.Request) bool { - return checkOrigin(r.Header.Get("Origin"), allowedOrigins) - }, - } + buff []byte +} - return func(w http.ResponseWriter, r *http.Request) { - // Connect to monitor - mon, err := net.DialTimeout("tcp", "127.0.0.1:7500", time.Second) - if err != nil { - slog.Error("Unable to connect to monitor", slog.String("error", err.Error())) - render.EncodeResponse(w, http.StatusServiceUnavailable, models.ErrorResponse{Details: "Unable to connect to monitor: " + err.Error()}) - return - } +func (w *wsReadWriteCloser) Read(p []byte) (n int, err error) { + if len(w.buff) > 0 { + n = copy(p, w.buff) + w.buff = w.buff[n:] + return n, nil + } - // Upgrade the connection to websocket - conn, err := upgrader.Upgrade(w, r, nil) - if err != nil { - // Remember to close monitor connection if websocket upgrade fails. - mon.Close() + ty, message, err := w.conn.ReadMessage() + if err != nil { + return 0, mapWebSocketErrors(err) + } + if ty != websocket.BinaryMessage && ty != websocket.TextMessage { + return + } + n = copy(p, message) + w.buff = message[n:] + return n, nil +} - slog.Error("Failed to upgrade connection", slog.String("error", err.Error())) - render.EncodeResponse(w, http.StatusInternalServerError, map[string]string{"error": "Failed to upgrade connection: " + err.Error()}) - return - } +func (w *wsReadWriteCloser) Write(p []byte) (n int, err error) { + err = w.conn.WriteMessage(websocket.BinaryMessage, p) + if err != nil { + return 0, mapWebSocketErrors(err) + } + return len(p), nil +} - // Now the connection is managed by the websocket library, let's move the handlers in the goroutine - go monitorStream(mon, conn) +func (w *wsReadWriteCloser) Close() error { + w.buff = nil + return w.conn.Close() +} - // and return nothing to the http library +func mapWebSocketErrors(err error) error { + if websocket.IsUnexpectedCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway, websocket.CloseNoStatusReceived, websocket.CloseAbnormalClosure) { + return net.ErrClosed } + return err } diff --git a/internal/monitor/monitor.go b/internal/monitor/monitor.go new file mode 100644 index 00000000..1c4a33b0 --- /dev/null +++ b/internal/monitor/monitor.go @@ -0,0 +1,90 @@ +// This file is part of arduino-app-cli. +// +// Copyright 2025 ARDUINO SA (http://www.arduino.cc/) +// +// This software is released under the GNU General Public License version 3, +// which covers the main part of arduino-app-cli. +// The terms of this license can be found at: +// https://www.gnu.org/licenses/gpl-3.0.en.html +// +// You can be released from the requirements of the above licenses by purchasing +// a commercial license. Buying such a license is mandatory if you want to +// modify or otherwise use the software for commercial activities involving the +// Arduino software without disclosing the source code of your own applications. +// To purchase a commercial license, send an email to license@arduino.cc. + +package monitor + +import ( + "errors" + "io" + "log/slog" + "net" + "time" + + "go.bug.st/f" +) + +const defaultArduinoRouterMonitorAddress = "127.0.0.1:7500" + +func NewMonitorHandler(rw io.ReadWriteCloser, address ...string) (func(), error) { + f.Assert(len(address) <= 1, "NewMonitorHandler accepts at most one address argument") + + addr := defaultArduinoRouterMonitorAddress + if len(address) == 1 { + addr = address[0] + } + + // Connect to monitor + monitor, err := net.DialTimeout("tcp", addr, time.Second) + if err != nil { + return nil, err + } + + return func() { + monitorStream(monitor, rw) + }, nil +} + +func monitorStream(mon net.Conn, rw io.ReadWriteCloser) { + logSocketError := func(msg string, err error) { + if !errors.Is(err, net.ErrClosed) && !errors.Is(err, io.EOF) { + slog.Error(msg, slog.String("error", err.Error())) + } + } + go func() { + defer mon.Close() + defer rw.Close() + buff := [1024]byte{} + for { + // Read from reader and write to monitor + n, err := rw.Read(buff[:]) + if err != nil { + logSocketError("Error reading from websocket", err) + return + } + if _, err := mon.Write(buff[:n]); err != nil { + logSocketError("Error writing to monitor", err) + return + } + } + }() + go func() { + defer mon.Close() + defer rw.Close() + buff := [1024]byte{} + for { + // Read from monitor and write to writer + n, err := mon.Read(buff[:]) + if err != nil { + logSocketError("Error reading from monitor", err) + return + } + + if _, err := rw.Write(buff[:n]); err != nil { + logSocketError("Error writing to buffer", err) + return + } + } + }() +} diff --git a/internal/monitor/monitor_test.go b/internal/monitor/monitor_test.go new file mode 100644 index 00000000..2906a347 --- /dev/null +++ b/internal/monitor/monitor_test.go @@ -0,0 +1,79 @@ +package monitor + +import ( + "fmt" + "io" + "net" + "testing" + + "github.com/stretchr/testify/assert" + + "github.com/arduino/arduino-app-cli/pkg/x/ports" +) + +func TestMonitorHandler(t *testing.T) { + addr := startEcoMonitor(t) + + rIn, wIn, rwOut := getReadWriteCloser() + + handler, err := NewMonitorHandler(rwOut, addr.String()) + assert.NoError(t, err) + go handler() + + // Write data to the pipe writer + message := "Hello, Monitor!" + n, err := wIn.Write([]byte(message)) + assert.NoError(t, err) + assert.Equal(t, len(message), n) + + // Read data from the pipe reader + buf := [128]byte{} + n, err = rIn.Read(buf[:]) + assert.NoError(t, err) + assert.Equal(t, len(message), n) + assert.Equal(t, message, string(buf[:n])) +} + +func getReadWriteCloser() (io.Reader, io.Writer, io.ReadWriteCloser) { + rOut, wIn := io.Pipe() + rIn, wOut := io.Pipe() + + type pipeReadWriteCloser struct { + io.Reader + io.Writer + io.Closer + } + pr := &pipeReadWriteCloser{ + Reader: rOut, + Writer: wOut, + Closer: io.NopCloser(nil), + } + return rIn, wIn, pr +} + +func startEcoMonitor(t *testing.T) net.Addr { + t.Helper() + + port, err := ports.GetAvailable() + assert.NoError(t, err) + + ln, err := net.Listen("tcp", fmt.Sprintf("localhost:%d", port)) + assert.NoError(t, err) + t.Cleanup(func() { _ = ln.Close() }) + + go func() { + for { + conn, err := ln.Accept() + if err != nil { + return + } + + go func() { + defer conn.Close() + _, _ = io.Copy(conn, conn) // Echo server + }() + } + }() + + return ln.Addr() +} From beee3336d1a5dce2853076989991de3b4476e0e8 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Tue, 9 Dec 2025 17:42:09 +0100 Subject: [PATCH 25/27] Updates to libraries-api. (#35) * Updates to libraries-api. Now some libraries may be tagged as dependencies, and also be automatically removed if no more needed. * Forget parameter in ProfileLibRemove... oops * fix: missing version on SketchLibraryRemove call * Updated arduino-cli patch * Updated CLI implementation * Updated Arduino CLI to 1.4.0 --- .licenses/arduino-app-cli/NOTICE | 2372 ++++++++++++++--- .../arduino/arduino-cli/commands.dep.yml | 10 +- .../arduino-cli/commands/cmderrors.dep.yml | 10 +- .../commands/internal/instances.dep.yml | 10 +- .../arduino-cli/internal/algorithms.dep.yml | 10 +- .../internal/arduino/builder.dep.yml | 10 +- .../internal/arduino/builder/cpp.dep.yml | 10 +- .../builder/internal/compilation.dep.yml | 10 +- .../arduino/builder/internal/detector.dep.yml | 10 +- .../builder/internal/diagnostics.dep.yml | 10 +- .../builder/internal/preprocessor.dep.yml | 10 +- .../preprocessor/internal/ctags.dep.yml | 10 +- .../arduino/builder/internal/progress.dep.yml | 10 +- .../arduino/builder/internal/runner.dep.yml | 10 +- .../arduino/builder/internal/utils.dep.yml | 10 +- .../internal/arduino/builder/logger.dep.yml | 10 +- .../internal/arduino/cores.dep.yml | 10 +- .../arduino/cores/packageindex.dep.yml | 10 +- .../arduino/cores/packagemanager.dep.yml | 10 +- .../discovery/discoverymanager.dep.yml | 10 +- .../internal/arduino/globals.dep.yml | 10 +- .../internal/arduino/httpclient.dep.yml | 10 +- .../internal/arduino/libraries.dep.yml | 10 +- .../arduino/libraries/librariesindex.dep.yml | 10 +- .../libraries/librariesmanager.dep.yml | 10 +- .../libraries/librariesresolver.dep.yml | 10 +- .../internal/arduino/monitor.dep.yml | 8 +- .../internal/arduino/resources.dep.yml | 10 +- .../internal/arduino/security.dep.yml | 10 +- .../internal/arduino/sketch.dep.yml | 10 +- .../internal/arduino/utils.dep.yml | 10 +- .../arduino-cli/internal/buildcache.dep.yml | 10 +- .../internal/cli/configuration.dep.yml | 10 +- .../arduino-cli/internal/cli/feedback.dep.yml | 8 +- .../arduino-cli/internal/go-configmap.dep.yml | 10 +- .../arduino/arduino-cli/internal/i18n.dep.yml | 10 +- .../arduino-cli/internal/inventory.dep.yml | 10 +- .../arduino-cli/internal/locales.dep.yml | 8 +- .../arduino-cli/internal/version.dep.yml | 10 +- .../arduino/arduino-cli/pkg/fqbn.dep.yml | 10 +- .../rpc/cc/arduino/cli/commands/v1.dep.yml | 10 +- .../go/github.com/go-git/go-git/v5.dep.yml | 2 +- .../go-git/go-git/v5/config.dep.yml | 6 +- .../go-git/v5/internal/path_util.dep.yml | 6 +- .../go-git/v5/internal/revision.dep.yml | 6 +- .../go-git/go-git/v5/internal/url.dep.yml | 6 +- .../go-git/go-git/v5/plumbing.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/cache.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/color.dep.yml | 6 +- .../go-git/v5/plumbing/filemode.dep.yml | 6 +- .../go-git/v5/plumbing/format/config.dep.yml | 6 +- .../go-git/v5/plumbing/format/diff.dep.yml | 6 +- .../v5/plumbing/format/gitignore.dep.yml | 6 +- .../go-git/v5/plumbing/format/idxfile.dep.yml | 6 +- .../go-git/v5/plumbing/format/index.dep.yml | 6 +- .../go-git/v5/plumbing/format/objfile.dep.yml | 6 +- .../v5/plumbing/format/packfile.dep.yml | 6 +- .../go-git/v5/plumbing/format/pktline.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/hash.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/object.dep.yml | 6 +- .../go-git/v5/plumbing/protocol/packp.dep.yml | 6 +- .../protocol/packp/capability.dep.yml | 6 +- .../plumbing/protocol/packp/sideband.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/revlist.dep.yml | 6 +- .../go-git/go-git/v5/plumbing/storer.dep.yml | 6 +- .../go-git/v5/plumbing/transport.dep.yml | 6 +- .../v5/plumbing/transport/client.dep.yml | 6 +- .../go-git/v5/plumbing/transport/file.dep.yml | 6 +- .../go-git/v5/plumbing/transport/git.dep.yml | 6 +- .../go-git/v5/plumbing/transport/http.dep.yml | 6 +- .../transport/internal/common.dep.yml | 6 +- .../v5/plumbing/transport/server.dep.yml | 6 +- .../go-git/v5/plumbing/transport/ssh.dep.yml | 6 +- .../go-git/go-git/v5/storage.dep.yml | 6 +- .../go-git/v5/storage/filesystem.dep.yml | 6 +- .../v5/storage/filesystem/dotgit.dep.yml | 6 +- .../go-git/go-git/v5/storage/memory.dep.yml | 6 +- .../go-git/go-git/v5/utils/binary.dep.yml | 6 +- .../go-git/go-git/v5/utils/diff.dep.yml | 6 +- .../go-git/go-git/v5/utils/ioutil.dep.yml | 6 +- .../go-git/go-git/v5/utils/merkletrie.dep.yml | 6 +- .../v5/utils/merkletrie/filesystem.dep.yml | 6 +- .../go-git/v5/utils/merkletrie/index.dep.yml | 6 +- .../utils/merkletrie/internal/frame.dep.yml | 6 +- .../go-git/v5/utils/merkletrie/noder.dep.yml | 6 +- .../go-git/go-git/v5/utils/sync.dep.yml | 6 +- .../go-git/go-git/v5/utils/trace.dep.yml | 6 +- .../go/github.com/gofrs/uuid/v5.dep.yml | 2 +- .../go/github.com/spf13/cobra.dep.yml | 2 +- .../go/go.opentelemetry.io/auto/sdk.dep.yml | 2 +- .../auto/sdk/internal/telemetry.dep.yml | 4 +- .../go/go.opentelemetry.io/otel.dep.yml | 34 +- .../otel/attribute.dep.yml | 36 +- .../otel/attribute/internal.dep.yml | 36 +- .../go.opentelemetry.io/otel/baggage.dep.yml | 36 +- .../go/go.opentelemetry.io/otel/codes.dep.yml | 36 +- .../otel/internal/baggage.dep.yml | 36 +- .../otel/internal/global.dep.yml | 36 +- .../go.opentelemetry.io/otel/metric.dep.yml | 34 +- .../otel/metric/embedded.dep.yml | 36 +- .../otel/metric/noop.dep.yml | 36 +- .../otel/propagation.dep.yml | 36 +- .../go/go.opentelemetry.io/otel/sdk.dep.yml | 34 +- .../otel/sdk/instrumentation.dep.yml | 36 +- .../otel/sdk/internal/env.dep.yml | 36 +- .../otel/sdk/internal/x.dep.yml | 36 +- .../otel/sdk/metric.dep.yml | 34 +- .../otel/sdk/metric/exemplar.dep.yml | 36 +- .../otel/sdk/metric/internal.dep.yml | 36 +- .../sdk/metric/internal/aggregate.dep.yml | 36 +- .../otel/sdk/metric/internal/x.dep.yml | 36 +- .../otel/sdk/metric/metricdata.dep.yml | 36 +- .../otel/sdk/resource.dep.yml | 36 +- .../otel/sdk/trace.dep.yml | 36 +- .../otel/sdk/trace/internal/x.dep.yml | 242 ++ .../otel/sdk/trace/tracetest.dep.yml | 36 +- .../otel/semconv/v1.17.0.dep.yml | 36 +- .../otel/semconv/v1.19.0.dep.yml | 36 +- .../otel/semconv/v1.20.0.dep.yml | 36 +- .../otel/semconv/v1.21.0.dep.yml | 36 +- .../otel/semconv/v1.26.0.dep.yml | 36 +- .../otel/semconv/v1.37.0.dep.yml} | 44 +- .../otel/semconv/v1.37.0/otelconv.dep.yml | 243 ++ .../go/go.opentelemetry.io/otel/trace.dep.yml | 34 +- .../otel/trace/embedded.dep.yml | 36 +- .../otel/trace/internal/telemetry.dep.yml | 36 +- .../otel/trace/noop.dep.yml | 36 +- .../go/golang.org/x/crypto/argon2.dep.yml | 6 +- .../go/golang.org/x/crypto/blake2b.dep.yml | 6 +- .../go/golang.org/x/crypto/blowfish.dep.yml | 6 +- .../go/golang.org/x/crypto/cast5.dep.yml | 6 +- .../go/golang.org/x/crypto/curve25519.dep.yml | 9 +- .../go/golang.org/x/crypto/ed25519.dep.yml | 6 +- .../go/golang.org/x/crypto/hkdf.dep.yml | 6 +- .../go/golang.org/x/crypto/nacl/sign.dep.yml | 6 +- .../go/golang.org/x/crypto/pbkdf2.dep.yml | 6 +- .../go/golang.org/x/crypto/sha3.dep.yml | 10 +- .../go/golang.org/x/crypto/ssh.dep.yml | 6 +- .../go/golang.org/x/crypto/ssh/agent.dep.yml | 6 +- .../crypto/ssh/internal/bcrypt_pbkdf.dep.yml | 6 +- .../x/crypto/ssh/knownhosts.dep.yml | 6 +- .../go/golang.org/x/net/context.dep.yml | 9 +- .../go/golang.org/x/net/html.dep.yml | 6 +- .../go/golang.org/x/net/html/atom.dep.yml | 6 +- .../go/golang.org/x/net/http2.dep.yml | 6 +- .../x/net/internal/httpcommon.dep.yml | 6 +- .../golang.org/x/net/internal/socks.dep.yml | 6 +- .../x/net/internal/timeseries.dep.yml | 6 +- .../go/golang.org/x/net/proxy.dep.yml | 6 +- .../go/golang.org/x/net/publicsuffix.dep.yml | 6 +- .../go/golang.org/x/net/trace.dep.yml | 6 +- .../go/golang.org/x/net/websocket.dep.yml | 6 +- .../go/golang.org/x/oauth2.dep.yml | 2 +- .../go/golang.org/x/oauth2/internal.dep.yml | 4 +- .../go/golang.org/x/sync/errgroup.dep.yml | 8 +- .../go/golang.org/x/sync/semaphore.dep.yml | 6 +- .../go/golang.org/x/sys/execabs.dep.yml | 6 +- .../go/golang.org/x/sys/unix.dep.yml | 6 +- .../go/golang.org/x/term.dep.yml | 2 +- .../go/golang.org/x/text/cases.dep.yml | 6 +- .../go/golang.org/x/text/encoding.dep.yml | 6 +- .../x/text/encoding/internal.dep.yml | 6 +- .../text/encoding/internal/identifier.dep.yml | 6 +- .../x/text/encoding/unicode.dep.yml | 6 +- .../golang.org/x/text/feature/plural.dep.yml | 6 +- .../go/golang.org/x/text/internal.dep.yml | 6 +- .../golang.org/x/text/internal/catmsg.dep.yml | 6 +- .../golang.org/x/text/internal/format.dep.yml | 6 +- .../x/text/internal/language.dep.yml | 6 +- .../x/text/internal/language/compact.dep.yml | 6 +- .../golang.org/x/text/internal/number.dep.yml | 6 +- .../x/text/internal/stringset.dep.yml | 6 +- .../go/golang.org/x/text/internal/tag.dep.yml | 6 +- .../x/text/internal/utf8internal.dep.yml | 6 +- .../go/golang.org/x/text/language.dep.yml | 6 +- .../go/golang.org/x/text/message.dep.yml | 6 +- .../golang.org/x/text/message/catalog.dep.yml | 6 +- .../go/golang.org/x/text/runes.dep.yml | 6 +- .../go/golang.org/x/text/width.dep.yml | 6 +- .../genproto/googleapis/api/httpbody.dep.yml | 4 +- .../googleapis/rpc/errdetails.dep.yml | 4 +- .../genproto/googleapis/rpc/status.dep.yml | 4 +- .../go/google.golang.org/grpc.dep.yml | 2 +- .../google.golang.org/grpc/attributes.dep.yml | 4 +- .../go/google.golang.org/grpc/backoff.dep.yml | 4 +- .../google.golang.org/grpc/balancer.dep.yml | 4 +- .../grpc/balancer/base.dep.yml | 4 +- .../grpc/balancer/endpointsharding.dep.yml | 4 +- .../grpc/balancer/grpclb/state.dep.yml | 4 +- .../grpc/balancer/pickfirst.dep.yml | 7 +- .../grpc/balancer/pickfirst/internal.dep.yml | 4 +- .../grpc/balancer/roundrobin.dep.yml | 4 +- .../grpc/binarylog/grpc_binarylog_v1.dep.yml | 4 +- .../google.golang.org/grpc/channelz.dep.yml | 4 +- .../go/google.golang.org/grpc/codes.dep.yml | 4 +- .../grpc/connectivity.dep.yml | 4 +- .../grpc/credentials.dep.yml | 4 +- .../grpc/credentials/insecure.dep.yml | 4 +- .../google.golang.org/grpc/encoding.dep.yml | 4 +- .../grpc/encoding/gzip.dep.yml | 4 +- .../grpc/encoding/internal.dep.yml} | 11 +- .../grpc/encoding/proto.dep.yml | 4 +- .../grpc/experimental/stats.dep.yml | 4 +- .../go/google.golang.org/grpc/grpclog.dep.yml | 4 +- .../grpc/grpclog/internal.dep.yml | 4 +- .../go/google.golang.org/grpc/health.dep.yml | 4 +- .../grpc/health/grpc_health_v1.dep.yml | 4 +- .../google.golang.org/grpc/internal.dep.yml | 4 +- .../grpc/internal/backoff.dep.yml | 4 +- .../internal/balancer/gracefulswitch.dep.yml | 4 +- .../grpc/internal/balancerload.dep.yml | 4 +- .../grpc/internal/binarylog.dep.yml | 4 +- .../grpc/internal/buffer.dep.yml | 4 +- .../grpc/internal/channelz.dep.yml | 4 +- .../grpc/internal/credentials.dep.yml | 4 +- .../grpc/internal/envconfig.dep.yml | 4 +- .../grpc/internal/grpclog.dep.yml | 4 +- .../grpc/internal/grpcsync.dep.yml | 4 +- .../grpc/internal/grpcutil.dep.yml | 4 +- .../grpc/internal/idle.dep.yml | 4 +- .../grpc/internal/metadata.dep.yml | 4 +- .../grpc/internal/pretty.dep.yml | 4 +- .../grpc/internal/proxyattributes.dep.yml | 4 +- .../grpc/internal/resolver.dep.yml | 4 +- .../resolver/delegatingresolver.dep.yml | 4 +- .../grpc/internal/resolver/dns.dep.yml | 4 +- .../internal/resolver/dns/internal.dep.yml | 4 +- .../internal/resolver/passthrough.dep.yml | 4 +- .../grpc/internal/resolver/unix.dep.yml | 4 +- .../grpc/internal/serviceconfig.dep.yml | 4 +- .../grpc/internal/stats.dep.yml | 4 +- .../grpc/internal/status.dep.yml | 4 +- .../grpc/internal/syscall.dep.yml | 4 +- .../grpc/internal/transport.dep.yml | 4 +- .../internal/transport/networktype.dep.yml | 4 +- .../google.golang.org/grpc/keepalive.dep.yml | 4 +- .../go/google.golang.org/grpc/mem.dep.yml | 4 +- .../google.golang.org/grpc/metadata.dep.yml | 4 +- .../go/google.golang.org/grpc/peer.dep.yml | 4 +- .../google.golang.org/grpc/resolver.dep.yml | 4 +- .../grpc/resolver/dns.dep.yml | 4 +- .../grpc/serviceconfig.dep.yml | 4 +- .../go/google.golang.org/grpc/stats.dep.yml | 4 +- .../go/google.golang.org/grpc/status.dep.yml | 4 +- .../go/google.golang.org/grpc/tap.dep.yml | 4 +- cmd/gendoc/docs.go | 5 +- go.mod | 47 +- go.sum | 88 +- internal/api/docs/openapi.yaml | 8 + internal/api/handlers/app_sketch_libs.go | 8 +- internal/orchestrator/sketch_libs.go | 53 +- .../orchestrator/sketch_libs_release_id.go | 5 +- internal/orchestrator/sketch_libs_test.go | 2 +- 253 files changed, 4281 insertions(+), 1276 deletions(-) create mode 100644 .licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/internal/x.dep.yml rename .licenses/arduino-app-cli/go/{google.golang.org/grpc/balancer/pickfirst/pickfirstleaf.dep.yml => go.opentelemetry.io/otel/semconv/v1.37.0.dep.yml} (86%) create mode 100644 .licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0/otelconv.dep.yml rename .licenses/arduino-app-cli/go/{go.opentelemetry.io/otel/semconv/v1.34.0.dep.yml => google.golang.org/grpc/encoding/internal.dep.yml} (98%) diff --git a/.licenses/arduino-app-cli/NOTICE b/.licenses/arduino-app-cli/NOTICE index 27d1a289..d6dabb07 100644 --- a/.licenses/arduino-app-cli/NOTICE +++ b/.licenses/arduino-app-cli/NOTICE @@ -7163,7 +7163,7 @@ use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. ***** -github.com/arduino/arduino-cli/commands@v1.3.1 +github.com/arduino/arduino-cli/commands@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -7877,7 +7877,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/commands/cmderrors@v1.3.1 +github.com/arduino/arduino-cli/commands/cmderrors@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -8591,7 +8591,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/commands/internal/instances@v1.3.1 +github.com/arduino/arduino-cli/commands/internal/instances@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -9305,7 +9305,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/algorithms@v1.3.1 +github.com/arduino/arduino-cli/internal/algorithms@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -10019,7 +10019,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -10733,7 +10733,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/cpp@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/cpp@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -11447,7 +11447,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -12161,7 +12161,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -12875,7 +12875,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -13589,7 +13589,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -14303,7 +14303,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -15017,7 +15017,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -15731,7 +15731,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -16445,7 +16445,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -17159,7 +17159,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/builder/logger@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/builder/logger@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -17873,7 +17873,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/cores@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/cores@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -18587,7 +18587,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/cores/packageindex@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/cores/packageindex@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -19301,7 +19301,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -20015,7 +20015,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -20729,7 +20729,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/globals@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/globals@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -21443,7 +21443,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/httpclient@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/httpclient@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -22157,7 +22157,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/libraries@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/libraries@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -22871,7 +22871,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -23585,7 +23585,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -24299,7 +24299,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -25013,7 +25013,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/monitor@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/monitor@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -25727,7 +25727,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/resources@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/resources@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -26441,7 +26441,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/security@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/security@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -27155,7 +27155,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/sketch@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/sketch@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -27869,7 +27869,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/arduino/utils@v1.3.1 +github.com/arduino/arduino-cli/internal/arduino/utils@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -28583,7 +28583,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/buildcache@v1.3.1 +github.com/arduino/arduino-cli/internal/buildcache@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -29297,7 +29297,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/cli/configuration@v1.3.1 +github.com/arduino/arduino-cli/internal/cli/configuration@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -30011,7 +30011,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/cli/feedback@v1.3.1 +github.com/arduino/arduino-cli/internal/cli/feedback@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -30725,7 +30725,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/go-configmap@v1.3.1 +github.com/arduino/arduino-cli/internal/go-configmap@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -31439,7 +31439,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/i18n@v1.3.1 +github.com/arduino/arduino-cli/internal/i18n@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -32153,7 +32153,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/inventory@v1.3.1 +github.com/arduino/arduino-cli/internal/inventory@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -32867,7 +32867,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/internal/locales@v1.3.1 +github.com/arduino/arduino-cli/internal/locales@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -33562,7 +33562,7 @@ Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. ***** -github.com/arduino/arduino-cli/internal/version@v1.3.1 +github.com/arduino/arduino-cli/internal/version@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -34276,7 +34276,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/pkg/fqbn@v1.3.1 +github.com/arduino/arduino-cli/pkg/fqbn@v1.4.0 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -34990,7 +34990,7 @@ license@arduino.cc [security policy]: https://github.com/arduino/arduino-cli/security/policy ***** -github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1@v1.3.1 +github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1@v1.4.0 Apache License Version 2.0, January 2004 @@ -97857,7 +97857,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5@v5.16.3 +github.com/go-git/go-git/v5@v5.16.4 Apache License Version 2.0, January 2004 @@ -98066,7 +98066,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/config@v5.16.3 +github.com/go-git/go-git/v5/config@v5.16.4 Apache License Version 2.0, January 2004 @@ -98275,7 +98275,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/internal/path_util@v5.16.3 +github.com/go-git/go-git/v5/internal/path_util@v5.16.4 Apache License Version 2.0, January 2004 @@ -98484,7 +98484,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/internal/revision@v5.16.3 +github.com/go-git/go-git/v5/internal/revision@v5.16.4 Apache License Version 2.0, January 2004 @@ -98693,7 +98693,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/internal/url@v5.16.3 +github.com/go-git/go-git/v5/internal/url@v5.16.4 Apache License Version 2.0, January 2004 @@ -98902,7 +98902,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing@v5.16.3 +github.com/go-git/go-git/v5/plumbing@v5.16.4 Apache License Version 2.0, January 2004 @@ -99111,7 +99111,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/cache@v5.16.3 +github.com/go-git/go-git/v5/plumbing/cache@v5.16.4 Apache License Version 2.0, January 2004 @@ -99320,7 +99320,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/color@v5.16.3 +github.com/go-git/go-git/v5/plumbing/color@v5.16.4 Apache License Version 2.0, January 2004 @@ -99529,7 +99529,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/filemode@v5.16.3 +github.com/go-git/go-git/v5/plumbing/filemode@v5.16.4 Apache License Version 2.0, January 2004 @@ -99738,7 +99738,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/config@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/config@v5.16.4 Apache License Version 2.0, January 2004 @@ -99947,7 +99947,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/diff@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/diff@v5.16.4 Apache License Version 2.0, January 2004 @@ -100156,7 +100156,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/gitignore@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/gitignore@v5.16.4 Apache License Version 2.0, January 2004 @@ -100365,7 +100365,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/idxfile@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/idxfile@v5.16.4 Apache License Version 2.0, January 2004 @@ -100574,7 +100574,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/index@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/index@v5.16.4 Apache License Version 2.0, January 2004 @@ -100783,7 +100783,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/objfile@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/objfile@v5.16.4 Apache License Version 2.0, January 2004 @@ -100992,7 +100992,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/packfile@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/packfile@v5.16.4 Apache License Version 2.0, January 2004 @@ -101201,7 +101201,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/format/pktline@v5.16.3 +github.com/go-git/go-git/v5/plumbing/format/pktline@v5.16.4 Apache License Version 2.0, January 2004 @@ -101410,7 +101410,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/hash@v5.16.3 +github.com/go-git/go-git/v5/plumbing/hash@v5.16.4 Apache License Version 2.0, January 2004 @@ -101619,7 +101619,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/object@v5.16.3 +github.com/go-git/go-git/v5/plumbing/object@v5.16.4 Apache License Version 2.0, January 2004 @@ -101828,7 +101828,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/protocol/packp@v5.16.3 +github.com/go-git/go-git/v5/plumbing/protocol/packp@v5.16.4 Apache License Version 2.0, January 2004 @@ -102037,7 +102037,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/protocol/packp/capability@v5.16.3 +github.com/go-git/go-git/v5/plumbing/protocol/packp/capability@v5.16.4 Apache License Version 2.0, January 2004 @@ -102246,7 +102246,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband@v5.16.3 +github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband@v5.16.4 Apache License Version 2.0, January 2004 @@ -102455,7 +102455,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/revlist@v5.16.3 +github.com/go-git/go-git/v5/plumbing/revlist@v5.16.4 Apache License Version 2.0, January 2004 @@ -102664,7 +102664,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/storer@v5.16.3 +github.com/go-git/go-git/v5/plumbing/storer@v5.16.4 Apache License Version 2.0, January 2004 @@ -102873,7 +102873,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport@v5.16.4 Apache License Version 2.0, January 2004 @@ -103082,7 +103082,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/client@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/client@v5.16.4 Apache License Version 2.0, January 2004 @@ -103291,7 +103291,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/file@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/file@v5.16.4 Apache License Version 2.0, January 2004 @@ -103500,7 +103500,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/git@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/git@v5.16.4 Apache License Version 2.0, January 2004 @@ -103709,7 +103709,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/http@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/http@v5.16.4 Apache License Version 2.0, January 2004 @@ -103918,7 +103918,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/internal/common@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/internal/common@v5.16.4 Apache License Version 2.0, January 2004 @@ -104127,7 +104127,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/server@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/server@v5.16.4 Apache License Version 2.0, January 2004 @@ -104336,7 +104336,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/plumbing/transport/ssh@v5.16.3 +github.com/go-git/go-git/v5/plumbing/transport/ssh@v5.16.4 Apache License Version 2.0, January 2004 @@ -104545,7 +104545,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/storage@v5.16.3 +github.com/go-git/go-git/v5/storage@v5.16.4 Apache License Version 2.0, January 2004 @@ -104754,7 +104754,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/storage/filesystem@v5.16.3 +github.com/go-git/go-git/v5/storage/filesystem@v5.16.4 Apache License Version 2.0, January 2004 @@ -104963,7 +104963,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/storage/filesystem/dotgit@v5.16.3 +github.com/go-git/go-git/v5/storage/filesystem/dotgit@v5.16.4 Apache License Version 2.0, January 2004 @@ -105172,7 +105172,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/storage/memory@v5.16.3 +github.com/go-git/go-git/v5/storage/memory@v5.16.4 Apache License Version 2.0, January 2004 @@ -105381,7 +105381,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/binary@v5.16.3 +github.com/go-git/go-git/v5/utils/binary@v5.16.4 Apache License Version 2.0, January 2004 @@ -105590,7 +105590,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/diff@v5.16.3 +github.com/go-git/go-git/v5/utils/diff@v5.16.4 Apache License Version 2.0, January 2004 @@ -105799,7 +105799,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/ioutil@v5.16.3 +github.com/go-git/go-git/v5/utils/ioutil@v5.16.4 Apache License Version 2.0, January 2004 @@ -106008,7 +106008,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/merkletrie@v5.16.3 +github.com/go-git/go-git/v5/utils/merkletrie@v5.16.4 Apache License Version 2.0, January 2004 @@ -106217,7 +106217,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/merkletrie/filesystem@v5.16.3 +github.com/go-git/go-git/v5/utils/merkletrie/filesystem@v5.16.4 Apache License Version 2.0, January 2004 @@ -106426,7 +106426,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/merkletrie/index@v5.16.3 +github.com/go-git/go-git/v5/utils/merkletrie/index@v5.16.4 Apache License Version 2.0, January 2004 @@ -106635,7 +106635,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/merkletrie/internal/frame@v5.16.3 +github.com/go-git/go-git/v5/utils/merkletrie/internal/frame@v5.16.4 Apache License Version 2.0, January 2004 @@ -106844,7 +106844,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/merkletrie/noder@v5.16.3 +github.com/go-git/go-git/v5/utils/merkletrie/noder@v5.16.4 Apache License Version 2.0, January 2004 @@ -107053,7 +107053,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/sync@v5.16.3 +github.com/go-git/go-git/v5/utils/sync@v5.16.4 Apache License Version 2.0, January 2004 @@ -107262,7 +107262,7 @@ Apache License Apache License Version 2.0, see [LICENSE](LICENSE) ***** -github.com/go-git/go-git/v5/utils/trace@v5.16.3 +github.com/go-git/go-git/v5/utils/trace@v5.16.4 Apache License Version 2.0, January 2004 @@ -109261,7 +109261,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. `flock` is released under the BSD 3-Clause License. See the [`LICENSE`](./LICENSE) file for more details. ***** -github.com/gofrs/uuid/v5@v5.3.2 +github.com/gofrs/uuid/v5@v5.4.0 Copyright (C) 2013-2018 by Maxim Bublis @@ -142928,7 +142928,7 @@ SOFTWARE. The project is licensed under the [MIT License](LICENSE). ***** -github.com/spf13/cobra@v1.10.1 +github.com/spf13/cobra@v1.10.2 Apache License Version 2.0, January 2004 @@ -148512,7 +148512,7 @@ This software is released under the [BSD 3-clause license]. [BSD 3-clause license]: https://github.com/bugst/go-serial/blob/master/LICENSE ***** -go.opentelemetry.io/auto/sdk@v1.1.0 +go.opentelemetry.io/auto/sdk@v1.2.1 Apache License Version 2.0, January 2004 @@ -148717,7 +148717,7 @@ Apache License limitations under the License. ***** -go.opentelemetry.io/auto/sdk/internal/telemetry@v1.1.0 +go.opentelemetry.io/auto/sdk/internal/telemetry@v1.2.1 Apache License Version 2.0, January 2004 @@ -150767,7 +150767,7 @@ Apache License limitations under the License. ***** -go.opentelemetry.io/otel@v1.37.0 +go.opentelemetry.io/otel@v1.38.0 Apache License Version 2.0, January 2004 @@ -150971,8 +150971,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/attribute@v1.37.0 +go.opentelemetry.io/otel/attribute@v1.38.0 Apache License Version 2.0, January 2004 @@ -151176,8 +151206,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/attribute/internal@v1.37.0 +go.opentelemetry.io/otel/attribute/internal@v1.38.0 Apache License Version 2.0, January 2004 @@ -151381,8 +151441,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/baggage@v1.37.0 +go.opentelemetry.io/otel/baggage@v1.38.0 Apache License Version 2.0, January 2004 @@ -151586,8 +151676,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/codes@v1.37.0 +go.opentelemetry.io/otel/codes@v1.38.0 Apache License Version 2.0, January 2004 @@ -151791,6 +151911,36 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc@v1.35.0 @@ -156712,7 +156862,7 @@ Apache License limitations under the License. ***** -go.opentelemetry.io/otel/internal/baggage@v1.37.0 +go.opentelemetry.io/otel/internal/baggage@v1.38.0 Apache License Version 2.0, January 2004 @@ -156916,8 +157066,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/internal/global@v1.37.0 +go.opentelemetry.io/otel/internal/global@v1.38.0 Apache License Version 2.0, January 2004 @@ -157121,8 +157301,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/metric@v1.37.0 +go.opentelemetry.io/otel/metric@v1.38.0 Apache License Version 2.0, January 2004 @@ -157326,8 +157536,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/metric/embedded@v1.37.0 +go.opentelemetry.io/otel/metric/embedded@v1.38.0 Apache License Version 2.0, January 2004 @@ -157531,8 +157771,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/metric/noop@v1.37.0 +go.opentelemetry.io/otel/metric/noop@v1.38.0 Apache License Version 2.0, January 2004 @@ -157736,8 +158006,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/propagation@v1.37.0 +go.opentelemetry.io/otel/propagation@v1.38.0 Apache License Version 2.0, January 2004 @@ -157941,8 +158241,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk@v1.37.0 +go.opentelemetry.io/otel/sdk@v1.38.0 Apache License Version 2.0, January 2004 @@ -158146,8 +158476,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/instrumentation@v1.37.0 +go.opentelemetry.io/otel/sdk/instrumentation@v1.38.0 Apache License Version 2.0, January 2004 @@ -158351,8 +158711,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/internal/env@v1.37.0 +go.opentelemetry.io/otel/sdk/internal/env@v1.38.0 Apache License Version 2.0, January 2004 @@ -158556,8 +158946,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/internal/x@v1.37.0 +go.opentelemetry.io/otel/sdk/internal/x@v1.38.0 Apache License Version 2.0, January 2004 @@ -158761,8 +159181,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric@v1.37.0 +go.opentelemetry.io/otel/sdk/metric@v1.38.0 Apache License Version 2.0, January 2004 @@ -158966,8 +159416,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric/exemplar@v1.37.0 +go.opentelemetry.io/otel/sdk/metric/exemplar@v1.38.0 Apache License Version 2.0, January 2004 @@ -159171,8 +159651,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric/internal@v1.37.0 +go.opentelemetry.io/otel/sdk/metric/internal@v1.38.0 Apache License Version 2.0, January 2004 @@ -159376,8 +159886,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric/internal/aggregate@v1.37.0 +go.opentelemetry.io/otel/sdk/metric/internal/aggregate@v1.38.0 Apache License Version 2.0, January 2004 @@ -159581,8 +160121,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric/internal/x@v1.37.0 +go.opentelemetry.io/otel/sdk/metric/internal/x@v1.38.0 Apache License Version 2.0, January 2004 @@ -159786,8 +160356,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/metric/metricdata@v1.37.0 +go.opentelemetry.io/otel/sdk/metric/metricdata@v1.38.0 Apache License Version 2.0, January 2004 @@ -159991,8 +160591,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/resource@v1.37.0 +go.opentelemetry.io/otel/sdk/resource@v1.38.0 Apache License Version 2.0, January 2004 @@ -160196,8 +160826,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/trace@v1.37.0 +go.opentelemetry.io/otel/sdk/trace@v1.38.0 Apache License Version 2.0, January 2004 @@ -160401,8 +161061,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/sdk/trace/tracetest@v1.37.0 +go.opentelemetry.io/otel/sdk/trace/internal/x@v1.38.0 Apache License Version 2.0, January 2004 @@ -160606,8 +161296,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/semconv/v1.17.0@v1.37.0 +go.opentelemetry.io/otel/sdk/trace/tracetest@v1.38.0 Apache License Version 2.0, January 2004 @@ -160811,8 +161531,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/semconv/v1.19.0@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.17.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -161016,8 +161766,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/semconv/v1.20.0@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.19.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -161221,8 +162001,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/semconv/v1.21.0@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.20.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -161426,213 +162236,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. -***** -go.opentelemetry.io/otel/semconv/v1.26.0@v1.37.0 - -Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. +-------------------------------------------------------------------------------- - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] +Copyright 2009 The Go Authors. - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: - http://www.apache.org/licenses/LICENSE-2.0 + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***** -go.opentelemetry.io/otel/semconv/v1.34.0@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.21.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -161836,8 +162471,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/trace@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.26.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -162041,8 +162706,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/trace/embedded@v1.37.0 +go.opentelemetry.io/otel/semconv/v1.37.0@v1.38.0 Apache License Version 2.0, January 2004 @@ -162246,8 +162941,508 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +***** +go.opentelemetry.io/otel/semconv/v1.37.0/otelconv@v1.38.0 + +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +***** +go.opentelemetry.io/otel/trace@v1.38.0 + +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/trace/internal/telemetry@v1.37.0 +go.opentelemetry.io/otel/trace/embedded@v1.38.0 Apache License Version 2.0, January 2004 @@ -162451,8 +163646,38 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** -go.opentelemetry.io/otel/trace/noop@v1.37.0 +go.opentelemetry.io/otel/trace/internal/telemetry@v1.38.0 Apache License Version 2.0, January 2004 @@ -162656,6 +163881,271 @@ Apache License See the License for the specific language governing permissions and limitations under the License. +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +***** +go.opentelemetry.io/otel/trace/noop@v1.38.0 + +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + +Copyright 2009 The Go Authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google LLC nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ***** go.opentelemetry.io/proto/otlp/collector/metrics/v1@v1.5.0 @@ -164166,7 +165656,7 @@ See the License for the specific language governing permissions and limitations under the License. ***** -golang.org/x/crypto/argon2@v0.42.0 +golang.org/x/crypto/argon2@v0.45.0 Copyright 2009 The Go Authors. @@ -164222,7 +165712,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/blake2b@v0.42.0 +golang.org/x/crypto/blake2b@v0.45.0 Copyright 2009 The Go Authors. @@ -164278,7 +165768,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/blowfish@v0.42.0 +golang.org/x/crypto/blowfish@v0.45.0 Copyright 2009 The Go Authors. @@ -164334,7 +165824,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/cast5@v0.42.0 +golang.org/x/crypto/cast5@v0.45.0 Copyright 2009 The Go Authors. @@ -164390,7 +165880,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/curve25519@v0.42.0 +golang.org/x/crypto/curve25519@v0.45.0 Copyright 2009 The Go Authors. @@ -164446,7 +165936,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/ed25519@v0.42.0 +golang.org/x/crypto/ed25519@v0.45.0 Copyright 2009 The Go Authors. @@ -164502,7 +165992,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/hkdf@v0.42.0 +golang.org/x/crypto/hkdf@v0.45.0 Copyright 2009 The Go Authors. @@ -164558,7 +166048,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/nacl/sign@v0.42.0 +golang.org/x/crypto/nacl/sign@v0.45.0 Copyright 2009 The Go Authors. @@ -164614,7 +166104,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/pbkdf2@v0.42.0 +golang.org/x/crypto/pbkdf2@v0.45.0 Copyright 2009 The Go Authors. @@ -164670,7 +166160,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/sha3@v0.42.0 +golang.org/x/crypto/sha3@v0.45.0 Copyright 2009 The Go Authors. @@ -164726,7 +166216,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/ssh@v0.42.0 +golang.org/x/crypto/ssh@v0.45.0 Copyright 2009 The Go Authors. @@ -164782,7 +166272,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/ssh/agent@v0.42.0 +golang.org/x/crypto/ssh/agent@v0.45.0 Copyright 2009 The Go Authors. @@ -164838,7 +166328,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/ssh/internal/bcrypt_pbkdf@v0.42.0 +golang.org/x/crypto/ssh/internal/bcrypt_pbkdf@v0.45.0 Copyright 2009 The Go Authors. @@ -164894,7 +166384,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/crypto/ssh/knownhosts@v0.42.0 +golang.org/x/crypto/ssh/knownhosts@v0.45.0 Copyright 2009 The Go Authors. @@ -164950,7 +166440,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/context@v0.44.0 +golang.org/x/net/context@v0.47.0 Copyright 2009 The Go Authors. @@ -165006,7 +166496,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/html@v0.44.0 +golang.org/x/net/html@v0.47.0 Copyright 2009 The Go Authors. @@ -165062,7 +166552,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/html/atom@v0.44.0 +golang.org/x/net/html/atom@v0.47.0 Copyright 2009 The Go Authors. @@ -165118,7 +166608,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/http2@v0.44.0 +golang.org/x/net/http2@v0.47.0 Copyright 2009 The Go Authors. @@ -165174,7 +166664,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/internal/httpcommon@v0.44.0 +golang.org/x/net/internal/httpcommon@v0.47.0 Copyright 2009 The Go Authors. @@ -165230,7 +166720,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/internal/socks@v0.44.0 +golang.org/x/net/internal/socks@v0.47.0 Copyright 2009 The Go Authors. @@ -165286,7 +166776,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/internal/timeseries@v0.44.0 +golang.org/x/net/internal/timeseries@v0.47.0 Copyright 2009 The Go Authors. @@ -165342,7 +166832,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/proxy@v0.44.0 +golang.org/x/net/proxy@v0.47.0 Copyright 2009 The Go Authors. @@ -165398,7 +166888,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/publicsuffix@v0.44.0 +golang.org/x/net/publicsuffix@v0.47.0 Copyright 2009 The Go Authors. @@ -165454,7 +166944,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/trace@v0.44.0 +golang.org/x/net/trace@v0.47.0 Copyright 2009 The Go Authors. @@ -165510,7 +167000,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/net/websocket@v0.44.0 +golang.org/x/net/websocket@v0.47.0 Copyright 2009 The Go Authors. @@ -165566,7 +167056,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/oauth2@v0.30.0 +golang.org/x/oauth2@v0.32.0 Copyright 2009 The Go Authors. @@ -165597,7 +167087,7 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***** -golang.org/x/oauth2/internal@v0.30.0 +golang.org/x/oauth2/internal@v0.32.0 Copyright 2009 The Go Authors. @@ -165628,7 +167118,7 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***** -golang.org/x/sync/errgroup@v0.17.0 +golang.org/x/sync/errgroup@v0.19.0 Copyright 2009 The Go Authors. @@ -165684,7 +167174,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/sync/semaphore@v0.17.0 +golang.org/x/sync/semaphore@v0.19.0 Copyright 2009 The Go Authors. @@ -165740,7 +167230,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/sys/execabs@v0.38.0 +golang.org/x/sys/execabs@v0.39.0 Copyright 2009 The Go Authors. @@ -165796,7 +167286,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/sys/unix@v0.38.0 +golang.org/x/sys/unix@v0.39.0 Copyright 2009 The Go Authors. @@ -165852,7 +167342,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/term@v0.36.0 +golang.org/x/term@v0.38.0 Copyright 2009 The Go Authors. @@ -165908,7 +167398,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/cases@v0.30.0 +golang.org/x/text/cases@v0.32.0 Copyright 2009 The Go Authors. @@ -165964,7 +167454,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/encoding@v0.30.0 +golang.org/x/text/encoding@v0.32.0 Copyright 2009 The Go Authors. @@ -166020,7 +167510,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/encoding/internal@v0.30.0 +golang.org/x/text/encoding/internal@v0.32.0 Copyright 2009 The Go Authors. @@ -166076,7 +167566,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/encoding/internal/identifier@v0.30.0 +golang.org/x/text/encoding/internal/identifier@v0.32.0 Copyright 2009 The Go Authors. @@ -166132,7 +167622,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/encoding/unicode@v0.30.0 +golang.org/x/text/encoding/unicode@v0.32.0 Copyright 2009 The Go Authors. @@ -166188,7 +167678,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/feature/plural@v0.30.0 +golang.org/x/text/feature/plural@v0.32.0 Copyright 2009 The Go Authors. @@ -166244,7 +167734,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal@v0.30.0 +golang.org/x/text/internal@v0.32.0 Copyright 2009 The Go Authors. @@ -166300,7 +167790,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/catmsg@v0.30.0 +golang.org/x/text/internal/catmsg@v0.32.0 Copyright 2009 The Go Authors. @@ -166356,7 +167846,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/format@v0.30.0 +golang.org/x/text/internal/format@v0.32.0 Copyright 2009 The Go Authors. @@ -166412,7 +167902,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/language@v0.30.0 +golang.org/x/text/internal/language@v0.32.0 Copyright 2009 The Go Authors. @@ -166468,7 +167958,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/language/compact@v0.30.0 +golang.org/x/text/internal/language/compact@v0.32.0 Copyright 2009 The Go Authors. @@ -166524,7 +168014,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/number@v0.30.0 +golang.org/x/text/internal/number@v0.32.0 Copyright 2009 The Go Authors. @@ -166580,7 +168070,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/stringset@v0.30.0 +golang.org/x/text/internal/stringset@v0.32.0 Copyright 2009 The Go Authors. @@ -166636,7 +168126,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/tag@v0.30.0 +golang.org/x/text/internal/tag@v0.32.0 Copyright 2009 The Go Authors. @@ -166692,7 +168182,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/internal/utf8internal@v0.30.0 +golang.org/x/text/internal/utf8internal@v0.32.0 Copyright 2009 The Go Authors. @@ -166748,7 +168238,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/language@v0.30.0 +golang.org/x/text/language@v0.32.0 Copyright 2009 The Go Authors. @@ -166804,7 +168294,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/message@v0.30.0 +golang.org/x/text/message@v0.32.0 Copyright 2009 The Go Authors. @@ -166860,7 +168350,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/message/catalog@v0.30.0 +golang.org/x/text/message/catalog@v0.32.0 Copyright 2009 The Go Authors. @@ -166916,7 +168406,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/runes@v0.30.0 +golang.org/x/text/runes@v0.32.0 Copyright 2009 The Go Authors. @@ -166972,7 +168462,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -golang.org/x/text/width@v0.30.0 +golang.org/x/text/width@v0.32.0 Copyright 2009 The Go Authors. @@ -167084,7 +168574,7 @@ rights granted to you under this License for this implementation of Go shall terminate as of the date such litigation is filed. ***** -google.golang.org/genproto/googleapis/api/httpbody@v0.0.0-20250804133106-a7a43d27e69b +google.golang.org/genproto/googleapis/api/httpbody@v0.0.0-20251022142026-3a174f9686a8 Apache License Version 2.0, January 2004 @@ -167289,7 +168779,7 @@ Apache License limitations under the License. ***** -google.golang.org/genproto/googleapis/rpc/errdetails@v0.0.0-20250804133106-a7a43d27e69b +google.golang.org/genproto/googleapis/rpc/errdetails@v0.0.0-20251022142026-3a174f9686a8 Apache License Version 2.0, January 2004 @@ -167494,7 +168984,7 @@ Apache License limitations under the License. ***** -google.golang.org/genproto/googleapis/rpc/status@v0.0.0-20250804133106-a7a43d27e69b +google.golang.org/genproto/googleapis/rpc/status@v0.0.0-20251022142026-3a174f9686a8 Apache License Version 2.0, January 2004 @@ -167699,7 +169189,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc@v1.76.0 +google.golang.org/grpc@v1.77.0 Apache License Version 2.0, January 2004 @@ -167924,7 +169414,7 @@ See the License for the specific language governing permissions and limitations under the License. ***** -google.golang.org/grpc/attributes@v1.76.0 +google.golang.org/grpc/attributes@v1.77.0 Apache License Version 2.0, January 2004 @@ -168129,7 +169619,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/backoff@v1.76.0 +google.golang.org/grpc/backoff@v1.77.0 Apache License Version 2.0, January 2004 @@ -168334,7 +169824,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer@v1.76.0 +google.golang.org/grpc/balancer@v1.77.0 Apache License Version 2.0, January 2004 @@ -168539,7 +170029,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/base@v1.76.0 +google.golang.org/grpc/balancer/base@v1.77.0 Apache License Version 2.0, January 2004 @@ -168744,7 +170234,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/endpointsharding@v1.76.0 +google.golang.org/grpc/balancer/endpointsharding@v1.77.0 Apache License Version 2.0, January 2004 @@ -168949,7 +170439,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/grpclb/state@v1.76.0 +google.golang.org/grpc/balancer/grpclb/state@v1.77.0 Apache License Version 2.0, January 2004 @@ -169154,7 +170644,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/pickfirst@v1.76.0 +google.golang.org/grpc/balancer/pickfirst@v1.77.0 Apache License Version 2.0, January 2004 @@ -169359,7 +170849,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/pickfirst/internal@v1.76.0 +google.golang.org/grpc/balancer/pickfirst/internal@v1.77.0 Apache License Version 2.0, January 2004 @@ -169564,7 +171054,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/pickfirst/pickfirstleaf@v1.76.0 +google.golang.org/grpc/balancer/roundrobin@v1.77.0 Apache License Version 2.0, January 2004 @@ -169769,7 +171259,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/balancer/roundrobin@v1.76.0 +google.golang.org/grpc/binarylog/grpc_binarylog_v1@v1.77.0 Apache License Version 2.0, January 2004 @@ -169974,7 +171464,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/binarylog/grpc_binarylog_v1@v1.76.0 +google.golang.org/grpc/channelz@v1.77.0 Apache License Version 2.0, January 2004 @@ -170179,7 +171669,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/channelz@v1.76.0 +google.golang.org/grpc/codes@v1.77.0 Apache License Version 2.0, January 2004 @@ -170384,7 +171874,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/codes@v1.76.0 +google.golang.org/grpc/connectivity@v1.77.0 Apache License Version 2.0, January 2004 @@ -170589,7 +172079,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/connectivity@v1.76.0 +google.golang.org/grpc/credentials@v1.77.0 Apache License Version 2.0, January 2004 @@ -170794,7 +172284,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/credentials@v1.76.0 +google.golang.org/grpc/credentials/insecure@v1.77.0 Apache License Version 2.0, January 2004 @@ -170999,7 +172489,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/credentials/insecure@v1.76.0 +google.golang.org/grpc/encoding@v1.77.0 Apache License Version 2.0, January 2004 @@ -171204,7 +172694,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/encoding@v1.76.0 +google.golang.org/grpc/encoding/gzip@v1.77.0 Apache License Version 2.0, January 2004 @@ -171409,7 +172899,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/encoding/gzip@v1.76.0 +google.golang.org/grpc/encoding/internal@v1.77.0 Apache License Version 2.0, January 2004 @@ -171614,7 +173104,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/encoding/proto@v1.76.0 +google.golang.org/grpc/encoding/proto@v1.77.0 Apache License Version 2.0, January 2004 @@ -171819,7 +173309,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/experimental/stats@v1.76.0 +google.golang.org/grpc/experimental/stats@v1.77.0 Apache License Version 2.0, January 2004 @@ -172024,7 +173514,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/grpclog@v1.76.0 +google.golang.org/grpc/grpclog@v1.77.0 Apache License Version 2.0, January 2004 @@ -172229,7 +173719,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/grpclog/internal@v1.76.0 +google.golang.org/grpc/grpclog/internal@v1.77.0 Apache License Version 2.0, January 2004 @@ -172434,7 +173924,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/health@v1.76.0 +google.golang.org/grpc/health@v1.77.0 Apache License Version 2.0, January 2004 @@ -172639,7 +174129,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/health/grpc_health_v1@v1.76.0 +google.golang.org/grpc/health/grpc_health_v1@v1.77.0 Apache License Version 2.0, January 2004 @@ -172844,7 +174334,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal@v1.76.0 +google.golang.org/grpc/internal@v1.77.0 Apache License Version 2.0, January 2004 @@ -173049,7 +174539,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/backoff@v1.76.0 +google.golang.org/grpc/internal/backoff@v1.77.0 Apache License Version 2.0, January 2004 @@ -173254,7 +174744,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/balancer/gracefulswitch@v1.76.0 +google.golang.org/grpc/internal/balancer/gracefulswitch@v1.77.0 Apache License Version 2.0, January 2004 @@ -173459,7 +174949,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/balancerload@v1.76.0 +google.golang.org/grpc/internal/balancerload@v1.77.0 Apache License Version 2.0, January 2004 @@ -173664,7 +175154,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/binarylog@v1.76.0 +google.golang.org/grpc/internal/binarylog@v1.77.0 Apache License Version 2.0, January 2004 @@ -173869,7 +175359,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/buffer@v1.76.0 +google.golang.org/grpc/internal/buffer@v1.77.0 Apache License Version 2.0, January 2004 @@ -174074,7 +175564,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/channelz@v1.76.0 +google.golang.org/grpc/internal/channelz@v1.77.0 Apache License Version 2.0, January 2004 @@ -174279,7 +175769,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/credentials@v1.76.0 +google.golang.org/grpc/internal/credentials@v1.77.0 Apache License Version 2.0, January 2004 @@ -174484,7 +175974,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/envconfig@v1.76.0 +google.golang.org/grpc/internal/envconfig@v1.77.0 Apache License Version 2.0, January 2004 @@ -174689,7 +176179,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/grpclog@v1.76.0 +google.golang.org/grpc/internal/grpclog@v1.77.0 Apache License Version 2.0, January 2004 @@ -174894,7 +176384,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/grpcsync@v1.76.0 +google.golang.org/grpc/internal/grpcsync@v1.77.0 Apache License Version 2.0, January 2004 @@ -175099,7 +176589,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/grpcutil@v1.76.0 +google.golang.org/grpc/internal/grpcutil@v1.77.0 Apache License Version 2.0, January 2004 @@ -175304,7 +176794,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/idle@v1.76.0 +google.golang.org/grpc/internal/idle@v1.77.0 Apache License Version 2.0, January 2004 @@ -175509,7 +176999,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/metadata@v1.76.0 +google.golang.org/grpc/internal/metadata@v1.77.0 Apache License Version 2.0, January 2004 @@ -175714,7 +177204,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/pretty@v1.76.0 +google.golang.org/grpc/internal/pretty@v1.77.0 Apache License Version 2.0, January 2004 @@ -175919,7 +177409,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/proxyattributes@v1.76.0 +google.golang.org/grpc/internal/proxyattributes@v1.77.0 Apache License Version 2.0, January 2004 @@ -176124,7 +177614,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver@v1.76.0 +google.golang.org/grpc/internal/resolver@v1.77.0 Apache License Version 2.0, January 2004 @@ -176329,7 +177819,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver/delegatingresolver@v1.76.0 +google.golang.org/grpc/internal/resolver/delegatingresolver@v1.77.0 Apache License Version 2.0, January 2004 @@ -176534,7 +178024,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver/dns@v1.76.0 +google.golang.org/grpc/internal/resolver/dns@v1.77.0 Apache License Version 2.0, January 2004 @@ -176739,7 +178229,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver/dns/internal@v1.76.0 +google.golang.org/grpc/internal/resolver/dns/internal@v1.77.0 Apache License Version 2.0, January 2004 @@ -176944,7 +178434,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver/passthrough@v1.76.0 +google.golang.org/grpc/internal/resolver/passthrough@v1.77.0 Apache License Version 2.0, January 2004 @@ -177149,7 +178639,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/resolver/unix@v1.76.0 +google.golang.org/grpc/internal/resolver/unix@v1.77.0 Apache License Version 2.0, January 2004 @@ -177354,7 +178844,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/serviceconfig@v1.76.0 +google.golang.org/grpc/internal/serviceconfig@v1.77.0 Apache License Version 2.0, January 2004 @@ -177559,7 +179049,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/stats@v1.76.0 +google.golang.org/grpc/internal/stats@v1.77.0 Apache License Version 2.0, January 2004 @@ -177764,7 +179254,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/status@v1.76.0 +google.golang.org/grpc/internal/status@v1.77.0 Apache License Version 2.0, January 2004 @@ -177969,7 +179459,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/syscall@v1.76.0 +google.golang.org/grpc/internal/syscall@v1.77.0 Apache License Version 2.0, January 2004 @@ -178174,7 +179664,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/transport@v1.76.0 +google.golang.org/grpc/internal/transport@v1.77.0 Apache License Version 2.0, January 2004 @@ -178379,7 +179869,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/internal/transport/networktype@v1.76.0 +google.golang.org/grpc/internal/transport/networktype@v1.77.0 Apache License Version 2.0, January 2004 @@ -178584,7 +180074,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/keepalive@v1.76.0 +google.golang.org/grpc/keepalive@v1.77.0 Apache License Version 2.0, January 2004 @@ -178789,7 +180279,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/mem@v1.76.0 +google.golang.org/grpc/mem@v1.77.0 Apache License Version 2.0, January 2004 @@ -178994,7 +180484,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/metadata@v1.76.0 +google.golang.org/grpc/metadata@v1.77.0 Apache License Version 2.0, January 2004 @@ -179199,7 +180689,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/peer@v1.76.0 +google.golang.org/grpc/peer@v1.77.0 Apache License Version 2.0, January 2004 @@ -179404,7 +180894,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/resolver@v1.76.0 +google.golang.org/grpc/resolver@v1.77.0 Apache License Version 2.0, January 2004 @@ -179609,7 +181099,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/resolver/dns@v1.76.0 +google.golang.org/grpc/resolver/dns@v1.77.0 Apache License Version 2.0, January 2004 @@ -179814,7 +181304,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/serviceconfig@v1.76.0 +google.golang.org/grpc/serviceconfig@v1.77.0 Apache License Version 2.0, January 2004 @@ -180019,7 +181509,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/stats@v1.76.0 +google.golang.org/grpc/stats@v1.77.0 Apache License Version 2.0, January 2004 @@ -180224,7 +181714,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/status@v1.76.0 +google.golang.org/grpc/status@v1.77.0 Apache License Version 2.0, January 2004 @@ -180429,7 +181919,7 @@ Apache License limitations under the License. ***** -google.golang.org/grpc/tap@v1.76.0 +google.golang.org/grpc/tap@v1.77.0 Apache License Version 2.0, January 2004 diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands.dep.yml index d03ad18f..390ac4d3 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/commands -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/commands license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/cmderrors.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/cmderrors.dep.yml index 95a33bd8..70f6eee7 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/cmderrors.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/cmderrors.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/commands/cmderrors -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/commands/cmderrors license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/internal/instances.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/internal/instances.dep.yml index 28627683..643eda29 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/internal/instances.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/commands/internal/instances.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/commands/internal/instances -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/commands/internal/instances license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/algorithms.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/algorithms.dep.yml index 5f59c09f..29b43899 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/algorithms.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/algorithms.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/algorithms -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/algorithms license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder.dep.yml index e0c3dab7..434527aa 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/cpp.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/cpp.dep.yml index 162c4a1a..1d978022 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/cpp.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/cpp.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/cpp -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/cpp license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation.dep.yml index 61f44201..e2eb0ddb 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/compilation license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector.dep.yml index dac9821b..64cb1ac6 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/detector license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics.dep.yml index 840df693..fa259c06 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/diagnostics license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor.dep.yml index 912d751f..4758cc08 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags.dep.yml index a1818a4f..170845e2 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/preprocessor/internal/ctags license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress.dep.yml index 02e09dff..93e9ea59 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/progress license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner.dep.yml index 04e32a87..471f6a82 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/runner license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils.dep.yml index 55af3308..bc95ce02 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/internal/utils license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/logger.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/logger.dep.yml index 48ecb7e2..e803a1a4 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/logger.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/builder/logger.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/builder/logger -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/builder/logger license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores.dep.yml index 0db31731..50b7360e 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/cores -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/cores license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packageindex.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packageindex.dep.yml index a91f16eb..be81c907 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packageindex.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packageindex.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/cores/packageindex -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/cores/packageindex license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager.dep.yml index 894d5186..bf0d3193 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/cores/packagemanager license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager.dep.yml index 78f99b1f..b2bbf233 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/discovery/discoverymanager license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/globals.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/globals.dep.yml index 4e1cfe84..95ad634e 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/globals.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/globals.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/globals -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/globals license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/httpclient.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/httpclient.dep.yml index 8da55f5e..12baaf6b 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/httpclient.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/httpclient.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/httpclient -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/httpclient license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries.dep.yml index 14375aa0..d9b3a1e5 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/libraries -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/libraries license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex.dep.yml index 95493aaa..230f96d2 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesindex license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager.dep.yml index e04c32ca..75adaaf5 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesmanager license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver.dep.yml index 25986376..917395ef 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/libraries/librariesresolver license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/monitor.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/monitor.dep.yml index 360ef033..043145e3 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/monitor.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/monitor.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/monitor -version: v1.3.1 +version: v1.4.0 type: go summary: Package monitor provides a client for Pluggable Monitors. homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/monitor license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/resources.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/resources.dep.yml index 828d2968..b08c6eab 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/resources.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/resources.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/resources -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/resources license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/security.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/security.dep.yml index 8367f700..3913cdcb 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/security.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/security.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/security -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/security license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/sketch.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/sketch.dep.yml index 7833d152..59bac28d 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/sketch.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/sketch.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/sketch -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/sketch license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/utils.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/utils.dep.yml index 0238d393..ca59a59f 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/utils.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/arduino/utils.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/arduino/utils -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/arduino/utils license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/buildcache.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/buildcache.dep.yml index 77631111..b1ee0c10 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/buildcache.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/buildcache.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/buildcache -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/buildcache license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/configuration.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/configuration.dep.yml index 3d4ae3f5..7c4dbadc 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/configuration.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/configuration.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/cli/configuration -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/cli/configuration license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/feedback.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/feedback.dep.yml index 15eadda5..4cb10bca 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/feedback.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/cli/feedback.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/arduino/arduino-cli/internal/cli/feedback -version: v1.3.1 +version: v1.4.0 type: go summary: Package feedback provides an uniform API that can be used to print feedback to the users in different formats. homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/cli/feedback license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -683,7 +683,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -699,7 +699,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/go-configmap.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/go-configmap.dep.yml index a3f9d737..ede5b2a8 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/go-configmap.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/go-configmap.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/go-configmap -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/go-configmap license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/i18n.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/i18n.dep.yml index 67b6b3c8..f9f299d6 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/i18n.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/i18n.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/i18n -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/i18n license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/inventory.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/inventory.dep.yml index e0a56e7f..5700d20a 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/inventory.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/inventory.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/inventory -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/inventory license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/locales.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/locales.dep.yml index bdf8ed06..57ae8495 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/locales.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/locales.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/locales -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/locales license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/version.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/version.dep.yml index c0d72f97..a96cdf06 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/version.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/internal/version.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/internal/version -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/internal/version license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/pkg/fqbn.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/pkg/fqbn.dep.yml index f0a84110..9c16d652 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/pkg/fqbn.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/pkg/fqbn.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/arduino/arduino-cli/pkg/fqbn -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/pkg/fqbn license: other licenses: -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -682,7 +682,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -698,7 +698,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1.dep.yml b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1.dep.yml index 759ad6ca..0dbc0b5b 100644 --- a/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1.dep.yml @@ -1,8 +1,8 @@ --- name: github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1 -version: v1.3.1 +version: v1.4.0 type: go -summary: +summary: homepage: https://pkg.go.dev/github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1 license: other licenses: @@ -210,7 +210,7 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: arduino-cli@v1.3.1/LICENSE.txt +- sources: arduino-cli@v1.4.0/LICENSE.txt text: |2 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 @@ -886,7 +886,7 @@ licenses: the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . -- sources: arduino-cli@v1.3.1/license_header.tpl +- sources: arduino-cli@v1.4.0/license_header.tpl text: | This file is part of arduino-cli. @@ -902,7 +902,7 @@ licenses: modify or otherwise use the software for commercial activities involving the Arduino software without disclosing the source code of your own applications. To purchase a commercial license, send an email to license@arduino.cc. -- sources: arduino-cli@v1.3.1/README.md +- sources: arduino-cli@v1.4.0/README.md text: |- Arduino CLI is licensed under the GPL-3.0 license. diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5.dep.yml index 05df7e3f..d0daa7d1 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5.dep.yml @@ -1,6 +1,6 @@ --- name: github.com/go-git/go-git/v5 -version: v5.16.3 +version: v5.16.4 type: go summary: A highly extensible git implementation in pure Go. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5 diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/config.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/config.dep.yml index ff486698..f3f9c63e 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/config.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/config.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/config -version: v5.16.3 +version: v5.16.4 type: go summary: Package config contains the abstraction of multiple config files homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/config license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/path_util.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/path_util.dep.yml index a5c5b9ed..fb8b3cde 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/path_util.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/path_util.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/internal/path_util -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/internal/path_util license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/revision.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/revision.dep.yml index eb283f9e..071a0864 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/revision.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/revision.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/internal/revision -version: v5.16.3 +version: v5.16.4 type: go summary: 'Package revision extracts git revision from string More information about revision : https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html' homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/internal/revision license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/url.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/url.dep.yml index 920c3f7f..87cd863a 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/url.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/internal/url.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/internal/url -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/internal/url license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing.dep.yml index 3beff5c8..ff865e82 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing -version: v5.16.3 +version: v5.16.4 type: go summary: package plumbing implement the core interfaces and structs used by go-git homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/cache.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/cache.dep.yml index ee0bc906..8f6ab2a9 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/cache.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/cache.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/cache -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/cache license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/color.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/color.dep.yml index 1498f6fb..fba99b07 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/color.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/color.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/color -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/color license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/filemode.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/filemode.dep.yml index a158ff54..edf73cd4 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/filemode.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/filemode.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/filemode -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/filemode license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/config.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/config.dep.yml index 378bc7cc..71df86f7 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/config.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/config.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/config -version: v5.16.3 +version: v5.16.4 type: go summary: Package config implements encoding and decoding of git config files. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/config license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/diff.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/diff.dep.yml index d81dea42..01212fd5 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/diff.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/diff.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/diff -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/diff license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/gitignore.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/gitignore.dep.yml index 08d5e7be..3456c0f2 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/gitignore.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/gitignore.dep.yml @@ -1,6 +1,6 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/gitignore -version: v5.16.3 +version: v5.16.4 type: go summary: Package gitignore implements matching file system paths to gitignore patterns that can be automatically read from a git repository tree in the order of definition @@ -8,7 +8,7 @@ summary: Package gitignore implements matching file system paths to gitignore pa homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/gitignore license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -211,6 +211,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/idxfile.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/idxfile.dep.yml index f15dfa15..93cfb133 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/idxfile.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/idxfile.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/idxfile -version: v5.16.3 +version: v5.16.4 type: go summary: Package idxfile implements encoding and decoding of packfile idx files. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/idxfile license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/index.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/index.dep.yml index 3bf27975..20b5d507 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/index.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/index.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/index -version: v5.16.3 +version: v5.16.4 type: go summary: Package index implements encoding and decoding of index format files. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/index license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/objfile.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/objfile.dep.yml index 2e528aab..9334f149 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/objfile.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/objfile.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/objfile -version: v5.16.3 +version: v5.16.4 type: go summary: Package objfile implements encoding and decoding of object files. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/objfile license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/packfile.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/packfile.dep.yml index 651c0f9c..2c422d04 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/packfile.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/packfile.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/packfile -version: v5.16.3 +version: v5.16.4 type: go summary: Package packfile implements encoding and decoding of packfile format. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/packfile license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/pktline.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/pktline.dep.yml index d6852928..67cb19b8 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/pktline.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/format/pktline.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/plumbing/format/pktline -version: v5.16.3 +version: v5.16.4 type: go summary: Package pktline implements reading payloads form pkt-lines and encoding pkt-lines from payloads. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/pktline license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/hash.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/hash.dep.yml index a49c31bf..5ad6a2ec 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/hash.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/hash.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/plumbing/hash -version: v5.16.3 +version: v5.16.4 type: go summary: package hash provides a way for managing the underlying hash implementations used across go-git. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/hash license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/object.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/object.dep.yml index 233c24aa..87889f65 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/object.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/object.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/plumbing/object -version: v5.16.3 +version: v5.16.4 type: go summary: Package object contains implementations of all Git objects and utility functions to work with them. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/object license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp.dep.yml index d2304b4f..0df7212e 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/protocol/packp -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/protocol/packp license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/capability.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/capability.dep.yml index 87d914a1..11c71898 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/capability.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/capability.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/protocol/packp/capability -version: v5.16.3 +version: v5.16.4 type: go summary: Package capability defines the server and client capabilities. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/protocol/packp/capability license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband.dep.yml index 26845593..8f23a026 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband -version: v5.16.3 +version: v5.16.4 type: go summary: Package sideband implements a sideband mutiplex/demultiplexer homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/protocol/packp/sideband license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/revlist.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/revlist.dep.yml index cea3eb43..c27252c1 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/revlist.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/revlist.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/plumbing/revlist -version: v5.16.3 +version: v5.16.4 type: go summary: Package revlist provides support to access the ancestors of commits, in a similar way as the git-rev-list command. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/revlist license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/storer.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/storer.dep.yml index 5c919411..e78e0136 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/storer.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/storer.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/storer -version: v5.16.3 +version: v5.16.4 type: go summary: Package storer defines the interfaces to store objects, references, etc. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/storer license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport.dep.yml index 04c4c5af..012477d3 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport -version: v5.16.3 +version: v5.16.4 type: go summary: Package transport includes the implementation for different transport protocols. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/client.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/client.dep.yml index 1b75f74d..394bd486 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/client.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/client.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/client -version: v5.16.3 +version: v5.16.4 type: go summary: Package client contains helper function to deal with the different client protocols. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/client license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/file.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/file.dep.yml index 8cd44f27..7efcd447 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/file.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/file.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/file -version: v5.16.3 +version: v5.16.4 type: go summary: Package file implements the file transport protocol. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/file license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/git.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/git.dep.yml index de189a12..411eebe2 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/git.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/git.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/git -version: v5.16.3 +version: v5.16.4 type: go summary: Package git implements the git transport protocol. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/git license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/http.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/http.dep.yml index e74b2df5..77668945 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/http.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/http.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/http -version: v5.16.3 +version: v5.16.4 type: go summary: Package http implements the HTTP transport protocol. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/http license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/internal/common.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/internal/common.dep.yml index a53e0295..e51dd7c4 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/internal/common.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/internal/common.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/internal/common -version: v5.16.3 +version: v5.16.4 type: go summary: Package common implements the git pack protocol with a pluggable transport. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/internal/common license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/server.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/server.dep.yml index c5fc2a98..2e58dd23 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/server.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/server.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/server -version: v5.16.3 +version: v5.16.4 type: go summary: Package server implements the git server protocol. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/server license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/ssh.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/ssh.dep.yml index 96a9e787..d5bdb0f4 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/ssh.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/plumbing/transport/ssh.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/plumbing/transport/ssh -version: v5.16.3 +version: v5.16.4 type: go summary: Package ssh implements the SSH transport protocol. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/transport/ssh license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage.dep.yml index d4c1ec1d..8505dfd2 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/storage -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/storage license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem.dep.yml index a6c3531b..c6228aea 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/storage/filesystem -version: v5.16.3 +version: v5.16.4 type: go summary: Package filesystem is a storage backend base on filesystems homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/storage/filesystem license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem/dotgit.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem/dotgit.dep.yml index 7c917d1d..cdcab675 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem/dotgit.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/filesystem/dotgit.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/storage/filesystem/dotgit -version: v5.16.3 +version: v5.16.4 type: go summary: https://github.com/git/git/blob/master/Documentation/gitrepository-layout.txt homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/storage/filesystem/dotgit license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/memory.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/memory.dep.yml index 31a99471..4512d253 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/memory.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/storage/memory.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/storage/memory -version: v5.16.3 +version: v5.16.4 type: go summary: Package memory is a storage backend base on memory homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/storage/memory license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/binary.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/binary.dep.yml index 9eaabca3..504beb13 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/binary.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/binary.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/utils/binary -version: v5.16.3 +version: v5.16.4 type: go summary: Package binary implements syntax-sugar functions on top of the standard library binary package homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/binary license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/diff.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/diff.dep.yml index 6104e43f..ff391322 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/diff.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/diff.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/utils/diff -version: v5.16.3 +version: v5.16.4 type: go summary: Package diff implements line oriented diffs, similar to the ancient Unix diff command. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/diff license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/ioutil.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/ioutil.dep.yml index 83646c53..144b369d 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/ioutil.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/ioutil.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/ioutil -version: v5.16.3 +version: v5.16.4 type: go summary: Package ioutil implements some I/O utility functions. homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/ioutil license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie.dep.yml index ecf6f630..f9764b29 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/utils/merkletrie -version: v5.16.3 +version: v5.16.4 type: go summary: Package merkletrie provides support for n-ary trees that are at the same time Merkle trees and Radix trees (tries). homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/merkletrie license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/filesystem.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/filesystem.dep.yml index 99c47770..262b383b 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/filesystem.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/filesystem.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/merkletrie/filesystem -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/merkletrie/filesystem license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/index.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/index.dep.yml index 6609b0c2..cb307679 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/index.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/index.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/merkletrie/index -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/merkletrie/index license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/internal/frame.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/internal/frame.dep.yml index 0aaeabe0..a97b7e87 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/internal/frame.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/internal/frame.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/merkletrie/internal/frame -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/merkletrie/internal/frame license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/noder.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/noder.dep.yml index af736be7..6598042c 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/noder.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/merkletrie/noder.dep.yml @@ -1,13 +1,13 @@ --- name: github.com/go-git/go-git/v5/utils/merkletrie/noder -version: v5.16.3 +version: v5.16.4 type: go summary: Package noder provide an interface for defining nodes in a merkletrie, their hashes and their paths (a noders and its ancestors). homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/merkletrie/noder license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -210,6 +210,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/sync.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/sync.dep.yml index 8f0442f8..a41c2706 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/sync.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/sync.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/sync -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/sync license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/trace.dep.yml b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/trace.dep.yml index 58751a32..8983e23d 100644 --- a/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/trace.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/go-git/go-git/v5/utils/trace.dep.yml @@ -1,12 +1,12 @@ --- name: github.com/go-git/go-git/v5/utils/trace -version: v5.16.3 +version: v5.16.4 type: go summary: homepage: https://pkg.go.dev/github.com/go-git/go-git/v5/utils/trace license: apache-2.0 licenses: -- sources: v5@v5.16.3/LICENSE +- sources: v5@v5.16.4/LICENSE text: |2 Apache License Version 2.0, January 2004 @@ -209,6 +209,6 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -- sources: v5@v5.16.3/README.md +- sources: v5@v5.16.4/README.md text: Apache License Version 2.0, see [LICENSE](LICENSE) notices: [] diff --git a/.licenses/arduino-app-cli/go/github.com/gofrs/uuid/v5.dep.yml b/.licenses/arduino-app-cli/go/github.com/gofrs/uuid/v5.dep.yml index fe507a6e..201ff3b0 100644 --- a/.licenses/arduino-app-cli/go/github.com/gofrs/uuid/v5.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/gofrs/uuid/v5.dep.yml @@ -1,6 +1,6 @@ --- name: github.com/gofrs/uuid/v5 -version: v5.3.2 +version: v5.4.0 type: go summary: Package uuid provides implementations of the Universally Unique Identifier (UUID), as specified in RFC-9562 (formerly RFC-4122). diff --git a/.licenses/arduino-app-cli/go/github.com/spf13/cobra.dep.yml b/.licenses/arduino-app-cli/go/github.com/spf13/cobra.dep.yml index b2b64cb2..b8f0698a 100644 --- a/.licenses/arduino-app-cli/go/github.com/spf13/cobra.dep.yml +++ b/.licenses/arduino-app-cli/go/github.com/spf13/cobra.dep.yml @@ -1,6 +1,6 @@ --- name: github.com/spf13/cobra -version: v1.10.1 +version: v1.10.2 type: go summary: Package cobra is a commander providing a simple interface to create powerful modern CLI interfaces. diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk.dep.yml index c6cd156a..820c907f 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk.dep.yml @@ -1,6 +1,6 @@ --- name: go.opentelemetry.io/auto/sdk -version: v1.1.0 +version: v1.2.1 type: go summary: Package sdk provides an auto-instrumentable OpenTelemetry SDK. homepage: https://pkg.go.dev/go.opentelemetry.io/auto/sdk diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk/internal/telemetry.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk/internal/telemetry.dep.yml index 081bcef7..02e56c13 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk/internal/telemetry.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/auto/sdk/internal/telemetry.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/auto/sdk/internal/telemetry -version: v1.1.0 +version: v1.2.1 type: go summary: Package telemetry provides a lightweight representations of OpenTelemetry telemetry that is compatible with the OTLP JSON protobuf encoding. homepage: https://pkg.go.dev/go.opentelemetry.io/auto/sdk/internal/telemetry license: apache-2.0 licenses: -- sources: sdk@v1.1.0/LICENSE +- sources: sdk@v1.2.1/LICENSE text: |2 Apache License Version 2.0, January 2004 diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel.dep.yml index 081ad2b7..d50dc4b6 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel -version: v1.37.0 +version: v1.38.0 type: go summary: Package otel provides global access to the OpenTelemetry API. homepage: https://pkg.go.dev/go.opentelemetry.io/otel license: apache-2.0 licenses: - sources: LICENSE - text: |2 + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute.dep.yml index 3046a4a5..171eb949 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/attribute -version: v1.37.0 +version: v1.38.0 type: go summary: Package attribute provides key and value attributes. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/attribute license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute/internal.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute/internal.dep.yml index 3ad4c88a..32261648 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/attribute/internal.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/attribute/internal -version: v1.37.0 +version: v1.38.0 type: go summary: Package attribute provide several helper functions for some commonly used logic of processing attributes. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/attribute/internal license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/baggage.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/baggage.dep.yml index e2fd21be..e6bdb467 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/baggage.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/baggage.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/baggage -version: v1.37.0 +version: v1.38.0 type: go summary: Package baggage provides functionality for storing and retrieving baggage items in Go context. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/baggage license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/codes.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/codes.dep.yml index 5eb5cef1..acb99c23 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/codes.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/codes.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/codes -version: v1.37.0 +version: v1.38.0 type: go summary: Package codes defines the canonical error codes used by OpenTelemetry. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/codes license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/baggage.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/baggage.dep.yml index 5ad8e0cb..b6df5569 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/baggage.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/baggage.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/internal/baggage -version: v1.37.0 +version: v1.38.0 type: go summary: Package baggage provides base types and functionality to store and retrieve baggage in Go context. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/internal/baggage license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/global.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/global.dep.yml index c48b00e2..f83b1f22 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/global.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/internal/global.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/internal/global -version: v1.37.0 +version: v1.38.0 type: go summary: Package global provides the OpenTelemetry global API. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/internal/global license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric.dep.yml index ffad1995..cdf93db9 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric.dep.yml @@ -1,6 +1,6 @@ --- name: go.opentelemetry.io/otel/metric -version: v1.37.0 +version: v1.38.0 type: go summary: Package metric provides the OpenTelemetry API used to measure metrics about source code operation. @@ -8,7 +8,7 @@ homepage: https://pkg.go.dev/go.opentelemetry.io/otel/metric license: apache-2.0 licenses: - sources: LICENSE - text: |2 + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/embedded.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/embedded.dep.yml index 91fed5cb..dc2e6efe 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/embedded.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/embedded.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/metric/embedded -version: v1.37.0 +version: v1.38.0 type: go summary: Package embedded provides interfaces embedded within the [OpenTelemetry metric API]. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/metric/embedded license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/noop.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/noop.dep.yml index 78efa130..ea919323 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/noop.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/metric/noop.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/metric/noop -version: v1.37.0 +version: v1.38.0 type: go summary: Package noop provides an implementation of the OpenTelemetry metric API that produces no telemetry and minimizes used computation resources. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/metric/noop license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/propagation.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/propagation.dep.yml index 7cbf51b5..f644fab2 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/propagation.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/propagation.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/propagation -version: v1.37.0 +version: v1.38.0 type: go summary: Package propagation contains OpenTelemetry context propagators. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/propagation license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk.dep.yml index fe4c2738..2d77c60a 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk -version: v1.37.0 +version: v1.38.0 type: go summary: Package sdk provides the OpenTelemetry default SDK for Go. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk license: apache-2.0 licenses: - sources: LICENSE - text: |2 + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/instrumentation.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/instrumentation.dep.yml index f2436dab..c6344d72 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/instrumentation.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/instrumentation.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/sdk/instrumentation -version: v1.37.0 +version: v1.38.0 type: go summary: Package instrumentation provides types to represent the code libraries that provide OpenTelemetry instrumentation. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/instrumentation license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/env.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/env.dep.yml index 0125cbc1..50e32f91 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/env.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/env.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/sdk/internal/env -version: v1.37.0 +version: v1.38.0 type: go summary: Package env provides types and functionality for environment variable support in the OpenTelemetry SDK. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/internal/env license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/x.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/x.dep.yml index 86b76e38..7ac3de4a 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/x.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/internal/x.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/internal/x -version: v1.37.0 +version: v1.38.0 type: go summary: Package x contains support for OTel SDK experimental features. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/internal/x license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric.dep.yml index 6b995951..9ca1a09d 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/metric -version: v1.37.0 +version: v1.38.0 type: go summary: Package metric provides an implementation of the OpenTelemetry metrics SDK. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric license: apache-2.0 licenses: - sources: LICENSE - text: |2 + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/exemplar.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/exemplar.dep.yml index a3a787e1..560aae8c 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/exemplar.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/exemplar.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/sdk/metric/exemplar -version: v1.37.0 +version: v1.38.0 type: go summary: Package exemplar provides an implementation of the OpenTelemetry exemplar reservoir to be used in metric collection pipelines. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric/exemplar license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal.dep.yml index b18aa7e4..18210bb6 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/metric/internal -version: v1.37.0 +version: v1.38.0 type: go summary: Package internal provides internal functionality for the metric package. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric/internal license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/aggregate.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/aggregate.dep.yml index 09838513..0f970c66 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/aggregate.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/aggregate.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/sdk/metric/internal/aggregate -version: v1.37.0 +version: v1.38.0 type: go summary: Package aggregate provides aggregate types used compute aggregations and cycle the state of metric measurements made by the SDK. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric/internal/aggregate license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/x.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/x.dep.yml index d8ebde4c..61b11ada 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/x.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/internal/x.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/metric/internal/x -version: v1.37.0 +version: v1.38.0 type: go summary: Package x contains support for OTel metric SDK experimental features. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric/internal/x license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/metricdata.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/metricdata.dep.yml index e25cd454..9f34067c 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/metricdata.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/metric/metricdata.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/metric/metricdata -version: v1.37.0 +version: v1.38.0 type: go summary: Package metricdata provides types for the metric SDK data model. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric/metricdata license: apache-2.0 licenses: -- sources: metric@v1.37.0/LICENSE - text: |2 +- sources: metric@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/resource.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/resource.dep.yml index a9b93c19..17db1273 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/resource.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/resource.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/resource -version: v1.37.0 +version: v1.38.0 type: go summary: Package resource provides detecting and representing resources. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/resource license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace.dep.yml index bc219e14..7e58c900 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/trace -version: v1.37.0 +version: v1.38.0 type: go summary: Package trace contains support for OpenTelemetry distributed tracing. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/trace license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/internal/x.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/internal/x.dep.yml new file mode 100644 index 00000000..ab54e398 --- /dev/null +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/internal/x.dep.yml @@ -0,0 +1,242 @@ +--- +name: go.opentelemetry.io/otel/sdk/trace/internal/x +version: v1.38.0 +type: go +summary: Package x documents experimental features for go.opentelemetry.io/otel/sdk/trace. +homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/trace/internal/x +license: apache-2.0 +licenses: +- sources: sdk@v1.38.0/LICENSE + text: |2- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/tracetest.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/tracetest.dep.yml index 6096bf06..fd53b216 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/tracetest.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/sdk/trace/tracetest.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/sdk/trace/tracetest -version: v1.37.0 +version: v1.38.0 type: go summary: Package tracetest is a testing helper package for the SDK. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/trace/tracetest license: apache-2.0 licenses: -- sources: sdk@v1.37.0/LICENSE - text: |2 +- sources: sdk@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.17.0.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.17.0.dep.yml index e5d729e6..c460603d 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.17.0.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.17.0.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/semconv/v1.17.0 -version: v1.37.0 +version: v1.38.0 type: go summary: Package semconv implements OpenTelemetry semantic conventions. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.17.0 license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.19.0.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.19.0.dep.yml index 0e0f5f45..1c956ec7 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.19.0.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.19.0.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/semconv/v1.19.0 -version: v1.37.0 +version: v1.38.0 type: go summary: Package semconv implements OpenTelemetry semantic conventions. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.19.0 license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.20.0.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.20.0.dep.yml index e171848c..68a983d0 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.20.0.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.20.0.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/semconv/v1.20.0 -version: v1.37.0 +version: v1.38.0 type: go summary: Package semconv implements OpenTelemetry semantic conventions. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.20.0 license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.21.0.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.21.0.dep.yml index 9085629e..86b748fb 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.21.0.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.21.0.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/semconv/v1.21.0 -version: v1.37.0 +version: v1.38.0 type: go summary: Package semconv implements OpenTelemetry semantic conventions. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.21.0 license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.26.0.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.26.0.dep.yml index 420bb037..0090bce5 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.26.0.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.26.0.dep.yml @@ -1,13 +1,13 @@ --- name: go.opentelemetry.io/otel/semconv/v1.26.0 -version: v1.37.0 +version: v1.38.0 type: go summary: Package semconv implements OpenTelemetry semantic conventions. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.26.0 license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE - text: |2 +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -209,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0.dep.yml similarity index 86% rename from .licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf.dep.yml rename to .licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0.dep.yml index 78e49ea0..ec35b19e 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0.dep.yml @@ -1,15 +1,13 @@ --- -name: google.golang.org/grpc/balancer/pickfirst/pickfirstleaf -version: v1.76.0 +name: go.opentelemetry.io/otel/semconv/v1.37.0 +version: v1.38.0 type: go -summary: Package pickfirstleaf contains the pick_first load balancing policy which - will be the universal leaf policy after dualstack changes are implemented. -homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/pickfirst/pickfirstleaf +summary: Package semconv implements OpenTelemetry semantic conventions. +homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.37.0 license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE - text: |2 - +- sources: otel@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -211,4 +209,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0/otelconv.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0/otelconv.dep.yml new file mode 100644 index 00000000..c7486031 --- /dev/null +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.37.0/otelconv.dep.yml @@ -0,0 +1,243 @@ +--- +name: go.opentelemetry.io/otel/semconv/v1.37.0/otelconv +version: v1.38.0 +type: go +summary: Package httpconv provides types and functionality for OpenTelemetry semantic + conventions in the "otel" namespace. +homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.37.0/otelconv +license: apache-2.0 +licenses: +- sources: otel@v1.38.0/LICENSE + text: |2- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace.dep.yml index 3b060671..2714aa43 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace.dep.yml @@ -1,6 +1,6 @@ --- name: go.opentelemetry.io/otel/trace -version: v1.37.0 +version: v1.38.0 type: go summary: Package trace provides an implementation of the tracing part of the OpenTelemetry API. @@ -8,7 +8,7 @@ homepage: https://pkg.go.dev/go.opentelemetry.io/otel/trace license: apache-2.0 licenses: - sources: LICENSE - text: |2 + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/embedded.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/embedded.dep.yml index 0aae47fa..8088ef4d 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/embedded.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/embedded.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/trace/embedded -version: v1.37.0 +version: v1.38.0 type: go summary: Package embedded provides interfaces embedded within the [OpenTelemetry trace API]. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/trace/embedded license: apache-2.0 licenses: -- sources: trace@v1.37.0/LICENSE - text: |2 +- sources: trace@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/internal/telemetry.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/internal/telemetry.dep.yml index 329a93f2..f3cd6be2 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/internal/telemetry.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/internal/telemetry.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/trace/internal/telemetry -version: v1.37.0 +version: v1.38.0 type: go summary: Package telemetry provides a lightweight representations of OpenTelemetry telemetry that is compatible with the OTLP JSON protobuf encoding. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/trace/internal/telemetry license: apache-2.0 licenses: -- sources: trace@v1.37.0/LICENSE - text: |2 +- sources: trace@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/noop.dep.yml b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/noop.dep.yml index 3fb91997..e4e8c06b 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/noop.dep.yml +++ b/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/trace/noop.dep.yml @@ -1,14 +1,14 @@ --- name: go.opentelemetry.io/otel/trace/noop -version: v1.37.0 +version: v1.38.0 type: go summary: Package noop provides an implementation of the OpenTelemetry trace API that produces no telemetry and minimizes used computation resources. homepage: https://pkg.go.dev/go.opentelemetry.io/otel/trace/noop license: apache-2.0 licenses: -- sources: trace@v1.37.0/LICENSE - text: |2 +- sources: trace@v1.38.0/LICENSE + text: |2- Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -210,4 +210,34 @@ licenses: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + + -------------------------------------------------------------------------------- + + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. notices: [] diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/argon2.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/argon2.dep.yml index 072edfe9..e2290d4e 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/argon2.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/argon2.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/argon2 -version: v0.42.0 +version: v0.45.0 type: go summary: Package argon2 implements the key derivation function Argon2. homepage: https://pkg.go.dev/golang.org/x/crypto/argon2 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/blake2b.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/blake2b.dep.yml index 456d8add..ae27ee94 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/blake2b.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/blake2b.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/crypto/blake2b -version: v0.42.0 +version: v0.45.0 type: go summary: Package blake2b implements the BLAKE2b hash algorithm defined by RFC 7693 and the extendable output function (XOF) BLAKE2Xb. homepage: https://pkg.go.dev/golang.org/x/crypto/blake2b license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/blowfish.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/blowfish.dep.yml index 3b016a01..c7a7e5bd 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/blowfish.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/blowfish.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/blowfish -version: v0.42.0 +version: v0.45.0 type: go summary: Package blowfish implements Bruce Schneier's Blowfish encryption algorithm. homepage: https://pkg.go.dev/golang.org/x/crypto/blowfish license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/cast5.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/cast5.dep.yml index 662a113e..97344109 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/cast5.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/cast5.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/cast5 -version: v0.42.0 +version: v0.45.0 type: go summary: Package cast5 implements CAST5, as defined in RFC 2144. homepage: https://pkg.go.dev/golang.org/x/crypto/cast5 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/curve25519.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/curve25519.dep.yml index 888f7122..2f76b9ae 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/curve25519.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/curve25519.dep.yml @@ -1,13 +1,14 @@ --- name: golang.org/x/crypto/curve25519 -version: v0.42.0 +version: v0.45.0 type: go summary: Package curve25519 provides an implementation of the X25519 function, which - performs scalar multiplication on the elliptic curve known as Curve25519. + performs scalar multiplication on the elliptic curve known as Curve25519 according + to [RFC 7748]. homepage: https://pkg.go.dev/golang.org/x/crypto/curve25519 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +37,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ed25519.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ed25519.dep.yml index d1d50197..219413ac 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ed25519.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ed25519.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/ed25519 -version: v0.42.0 +version: v0.45.0 type: go summary: Package ed25519 implements the Ed25519 signature algorithm. homepage: https://pkg.go.dev/golang.org/x/crypto/ed25519 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/hkdf.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/hkdf.dep.yml index f6fbcdc3..191bdec9 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/hkdf.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/hkdf.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/crypto/hkdf -version: v0.42.0 +version: v0.45.0 type: go summary: Package hkdf implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869. homepage: https://pkg.go.dev/golang.org/x/crypto/hkdf license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/nacl/sign.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/nacl/sign.dep.yml index 9c873308..20dbd0ec 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/nacl/sign.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/nacl/sign.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/nacl/sign -version: v0.42.0 +version: v0.45.0 type: go summary: Package sign signs small messages using public-key cryptography. homepage: https://pkg.go.dev/golang.org/x/crypto/nacl/sign license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/pbkdf2.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/pbkdf2.dep.yml index b6a511d2..110224d6 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/pbkdf2.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/pbkdf2.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/crypto/pbkdf2 -version: v0.42.0 +version: v0.45.0 type: go summary: 'Package pbkdf2 implements the key derivation function PBKDF2 as defined in RFC 2898 / PKCS #5 v2.0.' homepage: https://pkg.go.dev/golang.org/x/crypto/pbkdf2 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/sha3.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/sha3.dep.yml index 8ce8ad26..e847cec0 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/sha3.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/sha3.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/crypto/sha3 -version: v0.42.0 +version: v0.45.0 type: go -summary: Package sha3 implements the SHA-3 fixed-output-length hash functions and - the SHAKE variable-output-length hash functions defined by FIPS-202. +summary: Package sha3 implements the SHA-3 hash algorithms and the SHAKE extendable + output functions defined in FIPS 202. homepage: https://pkg.go.dev/golang.org/x/crypto/sha3 license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh.dep.yml index cc9927f1..5dcf3cee 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/ssh -version: v0.42.0 +version: v0.45.0 type: go summary: Package ssh implements an SSH client and server. homepage: https://pkg.go.dev/golang.org/x/crypto/ssh license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/agent.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/agent.dep.yml index 2ddbcd6c..649dc834 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/agent.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/agent.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/crypto/ssh/agent -version: v0.42.0 +version: v0.45.0 type: go summary: Package agent implements the ssh-agent protocol, and provides both a client and a server. homepage: https://pkg.go.dev/golang.org/x/crypto/ssh/agent license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/internal/bcrypt_pbkdf.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/internal/bcrypt_pbkdf.dep.yml index 4dfb7bfb..364cd537 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/internal/bcrypt_pbkdf.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/internal/bcrypt_pbkdf.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/crypto/ssh/internal/bcrypt_pbkdf -version: v0.42.0 +version: v0.45.0 type: go summary: Package bcrypt_pbkdf implements bcrypt_pbkdf(3) from OpenBSD. homepage: https://pkg.go.dev/golang.org/x/crypto/ssh/internal/bcrypt_pbkdf license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/knownhosts.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/knownhosts.dep.yml index fba88c87..4b5b1d16 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/knownhosts.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/crypto/ssh/knownhosts.dep.yml @@ -1,6 +1,6 @@ --- name: golang.org/x/crypto/ssh/knownhosts -version: v0.42.0 +version: v0.45.0 type: go summary: Package knownhosts implements a parser for the OpenSSH known_hosts host key database, and provides utility functions for writing OpenSSH compliant known_hosts @@ -8,7 +8,7 @@ summary: Package knownhosts implements a parser for the OpenSSH known_hosts host homepage: https://pkg.go.dev/golang.org/x/crypto/ssh/knownhosts license: bsd-3-clause licenses: -- sources: crypto@v0.42.0/LICENSE +- sources: crypto@v0.45.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -37,7 +37,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: crypto@v0.42.0/PATENTS +- sources: crypto@v0.45.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/context.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/context.dep.yml index 25bf6c74..1f77f8d7 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/context.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/context.dep.yml @@ -1,13 +1,12 @@ --- name: golang.org/x/net/context -version: v0.44.0 +version: v0.47.0 type: go -summary: Package context defines the Context type, which carries deadlines, cancellation - signals, and other request-scoped values across API boundaries and between processes. +summary: Package context has been superseded by the standard library context package. homepage: https://pkg.go.dev/golang.org/x/net/context license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/html.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/html.dep.yml index beb04288..c4c39652 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/html.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/html.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/html -version: v0.44.0 +version: v0.47.0 type: go summary: Package html implements an HTML5-compliant tokenizer and parser. homepage: https://pkg.go.dev/golang.org/x/net/html license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/html/atom.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/html/atom.dep.yml index aebfdd28..8f59dd85 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/html/atom.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/html/atom.dep.yml @@ -1,6 +1,6 @@ --- name: golang.org/x/net/html/atom -version: v0.44.0 +version: v0.47.0 type: go summary: 'Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and @@ -8,7 +8,7 @@ summary: 'Package atom provides integer codes (also known as atoms) for a fixed homepage: https://pkg.go.dev/golang.org/x/net/html/atom license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -37,7 +37,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/http2.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/http2.dep.yml index e7ad5a4a..3629b5ab 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/http2.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/http2.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/http2 -version: v0.44.0 +version: v0.47.0 type: go summary: Package http2 implements the HTTP/2 protocol. homepage: https://pkg.go.dev/golang.org/x/net/http2 license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/httpcommon.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/httpcommon.dep.yml index 5115a1d5..d9411b82 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/httpcommon.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/httpcommon.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/internal/httpcommon -version: v0.44.0 +version: v0.47.0 type: go summary: homepage: https://pkg.go.dev/golang.org/x/net/internal/httpcommon license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/socks.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/socks.dep.yml index 2e883718..a60f4b3b 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/socks.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/socks.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/internal/socks -version: v0.44.0 +version: v0.47.0 type: go summary: Package socks provides a SOCKS version 5 client implementation. homepage: https://pkg.go.dev/golang.org/x/net/internal/socks license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/timeseries.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/timeseries.dep.yml index 55b5b619..2b268629 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/internal/timeseries.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/internal/timeseries.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/internal/timeseries -version: v0.44.0 +version: v0.47.0 type: go summary: Package timeseries implements a time series structure for stats collection. homepage: https://pkg.go.dev/golang.org/x/net/internal/timeseries license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/proxy.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/proxy.dep.yml index 553d099b..e56c0467 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/proxy.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/proxy.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/net/proxy -version: v0.44.0 +version: v0.47.0 type: go summary: Package proxy provides support for a variety of protocols to proxy network data. homepage: https://pkg.go.dev/golang.org/x/net/proxy license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/publicsuffix.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/publicsuffix.dep.yml index e58a6ea8..6f9ca380 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/publicsuffix.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/publicsuffix.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/publicsuffix -version: v0.44.0 +version: v0.47.0 type: go summary: Package publicsuffix provides a public suffix list based on data from https://publicsuffix.org/ homepage: https://pkg.go.dev/golang.org/x/net/publicsuffix license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/trace.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/trace.dep.yml index bb84b6e1..94084978 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/trace.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/trace.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/net/trace -version: v0.44.0 +version: v0.47.0 type: go summary: Package trace implements tracing of requests and long-lived objects. homepage: https://pkg.go.dev/golang.org/x/net/trace license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/net/websocket.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/net/websocket.dep.yml index 210970fc..9b3c03b9 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/net/websocket.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/net/websocket.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/net/websocket -version: v0.44.0 +version: v0.47.0 type: go summary: Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455. homepage: https://pkg.go.dev/golang.org/x/net/websocket license: bsd-3-clause licenses: -- sources: net@v0.44.0/LICENSE +- sources: net@v0.47.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: net@v0.44.0/PATENTS +- sources: net@v0.47.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/oauth2.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/oauth2.dep.yml index ca6937ad..c8474f43 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/oauth2.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/oauth2.dep.yml @@ -1,6 +1,6 @@ --- name: golang.org/x/oauth2 -version: v0.30.0 +version: v0.32.0 type: go summary: Package oauth2 provides support for making OAuth2 authorized and authenticated HTTP requests, as specified in RFC 6749. diff --git a/.licenses/arduino-app-cli/go/golang.org/x/oauth2/internal.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/oauth2/internal.dep.yml index b872cc6d..ff93878c 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/oauth2/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/oauth2/internal.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/oauth2/internal -version: v0.30.0 +version: v0.32.0 type: go summary: Package internal contains support packages for golang.org/x/oauth2. homepage: https://pkg.go.dev/golang.org/x/oauth2/internal license: bsd-3-clause licenses: -- sources: oauth2@v0.30.0/LICENSE +- sources: oauth2@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. diff --git a/.licenses/arduino-app-cli/go/golang.org/x/sync/errgroup.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/sync/errgroup.dep.yml index 4662ea06..333ebb9c 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/sync/errgroup.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/sync/errgroup.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/sync/errgroup -version: v0.17.0 +version: v0.19.0 type: go summary: Package errgroup provides synchronization, error propagation, and Context - cancelation for groups of goroutines working on subtasks of a common task. + cancellation for groups of goroutines working on subtasks of a common task. homepage: https://pkg.go.dev/golang.org/x/sync/errgroup license: bsd-3-clause licenses: -- sources: sync@v0.17.0/LICENSE +- sources: sync@v0.19.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: sync@v0.17.0/PATENTS +- sources: sync@v0.19.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/sync/semaphore.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/sync/semaphore.dep.yml index 71acffef..d7b5b6b4 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/sync/semaphore.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/sync/semaphore.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/sync/semaphore -version: v0.17.0 +version: v0.19.0 type: go summary: Package semaphore provides a weighted semaphore implementation. homepage: https://pkg.go.dev/golang.org/x/sync/semaphore license: bsd-3-clause licenses: -- sources: sync@v0.17.0/LICENSE +- sources: sync@v0.19.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: sync@v0.17.0/PATENTS +- sources: sync@v0.19.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/sys/execabs.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/sys/execabs.dep.yml index a51da193..21131d7f 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/sys/execabs.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/sys/execabs.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/sys/execabs -version: v0.38.0 +version: v0.39.0 type: go summary: Package execabs is a drop-in replacement for os/exec that requires PATH lookups to find absolute paths. homepage: https://pkg.go.dev/golang.org/x/sys/execabs license: bsd-3-clause licenses: -- sources: sys@v0.38.0/LICENSE +- sources: sys@v0.39.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: sys@v0.38.0/PATENTS +- sources: sys@v0.39.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/sys/unix.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/sys/unix.dep.yml index 0260ecb7..09b6d170 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/sys/unix.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/sys/unix.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/sys/unix -version: v0.38.0 +version: v0.39.0 type: go summary: Package unix contains an interface to the low-level operating system primitives. homepage: https://pkg.go.dev/golang.org/x/sys/unix license: bsd-3-clause licenses: -- sources: sys@v0.38.0/LICENSE +- sources: sys@v0.39.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: sys@v0.38.0/PATENTS +- sources: sys@v0.39.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/term.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/term.dep.yml index 5d2bbfa0..f8ec17ce 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/term.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/term.dep.yml @@ -1,6 +1,6 @@ --- name: golang.org/x/term -version: v0.36.0 +version: v0.38.0 type: go summary: Package term provides support functions for dealing with terminals, as commonly found on UNIX systems. diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/cases.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/cases.dep.yml index 348e6716..7c36fcf9 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/cases.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/cases.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/cases -version: v0.30.0 +version: v0.32.0 type: go summary: Package cases provides general and language-specific case mappers. homepage: https://pkg.go.dev/golang.org/x/text/cases license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding.dep.yml index 8249f3e5..cbef3e2e 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/text/encoding -version: v0.30.0 +version: v0.32.0 type: go summary: Package encoding defines an interface for character encodings, such as Shift JIS and Windows 1252, that can convert to and from UTF-8. homepage: https://pkg.go.dev/golang.org/x/text/encoding license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal.dep.yml index 0d4caa37..c55b30dd 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/encoding/internal -version: v0.30.0 +version: v0.32.0 type: go summary: Package internal contains code that is shared among encoding implementations. homepage: https://pkg.go.dev/golang.org/x/text/encoding/internal license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal/identifier.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal/identifier.dep.yml index 8ea6ea42..a4667786 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal/identifier.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/internal/identifier.dep.yml @@ -1,6 +1,6 @@ --- name: golang.org/x/text/encoding/internal/identifier -version: v0.30.0 +version: v0.32.0 type: go summary: Package identifier defines the contract between implementations of Encoding and Index by defining identifiers that uniquely identify standardized coded character @@ -10,7 +10,7 @@ summary: Package identifier defines the contract between implementations of Enco homepage: https://pkg.go.dev/golang.org/x/text/encoding/internal/identifier license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -39,7 +39,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/unicode.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/unicode.dep.yml index b69256e5..9b9f943d 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/unicode.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/encoding/unicode.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/encoding/unicode -version: v0.30.0 +version: v0.32.0 type: go summary: Package unicode provides Unicode encodings such as UTF-16. homepage: https://pkg.go.dev/golang.org/x/text/encoding/unicode license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/feature/plural.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/feature/plural.dep.yml index 65807e81..927b67c0 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/feature/plural.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/feature/plural.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/feature/plural -version: v0.30.0 +version: v0.32.0 type: go summary: Package plural provides utilities for handling linguistic plurals in text. homepage: https://pkg.go.dev/golang.org/x/text/feature/plural license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal.dep.yml index 63bb2b30..1eb851e0 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/text/internal -version: v0.30.0 +version: v0.32.0 type: go summary: Package internal contains non-exported functionality that are used by packages in the text repository. homepage: https://pkg.go.dev/golang.org/x/text/internal license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/catmsg.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/catmsg.dep.yml index 462e9f86..bcaed35c 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/catmsg.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/catmsg.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/catmsg -version: v0.30.0 +version: v0.32.0 type: go summary: Package catmsg contains support types for package x/text/message/catalog. homepage: https://pkg.go.dev/golang.org/x/text/internal/catmsg license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/format.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/format.dep.yml index 31c28899..d29c2d5a 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/format.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/format.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/text/internal/format -version: v0.30.0 +version: v0.32.0 type: go summary: Package format contains types for defining language-specific formatting of values. homepage: https://pkg.go.dev/golang.org/x/text/internal/format license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language.dep.yml index f6c8fa49..cfe8c8aa 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/language -version: v0.30.0 +version: v0.32.0 type: go summary: homepage: https://pkg.go.dev/golang.org/x/text/internal/language license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language/compact.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language/compact.dep.yml index 4cc1eb00..b1ddc825 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language/compact.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/language/compact.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/language/compact -version: v0.30.0 +version: v0.32.0 type: go summary: Package compact defines a compact representation of language tags. homepage: https://pkg.go.dev/golang.org/x/text/internal/language/compact license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/number.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/number.dep.yml index 24338c30..d0f074bf 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/number.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/number.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/number -version: v0.30.0 +version: v0.32.0 type: go summary: Package number contains tools and data for formatting numbers. homepage: https://pkg.go.dev/golang.org/x/text/internal/number license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/stringset.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/stringset.dep.yml index cf403f81..2ee18351 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/stringset.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/stringset.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/stringset -version: v0.30.0 +version: v0.32.0 type: go summary: Package stringset provides a way to represent a collection of strings compactly. homepage: https://pkg.go.dev/golang.org/x/text/internal/stringset license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/tag.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/tag.dep.yml index 7b4007bb..a41e5f73 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/tag.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/tag.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/tag -version: v0.30.0 +version: v0.32.0 type: go summary: Package tag contains functionality handling tags and related data. homepage: https://pkg.go.dev/golang.org/x/text/internal/tag license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/utf8internal.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/utf8internal.dep.yml index 0762300d..1f4b2aa7 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/internal/utf8internal.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/internal/utf8internal.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/internal/utf8internal -version: v0.30.0 +version: v0.32.0 type: go summary: Package utf8internal contains low-level utf8-related constants, tables, etc. homepage: https://pkg.go.dev/golang.org/x/text/internal/utf8internal license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/language.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/language.dep.yml index 016f175d..3cbe1997 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/language.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/language.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/language -version: v0.30.0 +version: v0.32.0 type: go summary: Package language implements BCP 47 language tags and related functionality. homepage: https://pkg.go.dev/golang.org/x/text/language license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/message.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/message.dep.yml index 09bb5dfa..296a1483 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/message.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/message.dep.yml @@ -1,13 +1,13 @@ --- name: golang.org/x/text/message -version: v0.30.0 +version: v0.32.0 type: go summary: Package message implements formatted I/O for localized strings with functions analogous to the fmt's print functions. homepage: https://pkg.go.dev/golang.org/x/text/message license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -36,7 +36,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/message/catalog.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/message/catalog.dep.yml index 8fc616ba..d8207f97 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/message/catalog.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/message/catalog.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/message/catalog -version: v0.30.0 +version: v0.32.0 type: go summary: Package catalog defines collections of translated format strings. homepage: https://pkg.go.dev/golang.org/x/text/message/catalog license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/runes.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/runes.dep.yml index 91e5c15c..1e23e69b 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/runes.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/runes.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/runes -version: v0.30.0 +version: v0.32.0 type: go summary: Package runes provide transforms for UTF-8 encoded text. homepage: https://pkg.go.dev/golang.org/x/text/runes license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/golang.org/x/text/width.dep.yml b/.licenses/arduino-app-cli/go/golang.org/x/text/width.dep.yml index 4e0235c8..751f90ed 100644 --- a/.licenses/arduino-app-cli/go/golang.org/x/text/width.dep.yml +++ b/.licenses/arduino-app-cli/go/golang.org/x/text/width.dep.yml @@ -1,12 +1,12 @@ --- name: golang.org/x/text/width -version: v0.30.0 +version: v0.32.0 type: go summary: Package width provides functionality for handling different widths in text. homepage: https://pkg.go.dev/golang.org/x/text/width license: bsd-3-clause licenses: -- sources: text@v0.30.0/LICENSE +- sources: text@v0.32.0/LICENSE text: | Copyright 2009 The Go Authors. @@ -35,7 +35,7 @@ licenses: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -- sources: text@v0.30.0/PATENTS +- sources: text@v0.32.0/PATENTS text: | Additional IP Rights Grant (Patents) diff --git a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/api/httpbody.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/api/httpbody.dep.yml index d8b07c61..d8de6209 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/api/httpbody.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/api/httpbody.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/genproto/googleapis/api/httpbody -version: v0.0.0-20250804133106-a7a43d27e69b +version: v0.0.0-20251022142026-3a174f9686a8 type: go summary: homepage: https://pkg.go.dev/google.golang.org/genproto/googleapis/api/httpbody license: apache-2.0 licenses: -- sources: api@v0.0.0-20250804133106-a7a43d27e69b/LICENSE +- sources: api@v0.0.0-20251022142026-3a174f9686a8/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/errdetails.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/errdetails.dep.yml index fd656382..c6857004 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/errdetails.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/errdetails.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/genproto/googleapis/rpc/errdetails -version: v0.0.0-20250804133106-a7a43d27e69b +version: v0.0.0-20251022142026-3a174f9686a8 type: go summary: homepage: https://pkg.go.dev/google.golang.org/genproto/googleapis/rpc/errdetails license: apache-2.0 licenses: -- sources: rpc@v0.0.0-20250804133106-a7a43d27e69b/LICENSE +- sources: rpc@v0.0.0-20251022142026-3a174f9686a8/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/status.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/status.dep.yml index 0fc11ffd..2a0c2211 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/status.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/genproto/googleapis/rpc/status.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/genproto/googleapis/rpc/status -version: v0.0.0-20250804133106-a7a43d27e69b +version: v0.0.0-20251022142026-3a174f9686a8 type: go summary: homepage: https://pkg.go.dev/google.golang.org/genproto/googleapis/rpc/status license: apache-2.0 licenses: -- sources: rpc@v0.0.0-20250804133106-a7a43d27e69b/LICENSE +- sources: rpc@v0.0.0-20251022142026-3a174f9686a8/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc.dep.yml index 11cb2171..165ed1d9 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc.dep.yml @@ -1,6 +1,6 @@ --- name: google.golang.org/grpc -version: v1.76.0 +version: v1.77.0 type: go summary: Package grpc implements an RPC system called gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/attributes.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/attributes.dep.yml index 50d22caf..e007abff 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/attributes.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/attributes.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/attributes -version: v1.76.0 +version: v1.77.0 type: go summary: Package attributes defines a generic key/value store used in various gRPC components. homepage: https://pkg.go.dev/google.golang.org/grpc/attributes license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/backoff.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/backoff.dep.yml index 354952ac..5fecd954 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/backoff.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/backoff.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/backoff -version: v1.76.0 +version: v1.77.0 type: go summary: Package backoff provides configuration options for backoff. homepage: https://pkg.go.dev/google.golang.org/grpc/backoff license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer.dep.yml index 7605b9b0..a4cd71e0 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/balancer -version: v1.76.0 +version: v1.77.0 type: go summary: Package balancer defines APIs for load balancing in gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/base.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/base.dep.yml index 0fd5c62c..92530fcf 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/base.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/base.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/balancer/base -version: v1.76.0 +version: v1.77.0 type: go summary: Package base defines a balancer base that can be used to build balancers with different picking algorithms. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/base license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/endpointsharding.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/endpointsharding.dep.yml index d720933d..960b96bc 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/endpointsharding.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/endpointsharding.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/balancer/endpointsharding -version: v1.76.0 +version: v1.77.0 type: go summary: Package endpointsharding implements a load balancing policy that manages homogeneous child policies each owning a single endpoint. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/endpointsharding license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/grpclb/state.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/grpclb/state.dep.yml index ec37188e..9bf0ccc5 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/grpclb/state.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/grpclb/state.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/balancer/grpclb/state -version: v1.76.0 +version: v1.77.0 type: go summary: Package state declares grpclb types to be set by resolvers wishing to pass information to grpclb via resolver.State Attributes. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/grpclb/state license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst.dep.yml index f946e49a..8624ea0b 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst.dep.yml @@ -1,12 +1,13 @@ --- name: google.golang.org/grpc/balancer/pickfirst -version: v1.76.0 +version: v1.77.0 type: go -summary: Package pickfirst contains the pick_first load balancing policy. +summary: Package pickfirst contains the pick_first load balancing policy which is + the universal leaf policy. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/pickfirst license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/internal.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/internal.dep.yml index dcb2aa97..0b036bf6 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/pickfirst/internal.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/balancer/pickfirst/internal -version: v1.76.0 +version: v1.77.0 type: go summary: Package internal contains code internal to the pickfirst package. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/pickfirst/internal license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/roundrobin.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/roundrobin.dep.yml index cc3e3cbf..46b0c049 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/roundrobin.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/balancer/roundrobin.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/balancer/roundrobin -version: v1.76.0 +version: v1.77.0 type: go summary: Package roundrobin defines a roundrobin balancer. homepage: https://pkg.go.dev/google.golang.org/grpc/balancer/roundrobin license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/binarylog/grpc_binarylog_v1.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/binarylog/grpc_binarylog_v1.dep.yml index ce9d0ba2..48168942 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/binarylog/grpc_binarylog_v1.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/binarylog/grpc_binarylog_v1.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/binarylog/grpc_binarylog_v1 -version: v1.76.0 +version: v1.77.0 type: go summary: homepage: https://pkg.go.dev/google.golang.org/grpc/binarylog/grpc_binarylog_v1 license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/channelz.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/channelz.dep.yml index 7dffb986..be3d33d0 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/channelz.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/channelz.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/channelz -version: v1.76.0 +version: v1.77.0 type: go summary: Package channelz exports internals of the channelz implementation as required by other gRPC packages. homepage: https://pkg.go.dev/google.golang.org/grpc/channelz license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/codes.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/codes.dep.yml index 765b8b90..693a05a4 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/codes.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/codes.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/codes -version: v1.76.0 +version: v1.77.0 type: go summary: Package codes defines the canonical error codes used by gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/codes license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/connectivity.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/connectivity.dep.yml index 98dfec14..1ac5edcc 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/connectivity.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/connectivity.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/connectivity -version: v1.76.0 +version: v1.77.0 type: go summary: Package connectivity defines connectivity semantics. homepage: https://pkg.go.dev/google.golang.org/grpc/connectivity license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials.dep.yml index 041c04c1..0d76108c 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials.dep.yml @@ -1,6 +1,6 @@ --- name: google.golang.org/grpc/credentials -version: v1.76.0 +version: v1.77.0 type: go summary: Package credentials implements various credentials supported by gRPC library, which encapsulate all the state needed by a client to authenticate with a server @@ -9,7 +9,7 @@ summary: Package credentials implements various credentials supported by gRPC li homepage: https://pkg.go.dev/google.golang.org/grpc/credentials license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials/insecure.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials/insecure.dep.yml index 0c34d3f0..7b6558a2 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials/insecure.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/credentials/insecure.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/credentials/insecure -version: v1.76.0 +version: v1.77.0 type: go summary: Package insecure provides an implementation of the credentials.TransportCredentials interface which disables transport security. homepage: https://pkg.go.dev/google.golang.org/grpc/credentials/insecure license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding.dep.yml index 43a51276..72e071b3 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/encoding -version: v1.76.0 +version: v1.77.0 type: go summary: Package encoding defines the interface for the compressor and codec, and functions to register and retrieve compressors and codecs. homepage: https://pkg.go.dev/google.golang.org/grpc/encoding license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/gzip.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/gzip.dep.yml index e33678fc..d8050683 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/gzip.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/gzip.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/encoding/gzip -version: v1.76.0 +version: v1.77.0 type: go summary: Package gzip implements and registers the gzip compressor during the initialization. homepage: https://pkg.go.dev/google.golang.org/grpc/encoding/gzip license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.34.0.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/internal.dep.yml similarity index 98% rename from .licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.34.0.dep.yml rename to .licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/internal.dep.yml index 096cb06a..f6f916e2 100644 --- a/.licenses/arduino-app-cli/go/go.opentelemetry.io/otel/semconv/v1.34.0.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/internal.dep.yml @@ -1,13 +1,14 @@ --- -name: go.opentelemetry.io/otel/semconv/v1.34.0 -version: v1.37.0 +name: google.golang.org/grpc/encoding/internal +version: v1.77.0 type: go -summary: Package semconv implements OpenTelemetry semantic conventions. -homepage: https://pkg.go.dev/go.opentelemetry.io/otel/semconv/v1.34.0 +summary: Package internal contains code internal to the encoding package. +homepage: https://pkg.go.dev/google.golang.org/grpc/encoding/internal license: apache-2.0 licenses: -- sources: otel@v1.37.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 + Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/proto.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/proto.dep.yml index 109bd1e6..d406894e 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/proto.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/encoding/proto.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/encoding/proto -version: v1.76.0 +version: v1.77.0 type: go summary: Package proto defines the protobuf codec. homepage: https://pkg.go.dev/google.golang.org/grpc/encoding/proto license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/experimental/stats.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/experimental/stats.dep.yml index f814fda9..30a11bff 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/experimental/stats.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/experimental/stats.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/experimental/stats -version: v1.76.0 +version: v1.77.0 type: go summary: Package stats contains experimental metrics/stats API's. homepage: https://pkg.go.dev/google.golang.org/grpc/experimental/stats license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog.dep.yml index 4e3a290c..cac08701 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/grpclog -version: v1.76.0 +version: v1.77.0 type: go summary: Package grpclog defines logging for grpc. homepage: https://pkg.go.dev/google.golang.org/grpc/grpclog license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog/internal.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog/internal.dep.yml index 6ae157a2..f87f7933 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/grpclog/internal.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/grpclog/internal -version: v1.76.0 +version: v1.77.0 type: go summary: Package internal contains functionality internal to the grpclog package. homepage: https://pkg.go.dev/google.golang.org/grpc/grpclog/internal license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/health.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/health.dep.yml index 15c2c63c..d70a1d43 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/health.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/health.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/health -version: v1.76.0 +version: v1.77.0 type: go summary: Package health provides a service that exposes server's health and it must be imported to enable support for client-side health checks. homepage: https://pkg.go.dev/google.golang.org/grpc/health license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/health/grpc_health_v1.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/health/grpc_health_v1.dep.yml index d3d4d57f..d63c346e 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/health/grpc_health_v1.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/health/grpc_health_v1.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/health/grpc_health_v1 -version: v1.76.0 +version: v1.77.0 type: go summary: homepage: https://pkg.go.dev/google.golang.org/grpc/health/grpc_health_v1 license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal.dep.yml index c1a0b58a..288610ca 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal -version: v1.76.0 +version: v1.77.0 type: go summary: Package internal contains gRPC-internal code, to avoid polluting the godoc of the top-level grpc package. homepage: https://pkg.go.dev/google.golang.org/grpc/internal license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/backoff.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/backoff.dep.yml index a12bab6f..a1608be3 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/backoff.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/backoff.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/backoff -version: v1.76.0 +version: v1.77.0 type: go summary: Package backoff implement the backoff strategy for gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/backoff license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancer/gracefulswitch.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancer/gracefulswitch.dep.yml index d8360503..aef873c2 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancer/gracefulswitch.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancer/gracefulswitch.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/balancer/gracefulswitch -version: v1.76.0 +version: v1.77.0 type: go summary: Package gracefulswitch implements a graceful switch load balancer. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/balancer/gracefulswitch license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancerload.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancerload.dep.yml index 2db03a49..c3d011dc 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancerload.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/balancerload.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/balancerload -version: v1.76.0 +version: v1.77.0 type: go summary: Package balancerload defines APIs to parse server loads in trailers. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/balancerload license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/binarylog.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/binarylog.dep.yml index 12221ea1..eafe6ca5 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/binarylog.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/binarylog.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/binarylog -version: v1.76.0 +version: v1.77.0 type: go summary: Package binarylog implementation binary logging as defined in https://github.com/grpc/proposal/blob/master/A16-binary-logging.md. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/binarylog license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/buffer.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/buffer.dep.yml index f9f71dd1..a41ef27c 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/buffer.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/buffer.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/buffer -version: v1.76.0 +version: v1.77.0 type: go summary: Package buffer provides an implementation of an unbounded buffer. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/buffer license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/channelz.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/channelz.dep.yml index 84798ebf..62f5b611 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/channelz.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/channelz.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/channelz -version: v1.76.0 +version: v1.77.0 type: go summary: Package channelz defines internal APIs for enabling channelz service, entry registration/deletion, and accessing channelz data. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/channelz license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/credentials.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/credentials.dep.yml index 65249a8a..957f1d1e 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/credentials.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/credentials.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/credentials -version: v1.76.0 +version: v1.77.0 type: go summary: Package credentials defines APIs for parsing SPIFFE ID. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/credentials license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/envconfig.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/envconfig.dep.yml index a332bc53..0479e0a5 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/envconfig.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/envconfig.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/envconfig -version: v1.76.0 +version: v1.77.0 type: go summary: Package envconfig contains grpc settings configured by environment variables. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/envconfig license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpclog.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpclog.dep.yml index 60ca1990..d732486d 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpclog.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpclog.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/grpclog -version: v1.76.0 +version: v1.77.0 type: go summary: Package grpclog provides logging functionality for internal gRPC packages, outside of the functionality provided by the external `grpclog` package. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/grpclog license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcsync.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcsync.dep.yml index 9a12781b..b4d8022c 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcsync.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcsync.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/grpcsync -version: v1.76.0 +version: v1.77.0 type: go summary: Package grpcsync implements additional synchronization primitives built upon the sync package. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/grpcsync license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcutil.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcutil.dep.yml index cb88a16f..39775ac1 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcutil.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/grpcutil.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/grpcutil -version: v1.76.0 +version: v1.77.0 type: go summary: Package grpcutil provides utility functions used across the gRPC codebase. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/grpcutil license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/idle.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/idle.dep.yml index 21b5dd3c..aa6b4ef8 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/idle.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/idle.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/idle -version: v1.76.0 +version: v1.77.0 type: go summary: Package idle contains a component for managing idleness (entering and exiting) based on RPC activity. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/idle license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/metadata.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/metadata.dep.yml index cd55580a..63cfa8bd 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/metadata.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/metadata.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/metadata -version: v1.76.0 +version: v1.77.0 type: go summary: Package metadata contains functions to set and get metadata from addresses. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/metadata license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/pretty.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/pretty.dep.yml index d0cbafa6..4a155505 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/pretty.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/pretty.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/pretty -version: v1.76.0 +version: v1.77.0 type: go summary: Package pretty defines helper functions to pretty-print structs for logging. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/pretty license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/proxyattributes.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/proxyattributes.dep.yml index db0b4d18..a74de315 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/proxyattributes.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/proxyattributes.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/proxyattributes -version: v1.76.0 +version: v1.77.0 type: go summary: Package proxyattributes contains functions for getting and setting proxy attributes like the CONNECT address and user info. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/proxyattributes license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver.dep.yml index 0e6c780f..5610ad58 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/resolver -version: v1.76.0 +version: v1.77.0 type: go summary: Package resolver provides internal resolver-related functionality. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/delegatingresolver.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/delegatingresolver.dep.yml index eeb5e1ff..829a88b1 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/delegatingresolver.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/delegatingresolver.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/resolver/delegatingresolver -version: v1.76.0 +version: v1.77.0 type: go summary: Package delegatingresolver implements a resolver capable of resolving both target URIs and proxy addresses. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver/delegatingresolver license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns.dep.yml index 98cda732..3601ea66 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/resolver/dns -version: v1.76.0 +version: v1.77.0 type: go summary: Package dns implements a dns resolver to be installed as the default resolver in grpc. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver/dns license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns/internal.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns/internal.dep.yml index a91c16e4..f428a710 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns/internal.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/dns/internal.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/resolver/dns/internal -version: v1.76.0 +version: v1.77.0 type: go summary: Package internal contains functionality internal to the dns resolver package. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver/dns/internal license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/passthrough.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/passthrough.dep.yml index 720da97b..1f2ad692 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/passthrough.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/passthrough.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/resolver/passthrough -version: v1.76.0 +version: v1.77.0 type: go summary: Package passthrough implements a pass-through resolver. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver/passthrough license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/unix.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/unix.dep.yml index 3636a2b0..17f1cc7b 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/unix.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/resolver/unix.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/resolver/unix -version: v1.76.0 +version: v1.77.0 type: go summary: Package unix implements a resolver for unix targets. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/resolver/unix license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/serviceconfig.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/serviceconfig.dep.yml index 9a11cf53..d27e9b48 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/serviceconfig.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/serviceconfig.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/serviceconfig -version: v1.76.0 +version: v1.77.0 type: go summary: Package serviceconfig contains utility functions to parse service config. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/serviceconfig license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/stats.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/stats.dep.yml index 467752bc..e1600fc9 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/stats.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/stats.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/stats -version: v1.76.0 +version: v1.77.0 type: go summary: Package stats provides internal stats related functionality. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/stats license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/status.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/status.dep.yml index 2e08b773..ada06b3e 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/status.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/status.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/status -version: v1.76.0 +version: v1.77.0 type: go summary: Package status implements errors returned by gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/status license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/syscall.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/syscall.dep.yml index 3a9c4c82..b7de69a2 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/syscall.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/syscall.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/syscall -version: v1.76.0 +version: v1.77.0 type: go summary: Package syscall provides functionalities that grpc uses to get low-level operating system stats/info. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/syscall license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport.dep.yml index 23447170..4e065b7c 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/internal/transport -version: v1.76.0 +version: v1.77.0 type: go summary: Package transport defines and implements message oriented communication channel to complete various transactions (e.g., an RPC). homepage: https://pkg.go.dev/google.golang.org/grpc/internal/transport license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport/networktype.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport/networktype.dep.yml index 2e7fc4ef..70c9c22d 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport/networktype.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/internal/transport/networktype.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/internal/transport/networktype -version: v1.76.0 +version: v1.77.0 type: go summary: Package networktype declares the network type to be used in the default dialer. homepage: https://pkg.go.dev/google.golang.org/grpc/internal/transport/networktype license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/keepalive.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/keepalive.dep.yml index 7872d76c..6a93a356 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/keepalive.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/keepalive.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/keepalive -version: v1.76.0 +version: v1.77.0 type: go summary: Package keepalive defines configurable parameters for point-to-point healthcheck. homepage: https://pkg.go.dev/google.golang.org/grpc/keepalive license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/mem.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/mem.dep.yml index e144d605..7dc2b9d6 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/mem.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/mem.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/mem -version: v1.76.0 +version: v1.77.0 type: go summary: Package mem provides utilities that facilitate memory reuse in byte slices that are used as buffers. homepage: https://pkg.go.dev/google.golang.org/grpc/mem license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/metadata.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/metadata.dep.yml index 62ac7d93..3686b2db 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/metadata.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/metadata.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/metadata -version: v1.76.0 +version: v1.77.0 type: go summary: Package metadata define the structure of the metadata supported by gRPC library. homepage: https://pkg.go.dev/google.golang.org/grpc/metadata license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/peer.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/peer.dep.yml index d05646d9..dbcac4cd 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/peer.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/peer.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/peer -version: v1.76.0 +version: v1.77.0 type: go summary: Package peer defines various peer information associated with RPCs and corresponding utils. homepage: https://pkg.go.dev/google.golang.org/grpc/peer license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver.dep.yml index ad1ced52..af4a04c0 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/resolver -version: v1.76.0 +version: v1.77.0 type: go summary: Package resolver defines APIs for name resolution in gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/resolver license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver/dns.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver/dns.dep.yml index 4e56d025..09ef4e82 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver/dns.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/resolver/dns.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/resolver/dns -version: v1.76.0 +version: v1.77.0 type: go summary: Package dns implements a dns resolver to be installed as the default resolver in grpc. homepage: https://pkg.go.dev/google.golang.org/grpc/resolver/dns license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/serviceconfig.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/serviceconfig.dep.yml index 9d3593d4..a4a6a079 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/serviceconfig.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/serviceconfig.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/serviceconfig -version: v1.76.0 +version: v1.77.0 type: go summary: Package serviceconfig defines types and methods for operating on gRPC service configs. homepage: https://pkg.go.dev/google.golang.org/grpc/serviceconfig license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/stats.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/stats.dep.yml index cb2ed7cd..6fb67a75 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/stats.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/stats.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/stats -version: v1.76.0 +version: v1.77.0 type: go summary: Package stats is for collecting and reporting various network and RPC stats. homepage: https://pkg.go.dev/google.golang.org/grpc/stats license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/status.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/status.dep.yml index 566b8583..236d56d9 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/status.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/status.dep.yml @@ -1,12 +1,12 @@ --- name: google.golang.org/grpc/status -version: v1.76.0 +version: v1.77.0 type: go summary: Package status implements errors returned by gRPC. homepage: https://pkg.go.dev/google.golang.org/grpc/status license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/.licenses/arduino-app-cli/go/google.golang.org/grpc/tap.dep.yml b/.licenses/arduino-app-cli/go/google.golang.org/grpc/tap.dep.yml index 0756a9a3..6d6bd724 100644 --- a/.licenses/arduino-app-cli/go/google.golang.org/grpc/tap.dep.yml +++ b/.licenses/arduino-app-cli/go/google.golang.org/grpc/tap.dep.yml @@ -1,13 +1,13 @@ --- name: google.golang.org/grpc/tap -version: v1.76.0 +version: v1.77.0 type: go summary: Package tap defines the function handles which are executed on the transport layer of gRPC-Go and related information. homepage: https://pkg.go.dev/google.golang.org/grpc/tap license: apache-2.0 licenses: -- sources: grpc@v1.76.0/LICENSE +- sources: grpc@v1.77.0/LICENSE text: |2 Apache License diff --git a/cmd/gendoc/docs.go b/cmd/gendoc/docs.go index 0b36ffe8..8612fc19 100644 --- a/cmd/gendoc/docs.go +++ b/cmd/gendoc/docs.go @@ -1041,8 +1041,9 @@ Contains a JSON object with the details of an error. Method: http.MethodDelete, Path: "/v1/apps/{appID}/sketch/libraries/{libRef}", Parameters: (*struct { - ID string `path:"appID" description:"application identifier."` - LibRef string `path:"libRef" description:"library reference (\"LibraryName\" or \"LibraryName@Version\")."` + ID string `path:"appID" description:"application identifier."` + LibRef string `path:"libRef" description:"library reference (\"LibraryName\" or \"LibraryName@Version\")."` + RemoveDependencies string `query:"remove_deps" description:"if set to \"true\", the library's dependencies will be removed as well if not needed anymore."` })(nil), CustomSuccessResponse: &CustomResponseDef{ ContentType: "application/json", diff --git a/go.mod b/go.mod index e28dc683..7e7a8b73 100644 --- a/go.mod +++ b/go.mod @@ -13,12 +13,9 @@ replace ( github.com/docker/docker => github.com/docker/docker v28.3.2+incompatible ) -// Required until https://github.com/arduino/arduino-cli/pull/3019 is merged and released -replace github.com/arduino/arduino-cli => github.com/cmaglie/arduino-cli v0.0.0-20251112150352-0d62cc4d0b45 - require ( github.com/Andrew-M-C/go.emoji v1.1.4 - github.com/arduino/arduino-cli v1.3.1 + github.com/arduino/arduino-cli v1.4.0 github.com/arduino/go-paths-helper v1.14.0 github.com/compose-spec/compose-go/v2 v2.8.1 github.com/containerd/errdefs v1.0.0 @@ -38,7 +35,7 @@ require ( github.com/oapi-codegen/runtime v1.1.1 github.com/shirou/gopsutil/v4 v4.25.6 github.com/sirupsen/logrus v1.9.3 - github.com/spf13/cobra v1.10.1 + github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 github.com/swaggest/jsonschema-go v0.3.78 github.com/swaggest/openapi-go v0.2.58 @@ -48,9 +45,9 @@ require ( go.bug.st/cleanup v1.0.0 go.bug.st/f v0.4.0 go.bug.st/relaxed-semver v0.15.0 - golang.org/x/crypto v0.42.0 - golang.org/x/sync v0.17.0 - golang.org/x/text v0.30.0 + golang.org/x/crypto v0.45.0 + golang.org/x/sync v0.19.0 + golang.org/x/text v0.32.0 ) require ( @@ -132,7 +129,7 @@ require ( github.com/getkin/kin-openapi v0.133.0 // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect github.com/go-git/go-billy/v5 v5.6.2 // indirect - github.com/go-git/go-git/v5 v5.16.3 // indirect + github.com/go-git/go-git/v5 v5.16.4 // indirect github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.3.0 // indirect @@ -143,7 +140,7 @@ require ( github.com/go-task/task/v3 v3.44.1 // indirect github.com/go-task/template v0.2.0 // indirect github.com/go-viper/mapstructure/v2 v2.4.0 // indirect - github.com/gofrs/uuid/v5 v5.3.2 // indirect + github.com/gofrs/uuid/v5 v5.4.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang-jwt/jwt/v5 v5.2.2 // indirect github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect @@ -269,33 +266,33 @@ require ( github.com/zeebo/xxh3 v1.0.2 // indirect go.bug.st/downloader/v2 v2.2.0 // indirect go.bug.st/serial v1.6.4 // indirect - go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/auto/sdk v1.2.1 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.60.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.60.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect - go.opentelemetry.io/otel v1.37.0 // indirect + go.opentelemetry.io/otel v1.38.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.35.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.35.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.35.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.35.0 // indirect - go.opentelemetry.io/otel/metric v1.37.0 // indirect - go.opentelemetry.io/otel/sdk v1.37.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.37.0 // indirect - go.opentelemetry.io/otel/trace v1.37.0 // indirect + go.opentelemetry.io/otel/metric v1.38.0 // indirect + go.opentelemetry.io/otel/sdk v1.38.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.38.0 // indirect + go.opentelemetry.io/otel/trace v1.38.0 // indirect go.opentelemetry.io/proto/otlp v1.5.0 // indirect go.uber.org/mock v0.5.2 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect - golang.org/x/mod v0.28.0 // indirect - golang.org/x/net v0.44.0 // indirect - golang.org/x/oauth2 v0.30.0 // indirect - golang.org/x/sys v0.38.0 // indirect - golang.org/x/term v0.36.0 // indirect + golang.org/x/mod v0.30.0 // indirect + golang.org/x/net v0.47.0 // indirect + golang.org/x/oauth2 v0.32.0 // indirect + golang.org/x/sys v0.39.0 // indirect + golang.org/x/term v0.38.0 // indirect golang.org/x/time v0.11.0 // indirect - golang.org/x/tools v0.37.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b // indirect - google.golang.org/grpc v1.76.0 // indirect + golang.org/x/tools v0.39.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20251022142026-3a174f9686a8 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8 // indirect + google.golang.org/grpc v1.77.0 // indirect google.golang.org/protobuf v1.36.10 // indirect gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect diff --git a/go.sum b/go.sum index 535ebe39..3c34fdbe 100644 --- a/go.sum +++ b/go.sum @@ -88,6 +88,8 @@ github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7D github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY= github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4= +github.com/arduino/arduino-cli v1.4.0 h1:m89vwVuY1ThglbJcS2yXCfXnmjRBQCy1eDpIp0bMR/0= +github.com/arduino/arduino-cli v1.4.0/go.mod h1:BNuInu0zs0IQXDmzK8sE4ilTIADsgJbkik04rpySt58= github.com/arduino/go-paths-helper v1.0.1/go.mod h1:HpxtKph+g238EJHq4geEPv9p+gl3v5YYu35Yb+w31Ck= github.com/arduino/go-paths-helper v1.14.0 h1:b4C8KJa7CNz2XnzTWg97M3LAmzWSWrj+m/o5/skzv3Y= github.com/arduino/go-paths-helper v1.14.0/go.mod h1:dDodKn2ZX4iwuoBMapdDO+5d0oDLBeM4BS0xS4i40Ak= @@ -170,8 +172,6 @@ github.com/cloudflare/cfssl v0.0.0-20180223231731-4e2dcbde5004 h1:lkAMpLVBDaj17e github.com/cloudflare/cfssl v0.0.0-20180223231731-4e2dcbde5004/go.mod h1:yMWuSON2oQp+43nFtAV/uvKQIFpSPerB57DCt9t8sSA= github.com/cloudflare/circl v1.6.1 h1:zqIqSPIndyBh1bjLVVDHMPpVKqp8Su/V+6MeDzzQBQ0= github.com/cloudflare/circl v1.6.1/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs= -github.com/cmaglie/arduino-cli v0.0.0-20251112150352-0d62cc4d0b45 h1:dBBw3070OvawAfcJMz7o+mOfZAR6O5DzUKdqV1C5Cmg= -github.com/cmaglie/arduino-cli v0.0.0-20251112150352-0d62cc4d0b45/go.mod h1:V7Rm93M89nl4hdOXQ47aj/jvEkxfWVwDYiav6i0UOkk= github.com/cmaglie/pb v1.0.27 h1:ynGj8vBXR+dtj4B7Q/W/qGt31771Ux5iFfRQBnwdQiA= github.com/cmaglie/pb v1.0.27/go.mod h1:GilkKZMXYjBA4NxItWFfO+lwkp59PLHQ+IOW/b/kmZI= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= @@ -321,8 +321,8 @@ github.com/go-git/go-billy/v5 v5.6.2 h1:6Q86EsPXMa7c3YZ3aLAQsMA0VlWmy43r6FHqa/UN github.com/go-git/go-billy/v5 v5.6.2/go.mod h1:rcFC2rAsp/erv7CMz9GczHcuD0D32fWzH+MJAU+jaUU= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= -github.com/go-git/go-git/v5 v5.16.3 h1:Z8BtvxZ09bYm/yYNgPKCzgWtaRqDTgIKRgIRHBfU6Z8= -github.com/go-git/go-git/v5 v5.16.3/go.mod h1:4Ge4alE/5gPs30F2H1esi2gPd69R0C39lolkucHBOp8= +github.com/go-git/go-git/v5 v5.16.4 h1:7ajIEZHZJULcyJebDLo99bGgS0jRrOxzZG4uCk2Yb2Y= +github.com/go-git/go-git/v5 v5.16.4/go.mod h1:4Ge4alE/5gPs30F2H1esi2gPd69R0C39lolkucHBOp8= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= @@ -366,8 +366,8 @@ github.com/goccy/go-yaml v1.18.0/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7Lk github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/flock v0.12.1 h1:MTLVXXHf8ekldpJk3AKicLij9MdwOWkZ+a/jHHZby9E= github.com/gofrs/flock v0.12.1/go.mod h1:9zxTsyu5xtJ9DK+1tFZyibEV7y3uwDxPPfbxeeHCoD0= -github.com/gofrs/uuid/v5 v5.3.2 h1:2jfO8j3XgSwlz/wHqemAEugfnTlikAYHhnqQ8Xh4fE0= -github.com/gofrs/uuid/v5 v5.3.2/go.mod h1:CDOjlDMVAtN56jqyRUZh58JT31Tiw7/oQyEXZV+9bD8= +github.com/gofrs/uuid/v5 v5.4.0 h1:EfbpCTjqMuGyq5ZJwxqzn3Cbr2d0rUZU7v5ycAk/e/0= +github.com/gofrs/uuid/v5 v5.4.0/go.mod h1:CDOjlDMVAtN56jqyRUZh58JT31Tiw7/oQyEXZV+9bD8= github.com/gogo/protobuf v1.0.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= @@ -831,8 +831,8 @@ github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY= github.com/spf13/cast v1.10.0/go.mod h1:jNfB8QC9IA6ZuY2ZjDp0KtFO2LZZlg4S/7bzP6qqeHo= github.com/spf13/cobra v0.0.1/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/cobra v1.2.1/go.mod h1:ExllRjgxM/piMAM+3tAZvg8fsklGAf3tPfi+i8t68Nk= -github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s= -github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0= +github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU= +github.com/spf13/cobra v1.10.2/go.mod h1:7C1pvHqHw5A4vrJfjNwvOdzYu0Gml16OCs2GRiTUUS4= github.com/spf13/jwalterweatherman v0.0.0-20141219030609-3d60171a6431/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= github.com/spf13/pflag v1.0.0/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= @@ -965,16 +965,16 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= +go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.60.0 h1:x7wzEgXfnzJcHDwStJT+mxOz4etr2EcexjqhBvmoakw= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.60.0/go.mod h1:rg+RlpR5dKwaS95IyyZqj5Wd4E13lk/msnTS0Xl9lJM= go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.60.0 h1:0tY123n7CdWMem7MOVdKOt0YfshufLCwfE5Bob+hQuM= go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.60.0/go.mod h1:CosX/aS4eHnG9D7nESYpV753l4j9q5j3SL/PUYd2lR8= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 h1:sbiXRNDSWJOTobXh5HyQKjq6wUC5tNybqjIqDpAY4CU= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0/go.mod h1:69uWxva0WgAA/4bu2Yy70SLDBwZXuQ6PbBpbsa5iZrQ= -go.opentelemetry.io/otel v1.37.0 h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ= -go.opentelemetry.io/otel v1.37.0/go.mod h1:ehE/umFRLnuLa/vSccNq9oS1ErUlkkK71gMcN34UG8I= +go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8= +go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.35.0 h1:QcFwRrZLc82r8wODjvyCbP7Ifp3UANaBSmhDSFjnqSc= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.35.0/go.mod h1:CXIWhUomyWBG/oY2/r/kLp6K/cmx9e/7DLpBuuGdLCA= go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.35.0 h1:0NIXxOCFx+SKbhCVxwl3ETG8ClLPAa0KuKV6p3yhxP8= @@ -985,14 +985,14 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0 h1:m639+ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0/go.mod h1:LjReUci/F4BUyv+y4dwnq3h/26iNOeC3wAIqgvTIZVo= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.35.0 h1:xJ2qHD0C1BeYVTLLR9sX12+Qb95kfeD/byKj6Ky1pXg= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.35.0/go.mod h1:u5BF1xyjstDowA1R5QAO9JHzqK+ublenEW/dyqTjBVk= -go.opentelemetry.io/otel/metric v1.37.0 h1:mvwbQS5m0tbmqML4NqK+e3aDiO02vsf/WgbsdpcPoZE= -go.opentelemetry.io/otel/metric v1.37.0/go.mod h1:04wGrZurHYKOc+RKeye86GwKiTb9FKm1WHtO+4EVr2E= -go.opentelemetry.io/otel/sdk v1.37.0 h1:ItB0QUqnjesGRvNcmAcU0LyvkVyGJ2xftD29bWdDvKI= -go.opentelemetry.io/otel/sdk v1.37.0/go.mod h1:VredYzxUvuo2q3WRcDnKDjbdvmO0sCzOvVAiY+yUkAg= -go.opentelemetry.io/otel/sdk/metric v1.37.0 h1:90lI228XrB9jCMuSdA0673aubgRobVZFhbjxHHspCPc= -go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps= -go.opentelemetry.io/otel/trace v1.37.0 h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4= -go.opentelemetry.io/otel/trace v1.37.0/go.mod h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0= +go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA= +go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI= +go.opentelemetry.io/otel/sdk v1.38.0 h1:l48sr5YbNf2hpCUj/FoGhW9yDkl+Ma+LrVl8qaM5b+E= +go.opentelemetry.io/otel/sdk v1.38.0/go.mod h1:ghmNdGlVemJI3+ZB5iDEuk4bWA3GkTpW+DOoZMYBVVg= +go.opentelemetry.io/otel/sdk/metric v1.38.0 h1:aSH66iL0aZqo//xXzQLYozmWrXxyFkBJ6qT5wthqPoM= +go.opentelemetry.io/otel/sdk/metric v1.38.0/go.mod h1:dg9PBnW9XdQ1Hd6ZnRz689CbtrUp0wMMs9iPcgT9EZA= +go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE= +go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs= go.opentelemetry.io/proto/otlp v1.5.0 h1:xJvq7gMzB31/d406fB8U5CBdyQGw4P399D1aQWU/3i4= go.opentelemetry.io/proto/otlp v1.5.0/go.mod h1:keN8WnHxOy8PG0rQZjJJ5A2ebUoafqWp0eVQ4yIXvJ4= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= @@ -1018,8 +1018,8 @@ golang.org/x/crypto v0.0.0-20201117144127-c1f2f97bffc9/go.mod h1:jdWPYTVW3xRLrWP golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI= -golang.org/x/crypto v0.42.0/go.mod h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8= +golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q= +golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -1056,8 +1056,8 @@ golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U= -golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI= +golang.org/x/mod v0.30.0 h1:fDEXFVZ/fmCKProc/yAXXUijritrDzahmwwefnjoPFk= +golang.org/x/mod v0.30.0/go.mod h1:lAsf5O2EvJeSFMiBxXDki7sCgAxEUcZHXoXMKT4GJKc= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1102,8 +1102,8 @@ golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.44.0 h1:evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I= -golang.org/x/net v0.44.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY= +golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY= +golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1116,8 +1116,8 @@ golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210402161424-2e8d93401602/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI= -golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU= +golang.org/x/oauth2 v0.32.0 h1:jsCblLleRMDrxMN29H3z/k1KliIvpLgCkE6R8FXXNgY= +golang.org/x/oauth2 v0.32.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1130,8 +1130,8 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug= -golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= +golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= +golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1198,13 +1198,13 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc= -golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk= +golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q= -golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss= +golang.org/x/term v0.38.0 h1:PQ5pkm/rLO6HnxFR7N2lJHOZX6Kez5Y1gDSJla6jo7Q= +golang.org/x/term v0.38.0/go.mod h1:bSEAKrOT1W+VSu9TSCMtoGEOUcKxOKgl3LE5QEF/xVg= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1215,8 +1215,8 @@ golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k= -golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM= +golang.org/x/text v0.32.0 h1:ZD01bjUt1FQ9WJ0ClOL5vxgxOI/sVCNgX1YtKwcY0mU= +golang.org/x/text v0.32.0/go.mod h1:o/rUWzghvpD5TXrTIBuJU77MTaN0ljMWE47kxGJQ7jY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -1276,8 +1276,8 @@ golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.37.0 h1:DVSRzp7FwePZW356yEAChSdNcQo6Nsp+fex1SUW09lE= -golang.org/x/tools v0.37.0/go.mod h1:MBN5QPQtLMHVdvsbtarmTNukZDdgwdwlO5qGacAzF0w= +golang.org/x/tools v0.39.0 h1:ik4ho21kwuQln40uelmciQPp9SipgNDdrafrYA4TmQQ= +golang.org/x/tools v0.39.0/go.mod h1:JnefbkDPyD8UU2kI5fuf8ZX4/yUeh9W877ZeBONxUqQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1354,10 +1354,10 @@ google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b h1:ULiyYQ0FdsJhwwZUwbaXpZF5yUE3h+RA+gxvBu37ucc= -google.golang.org/genproto/googleapis/api v0.0.0-20250804133106-a7a43d27e69b/go.mod h1:oDOGiMSXHL4sDTJvFvIB9nRQCGdLP1o/iVaqQK8zB+M= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b h1:zPKJod4w6F1+nRGDI9ubnXYhU9NSWoFAijkHkUXeTK8= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250804133106-a7a43d27e69b/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A= +google.golang.org/genproto/googleapis/api v0.0.0-20251022142026-3a174f9686a8 h1:mepRgnBZa07I4TRuomDE4sTIYieg/osKmzIf4USdWS4= +google.golang.org/genproto/googleapis/api v0.0.0-20251022142026-3a174f9686a8/go.mod h1:fDMmzKV90WSg1NbozdqrE64fkuTv6mlq2zxo9ad+3yo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8 h1:M1rk8KBnUsBDg1oPGHNCxG4vc1f49epmTO7xscSajMk= +google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= google.golang.org/grpc v1.0.5/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= @@ -1379,8 +1379,8 @@ google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAG google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A= -google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c= +google.golang.org/grpc v1.77.0 h1:wVVY6/8cGA6vvffn+wWK5ToddbgdU3d8MNENr4evgXM= +google.golang.org/grpc v1.77.0/go.mod h1:z0BY1iVj0q8E1uSQCjL9cppRj+gnZjzDnzV0dHhrNig= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/internal/api/docs/openapi.yaml b/internal/api/docs/openapi.yaml index fdecc22d..2b34f1a9 100644 --- a/internal/api/docs/openapi.yaml +++ b/internal/api/docs/openapi.yaml @@ -296,6 +296,14 @@ paths: from the sketch project file. operationId: appSketchRemoveLibrary parameters: + - description: if set to "true", the library's dependencies will be removed + as well if not needed anymore. + in: query + name: remove_deps + schema: + description: if set to "true", the library's dependencies will be removed + as well if not needed anymore. + type: string - description: application identifier. in: path name: appID diff --git a/internal/api/handlers/app_sketch_libs.go b/internal/api/handlers/app_sketch_libs.go index 7e280a2f..79f8934d 100644 --- a/internal/api/handlers/app_sketch_libs.go +++ b/internal/api/handlers/app_sketch_libs.go @@ -90,12 +90,14 @@ func HandleSketchRemoveLibrary(idProvider *app.IDProvider) http.HandlerFunc { return } - if removedLib, err := orchestrator.RemoveSketchLibrary(r.Context(), app, libRef); err != nil { - render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to remove sketch library"}) + // Get query param addDeps (default false) + removeDeps, _ := strconv.ParseBool(r.URL.Query().Get("remove_deps")) + if removedLibs, err := orchestrator.RemoveSketchLibrary(r.Context(), app, libRef, removeDeps); err != nil { + render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to remove sketch library: " + err.Error()}) return } else { render.EncodeResponse(w, http.StatusOK, SketchRemoveLibraryResponse{ - RemovedLibraries: []orchestrator.LibraryReleaseID{removedLib}, + RemovedLibraries: removedLibs, }) return } diff --git a/internal/orchestrator/sketch_libs.go b/internal/orchestrator/sketch_libs.go index cb058924..25be1371 100644 --- a/internal/orchestrator/sketch_libs.go +++ b/internal/orchestrator/sketch_libs.go @@ -33,7 +33,7 @@ const indexUpdateInterval = 10 * time.Minute func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryReleaseID, addDeps bool) ([]LibraryReleaseID, error) { sketchPath, ok := app.GetSketchPath() if !ok { - return []LibraryReleaseID{}, errors.New("cannot add a library. Missing sketch folder") + return nil, errors.New("cannot add a library. Missing sketch folder") } srv := commands.NewArduinoCoreServer() @@ -65,9 +65,9 @@ func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryRel resp, err := srv.ProfileLibAdd(ctx, &rpc.ProfileLibAddRequest{ Instance: inst, SketchPath: sketchPath.String(), - Library: &rpc.SketchProfileLibraryReference{ - Library: &rpc.SketchProfileLibraryReference_IndexLibrary_{ - IndexLibrary: &rpc.SketchProfileLibraryReference_IndexLibrary{ + Library: &rpc.ProfileLibraryReference{ + Library: &rpc.ProfileLibraryReference_IndexLibrary_{ + IndexLibrary: &rpc.ProfileLibraryReference_IndexLibrary{ Name: libRef.Name, Version: libRef.Version, }, @@ -82,15 +82,15 @@ func AddSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryRel return f.Map(resp.GetAddedLibraries(), rpcProfileLibReferenceToLibReleaseID), nil } -func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryReleaseID) (LibraryReleaseID, error) { +func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef LibraryReleaseID, removeDeps bool) ([]LibraryReleaseID, error) { sketchPath, ok := app.GetSketchPath() if !ok { - return LibraryReleaseID{}, errors.New("cannot remove a library. Missing sketch folder") + return nil, errors.New("cannot remove a library. Missing sketch folder") } srv := commands.NewArduinoCoreServer() var inst *rpc.Instance if res, err := srv.Create(ctx, &rpc.CreateRequest{}); err != nil { - return LibraryReleaseID{}, err + return nil, err } else { inst = res.Instance } @@ -101,29 +101,32 @@ func RemoveSketchLibrary(ctx context.Context, app app.ArduinoApp, libRef Library // TODO: LOG progress/error? return nil })); err != nil { - return LibraryReleaseID{}, err + return nil, err } resp, err := srv.ProfileLibRemove(ctx, &rpc.ProfileLibRemoveRequest{ - Library: &rpc.SketchProfileLibraryReference{ - Library: &rpc.SketchProfileLibraryReference_IndexLibrary_{ - IndexLibrary: &rpc.SketchProfileLibraryReference_IndexLibrary{ - Name: libRef.Name, + Instance: inst, + Library: &rpc.ProfileLibraryReference{ + Library: &rpc.ProfileLibraryReference_IndexLibrary_{ + IndexLibrary: &rpc.ProfileLibraryReference_IndexLibrary{ + Name: libRef.Name, + Version: libRef.Version, }, }, }, - SketchPath: sketchPath.String(), + RemoveDependencies: &removeDeps, + SketchPath: sketchPath.String(), }) if err != nil { - return LibraryReleaseID{}, err + return nil, err } - return rpcProfileLibReferenceToLibReleaseID(resp.GetLibrary()), nil + return f.Map(resp.GetRemovedLibraries(), rpcProfileLibReferenceToLibReleaseID), nil } func ListSketchLibraries(ctx context.Context, app app.ArduinoApp) ([]LibraryReleaseID, error) { sketchPath, ok := app.GetSketchPath() if !ok { - return []LibraryReleaseID{}, errors.New("cannot list libraries. Missing sketch folder") + return nil, errors.New("cannot list libraries. Missing sketch folder") } srv := commands.NewArduinoCoreServer() @@ -136,19 +139,17 @@ func ListSketchLibraries(ctx context.Context, app app.ArduinoApp) ([]LibraryRele } // Keep only index libraries - libs := f.Filter(resp.Libraries, func(l *rpc.SketchProfileLibraryReference) bool { + libs := f.Filter(resp.Libraries, func(l *rpc.ProfileLibraryReference) bool { return l.GetIndexLibrary() != nil }) - res := f.Map(libs, func(l *rpc.SketchProfileLibraryReference) LibraryReleaseID { - return LibraryReleaseID{ - Name: l.GetIndexLibrary().GetName(), - Version: l.GetIndexLibrary().GetVersion(), - } - }) - return res, nil + return f.Map(libs, rpcProfileLibReferenceToLibReleaseID), nil } -func rpcProfileLibReferenceToLibReleaseID(ref *rpc.SketchProfileLibraryReference) LibraryReleaseID { +func rpcProfileLibReferenceToLibReleaseID(ref *rpc.ProfileLibraryReference) LibraryReleaseID { l := ref.GetIndexLibrary() - return NewLibraryReleaseID(l.GetName(), l.GetVersion()) + return LibraryReleaseID{ + Name: l.GetName(), + Version: l.GetVersion(), + IsDependency: l.GetIsDependency(), + } } diff --git a/internal/orchestrator/sketch_libs_release_id.go b/internal/orchestrator/sketch_libs_release_id.go index ef068f46..dec8b105 100644 --- a/internal/orchestrator/sketch_libs_release_id.go +++ b/internal/orchestrator/sketch_libs_release_id.go @@ -27,8 +27,9 @@ import ( // - name[@version] // Version is optional, if not provided, the latest version available will be used. type LibraryReleaseID struct { - Name string - Version string + Name string + Version string + IsDependency bool } func NewLibraryReleaseID(name string, version string) LibraryReleaseID { diff --git a/internal/orchestrator/sketch_libs_test.go b/internal/orchestrator/sketch_libs_test.go index d863e60e..dcd0731a 100644 --- a/internal/orchestrator/sketch_libs_test.go +++ b/internal/orchestrator/sketch_libs_test.go @@ -51,7 +51,7 @@ func TestListSketchLibraries(t *testing.T) { pythonApp, err := app.Load(createTestAppPythonOnly(t)) require.NoError(t, err) - id, err := RemoveSketchLibrary(context.Background(), pythonApp, LibraryReleaseID{}) + id, err := RemoveSketchLibrary(context.Background(), pythonApp, LibraryReleaseID{}, true) require.Error(t, err) assert.Contains(t, err.Error(), "cannot remove a library. Missing sketch folder") assert.Empty(t, id) From 1dd4b50b2a3273383925817a238c4e8ffeeab271 Mon Sep 17 00:00:00 2001 From: Per Tillisch Date: Tue, 9 Dec 2025 09:25:25 -0800 Subject: [PATCH 26/27] feat: Remove misleading `fqbn` sketch build profile key from App template (#136) When a new App is generated, it contains a sketch with a sketch project file that defines a build profile . Previously, the `fqbn` key ofthis build profile was set to `arduino:zephyr:unoq`. Since the build profile is indeed used to control the dependencies of the sketch, the user would be led to also believe that the FQBN specified in the build profile is used when compiling and uploading the sketch. This is not so. An FQBN is instead hardcoded into the compilation and upload code, meaning the `fqbn` key in the build profile has absolutely no effect. The obvious problem with this is that it will lead the advanced user to believe they can configure the FQBN used by App Lab via the `fqbn` key of the build profile. For example, they might wish to use the `arduino:zephyr:unoq:flash_mode=flash,wait_linux_boot=no` FQBN in cases where the sketch code is not reliant on the immediate availability of the Linux machine and they do not wish for the execution of the sketch program to be delayed after power on. Even more confusing is the fact that the `arduino:zephyr:unoq:flash_mode=ram` FQBN used when uploading is different from the FQBN the default build profile would lead the user to believe is in use (since the default value of the `flash_mode` custom board option is `flash` NOT `ram`, and thus the `arduino:zephyr:unoq` used in the template is equivalent to `arduino:zephyr:unoq:flash_mode=flash`). Removing the unused and misleading `fqbn` key from the generated build profile will better communicate the actual situation to the user. --- .../app/generator/app_template/sketch/sketch.yaml | 1 - .../app/generator/testdata/app-all.golden/sketch/sketch.yaml | 1 - internal/orchestrator/orchestrator.go | 4 ++-- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/internal/orchestrator/app/generator/app_template/sketch/sketch.yaml b/internal/orchestrator/app/generator/app_template/sketch/sketch.yaml index d9fe917e..079fe1ae 100644 --- a/internal/orchestrator/app/generator/app_template/sketch/sketch.yaml +++ b/internal/orchestrator/app/generator/app_template/sketch/sketch.yaml @@ -1,6 +1,5 @@ profiles: default: - fqbn: arduino:zephyr:unoq platforms: - platform: arduino:zephyr libraries: diff --git a/internal/orchestrator/app/generator/testdata/app-all.golden/sketch/sketch.yaml b/internal/orchestrator/app/generator/testdata/app-all.golden/sketch/sketch.yaml index d9fe917e..079fe1ae 100644 --- a/internal/orchestrator/app/generator/testdata/app-all.golden/sketch/sketch.yaml +++ b/internal/orchestrator/app/generator/testdata/app-all.golden/sketch/sketch.yaml @@ -1,6 +1,5 @@ profiles: default: - fqbn: arduino:zephyr:unoq platforms: - platform: arduino:zephyr libraries: diff --git a/internal/orchestrator/orchestrator.go b/internal/orchestrator/orchestrator.go index 51a808cd..8eb26001 100644 --- a/internal/orchestrator/orchestrator.go +++ b/internal/orchestrator/orchestrator.go @@ -1187,8 +1187,8 @@ func compileUploadSketch( response = "Error: " + msg.Error.String() case *rpc.InitResponse_Profile: response = fmt.Sprintf( - "Sketch profile configured: FQBN=%q, Port=%q", - msg.Profile.GetFqbn(), + "Sketch profile configured: Name=%q, Port=%q", + msg.Profile.GetName(), msg.Profile.GetPort(), ) } From fa54e74d4cc4c81b76f8bce86460a23552ed7531 Mon Sep 17 00:00:00 2001 From: Luca Rinaldi Date: Wed, 10 Dec 2025 11:08:53 +0100 Subject: [PATCH 27/27] fix: error in list libraries endpoint (#151) --- internal/api/handlers/app_sketch_libs.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/api/handlers/app_sketch_libs.go b/internal/api/handlers/app_sketch_libs.go index 79f8934d..f90e1470 100644 --- a/internal/api/handlers/app_sketch_libs.go +++ b/internal/api/handlers/app_sketch_libs.go @@ -124,7 +124,7 @@ func HandleSketchListLibraries(idProvider *app.IDProvider) http.HandlerFunc { libraries, err := orchestrator.ListSketchLibraries(r.Context(), app) if err != nil { - render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to clone app"}) + render.EncodeResponse(w, http.StatusInternalServerError, models.ErrorResponse{Details: "unable to list sketch libraries: " + err.Error()}) return } render.EncodeResponse(w, http.StatusOK, SketchListLibraryResponse{