- 06 May, 2024 40 commits
-
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
- Using configmap allows better handling of config types - The CLI "instances" now caches all the configuration at Create-time - Setting are now only accessible via gRPC calls - Helper methods have been implemented to access all key/value pairs
-
Cristian Maglie authored
Now the configuration is kept inside the arduinoCoreServiceImpl struct. No more direct access to the configuration, the required config values are passed as arguments or available trough struct fields. Viper object is now embedded into a new configuration.Setting object. This would allow to make better getters and setters methods in the next commits. HTTP downloader configuration is generated using the configuration.
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
ARDUINO_DATA_DIR, ARDUINO_DOWNLOADS_DIR, and ARDUINO_SKETCHBOOK_DIR are old variables kept just for backward compatibility.
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
Inlining methods in ArduinoCoreServiceImpl (part 16: CleanDownloadCacheDirectory, CheckForArduinoCLIUpdates)
-
Cristian Maglie authored
Inlining methods in ArduinoCoreServiceImpl (part 15: SupportedUserFields, ListProgrammersAvailableForUpload, EnumerateMonitorPortSettings)
-
Cristian Maglie authored
-
Cristian Maglie authored
Inlining methods in ArduinoCoreServiceImpl (part 13: NewSketch, LoadSketch, SetSketchDefaults, ArchiveSketch)
-
Cristian Maglie authored
-
Cristian Maglie authored
Inlining methods in ArduinoCoreServiceImpl (part 11: LibraryDownload, LibraryInstall, LibraryUpgrade, LibraryUninstall, LibraryUpgradeAll, LibraryResolveDependencies, LibrarySearch, LibraryList, ZipLibraryInstall, GitLibraryInstall)
-
Cristian Maglie authored
Inlining methods in ArduinoCoreServiceImpl (part 10: PlatformInstall, PlatformDownload, PlatformUninstall, PlatformUpgrade, PlatformSearch)
-
Cristian Maglie authored
-
Cristian Maglie authored
This change is quite challenging because it implements a bidirectional streaming service. The gRPC implementation is slightly simpler, BTW the command-line requires a bit of streams fiddling to get the same behaviour as before because now: * the Monitor call do not return anymore a clean io.ReadWriteCloser. * the call to srv.Monitor is blocking until the port is closed or the context is canceled.
-
Cristian Maglie authored
Added helpers to get download progress.
-
Cristian Maglie authored
Added helpers to get init progress.
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
The BoardListWatch RPC call has been converted into a method of the gRPC server implementation. This commit boasts an helper method to convert a gRPC streaming response into a channel.
-
Cristian Maglie authored
This patch inlines BoardList and expands the gRPC API to provide the same output given to the cli.
-
Cristian Maglie authored
-
Cristian Maglie authored
This commit is composed of many parts: * ArduinoCoreServiceImpl has been made private * A new function NewArduinoCoreService() has been added to instatiate a new service. * The service is created at CLI startup and sent down the initialization chain where needed. In this commit only the BoardListAll command has been ported to prove the feasability of the change.
-
Cristian Maglie authored
This change avoids the ugly 'convertErrorToRPCStatus' helper method since the gRPC server automatically recognize if the error implements the `GRPCStatus() *Status` interface method.
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-
Cristian Maglie authored
-