github aquaproj/aqua v2.5.0

latest releases: v2.37.2, v2.37.1, v2.37.0...
18 months ago

Pull Requests | Issues | v2.4.3...v2.5.0

Features

#1925 #1926 Execute commands by execve(2) by default

https://aquaproj.github.io/docs/reference/execve-2

#710 #729 #1597 #1925

⚠️ In Windows this feature doesn't work.
In Windows, aqua creates small shell scripts and bat scripts instead of aqua-proxy and symbolic links.
And Windows doesn't support execve(2), so the environment variable AQUA_X_SYS_EXEC is ignored.

When a command x is executed via aqua, the command is executed as the following.

  1. $AQUA_ROOT_DIR/bin/x: symbolic link to aqua-proxy
  2. aqua-proxy executes the command aqua exec -- x
  3. aqua executes x

So the command x is executed via aqua-proxy and aqua.
Until aqua v2.5.0, aqua-proxy and aqua executed commands as subprocess. You can confirm it by checking the process tree by pstree command.

e.g.

$ nvim # nvim is managed by aqua
$ pstree -s nvim
     \-+= 00719 shunsukesuzuki -zsh
       \-+= 09955 shunsukesuzuki nvim # aqua-proxy
         \-+- 09956 shunsukesuzuki aqua exec -- nvim
           \--- 09957 shunsukesuzuki /Users/shunsukesuzuki/.local/share/aquaproj-aqua/pkgs/github_release/github.com/neovim/neovim/v0.7.0/nvim-macos.tar.gz/nvim-osx64/bin/nvim
aqua-proxy -> aqua -> x

Sometimes this behaviour caused trouble. #710 #1597

From aqua v2.5.0, aqua-proxy and aqua execute commands by execve(2) in Linux and macOS by default.

So extra subprocess isn't raised.

     \-+= 82315 shunsukesuzuki -zsh
       \-+= 82630 shunsukesuzuki nvim

If you feel aqua becomes unstable due to this feature, you can disable this feature by the environment variable AQUA_X_SYS_EXEC.

export AQUA_X_SYS_EXEC=false

Others

#1926 Update aqua-proxy to v1.2.0
#1964 Improve error messages when it failed to install aqua-proxy, cosign, and slsa-verifier

Don't miss a new aqua release

NewReleases is sending notifications on new releases.