Skip to content

[ Breaking Change in upcoming Nightly ] Sketch level build folder is not created as default #1051

Closed
@ubidefeo

Description

@ubidefeo

Dear brave testers and bleeding edge users,
as time moves forward we introduce another breaking change in our next Nightly Build, so be wary of the changes and act accordingly.

If your workflow relies on picking files from the enclosed build folder you'll need to manually specify the output as per this PR #1042 (comment)

Before you could rely on a --dry-run flag which was kind of semantically incorrect, since it produced artifacts.
Now you need to specify the -e | --export-binaries flag if you want the old behaviour to be observed, and this has also been turned into both a configuration parameter for arduino-cli.yaml, as well as an Environment Variable.

These are, respectively
sketch.always_export_binaries for the sketch section in the arduino-cli.yaml file and
ARDUINO_SKETCH_ALWAYS_EXPORT_BINARIES for the ENV variable

These need to be set to true in order to take effect or false for the default behaviour.
If neither the arduino-cli.yaml parameter nor the Environment Variable are present, the default behaviour applies.

If your workflow already uses --output-dir you do not need to specify any of the above, because explicitly setting an output directory will carry such behaviour with and only copy files where requested.

This new behaviour reduce the need to manually add items to .gitignore and also reduces littering since a build folder is created in temp paths and those get flushed when the system needs to.

example for arduino-cli.yaml entry

sketch:
  always_export_binaries: true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions