Skip to content

Releases: houseabsolute/ubi

v0.0.20

05 Mar 04:45
fe2e0e8
Compare
Choose a tag to compare
  • This release includes a number of changes to support building on many more platforms.
    • The full list of architectures that binaries are released for is:
      • FreeBSD x86-64 new
      • Linux x86-64
      • Linux aarch64 (aka arm64)
      • Linux arm (32-bit)
      • Linux i586 (x86 32-bit) new
      • Linux mips (32-bit) new
      • Linux mipsel (32-bit little-endian) new
      • Linux mips64 new
      • Linux mips64el (little-endian) new
      • Linux PowerPC (32-bit) new
      • Linux PowerPC64 new
      • Linux PowerPC64le (little-endian) new
      • Linux riscv64 new
      • Linux s390x new
      • NetBSD x86-64 new
      • Windows x86-64
      • Windows i686 (32-bit) new
      • Windows aarch64 (aka arm64) new
      • macOS x86-64
      • macOS aarch64 (aka arm64)
    • The code supports some other OS and CPU architectures internally, but I do not have any way to build these:
      • Fuchsia x86-64 and aarch64 - not supported by cross.
      • Illumos x86-64 - OpenSSL build fails with odd error about granlib executable.
      • Linux Sparc64 - not supported by OpenSSL.
      • Solaris x86-64 - supported by cross but building the mio crate fails.
      • Solaris Sparc - not supported by OpenSSL.
    • In order to do this, ubi now uses the openssl crate under the hood instead of rustls. That's because rustls depends on ring, which does not support nearly as many CPU architectures as OpenSSL. The vendored feature for the openssl crate is enabled, which causes it to compile and statically link a copy of OpenSSL into the resulting binary. This makes the resulting binary more portable at the cost of not using the system OpenSSL.

v0.0.19

19 Feb 16:29
3de11a7
Compare
Choose a tag to compare
  • Fixed handling of bare executables on Windows. It would reject these because it wasn't expecting to download a file with a .exe extension.

v0.0.18

23 Jan 05:22
49d651f
Compare
Choose a tag to compare
  • Most errors no longer print out usage information. Now this is only printed for errors related to invalid CLI arguments. GH #22.
  • Really fix handling of bare xz-compressed binaries. Based on PR #27 from Marco Fontani.
  • Add support for bare bz-compressed binaries.

v0.0.17

29 Oct 17:27
af0244e
Compare
Choose a tag to compare
  • Fixed handling of xz-compressed tarballs. These were ignored even though there was code to handle them properly. Reported by Danny Kirkham. GH #24.

v0.0.16

04 Oct 21:38
0763b9d
Compare
Choose a tag to compare
  • Fixed matching the "aarch64" architecture for macOS. At least with Go, these binaries end up labeled as "arm64" instead of "aarch64", and ubi should treat that as a match. Reported by Ajay Vijayakumar.

v0.0.15

05 Sep 20:39
3dce006
Compare
Choose a tag to compare
  • Added a --self-upgrade flag, which will use ubi to upgrade ubi. Note that this flag does not work on Windows.

v0.0.14

05 Sep 16:28
e3a5325
Compare
Choose a tag to compare
  • Added a --url flag as an alternative to --project. This bypasses the need for using the GitHub API, so you don't have to worry about the API limits. This is a good choice for use in CI.

v0.0.13

01 Sep 18:59
Compare
Choose a tag to compare
  • Releases are now downloaded using the GitHub REST API instead of trying to just download a tarball directly. This lets ubi download releases from private projects.

v0.0.12

04 Jul 17:57
Compare
Choose a tag to compare
  • Handle bare xz-compressed binaries. Previously ubi would download and "install" the compressed file as an executable. Now ubi will uncompress this file properly. Based on PR #19 from Marco Fontani.
  • Fixed a bug in handling of xz-compressed tarballs. There was some support for this, but it wasn't complete. These should now be handled just like other compressed tarballs.

v0.0.11

03 Jul 17:45
Compare
Choose a tag to compare
  • Improved handling of urls passed to --project so any path that contains an org/user and repo works. For example https://github.com/houseabsolute/precious/releases and https://github.com/BurntSushi/ripgrep/pull/2049 will now work.
  • All Linux binaries are now compiled with musl statically linked instead of dynamically linking glibc. This should increase portability.
  • The Linux ARM target is now just "arm" instead of "armv7", without hard floats ("hf"). This should make the ARM binary more portable.