1. 16 Apr, 2020 4 commits
    • Cristian Maglie's avatar
      Added configuration option for proxy (#609) · ad9d5f6f
      Cristian Maglie authored
      * Use downloader.SetDefaultConfig() to set user-agent for the arduino-cli
      
      This change allows to not pass-trough the downloader configuration from
      function to function everywhere (and sometime we forget to pass it for
      example in the "core update-index" command).
      
      * Add support for network proxy configuration
      
      * Cosmetic: added blank space in configuration/defaults.go
      
      * Update go-downloader to 1.2.0
      
      * Refactored function to generate user-agent
      
      * Added a TODO for missing proxy usage in board list API query
      
      * Partially revert global network configuration.
      
      It's better to read the network configuration before each http request so
      in case it is changed using "Settings" functions in daemon mode the changes
      are immediately applied.
      ad9d5f6f
    • Cristian Maglie's avatar
      b54c3c03
    • per1234's avatar
      2c24b70b
    • Cristian Maglie's avatar
      Fixed path-relativization error when traversing different partitions (#658) · d111bc62
      Cristian Maglie authored
      It happened on MacOSX, but I do not exclude it may happen in other OS
      too: when building some large sketch for Arduino Due, the system libsam_xxx.a
      library is transformed to relative path, in particular the path
      
      /Users/cmaglie/Library/Arduino15/packages/arduino/hardware/sam/1.6.12/variants/arduino_due_x/libsam_sam3x8e_gcc_rel.a
      
      is made relative to the build folder
      
      /var/folder/x8/ttjf_wrd63823894128467832/T/arduino_build_988374/
      
      but since both paths resides in different partitions the result is:
      
      ../../../../../../Users/cmaglie/Library/Arduino15/packages/arduino/hardware/sam/1.6.12/variants/arduino_due_x/libsam_sam3x8e_gcc_rel.a
      
      so it traverse from /var/..../arduino_buil_988374 to the root and descend back into /Users
      
      This is bad for two reasons:
      
      1) the resulting "relative" path is longer than the original "absolute"
      path, defeating the purpose of the transformation.
      
      2) for some weird reason gcc is unable to find the libsam file using the
      relative path. It seems that when running inside /var/... it cannot "escape" to
      /Users/...
      
      This patch avoid the situation above by adding a check for the presence
      of ".." in the resulting path (basically avoiding path relativization
      outside of the build folder) and by checking that the resulting path is
      shorter than the original absolute path.
      d111bc62
  2. 14 Apr, 2020 2 commits
  3. 09 Apr, 2020 1 commit
  4. 08 Apr, 2020 3 commits
    • Cristian Maglie's avatar
      [skip-changelog] legacy removing: small advances (1st chunk of #481) (#627) · 5b805dda
      Cristian Maglie authored
      * Removed legacy utils.PrettyOSName function
      
      * Removed some constants
      
      Possibly a container structure for build properties may be defined later
      with helper methods (like GetBuildCorePath() ... etc.) to help in
      retrieving these properties.
      
      * Removed unused Context parameter
      
      * upgrade github.com/arduino/go-properties-orderedmap to v1.0.0
      5b805dda
    • Cristian Maglie's avatar
      'arduino-cli lib' command arguments are now case insensitive (#628) · c7742fab
      Cristian Maglie authored
      * Library install arguments are no more case sensitive
      
      This should make easier to install libraries from command line.
      
      * Moved lib args parsing functions in cli/lib
      
      * Factored ParseLibraryReferenceArgAndAdjustCase function
      
      Now the cli/lib module uses ParseLibraryReferenceArgAndAdjustCase so
      the cose-insensitive argument is allowed in all lib commands.
      
      * Added test for case sensitiveness in cli/lib params
      
      * Update test/test_lib.py
      Co-Authored-By: default avatarRoberto Sora <r.sora@arduino.cc>
      c7742fab
    • Roberto Sora's avatar
      [skip changelog] Github Actions bugfixes (#646) · adf9192b
      Roberto Sora authored
      * Replace $PWD with github actions workspace variable to solve invalid chars issue in container volume binding
      
      * Remove Tag step adding tag parse directly in notarization step
      
      * Add semver tool to enable pre-release flag in release creation
      adf9192b
  5. 07 Apr, 2020 1 commit
  6. 03 Apr, 2020 2 commits
  7. 02 Apr, 2020 2 commits
  8. 26 Mar, 2020 1 commit
  9. 25 Mar, 2020 1 commit
  10. 24 Mar, 2020 1 commit
  11. 20 Mar, 2020 2 commits
  12. 19 Mar, 2020 1 commit
    • per1234's avatar
      [skip changelog] Migrate relevant documentation pages from arduino/Arduino wiki (#616) · 97c4f004
      per1234 authored
      * Migrate relevant documentation from arduino/Arduino wiki
      
      * Trim trailing whitespace
      
      * Add newline to end of file
      
      * Increase heading levels so that the minimum level is h2
      
      This is required for table of contents generation.
      
      * Use supported line break markup
      
      The backslash at end of line to cause line break is not supported by the documentation build system.
      
      * Update links to migrated pages
      
      * Fix list markup
      
      The documentation build system requires a blank line before the start of a list
      97c4f004
  13. 18 Mar, 2020 1 commit
    • Cristian Maglie's avatar
      [skip changelog] Improved progress report from Compile (#625) · 0866d99f
      Cristian Maglie authored
      * legacy: inline compileFilesWithExtensionWithRecipe function
      
      This will help for a better progress management in a next commit since
      now we know in advance how many file will be compiled in this task.
      
      * Added missing copyright header
      
      * Improved progress report during Compile
      0866d99f
  14. 17 Mar, 2020 1 commit
    • Cristian Maglie's avatar
      [skip changelog] Remove legacy errors handling (#624) · 8252a8e3
      Cristian Maglie authored
      * legacy: use github.com/pkg/errors for error handling
      
      * legacy: updated ErrrofWithLogger to use github.com/pkg/errors
      
      * legacy: removed use of github.com/go-errors/errors in test helpers
      
      * legacy: removed github.com/go-errors/errors from deps
      8252a8e3
  15. 13 Mar, 2020 4 commits
  16. 11 Mar, 2020 1 commit
  17. 10 Mar, 2020 1 commit
    • Roberto Sora's avatar
      Export Prometheus telemetry in daemon mode (#573) · 2791756c
      Roberto Sora authored
      * Apply cosmetics
      
      * Implement ugly telemetry POC
      
      * Added prefix and moved Insrumentation inside the command package
      
      * Refactor the telemetry module
      
      * Implement configuration via Viper
      
      * Add stats flush in case of a not daemonized cli daemon proces
      
      * Add repertory to store installation id and secret
      
      * Repertory force write
      
      * Cosmetics
      
      * Use viper config for repertory dir
      
      * Add test for repertory file creation
      
      * Add testing for telemetry deaemon and repertory
      
      * Wait for repertory and kill daemon
      
      * Updated pyinvoke to use async feature to test the daemon
      
      * Updated daemon test timeout
      
      * Cosmetics
      
      * Set getDefaultArduinoDataDir as unexported
      
      * Cosmetics
      
      * Cosmetics
      
      * Cosmetics
      
      * Lint on repertory module
      
      * Set SIGTERM as kill signal in case of win platform to overcome pyinvoke bug
      
      * Import platform as a module
      
      * Reverse platform if for signal value
      
      * Extract pid value
      
      * Remove print leftover
      
      * Add better error handling in repertory creation
      
      * Update docs with old README extract
      
      * Remove telemetry.pattern setting from docs
      
      * Remove serverPattern config option for telemetry
      
      * Upgrade viper to 1.6.2
      
      * Defer stats Increment in compile command and explicit set for success/failure
      
      * Fix board list help message
      
      * Implement stats flush anyway to leverage module no-op in case of no handler configured
      
      * Rename "repertory" module in "inventory" and refactor Sanitize function
      
      * Sanitize ExportFile in command/compile
      
      * Refactor daemon start fixture to include daemon process cleanup
      
      * Use defer function to push success tag correctly updated
      
      * Use named return parameters to handle success tagging for a command stat
      2791756c
  18. 06 Mar, 2020 3 commits
  19. 05 Mar, 2020 3 commits
  20. 28 Feb, 2020 1 commit
  21. 26 Feb, 2020 1 commit
    • Cristian Maglie's avatar
      Fix paths handling for gdb (#597) · 561618a4
      Cristian Maglie authored
      * When running debugger always use forward slash in paths
      
      * Add more debugging output when running debugger commandline
      
      * Temporary fix for arduino.samd core 1.8.5
      
      * Fix gdb timeout on Windows
      561618a4
  22. 24 Feb, 2020 1 commit
  23. 21 Feb, 2020 2 commits
    • Roberto Sora's avatar
      Add support for compile with debug optimizations (#593) · 88468f21
      Roberto Sora authored
      * add debug symbols option in CLI and gRPC insterface
      
      * Calculate precompiled core path usign also build optimization flags
      
      * Align failing lecacy tests with new hashing behaviour
      88468f21
    • Roberto Sora's avatar
      Implement debug feature (#590) · fc130473
      Roberto Sora authored
      * Implement first draft of debugger gRPC service
      
      * Working stdio streaming
      
      * Improved stdio passing via GRPC
      
      * Adjusted protoc definitions
      
      * Handle errors gracefully
      
      * Add recipe calculation to debug command
      
      * First implementation of debug
      
      * updated client example for testing
      
      * Add test for debug recipe generation
      
      * Implement debug command
      
      * Implement copyStream
      
      * Refactor stream helpers
      
      * Extract recipe creation from debug command
      
      * Cosmetics here and there
      
      * Refreshed client example
      
      * Replace with utils function
      
      * Remove debug leftover
      
      * Refreshed client example
      
      * Moved debug proto to its package
      
      * Removed sketch.json
      
      * Apply general cosmetics
      
      * Add test binaries
      
      * Added test case for windows path flavor
      
      * Use path.FromSlash to test debug tool command generation cross platform easily
      
      * Avoid pipe leaking via closing readers and writes in case of abnormal termination
      
      * Update client example to better catch gdb prompt
      
      * Error messages cosmetics
      
      * Use errors.Wrap instead of fmt.Errorf
      Co-Authored-By: default avatarMassimiliano Pippi <m.pippi@arduino.cc>
      
      * Use errors.Wrap instead of fmt.Errorf
      Co-Authored-By: default avatarMassimiliano Pippi <m.pippi@arduino.cc>
      Co-authored-by: default avatarCristian Maglie <c.maglie@bug.st>
      Co-authored-by: default avatarMassimiliano Pippi <mpippi@gmail.com>
      fc130473