Skip to content

Releases: simplesurance/baur

v3.4.2

16 Apr 13:20
@fho fho
a3d2bf8
Compare
Choose a tag to compare

Release Notes

Changes

  • 3. party packages updates
  • baur show: now shows the Config Files of an app after the Name line

Bugfixes

  • baur run does not panic anymore on some errors when a command is executed. This happened for example if the path to the executed binary did not exist.

Full changelog: v3.4.1...v3.4.2

v3.4.1

04 Mar 17:35
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • built with Golang 1.22
  • 3. party packages updates
  • Golang Input Resolver
    • Improved error message when executing go env fails

Bug Fixes

  • Golang Input Resolver
    • When baur was not run from the application directory and Golang sources
      were resolved via a fileglob pattern that matched multiple main packages,
      the result only contained the source files for one of them.
      file= and fileglob= patterns are now always converted to
      absolute paths before to prevent the issue.
    • When go env was invoked when resolving Golang input files, it was run in
      the current directory instead of the application directory.
      No cases are known where it caused issue, all go env variables
      that are read and used are normally the same independent of the execution
      directory.

Full changelog: v3.4.0...v3.4.1

v3.4.0

01 Feb 17:23
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • JSON Support:
    The commands baur ls apps, baur status and baur ls outputs now support
    JSON as output format via the new --format=json parameter.
    The --csv parameter is deprecated in favor of --format=csv.
  • Change Tracking:
    • Symlinks in input file paths are now resolved and tracked.
      Tasks are rerun when:
      • a symlink is replaced with their target file and vice-versa,
      • a symlink target path is changed to a file that has the same content
        then the previous one,
    • On Unix systems, changes of the executable bit of the owner of InputFiles
      are now tracked, changes trigger tasks reruns.
  • Shell Completion:
    Completion for the --repository parameter is limited to directory paths.
  • 3. party package updates

Bug Fixes

  • baur run: when --show-task-output or --verbose was passed, the output of
    the executed command was interpreted as format string for the log-printf
    function, this resulted in unexpected output.

Full changelog: v3.3.0...v3.4.0

v3.3.0

19 Jan 13:33
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • baur now supports to query git object IDs from a git repository and use them as file digests.
    This is faster then having to read each file and calculate it's digest.
    Object IDs for untracked or modified files are calculated by running git hash-object.
    For non-git repositories, input file digest calculation remains as before, the SHA384 of their content is calculated.
  • added global --repository parameter, to specify a path to the baur repository, enabling running baur from outside of a baur repository

v3.2.0

17 Jan 14:19
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • For task artifacts that are uploaded to S3 , baur now stores the s3://<BUCKET>/<OBJECT-ID> URI instead of the https path-style URL of the S3 object.
  • baur run and baur status: got a new --require-clean-git-worktree parameter, when passed and the git repository of the baur project contains files that are not tracked or have been modified and not commited baur will fail
  • baur run
    • When the execution of a task command fails, the execution directory, the executed binary and it
      s argument, if the process was killed by a signal or if broken pipe occurred is now included in the error message, the text coloring has also been improved
    • When the output of the command is streamed and error occurs during streaming, the error message contains the name of the stream
  • Release artifacts built with Go 1.21.6

Bug Fixes

  • baur run:
    • fixed that when writing to one of the output channels failed, the error message about the command execution could lack the last stdout and stderr output of the command
    • fixed that when --verbose was passed, newlines were duplicated in the streamed output

Semantic Versioning from Next Minor Version

From baur 3.3.0 on the semantic versioning rules will only be applied to the CLI and database scheme of baur.
The public API of the baur Go packages will be excluded from semantic versioning.

v3.1.1

09 Jan 17:26
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • baur run: when running a command and --show-task-output is not passed, it's output is not splitted into lines and unnecessarily anymore
  • Third party aws packages were updated

Bug Fixes

  • when --show-task-output is passed to baur run and an executed command prints lines longer then 512KB to stdout or stderr, the execution of the command won't fail anymore. Instead a message will be logged and streaming the output is stopped.
    Full changelog: v3.1.0...v3.1.1

