This starts laying the foundation for supporting more languages, the
first of which will probably be Zig, and then Rust.
I already have a zig prototype working in another branch, just raw
dogged it to see if it would work, and since it does, now I'll do it
piece by piece but with hopefully slightly better code.
* refactor: improve build
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: coverage
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Currently, the 'goVersion' function is run without any directory set.
This is problematic when a build uses the 'dir' config in combination
with the 'gobinary' config. When 'gobinary' is a relative path (like a
script in the current repository), goVersion silently fails, returning
an empty string.
This commit refactors 'goVersion' to execute the command with '.Dir' set
to the 'build.Dir', in addition to now returning an error, so that
issues may be bubbled up in the build log, rather than silently failing.
It also adds a new helper function to facilitate running 'goVersion' by
creating a temporary executable that outputs a given 'version' string.
This function is only currently used by 'TestWithDefaults'.
Co-authored-by: Rob Prentiss <prentiss@apple.com>
* feat: support windows/arm64
closes#2404closes#2405
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: broken test
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* docs: deprecation warnings
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: try not to break if run on go1.15
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: go binary needs to be set
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* chore: gofumpt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: move to log
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: support apple silicon
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: test
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: go 1.16
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: go 1.16
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: go 1.16
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* test: fix
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: test case
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* Update .github/workflows/build.yml
Co-authored-by: Radek Simko <radek.simko@gmail.com>
* docs: go 1.16
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Co-authored-by: Radek Simko <radek.simko@gmail.com>
* feat: validate goos, goarch, goarm and gomips
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: lint
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* chore(deps): update nfpm
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: lint
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat: support to gomips
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: prefix
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* refactor: merging archive in the same repo
* refactor: merging archive in the same repo
* refactor: better organizing packages
* refactor: fixing renames
* fix: new dep version
* fix: makefile
* fix: zip/tar tests
* fix: gitigonore
* fix: s3 tests
* fix: archive test