Releases: houseabsolute/ubi
Releases · houseabsolute/ubi
v0.0.20
- 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 themio
crate fails. - Solaris Sparc - not supported by OpenSSL.
- Fuchsia x86-64 and aarch64 - not supported by
- In order to do this,
ubi
now uses theopenssl
crate under the hood instead ofrustls
. That's becauserustls
depends onring
, which does not support nearly as many CPU architectures as OpenSSL. Thevendored
feature for theopenssl
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.
- The full list of architectures that binaries are released for is:
v0.0.19
- 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
v0.0.17
v0.0.16
- 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
- Added a
--self-upgrade
flag, which will useubi
to upgradeubi
. Note that this flag does not work on Windows.
v0.0.14
- 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
- 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
- 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
- Improved handling of urls passed to
--project
so any path that contains an org/user and repo works. For examplehttps://github.com/houseabsolute/precious/releases
andhttps://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.