Skip to content

Latest commit

 

History

History
139 lines (98 loc) · 5.57 KB

CHANGELOG.md

File metadata and controls

139 lines (98 loc) · 5.57 KB

Changelog - Go Build Action

Unreleased Changes (targeting v0.1.8)

Changed:

  • Dirty builds now fail early when running the action.
    In CI, there's no good use-case for dirty builds, however dirty builds still work locally when running the CLI directly.
  • You can now set TARGET_DIR when running the build subcommand of the CLI.
    This dictates the the output directory for the binary, as well as where to place other filed that need to be included in the release zip.
  • The -clean flag now produces a more useful error message when the worktree is dirty.
    It lists the paths which are flagged as dirty, to make it much easier to debug.

Added:

  • New inspect flag: -worktree which reports on the dirty/clean status of the worktree.
  • Development documentation docs/development.md
  • Build system:
    • make build - build dev (maybe dirty) CLI binaries & zips for all supported platforms.
    • make release - build release (clean) CLI binaries & zipe for all supported platforms.

Fixed:

  • No longer using the deprecated ::set-output syntax in the action YAML.

v0.1.7 - November 01, 2022

Fixed:

  • Darwin arm64 builds now succeed (#20)

v0.1.6 - October 19, 2022

Changed:

  • Windows executables automatically have a .exe extension.
  • Default verification result filenames now end with .verificationresult.json

v0.1.5 - October 12, 2022

  • Fix detection of Go version. Don't assume it's the same as the version that built actions-go-build itself.

v0.1.4 - September 29, 2022

Fixed

Added

  • New input product_version_meta for adding a metadata field to the product version.
  • New input work_dir for setting the working directory.
  • New CLI allows running local build and verification just like in CI.

Changed

  • The product_version input is now optional. Instead we should use a VERSION file in either the repo root, or .release/ or dev/.
  • The product_name input's default is now the working directory name, unless the working directory is the repository root, in which case it still defaults to the repository name.

Internal Changes

  • Add make version/set VERSION=<X.Y.Z> to set the development version.
  • Changelog generation more robust.
  • When pre-push hook fails you now see the output so it's easier to debug.
  • Readme tidied up.
  • Converted digest inputs to Go.
  • Converted build functionality to Go.
  • Converted remaining functionality to Go.

v0.1.3 - June 15, 2022

  • Adds .exe extension for windows binaries.
  • Clearer logging when calculated default values are used.
  • Internal:
    • Better handling of inputs with default values that also need to be manipulated or validated.
    • Better test coverage for input handling.
    • Target make changelog/add reminds about recent commits to help remember what's been done recently, regenerates the main CHANGELOG.md, and commits the result.
    • Release workflow to release via GitHub Actions.

v0.1.2 - June 13, 2022

  • Default product_name to repo_name
  • Automatically append +ent suffix for -enteprise products unless there's already any version metadata present.
  • Fix broken tests.

Development

  • Added convenience script to set the current development version: ./dev/release/set_version
  • Added git pre-push hook to check that tests pass, all docs are up to date and more.

v0.1.1 - June 10, 2022

More conventional default zip name. This means that e.g. actions-docker-build will guess the right zip file name without explicit config.

v0.1.0 - June 10, 2022

Fixed

  • Uses the-X flag when zipping to exclude UID and GID info from the zip. This seems to make the zip file more likely to reproduce correctly.

Improved

  • Test cases now moved to their own reusable workflow which parameterises the runner. This means there are half as many test cases defined, and we just run the entire suite twice, once for linux and once for mac.
  • Test cases are now ready to be run on our own self-hosted runners as well so we can exercise them in that environment.
  • When there is a zip mismatch, we now dump detailed info about the zip file using zipinfo and we stat the product binary to aid with debugging.
  • Logging now uses bold and coloured text to highlight major passages in the logs (bold blue) errors (bold red) and other important info (just bold).

v0.0.3 - June 08, 2022

  • More graceful handling of installing coreutils on macOS. Doesn't attempt to install again if GNU date already present.

v0.0.2 - June 08, 2022

  • Better error message when env vars missing.

v0.0.1 - June 08, 2022

Initial version.

See the README at this tag for details.