Skip to content

Commit 092ca2d

Browse files
author
Akos Kitta
committed
Install the Arduino_BuiltIn to built-in location
Closes #1055. Signed-off-by: Akos Kitta <[email protected]>
1 parent 34a7fdb commit 092ca2d

File tree

8 files changed

+643
-9
lines changed

8 files changed

+643
-9
lines changed

Diff for: arduino-ide-extension/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -161,9 +161,9 @@
161161
"arduino": {
162162
"cli": {
163163
"version": {
164-
"owner": "arduino",
164+
"owner": "cmaglie",
165165
"repo": "arduino-cli",
166-
"commitish": "63f1e18"
166+
"commitish": "byebye_bundles"
167167
}
168168
},
169169
"fwuploader": {

Diff for: arduino-ide-extension/src/browser/contributions/first-startup-installer.ts

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import { LocalStorageService } from '@theia/core/lib/browser';
22
import { inject, injectable } from '@theia/core/shared/inversify';
3-
import { BoardsService, LibraryService } from '../../common/protocol';
3+
import {
4+
BoardsService,
5+
LibraryLocation,
6+
LibraryService,
7+
} from '../../common/protocol';
48
import { Contribution } from './contribution';
59

610
@injectable()
@@ -57,6 +61,7 @@ export class FirstStartupInstaller extends Contribution {
5761
item: builtInLibrary,
5862
installDependencies: true,
5963
noOverwrite: true, // We don't want to automatically replace custom libraries the user might already have in place
64+
installLocation: LibraryLocation.BUILTIN,
6065
});
6166
} catch (e) {
6267
// There's no error code, I need to parse the error message: https://github.com/arduino/arduino-cli/commit/2ea3608453b17b1157f8a1dc892af2e13e40f4f0#diff-1de7569144d4e260f8dde0e0d00a4e2a218c57966d583da1687a70d518986649R95

Diff for: arduino-ide-extension/src/common/protocol/library-service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ export interface LibraryService
1717
version?: Installable.Version;
1818
installDependencies?: boolean;
1919
noOverwrite?: boolean;
20+
installLocation?: LibraryLocation.BUILTIN | LibraryLocation.USER;
2021
}): Promise<void>;
2122
installZip(options: {
2223
zipUri: string;
@@ -50,7 +51,7 @@ export enum LibraryLocation {
5051
/**
5152
* In the `libraries` subdirectory of the Arduino IDE installation.
5253
*/
53-
IDE_BUILTIN = 0,
54+
BUILTIN = 0,
5455

5556
/**
5657
* In the `libraries` subdirectory of the user directory (sketchbook).

Diff for: arduino-ide-extension/src/node/cli-protocol/cc/arduino/cli/commands/v1/commands_grpc_pb.d.ts

+15
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ interface IArduinoCoreServiceService extends grpc.ServiceDefinition<grpc.Untyped
4949
platformList: IArduinoCoreServiceService_IPlatformList;
5050
libraryDownload: IArduinoCoreServiceService_ILibraryDownload;
5151
libraryInstall: IArduinoCoreServiceService_ILibraryInstall;
52+
libraryUpgrade: IArduinoCoreServiceService_ILibraryUpgrade;
5253
zipLibraryInstall: IArduinoCoreServiceService_IZipLibraryInstall;
5354
gitLibraryInstall: IArduinoCoreServiceService_IGitLibraryInstall;
5455
libraryUninstall: IArduinoCoreServiceService_ILibraryUninstall;
@@ -348,6 +349,15 @@ interface IArduinoCoreServiceService_ILibraryInstall extends grpc.MethodDefiniti
348349
responseSerialize: grpc.serialize<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
349350
responseDeserialize: grpc.deserialize<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
350351
}
352+
interface IArduinoCoreServiceService_ILibraryUpgrade extends grpc.MethodDefinition<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse> {
353+
path: "/cc.arduino.cli.commands.v1.ArduinoCoreService/LibraryUpgrade";
354+
requestStream: false;
355+
responseStream: true;
356+
requestSerialize: grpc.serialize<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest>;
357+
requestDeserialize: grpc.deserialize<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest>;
358+
responseSerialize: grpc.serialize<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
359+
responseDeserialize: grpc.deserialize<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
360+
}
351361
interface IArduinoCoreServiceService_IZipLibraryInstall extends grpc.MethodDefinition<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse> {
352362
path: "/cc.arduino.cli.commands.v1.ArduinoCoreService/ZipLibraryInstall";
353363
requestStream: false;
@@ -465,6 +475,7 @@ export interface IArduinoCoreServiceServer {
465475
platformList: grpc.handleUnaryCall<cc_arduino_cli_commands_v1_core_pb.PlatformListRequest, cc_arduino_cli_commands_v1_core_pb.PlatformListResponse>;
466476
libraryDownload: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadRequest, cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadResponse>;
467477
libraryInstall: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallRequest, cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
478+
libraryUpgrade: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
468479
zipLibraryInstall: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse>;
469480
gitLibraryInstall: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallRequest, cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallResponse>;
470481
libraryUninstall: grpc.handleServerStreamingCall<cc_arduino_cli_commands_v1_lib_pb.LibraryUninstallRequest, cc_arduino_cli_commands_v1_lib_pb.LibraryUninstallResponse>;
@@ -557,6 +568,8 @@ export interface IArduinoCoreServiceClient {
557568
libraryDownload(request: cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadResponse>;
558569
libraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.LibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
559570
libraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.LibraryInstallRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
571+
libraryUpgrade(request: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
572+
libraryUpgrade(request: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
560573
zipLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse>;
561574
zipLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse>;
562575
gitLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallResponse>;
@@ -663,6 +676,8 @@ export class ArduinoCoreServiceClient extends grpc.Client implements IArduinoCor
663676
public libraryDownload(request: cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryDownloadResponse>;
664677
public libraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.LibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
665678
public libraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.LibraryInstallRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryInstallResponse>;
679+
public libraryUpgrade(request: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
680+
public libraryUpgrade(request: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse>;
666681
public zipLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse>;
667682
public zipLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallRequest, metadata?: grpc.Metadata, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.ZipLibraryInstallResponse>;
668683
public gitLibraryInstall(request: cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallRequest, options?: Partial<grpc.CallOptions>): grpc.ClientReadableStream<cc_arduino_cli_commands_v1_lib_pb.GitLibraryInstallResponse>;

Diff for: arduino-ide-extension/src/node/cli-protocol/cc/arduino/cli/commands/v1/commands_grpc_pb.js

+34
Original file line numberDiff line numberDiff line change
@@ -489,6 +489,28 @@ function deserialize_cc_arduino_cli_commands_v1_LibraryUpgradeAllResponse(buffer
489489
return cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeAllResponse.deserializeBinary(new Uint8Array(buffer_arg));
490490
}
491491

492+
function serialize_cc_arduino_cli_commands_v1_LibraryUpgradeRequest(arg) {
493+
if (!(arg instanceof cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest)) {
494+
throw new Error('Expected argument of type cc.arduino.cli.commands.v1.LibraryUpgradeRequest');
495+
}
496+
return Buffer.from(arg.serializeBinary());
497+
}
498+
499+
function deserialize_cc_arduino_cli_commands_v1_LibraryUpgradeRequest(buffer_arg) {
500+
return cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest.deserializeBinary(new Uint8Array(buffer_arg));
501+
}
502+
503+
function serialize_cc_arduino_cli_commands_v1_LibraryUpgradeResponse(arg) {
504+
if (!(arg instanceof cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse)) {
505+
throw new Error('Expected argument of type cc.arduino.cli.commands.v1.LibraryUpgradeResponse');
506+
}
507+
return Buffer.from(arg.serializeBinary());
508+
}
509+
510+
function deserialize_cc_arduino_cli_commands_v1_LibraryUpgradeResponse(buffer_arg) {
511+
return cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse.deserializeBinary(new Uint8Array(buffer_arg));
512+
}
513+
492514
function serialize_cc_arduino_cli_commands_v1_ListProgrammersAvailableForUploadRequest(arg) {
493515
if (!(arg instanceof cc_arduino_cli_commands_v1_upload_pb.ListProgrammersAvailableForUploadRequest)) {
494516
throw new Error('Expected argument of type cc.arduino.cli.commands.v1.ListProgrammersAvailableForUploadRequest');
@@ -1325,6 +1347,18 @@ libraryInstall: {
13251347
responseSerialize: serialize_cc_arduino_cli_commands_v1_LibraryInstallResponse,
13261348
responseDeserialize: deserialize_cc_arduino_cli_commands_v1_LibraryInstallResponse,
13271349
},
1350+
// Upgrade a library to the newest version available.
1351+
libraryUpgrade: {
1352+
path: '/cc.arduino.cli.commands.v1.ArduinoCoreService/LibraryUpgrade',
1353+
requestStream: false,
1354+
responseStream: true,
1355+
requestType: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeRequest,
1356+
responseType: cc_arduino_cli_commands_v1_lib_pb.LibraryUpgradeResponse,
1357+
requestSerialize: serialize_cc_arduino_cli_commands_v1_LibraryUpgradeRequest,
1358+
requestDeserialize: deserialize_cc_arduino_cli_commands_v1_LibraryUpgradeRequest,
1359+
responseSerialize: serialize_cc_arduino_cli_commands_v1_LibraryUpgradeResponse,
1360+
responseDeserialize: deserialize_cc_arduino_cli_commands_v1_LibraryUpgradeResponse,
1361+
},
13281362
// Install a library from a Zip File
13291363
zipLibraryInstall: {
13301364
path: '/cc.arduino.cli.commands.v1.ArduinoCoreService/ZipLibraryInstall',

Diff for: arduino-ide-extension/src/node/cli-protocol/cc/arduino/cli/commands/v1/lib_pb.d.ts

+73-1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@ export class LibraryInstallRequest extends jspb.Message {
8282
getNoOverwrite(): boolean;
8383
setNoOverwrite(value: boolean): LibraryInstallRequest;
8484

85+
getInstallLocation(): LibraryInstallLocation;
86+
setInstallLocation(value: LibraryInstallLocation): LibraryInstallRequest;
87+
8588

8689
serializeBinary(): Uint8Array;
8790
toObject(includeInstance?: boolean): LibraryInstallRequest.AsObject;
@@ -100,6 +103,7 @@ export namespace LibraryInstallRequest {
100103
version: string,
101104
noDeps: boolean,
102105
noOverwrite: boolean,
106+
installLocation: LibraryInstallLocation,
103107
}
104108
}
105109

@@ -134,6 +138,69 @@ export namespace LibraryInstallResponse {
134138
}
135139
}
136140

141+
export class LibraryUpgradeRequest extends jspb.Message {
142+
143+
hasInstance(): boolean;
144+
clearInstance(): void;
145+
getInstance(): cc_arduino_cli_commands_v1_common_pb.Instance | undefined;
146+
setInstance(value?: cc_arduino_cli_commands_v1_common_pb.Instance): LibraryUpgradeRequest;
147+
148+
getName(): string;
149+
setName(value: string): LibraryUpgradeRequest;
150+
151+
getNoDeps(): boolean;
152+
setNoDeps(value: boolean): LibraryUpgradeRequest;
153+
154+
155+
serializeBinary(): Uint8Array;
156+
toObject(includeInstance?: boolean): LibraryUpgradeRequest.AsObject;
157+
static toObject(includeInstance: boolean, msg: LibraryUpgradeRequest): LibraryUpgradeRequest.AsObject;
158+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
159+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
160+
static serializeBinaryToWriter(message: LibraryUpgradeRequest, writer: jspb.BinaryWriter): void;
161+
static deserializeBinary(bytes: Uint8Array): LibraryUpgradeRequest;
162+
static deserializeBinaryFromReader(message: LibraryUpgradeRequest, reader: jspb.BinaryReader): LibraryUpgradeRequest;
163+
}
164+
165+
export namespace LibraryUpgradeRequest {
166+
export type AsObject = {
167+
instance?: cc_arduino_cli_commands_v1_common_pb.Instance.AsObject,
168+
name: string,
169+
noDeps: boolean,
170+
}
171+
}
172+
173+
export class LibraryUpgradeResponse extends jspb.Message {
174+
175+
hasProgress(): boolean;
176+
clearProgress(): void;
177+
getProgress(): cc_arduino_cli_commands_v1_common_pb.DownloadProgress | undefined;
178+
setProgress(value?: cc_arduino_cli_commands_v1_common_pb.DownloadProgress): LibraryUpgradeResponse;
179+
180+
181+
hasTaskProgress(): boolean;
182+
clearTaskProgress(): void;
183+
getTaskProgress(): cc_arduino_cli_commands_v1_common_pb.TaskProgress | undefined;
184+
setTaskProgress(value?: cc_arduino_cli_commands_v1_common_pb.TaskProgress): LibraryUpgradeResponse;
185+
186+
187+
serializeBinary(): Uint8Array;
188+
toObject(includeInstance?: boolean): LibraryUpgradeResponse.AsObject;
189+
static toObject(includeInstance: boolean, msg: LibraryUpgradeResponse): LibraryUpgradeResponse.AsObject;
190+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
191+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
192+
static serializeBinaryToWriter(message: LibraryUpgradeResponse, writer: jspb.BinaryWriter): void;
193+
static deserializeBinary(bytes: Uint8Array): LibraryUpgradeResponse;
194+
static deserializeBinaryFromReader(message: LibraryUpgradeResponse, reader: jspb.BinaryReader): LibraryUpgradeResponse;
195+
}
196+
197+
export namespace LibraryUpgradeResponse {
198+
export type AsObject = {
199+
progress?: cc_arduino_cli_commands_v1_common_pb.DownloadProgress.AsObject,
200+
taskProgress?: cc_arduino_cli_commands_v1_common_pb.TaskProgress.AsObject,
201+
}
202+
}
203+
137204
export class LibraryUninstallRequest extends jspb.Message {
138205

139206
hasInstance(): boolean;
@@ -899,6 +966,11 @@ export namespace GitLibraryInstallResponse {
899966
}
900967
}
901968

969+
export enum LibraryInstallLocation {
970+
LIBRARY_INSTALL_LOCATION_USER = 0,
971+
LIBRARY_INSTALL_LOCATION_BUILTIN = 1,
972+
}
973+
902974
export enum LibrarySearchStatus {
903975
LIBRARY_SEARCH_STATUS_FAILED = 0,
904976
LIBRARY_SEARCH_STATUS_SUCCESS = 1,
@@ -910,7 +982,7 @@ export enum LibraryLayout {
910982
}
911983

912984
export enum LibraryLocation {
913-
LIBRARY_LOCATION_IDE_BUILTIN = 0,
985+
LIBRARY_LOCATION_BUILTIN = 0,
914986
LIBRARY_LOCATION_USER = 1,
915987
LIBRARY_LOCATION_PLATFORM_BUILTIN = 2,
916988
LIBRARY_LOCATION_REFERENCED_PLATFORM_BUILTIN = 3,

0 commit comments

Comments
 (0)