1. 05 Jun, 2024 2 commits
  2. 30 May, 2024 1 commit
  3. 29 May, 2024 1 commit
  4. 22 May, 2024 1 commit
    • Cristian Maglie's avatar
      [skip-changelog] Added more lint checks and fixed some warnings. (#2610) · dc13ef64
      Cristian Maglie authored
      * Enabled more checks in golangci-lint
      
      * Removed unreachable code (impossible condition detected by linter)
      
      internal/arduino/sketch/sketch.go:108:14: nilness: impossible condition: non-nil == nil (govet)
              if mainFile == nil {
                          ^
      
      * Removed function alias for i18n.Tr
      
      This allows a deeper lint-check of printf style functions, like:
      
        commands/instances.go:344:46: printf: github.com/arduino/arduino-cli/internal/i18n.Tr format %v reads arg #1, but call has 0 args (govet)
      		s := status.Newf(codes.FailedPrecondition, i18n.Tr("Loading index file: %v"), err)
      
      * Fixed a lot of i18n.Tr formatting errors
      
      This commit fixes invalid calls to i18n.Tr.
      
      1. Missing positional arguments, for example:
      
        return fmt.Errorf(i18n.Tr("installing %[1]s tool: %[2]s"), tool, err)
      
      in the above case the positional arguments must be part of the Tr call:
      
      -    return fmt.Errorf(i18n.Tr("installing %[1]s tool: %[2]s"), tool, err)
      +    return fmt.Errorf(i18n.Tr("installing %[1]s tool: %[2]s", tool, err))
      
      2. This also makes the fmt.Errorf call useless and it could be replaced by
      the less expensive errors.New:
      
      -    return fmt.Errorf(i18n.Tr("installing %[1]s tool: %[2]s", tool, err))
      +    return errors.New(i18n.Tr("installing %[1]s tool: %[2]s", tool, err))
      
      but we have cases of useless calls even when the string is a constant,
      for example:
      
      -    err := fmt.Errorf(i18n.Tr("no instance specified"))
      +    err := errors.New(i18n.Tr("no instance specified"))
      
      Unfortunately, this imperfection is not detected by the linter.
      
      3. The "%w" directive is not supported directly in i18n.Tr, so we have
         to wrap it around another fmt.Errorf:
      
      -    return nil, fmt.Errorf(i18n.Tr("reading library headers: %w"), err)
      +    return nil, fmt.Errorf("%s: %w", i18n.Tr("reading library headers"), err)
      
      * Removed useless call to i18n.Tr
      dc13ef64
  5. 21 May, 2024 1 commit
  6. 20 May, 2024 1 commit
  7. 17 May, 2024 1 commit
  8. 16 May, 2024 2 commits
  9. 15 May, 2024 14 commits
  10. 14 May, 2024 2 commits
    • Alessio Perugini's avatar
      Add [skip-changelog] prefix to dependabot commit (#2586) · eba4af60
      Alessio Perugini authored
      * Add [skip-changelog] prefix to dependabot commit
      
      We use the `[skip-changelog]` prefix to avoid having such commits in our
      changelog history.
      When merging dependabot PRs we always manually add the prefix, but it's
      common to forget about it at costs of manually removing that entry in
      the changelog when publishing a new release.
      
      With this PR dependabot wil add that prefix in every commit, the GH PR
      will be open with the same commit name, and when pressing the `merge squash`
      we won't need to manually add the prefix.
      
      * apply CR suggestions
      eba4af60
    • per1234's avatar
      [skip-changelog] Correct profile dependency version constraint format in demo... · 21c58031
      per1234 authored
      [skip-changelog] Correct profile dependency version constraint format in demo sketch project file (#2590)
      
      The Sketch Project File documentation includes a demonstration of a complete project file.
      
      Sketch project files use Arduino CLI's `<dependency ID> (<constraint>)` version constraint format but previously an
      unsupported `<dependency ID>@<version>` format was used in some of the dependencies specified in the demonstration
      project file. This would cause a panic if used in a project file:
      
      panic: profiles parsing err: invalid 'platform' directive
      
      goroutine 1 [running]:
      github.com/arduino/arduino-cli/arduino/sketch.(*projectRaw).getProfiles(0xc0003f2000)
              E:/git/arduino/arduino-cli/arduino/sketch/profiles.go:84 +0x1fe
      github.com/arduino/arduino-cli/arduino/sketch.LoadProjectFile(0xc0002fac40?)
              E:/git/arduino/arduino-cli/arduino/sketch/profiles.go:265 +0xb6
      github.com/arduino/arduino-cli/arduino/sketch.New(0xc00022d6c0?)
              E:/git/arduino/arduino-cli/arduino/sketch/sketch.go:90 +0x587
      github.com/arduino/arduino-cli/commands/sketch.LoadSketch({0xc000150060?, 0xc000000004?}, 0xc00022d9b8?)
              E:/git/arduino/arduino-cli/commands/sketch/load.go:30 +0x58
      github.com/arduino/arduino-cli/internal/cli/compile.runCompileCommand(0xc0003aa000?, {0xc0003029c0, 0x1, 0x15c1559?})
              E:/git/arduino/arduino-cli/internal/cli/compile/compile.go:162 +0x1dc
      github.com/spf13/cobra.(*Command).execute(0xc0003aa000, {0xc000302990, 0x1, 0x1})
              C:/Users/per/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:944 +0x863
      github.com/spf13/cobra.(*Command).ExecuteC(0xc00019e300)
              C:/Users/per/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:1068 +0x3a5
      github.com/spf13/cobra.(*Command).Execute(0x0?)
              C:/Users/per/go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:992 +0x13
      main.main()
              E:/git/arduino/arduino-cli/main.go:31 +0xda
      21c58031
  11. 09 May, 2024 1 commit
  12. 06 May, 2024 13 commits