1. 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
  2. 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
  3. 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
  4. 13 Mar, 2020 4 commits
  5. 11 Mar, 2020 1 commit
  6. 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
  7. 06 Mar, 2020 3 commits
  8. 05 Mar, 2020 3 commits
  9. 28 Feb, 2020 1 commit
  10. 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
  11. 24 Feb, 2020 1 commit
  12. 21 Feb, 2020 3 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
    • Akos Kitta's avatar
      Added better error handling for the gRPC server. (#592) · 1eefe49f
      Akos Kitta authored
      - Consumers of the CLI have a better exit code when it fails at startup
       - Logged message to stdout, so gRPC clients know, it is time to connect
      Signed-off-by: default avatarAkos Kitta <kittaakos@typefox.io>
      1eefe49f
  13. 20 Feb, 2020 1 commit
  14. 14 Feb, 2020 1 commit
  15. 12 Feb, 2020 3 commits
  16. 11 Feb, 2020 3 commits
  17. 06 Feb, 2020 1 commit
    • Cristian Maglie's avatar
      Fix libraries priority selection (again) (#574) · fe48668a
      Cristian Maglie authored
      * Reorganized tests
      
      * Fixed library.IsArchitectureIndependent method.
      
      Now it returns true for libraries that do not specify "architecture"
      fiels.
      
      * Fixed yet another even more convoluted case in bundle lib selection
      
      Fix #572
      
      * Makes linter happy...
      fe48668a
  18. 04 Feb, 2020 2 commits
  19. 30 Jan, 2020 1 commit
  20. 23 Jan, 2020 2 commits
  21. 20 Jan, 2020 3 commits
  22. 17 Jan, 2020 2 commits
    • Cristian Maglie's avatar
      Remove ignored Configuration GRPC API (#558) · 43d863da
      Cristian Maglie authored
      * Removed ignored GRPC api
      
      * Regenerate proto files
      
      * go mod tidy
      Co-authored-by: default avatarRoberto Sora <r.sora@arduino.cc>
      43d863da
    • Matthijs Kooijman's avatar
      Load contents of source files only when needed (#559) · 24503d57
      Matthijs Kooijman authored
      * [skip changelog] Pass path and contents separately to SketchSaveItemCpp
      
      Previously, these two arguments were wrapped together in a sketch.Item,
      but since all callers build such an item during the call, there is no
      compelling reason to do it like this. This commit splits the Item
      parameter into a separate path and contents, which prepares for removing
      the file contents from sketch.Item later.
      
      * [skip changelog] Let SketchMergeSources return error
      
      This adds an error return value, which is currently always nil. This
      prepares for making changes that require returning errors.
      
      * [skip changelog] Let sketch.Item.GetSourceStr return error
      
      This adds an error return value to this method, which is currently
      always nil. This prepares for actually returning errors later.
      
      * Load sketch file contents only when needed
      
      Previously, the full contents of *all* sketch files would be loaded into
      memory. This includes all source and header files inside the sketch
      directory, even when they will not even be compiled (e.g.
      subdirectories other than src). In practice, only the .ino file contents
      will actually be used, so these are now read on demand.
      
      Note that when copying the sketch into the build directory, the contents
      of all these sketch files *is* used, but that code (`writeIfDifferent()`
      in `arduino/builder/sketch.go`) already did not use the preloaded data
      but read the file contents when copying.
      
      For small sketches, this does not make much of a difference, but bigger
      sketches, especially when they include libraries, core definitions,
      tools, examples, documentation, etc. the memory usage can quite explode,
      for no good reason.
      24503d57