v3.1.0

05 Jan 15:08
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • Binaries built with Go 1.21.5
  • Third-party packages updated

baur run

  • Significantly reduced memory consumption when running task commands that generate a lot of output
  • When --show-task-output is passed, the stderr output from the command is now colored red
  • On error only the first and last 8KB of output per stdout and stderr is shown, instead of the complete output
  • On error the stdout and stderr output of the task are shown consecutively instead of intermixed

Full changelog: v3.0.1...v3.1.0

v3.0.2

17 May 13:23
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • entries in the application_dirs list in the .baur.toml file are now
    deduplicated, to prevent that baur searches the same directory twice if it
    is listed multiple times
  • built with go 1.20
  • 3. party package updates:
    • github.com/aws/aws-sdk-go-v2
    • github.com/bmatcuk/doublestar/v4
    • github.com/containerd/containerd
    • github.com/docker/docker
    • github.com/fatih/color from 1.13.0 to 1.15.0
    • github.com/fsouza/go-dockerclient from 1.9.0 to 1.9.7
    • github.com/jackc/pgx/v4 from 4.17.2 to 4.18.1
    • github.com/spf13/cobra from 1.6.1 to 1.7.0
    • github.com/stretchr/testify from 1.8.1 to 1.8.2
    • golang.org/x/tools from 0.3.0 to 0.9.1

Bug Fixes

  • if an application was discovered by multiple application_dirs entries in
    the .baur.toml file, baur ls apps and baur status listed it multiple
    times, instead of once, when the commands were called without specifiers.

v3.0.1

13 Dec 11:16
@fho fho
Compare
Choose a tag to compare

Release Notes

Changes

  • built with go 1.19.4
  • 3. party package updates:
    • github.com/aws/aws-sdk-go-v2/service/s3
    • github.com/aws/aws-sdk-go-v2/feature/s3/manager

Bug Fixes

  • when the baur process got killed while it executed a command for a task, the task process continued to run.
    On Linux and FreeBSD the task process is now terminated via SIGKILL when the baur process gets killed.
    The issue still persists on other OSes (#403).

Full changelog: v3.0.0...v3.0.1

v3.0.0

05 Dec 14:36
@fho fho
Compare
Choose a tag to compare

Release Notes

The version brings support for environment variable inputs, excluding files from
inputs by glob patterns, better shell completion support and major performance
improvements when resolving input files.

The configuration files and the database schema is not compatible with
version 2. Upgrade instructions and documentation can be found in the Wiki.

Changes

New Features

Input Resolvers

  • Environment variables can be tracked as inputs of tasks in the new
    Input.EnvironmentVariables config section
  • Files can be excluded from inputs by specifying glob patterns in a
    Input.ExcludedFiles config file section

Command Line

  • support to generate shell completion scripts for
    • fish via baur init fishcomp,
    • zsh via: baur init zshcomp,
    • powershell via: baur init powershellcomp
  • shell completion completes arguments to app-names, task-names, task-ids and
    application directories, when the completion is done inside a baur repository.
    Arguments are not completed anymore to files or directories if those are not
    supported by the command.
  • baur upgrade db: is a new command to upgrade the database schema to the current
    version
  • baur init bashcomp got a --stdout parameter to write the completion script
    to stdout

Enhancements

  • Inputs:

    • the performance penalty of enabling git_tracked_only for file inputs is
      gone, resolving inputs with git_tracked_only enabled is now similar fast
      then without
    • performance of resolving and hashing input files was improved,
    • multiple ** patterns in an input file path can now be specified, instead
      of only 1 occurrence
  • Misc:

    • baur init bashcomp now prints how to load the written shell completion script
    • build with go 1.19.3
    • third party package updates
    • windows binaries are now provided in .zip instead of .tar.xz archives
    • windows/arm64 release binaries are created
    • a signed file containing release file checksum is provided

Bug fixes

  • input file paths are correctly calculated when baur is invoked in path were
    the repository root directory is a symlink

Full changelog: v2.2.0...v3.0.0