Skip to content

Releases: houseabsolute/ubi

v0.0.28

10 Sep 02:54
504e64c
Compare
Choose a tag to compare
  • Fixed a bug with tarballs that use the GNU sparse format. Such tarballs were not extracted properly, leading to the extracted executable being garbled. This was an issue with the macOS x86-64 release of ubi, which broke the --self-upgrade flag on that platform. Reported by Olaf Alders. GH #45.

v0.0.27

20 Aug 00:38
314b0d1
Compare
Choose a tag to compare
  • The bootstrap script should handle more possible ARM processors correctly, including for the Raspberry Pi. Reported by Olaf Alders. GH #42.
  • On macOS ARM, ubi will now pick an x86-64 macOS binary if no ARM binary is available. Reported by Olaf Alders. GH #44.

v0.0.26

04 Jun 05:06
5265cdd
Compare
Choose a tag to compare
  • The bootstrap script has been updated to try to handle more operating systems and CPU architectures. In addition, you can bypass its platform detection entirely by setting a FILENAME environment variable, which should be the name of one of the release file assets. Reported by @oanylund (Ole-Andreas Nylund). Addresses GH #38.
  • On 32-bit platforms, ubi would always fail when given a --matching option on the command line. Reported by Ole-Andreas Nylund. Fixes #40.

v0.0.25

13 May 19:05
eaddd7b
Compare
Choose a tag to compare

0.0.25 - 2023-05-13

  • Help output is now line-wrapped based on your terminal width.
  • Fix handling of tarballs that contain a directory matching the project name. In such cases, ubi would extract that directory instead of looking for the binary in the tarball. Reported by @rafi (Rafael Bodill). GH #36.

v0.0.24

23 Apr 03:03
30bf192
Compare
Choose a tag to compare
  • Fixed a bug when there were multiple potential matching releases for a platform, and either none of the releases were 64-bit or the platform itself was not a 64-bit platform.

v0.0.23

12 Apr 15:01
6a253c0
Compare
Choose a tag to compare
  • Fix matching filenames for the jq and mkcert projects. This expands the matching a bit on Linux x86 platforms to match "linux32" and "linux64". It also handles filenames with version strings like "mkcert-v1.4.4-linux-arm" properly. Previously, it treated the last bit after the "." in the version as an extension and rejected this as an invalid extension. Now there is a bit of a gross hack to check explicitly for versions in the filename that appear to be an extension. Reported by @rafi. Addresses #34.

v0.0.22

03 Apr 14:30
4938a39
Compare
Choose a tag to compare
  • The --self-upgrade option now works on Windows. However, it leaves behind a binary named ubi-old.exe that must be deleted manually. Addresses #21.

v0.0.21

13 Mar 00:17
0713d5e
Compare
Choose a tag to compare
  • Improved matching of OS and CPU architecture names in release asset names. This release should do a better job with more projects.

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.