Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use hard links on Windows instead of batch files #2918

Closed
futsuuu opened this issue May 26, 2024 · 12 comments · Fixed by #3005
Closed

Use hard links on Windows instead of batch files #2918

futsuuu opened this issue May 26, 2024 · 12 comments · Fixed by #3005
Labels
enhancement New feature or request

Comments

@futsuuu
Copy link

futsuuu commented May 26, 2024

Feature Overview

Hard links work without developer mode and administrator permissions unlike symbolic links on Windows.

Why is the feature needed?

  1. batch file is slow
  2. unneeded prompt Terminate batch job (Y/N)? will be shown on Ctrl-C

Workaround

No response

Example Code

No response

Note

No response

@futsuuu futsuuu added the enhancement New feature or request label May 26, 2024
@suzuki-shunsuke
Copy link
Member

Thank you for your proposal.
I'm not familiar with Windows and Hard link on Windows, but it's interesting.

Maybe Hard link is useful to solve #2875 .
aqua uses shell scripts and bat files, but this can cause some troubles.

@sapphi-red
Copy link
Contributor

sapphi-red commented May 31, 2024

I tried this out by the following steps and it seems to work. I'm not sure if there's any edge cases though.

  1. Clone https://github.com/aquaproj/aqua-proxy
  2. Open that directory
  3. Run aqua i
  4. Add cmdName, _ = strings.CutSuffix(cmdName, ".exe") after this line: https://github.com/aquaproj/aqua-proxy/blob/a0c37569b7752c23aa57bd1b054a791b70fb2891/pkg/cli/proxy.go#L25
  5. Run go build .\cmd\aqua-proxy\
  6. Make hard link from ./aqua-proxy.exe to cmdx.exe (Run New-Item -ItemType HardLink -Path cmdx.exe -Value ./aqua-proxy.exe if you're using powershell)
  7. Run ./cmdx.exe --version. cmdx worked correctly.
  8. Edit https://github.com/aquaproj/aqua-proxy/blob/a0c37569b7752c23aa57bd1b054a791b70fb2891/aqua/cmdx.yaml#L2 to use different version
  9. Run aqua update-checksum
  10. Run ./cmdx.exe --version. The different version was downloaded and cmdx worked correctly.

I tried the steps above with powershell. I tried running ./cmdx.exe --version with cmd and git bash; it worked, too.

@W1M0R
Copy link

W1M0R commented Jul 11, 2024

UPDATE: The following issue only occurs if I run aqua inside nushell. Inside powershell/pwsh, it works as expected.

Maybe this will resolve an issue I am having.

I have go 1.22.5 installed globally (via scoop) and go 1.22.4 installed locally (via aqua). As you can see in the PATH, aqua packages should have precedence before scoop packages.

See the following output:

> open aqua.yaml
╭────────────┬────────────────────────────────────────────────╮
│            │ ╭───┬──────────┬──────────╮                    │
│ registries │ │ # │   type   │   ref    │                    │
│            │ ├───┼──────────┼──────────┤                    │
│            │ │ 0 │ standard │ v4.197.0 │                    │
│            │ ╰───┴──────────┴──────────╯                    │
│            │ ╭───┬────────────────────────────────────────╮ │
│ packages   │ │ # │                  name                  │ │
│            │ ├───┼────────────────────────────────────────┤ │
│            │ │ 1 │ golang/[email protected]                     │ │
│            │ ╰───┴────────────────────────────────────────╯ │
╰────────────┴────────────────────────────────────────────────╯


> $env.PATH
# PATH output is redacted to show the important parts and ordering
╭────┬─────────────────────────────────────────────────────────────────────────────────────────╮
│  6 │ C:\Users\user2\AppData\Local\aquaproj-aqua\bat                                          │
│ 36 │ C:\Users\user2\scoop\shims                                                              │
╰────┴─────────────────────────────────────────────────────────────────────────────────────────╯

> which go
╭───┬─────────┬───────────────────────────────────────────────────────┬──────────╮
│ # │ command │                         path                          │   type   │
├───┼─────────┼───────────────────────────────────────────────────────┼──────────┤
│ 0 │ go      │ C:\Users\user2\AppData\Local\aquaproj-aqua\bat\go.bat │ external │
╰───┴─────────┴───────────────────────────────────────────────────────┴──────────╯

> which go.exe
╭───┬─────────┬───────────────────────────────────┬──────────╮
│ # │ command │               path                │   type   │
├───┼─────────┼───────────────────────────────────┼──────────┤
│ 0 │ go.exe  │ C:\Users\user2\scoop\shims\go.exe │ external │
╰───┴─────────┴───────────────────────────────────┴──────────╯

> go version
# I didn't expect the global (scoop) version of go to be used.
go version go1.22.5 windows/amd64

> go.bat version
# It shouldn't be necessary to use the .bat extension to force the local (aqua) version of go.
go version go1.22.4 windows/amd64

According to these remarks:

The Windows operating system searches using default file name extensions in the following order of precedence: .exe, .com, .bat, and .cmd. Which means if you're looking for a batch file named, acct.bat, but have an app named acct.exe in the same directory, you must include the .bat extension at the command prompt.

This also has useful information: https://stackoverflow.com/questions/1653472/whats-the-relative-order-with-which-windows-search-for-executable-files-in-path

My PATHEXT variable is .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW;.CPL. This is the default on my machine and I don't want to change it.

This could also be useful: https://learn.microsoft.com/en-us/previous-versions//cc723564(v=technet.10)#command-search-sequence

The shell now searches each directory specified by the PATH environment variable, in the order listed, for an executable file matching the command name. If a match is found, the external command (the executable file) executes. If no match is found, the shell reports an error and command processing completes.

If the command name includes a file extension, the shell searches each directory for the exact file name specified by the command name. If the command name does not include a file extension, the shell adds the extensions listed in the PATHEXT environment variable, one by one, and searches the directory for that file name. Note that the shell tries all possible file extensions in a specific directory before moving on to search the next directory (if there is one).

To execute this (C:\>edit) command, the shell searches the current directory and then each directory in the search path. Assuming that the PATHEXT variable contains .COM;.EXE;.BAT;.CMD, each directory is searched for EDIT.COM, EDIT.EXE, EDIT.BAT and EDIT.CMD before the shell moves on to the next search directory.

According to the description above, using go without the .bat extension should still resolve to go.bat, but somehow a go.exe is found, and executed instead.

Maybe the issue I am having is related to this nushell issue:

  1. Windows Nushell does not respect %PATHEXT% nushell/nushell#7171
  2. Support running batch files without typing their extension nushell/nushell#6278

@W1M0R
Copy link

W1M0R commented Jul 15, 2024

I really like what the aqua project has accomplished and the tool is a very good contribution to the Windows ecosystem. Unfortunately, the current approach using bat files is problematic in many ways (ctrl-c and signal forwarding) and makes the aqua experience on Windows average.

It looks like proto has a good solution to this issue, and very helpful PRs that explain the issue in detail and how to resolve it:

  1. https://github.com/moonrepo/proto/blob/de3803ef40b1982a36722d8f088505246e4eb19d/crates/cli/src/main_shim.rs#L4
  2. new: Create a new shim executable. moonrepo/proto#315
  3. Windows shims show Terminate batch job (Y/N)? on ctrl-c moonrepo/proto#269

Hope this helps!

@suzuki-shunsuke
Copy link
Member

suzuki-shunsuke commented Jul 16, 2024

I'm working on this.

@suzuki-shunsuke
Copy link
Member

suzuki-shunsuke commented Jul 16, 2024

The prerelease version v2.30.0-3 v2.30.0-1 is out.
Could you try this and give us your feedback?

I've tested this using Git Bash for Windows, Powershell, and Command Prompt on Windows.

Update aqua by aqua upa.

aqua upa v2.30.0-3

If aqua upa doesn't work well, you can use aqua-installer.

aqua-installer v2.30.0-3

Run aqua i -l, then aqua-proxy would be installed, bat directory would be removed, and shell scripts on bin directory would be removed and hard links would be created on bin directory.

aqua i -l

@W1M0R
Copy link

W1M0R commented Jul 16, 2024

Yes, I'll give it a try and get back to you.

@suzuki-shunsuke
Copy link
Member

suzuki-shunsuke commented Jul 16, 2024

I'm working on fixing an issue.

https://github.com/aquaproj/aqua-registry/actions/runs/9953893071/job/27498390778#step:4:225

FATA[0000] aqua failed                                   aqua_version=2.30.0-1 env=windows/amd64 error="install aqua-proxy: remove a file to replace it with a hard link: remove C:\\Users\\runneradmin\\AppData\\Local\\aquaproj-aqua\\bin\\aqua.exe: Access is denied." program=aqua

Updated: Resolved this issue.

@W1M0R
Copy link

W1M0R commented Jul 16, 2024

I can confirm that it works on my end. Thanks @suzuki-shunsuke!

My PATH:

$Env:PATH = @(
    (Join-Path $Env:PROTO_HOME "shims")
    (Join-Path $Env:PROTO_HOME "bin")
    (Join-Path $Env:AQUA_ROOT_DIR "bin")
    (Join-Path $Env:USERPROFILE "scoop/shims")
    $Env:PATH
) -join [IO.Path]::PathSeparator

My aqua.yaml:

---
# aqua - Declarative CLI Version Manager
# https://aquaproj.github.io/
# checksum:
#   enabled: true
#   require_checksum: true
#   supported_envs:
#   - all
registries:
- type: standard
  ref: v4.204.0  # renovate: depName=aquaproj/aqua-registry
packages:
- name: charmbracelet/[email protected]
- name: charmbracelet/[email protected]

The output:

❯ aqua i -l
INFO[0000] creating a hard link to aqua-proxy            aqua_version=2.30.0-1 command=glow env=windows/amd64 program=aqua
INFO[0000] creating a hard link to aqua-proxy            aqua_version=2.30.0-1 command=gum env=windows/amd64 program=aqua

❯ gcm gum | select source

Source
------
C:\Users\user2\AppData\Local\aquaproj-aqua\bin\gum.exe

❯ gum --version            
INFO[0000] download and unarchive the package            aqua_version=2.30.0-1 env=windows/amd64 exe_name=gum package_name=charmbracelet/gum package_version=v0.14.1 program=aqua registry=standard
WARN[0002] remove a temporal file                        aqua_version=2.30.0-1 env=windows/amd64 error="remove C:\\Users\\user2\\AppData\\Local\\Temp\\178831399: The process cannot access the file because it is being used by another process." exe_name=gum package_name=charmbracelet/gum package_version=v0.14.1 program=aqua registry=standard
gum version v0.14.1 (657c76e)

@suzuki-shunsuke
Copy link
Member

Thank you.
I've published the prerelease version v2.30.0-3.

I'll take a look at the warning.

WARN[0002] remove a temporal file                        aqua_version=2.30.0-1 env=windows/amd64 error="remove C:\\Users\\user2\\AppData\\Local\\Temp\\178831399: The process cannot access the file because it is being used by another process." exe_name=gum package_name=charmbracelet/gum package_version=v0.14.1 program=aqua registry=standard

@github-project-automation github-project-automation bot moved this from In Progress to Done in main Jul 16, 2024
@suzuki-shunsuke
Copy link
Member

suzuki-shunsuke commented Jul 16, 2024

v2.30.0 is out 🎉
https://github.com/aquaproj/aqua/releases/tag/v2.30.0
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

@W1M0R
Copy link

W1M0R commented Jul 17, 2024

Thank you for the great work you are doing!

scottames referenced this issue in scottames/containers Jul 19, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.29.0` -> `v2.30.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| aquaproj/aqua@v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| aquaproj/aqua@v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| aquaproj/aqua@v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on thursday" in timezone
America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/scottames/containers).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MzEuNCIsInVwZGF0ZWRJblZlciI6IjM3LjQzMS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this issue in scottames/dots Jul 19, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.29.0` -> `v2.30.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| aquaproj/aqua@v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| aquaproj/aqua@v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| aquaproj/aqua@v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on thursday" in timezone
America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/scottames/dots).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MzEuNCIsInVwZGF0ZWRJblZlciI6IjM3LjQzMS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
izumin5210 referenced this issue in izumin5210/dotfiles Jul 21, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.29.0` -> `v2.30.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| aquaproj/aqua@v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| aquaproj/aqua@v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| aquaproj/aqua@v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/izumin5210/dotfiles).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MzEuNCIsInVwZGF0ZWRJblZlciI6IjM3LjQzOC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this issue in DelineaXPM/github-workflows Aug 7, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.10.1` -> `v2.30.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0-1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| https://github.com/aquaproj/aqua/compare/v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| https://github.com/aquaproj/aqua/compare/v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| https://github.com/aquaproj/aqua/compare/v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

### [`v2.29.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.28.1...v2.29.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.0)
| https://github.com/aquaproj/aqua/compare/v2.28.1...v2.29.0

##### Features

[#&#8203;2929](https://togithub.com/aquaproj/aqua/issues/2929) Support
fish completion

Added a sub command `aqua completion fish`, which outputs scripts for
fish completion

You can source the output to enable the completion.

```sh
aqua completion fish | source
```

Or you can write the output to a file.


https://fishshell.com/docs/current/completions.html#where-to-put-completions

```sh
aqua completion fish > ~/.config/fish/completions/aqua.fish
```

### [`v2.28.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.28.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.28.0...v2.28.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.28.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.28.1)
| https://github.com/aquaproj/aqua/compare/v2.28.0...v2.28.1

##### Bug Fixes

[#&#8203;2904](https://togithub.com/aquaproj/aqua/issues/2904) generate:
Fix a bug that `aqua g -i` fails if aqua.yaml doesn't have the field
`packages`
[#&#8203;2902](https://togithub.com/aquaproj/aqua/issues/2902) info: Fix
a bug that user names aren't masked on Windows
[@&#8203;sapphi-red](https://togithub.com/sapphi-red)

### [`v2.28.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.28.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.27.4...v2.28.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.28.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.28.0)
| https://github.com/aquaproj/aqua/compare/v2.27.4...v2.28.0

##### Features

[#&#8203;2609](https://togithub.com/orgs/aquaproj/discussions/2609)
[#&#8203;2730](https://togithub.com/aquaproj/aqua/issues/2730)
[#&#8203;2632](https://togithub.com/aquaproj/aqua/issues/2632) Support
getting a package version from go directive in go.mod or go.work

From Go 1.21, the version of Go is decided by go directive in go.mod or
go.work.

https://go.dev/doc/toolchain

e.g.

    module github.com/aquaproj/aqua/v2

    go 1.22.3

This can cause an issue that the version of Go may be different from the
version defined in aqua.yaml.
And we need to define go version in two places.

To solve the issue, this pull request enables aqua to get the version of
go from go directive in go.mod or go.work.
You can specify the path to go.mod or go.work by a field
`go_version_file`.

e.g.

```yaml
packages:
- name: golang/go
  go_version_file: go.mod
```

Then you can define go version only in go.mod or go.work.

> \[!CAUTION]
> The version of Go must be a semver x.y.z.
> You can't omit a patch version.

[#&#8203;2880](https://togithub.com/aquaproj/aqua/issues/2880) Ignore
invalid packages and continue working

When reading aqua.yaml, aqua ignores invalid packages and continues
working.
This improves the robustness.

### [`v2.27.4`](https://togithub.com/aquaproj/aqua/releases/tag/v2.27.4)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.27.3...v2.27.4)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.27.4)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.27.4)
| https://github.com/aquaproj/aqua/compare/v2.27.3...v2.27.4

##### Bug Fixes

[#&#8203;2144](https://togithub.com/aquaproj/aqua/issues/2144)
[#&#8203;2510](https://togithub.com/orgs/aquaproj/discussions/2510)
[#&#8203;2871](https://togithub.com/aquaproj/aqua/issues/2871) Fix a bug
that update-aqua fails on Windows

##### Others

Update Go 1.22.2 to 1.22.3

### [`v2.27.3`](https://togithub.com/aquaproj/aqua/releases/tag/v2.27.3)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.27.2...v2.27.3)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.27.3)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.27.3)
| https://github.com/aquaproj/aqua/compare/v2.27.2...v2.27.3

##### Bug Fixes

[#&#8203;2833](https://togithub.com/aquaproj/aqua/issues/2833)
[#&#8203;2834](https://togithub.com/aquaproj/aqua/issues/2834) Fix a bug
that a checksum id of [go_build type
package](https://aquaproj.github.io/docs/reference/registry-config/go-build-package)
is empty

aqua-checksums.json

```json
    {
      "id": "",
      "checksum": "C4D72E482B85570A1A73776EEF47E993B5F8FA6C204E0B1CAA794E4DF4F13521",
      "algorithm": "sha256"
    }
```

### [`v2.27.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.27.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.27.1...v2.27.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.27.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.27.2)
| https://github.com/aquaproj/aqua/compare/v2.27.1...v2.27.2

##### Bug Fixes

[#&#8203;2830](https://togithub.com/aquaproj/aqua/issues/2830) Improve
handling of broken registry JSON files

When aqua reads Standard Registry and github_content Registries, aqua
converts them to JSON once and saves them.
And aqua reads JSON files instead of YAML files from the next time.
This improves the performance a bit.
[#&#8203;2517](https://togithub.com/aquaproj/aqua/issues/2517)

But if a JSON file got broken, aqua got not working.
In that case, you had to remove the file yourself.

This issue rarely occurs, but this release resolves it.
If a JSON file gets broken, aqua removes and recreates the file.
So aqua continues working and you don't have to remove the file
yourself.

### [`v2.27.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.27.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.27.0...v2.27.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.27.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.27.1)
| https://github.com/aquaproj/aqua/compare/v2.27.0...v2.27.1

#### Others

[#&#8203;2824](https://togithub.com/aquaproj/aqua/issues/2824)
[#&#8203;2825](https://togithub.com/aquaproj/aqua/issues/2825) Generate
shell completion on `brew install`
[@&#8203;ryota2357](https://togithub.com/ryota2357)

ref.
https://github.com/aquaproj/homebrew-aqua/blob/c4731da7c66a797e93b5efbcc5340b39f86f559b/aqua.rb#L19

⚠️ To enable shell completion, you have to configure FPATH and so on.

[#&#8203;2809](https://togithub.com/aquaproj/aqua/issues/2809) chore:
update aqua-proy to
[v1.2.6](https://togithub.com/aquaproj/aqua-proxy/releases/tag/v1.2.6)

#### 🎉 New Contributors

Thank you for your contribution!

[@&#8203;ryota2357](https://togithub.com/ryota2357)
[#&#8203;2825](https://togithub.com/aquaproj/aqua/issues/2825)

### [`v2.27.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.27.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.26.0...v2.27.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.27.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.27.0)
| https://github.com/aquaproj/aqua/compare/v2.26.0...v2.27.0

#### Features

[#&#8203;2702](https://togithub.com/aquaproj/aqua/issues/2702)
[#&#8203;2806](https://togithub.com/aquaproj/aqua/issues/2806) checksum:
Support enforcing checksum verification via environment variables

You can enforce checksum verification by environment variables
`AQUA_ENFORCE_CHECKSUM` and `AQUA_ENFORCE_REQUIRE_CHECKSUM`.

```sh
export AQUA_ENFORCE_CHECKSUM=true
export AQUA_ENFORCE_REQUIRE_CHECKSUM=true
```

This is useful for both CI and local development.

Checksum verification is disabled by default, and you can disable
checksum verification by setting.
If you manage a Monorepo and want to make checksum verification
mandatory in CI, you can set these environment variables in CI. Then
checksum verification is enabled regardless of the setting of aqua.yaml.

And if you want to enforce checksum verification on your laptop, you can
set these environment variables in your shell configuration files such
as .bashrc and .zshrc.

### [`v2.26.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.26.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.25.2...v2.26.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.26.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.26.0)
| https://github.com/aquaproj/aqua/compare/v2.25.2...v2.26.0

##### Features

[#&#8203;2782](https://togithub.com/aquaproj/aqua/issues/2782)
[#&#8203;2804](https://togithub.com/aquaproj/aqua/issues/2804) generate:
add `-g` option to add packages to a global configuration file

e.g.

```console
$ aqua g -g cli/cli
```

You can add packages to a global configuration file with `-g` and `-i`
option.

e.g.

```console
$ aqua g -g -i cli/cli
```

If there are multiple global configuration files, a first global
configuration file is used.

##### Others

[#&#8203;2803](https://togithub.com/aquaproj/aqua/issues/2803) Update
the help message of `remove` command

> Note that this command remove files from AQUA_ROOT_DIR/pkgs, but
doesn't remove packages from aqua.yaml and doesn't remove files from
AQUA_ROOT_DIR/bin and AQUA_ROOT_DIR/bat.

### [`v2.25.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.25.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.25.1...v2.25.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.25.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.25.2)
| https://github.com/aquaproj/aqua/compare/v2.25.1...v2.25.2

##### Bug Fixes

[#&#8203;2781](https://togithub.com/aquaproj/aqua/issues/2781)
[#&#8203;2786](https://togithub.com/aquaproj/aqua/issues/2786) list: Fix
a bug that packages in that same aqua.yaml is outputted by `aqua list
--installed`

##### Others

[#&#8203;2779](https://togithub.com/aquaproj/aqua/issues/2779)
[#&#8203;2788](https://togithub.com/aquaproj/aqua/issues/2788) Update
slsa-verifier to v2.5.1
[#&#8203;2787](https://togithub.com/aquaproj/aqua/issues/2787) Update go
directive to 1.22 and refactor codes with Go new features

### [`v2.25.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.25.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.25.0...v2.25.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.25.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.25.1)
| https://github.com/aquaproj/aqua/compare/v2.25.0...v2.25.1

##### Bug Fixes

[#&#8203;1665](https://togithub.com/aquaproj/aqua/issues/1665)
[#&#8203;2757](https://togithub.com/aquaproj/aqua/issues/2757) Fix the
verification error of Cosign
[#&#8203;2764](https://togithub.com/aquaproj/aqua/issues/2764)
[#&#8203;2765](https://togithub.com/aquaproj/aqua/issues/2765) Fix
`SIGSEGV: segmentation violation` of `aqua update` and `aqua generate`
commands

##### Others

[#&#8203;2756](https://togithub.com/aquaproj/aqua/issues/2756) Update
the template of aqua.yaml generated by `aqua init` to follow [a yamllint
comment
rule](https://yamllint.readthedocs.io/en/stable/rules.html#module-yamllint.rules.comments)
[@&#8203;bhundven](https://togithub.com/bhundven)

### [`v2.25.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.25.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.24.1...v2.25.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.25.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.25.0)
| https://github.com/aquaproj/aqua/compare/v2.24.1...v2.25.0

##### Features


[#&#8203;2749](https://togithub.com/orgs/aquaproj/discussions/2749#discussioncomment-8808062)
[#&#8203;2752](https://togithub.com/aquaproj/aqua/issues/2752) Support
excluding some packages from the target of `aqua update`

e.g. aqua.yaml

```yaml
packages:
  - name: golang/vuln/[email protected]
    update:

##### If enabled is false, aqua up command ignores the package.
##### If the package name is passed to aqua up command explicitly, enabled is ignored.

##### By default, enabled is true.
      enabled: false
```

##### Fixes

[#&#8203;2747](https://togithub.com/aquaproj/aqua/issues/2747)
[#&#8203;2354](https://togithub.com/aquaproj/aqua/issues/2354)
[#&#8203;2750](https://togithub.com/aquaproj/aqua/issues/2750)
[#&#8203;2751](https://togithub.com/aquaproj/aqua/issues/2751) Improve
the logic to get the latest version

We've changed the logic to get the latest version in some commands such
as `aqua update` and `aqua generate`.
The original logic was to call GitHub API `Get a latest release`, but a
latest release wan't necessarily a latest version.
So we changed the logic to list the recent releases and get a latest
version by semver.

### [`v2.24.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.24.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.24.0...v2.24.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.24.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.24.1)
| https://github.com/aquaproj/aqua/compare/v2.24.0...v2.24.1

##### Bug Fixes

[#&#8203;2742](https://togithub.com/aquaproj/aqua/issues/2742)
[#&#8203;2744](https://togithub.com/aquaproj/aqua/issues/2744) fix a bug
that `aqua g` and `aqua gr` commands don't work for [cargo
package](https://aquaproj.github.io/docs/reference/registry-config/cargo-package/)

This bug was due to crates.io crawler policy.

> We are unable to process your request at this time.
> This usually means that you are in violation of our crawler policy.

We could resolve the issue by setting the User-Agent header.

### [`v2.24.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.24.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.23.2...v2.24.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.24.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.24.0)
| https://github.com/aquaproj/aqua/compare/v2.23.2...v2.24.0

##### Features

[#&#8203;2709](https://togithub.com/orgs/aquaproj/discussions/2709)
[#&#8203;2733](https://togithub.com/aquaproj/aqua/issues/2733) Support
listing installed packages

Command line options `-installed` and `-all [-a]` were added to `aqua
list` command.

```sh
aqua list -installed [-a]
```

If `-installed` is set, installed packages are outputted.

e.g.

```console
$ aqua list -installed   
rhysd/actionlint	v1.6.27	standard
suzuki-shunsuke/cmdx	v1.7.4	standard
sigstore/cosign	v1.13.2	standard
suzuki-shunsuke/ghalint	v0.2.9	standard
int128/ghcp	v1.13.2	standard
golangci/golangci-lint	v1.56.2	standard
goreleaser/goreleaser	v1.24.0	standard
reviewdog/reviewdog	v0.17.1	standard
```

By default, global configuration files are ignored.
To output packages in global configuration files too, please set the
option `-all [-a]`.

```console
$ aqua list -a -installed
```

### [`v2.23.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.23.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.23.1...v2.23.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.23.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.23.2)
| https://github.com/aquaproj/aqua/compare/v2.23.1...v2.23.2

##### Fixes

[#&#8203;2714](https://togithub.com/aquaproj/aqua/issues/2714) Fix a bug
that it fails to download large files from GitHub repositories

Use the API
[RepositoriesService.DownloadContents](https://pkg.go.dev/github.com/google/go-github/v60/github#RepositoriesService.DownloadContents)
instead of
[RepositoriesService.GetContents](https://pkg.go.dev/github.com/google/go-github/v60/github#RepositoriesService.GetContents)
to download large files from GitHub.


https://pkg.go.dev/github.com/google/go-github/v60/github#RepositoriesService.DownloadContents

> DownloadContents returns an io.ReadCloser that reads the contents of
the specified file.
> This function will work with files of any size, as opposed to
GetContents which is limited to 1 Mb files. It is the caller's
responsibility to close the ReadCloser.

If you use old aqua and face the following error, please update aqua to
v2.23.2 or newer.

unsupported content encoding: none, this may occur when file size > 1
MB, if that is the case consider using DownloadContents

##### Others

Update Go 1.21.6 to 1.22.0

### [`v2.23.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.23.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.23.0...v2.23.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.23.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.23.1)
| https://github.com/aquaproj/aqua/compare/v2.23.0...v2.23.1

##### Bug Fixes

[#&#8203;2661](https://togithub.com/aquaproj/aqua/issues/2661)
[#&#8203;2662](https://togithub.com/aquaproj/aqua/issues/2662)
update-checksum: Fix a bug that `update-checksum` doesn't work well if
packages use both `cargo` or `go_install` types and other types

For example, the package `eza-community/eza` uses `cargo` type for
darwin and windows/arm64 and `github_relaese` type for other platforms.
In this case, aqua update-checksum didn't work well.


https://github.com/aquaproj/aqua-registry/blob/15d67414625ea37e68ea8436dba9413d9bd9b540/pkgs/eza-community/eza/registry.yaml#L2

https://github.com/aquaproj/aqua-registry/blob/15d67414625ea37e68ea8436dba9413d9bd9b540/pkgs/eza-community/eza/registry.yaml#L54-L57

This release fixed the issue.

### [`v2.23.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.23.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.22.0...v2.23.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.23.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.23.0)
| https://github.com/aquaproj/aqua/compare/v2.22.0...v2.23.0

##### Features

[#&#8203;2649](https://togithub.com/aquaproj/aqua/issues/2649)
[#&#8203;2652](https://togithub.com/aquaproj/aqua/issues/2652) cargo:
Trim a prefix from `cargo` package's version

##### Bug Fixes

[#&#8203;2642](https://togithub.com/aquaproj/aqua/issues/2642) info:
Output `AQUA_DISABLE_COSIGN` and `AQUA_DISABLE_SLSA`


https://aquaproj.github.io/docs/reference/security/cosign-slsa/#disable-the-verification-with-cosign-and-slsa-provenance

[#&#8203;2654](https://togithub.com/aquaproj/aqua/issues/2654)
generate-registry: Fix a bug that same version_overrides aren't merged
properly

##### Others

[#&#8203;2644](https://togithub.com/aquaproj/aqua/issues/2644) Update
aqua-proxy to
[v1.2.5](https://togithub.com/aquaproj/aqua-proxy/releases/tag/v1.2.5)
[#&#8203;2653](https://togithub.com/aquaproj/aqua/issues/2653) Update
[JSON Schema](https://togithub.com/aquaproj/aqua/tree/main/json-schema)

### [`v2.22.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.22.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.21.3...v2.22.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.22.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.22.0)
| https://github.com/aquaproj/aqua/compare/v2.21.3...v2.22.0

##### Features

[#&#8203;2631](https://togithub.com/orgs/aquaproj/discussions/2631)
[#&#8203;2633](https://togithub.com/aquaproj/aqua/issues/2633)
[#&#8203;2634](https://togithub.com/aquaproj/aqua/issues/2634) Support
disabling the verification with Cosign and SLSA Provenance

You can disable the verification with Cosign and SLSA Provenance if you
can't use them.

##### Why is the feature needed?

> \[!CAUTION]
> This feature is for users who can't use Cosign and slsa-verifier.
> Most users can use them, so most users don't need this feature.
> aqua installs Cosign and slsa-verifier internally, so you don't need
to install them yourself.
> If you can use Cosign and slsa-verifier, you should not disable them
because they are important for security.

Cosign and sla-verifier access some endpoints such as
`oauth2.sigstore.dev` and `fulcio.sigstore.dev`.
So to use them you need to allow the access to these endpoints.

But in some use cases you can't or don't want to do that.
For example, your company's network policy might not allow the access to
these endpoints.

To resolve the issue, this issue proposes to support disabling the
verification with Cosign and slsa-verifier.

##### How to use

You can use command line options `-disable-cosign` and `-disable-slsa`
or environment variables `AQUA_DISABLE_COSIGN` and `AQUA_DISABLE_SLSA`.

e.g.

```sh
aqua [-disable-cosign] [-disable-slsa] i
```

```sh
env AQUA_DISABLE_COSIGN=true AQUA_DISABLE_SLSA=true aqua i
```

##### Update dependencies

-   Go 1.21.5 to 1.21.6
-   goreleaser v1.22.1 to v1.23.0
-
[go.mod](https://togithub.com/aquaproj/aqua/compare/v2.21.3...v2.22.0#diff-33ef32bf6c23acb95f5902d7097b7a1d5128ca061167ec0716715b0b9eeaa5f6)

### [`v2.21.3`](https://togithub.com/aquaproj/aqua/releases/tag/v2.21.3)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.21.2...v2.21.3)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.21.3)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.21.3)
| https://github.com/aquaproj/aqua/compare/v2.21.2...v2.21.3

##### Bug Fixes

[#&#8203;2585](https://togithub.com/aquaproj/aqua/issues/2585)
[#&#8203;2586](https://togithub.com/aquaproj/aqua/issues/2586) Update
checksums of cosign

### [`v2.21.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.21.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.21.1...v2.21.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.21.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.21.2)
| https://github.com/aquaproj/aqua/compare/v2.21.1...v2.21.2

##### ⚠️ This release has a bug

The bug was already fixed at v2.21.3

##### Others

[#&#8203;2582](https://togithub.com/aquaproj/aqua/issues/2582) Fix a bug
of release workflow

### [`v2.21.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.21.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.21.0...v2.21.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.21.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.21.1)
| https://github.com/aquaproj/aqua/compare/v2.21.0...v2.21.1

##### ⚠️ The release failed


https://github.com/aquaproj/aqua/actions/runs/7260967360/job/19781204828#step:10:147

      ⨯ release failed after 2m26s               error=1 error occurred:
* scoop manifests: could not update "aqua.json": PUT
https://api.github.com/repos/aquaproj/scoop-bucket/contents/aqua.json:
403 Resource not accessible by integration []

We fixed the bug and release v2.21.2.

##### Bug Fixes

[#&#8203;2534](https://togithub.com/aquaproj/aqua/issues/2534) Fix a bug
of root dir on Windows
[#&#8203;2580](https://togithub.com/aquaproj/aqua/issues/2580)
[#&#8203;2581](https://togithub.com/aquaproj/aqua/issues/2581) Fix a bug
that validation fails even if no_asset or error_message is set
[https://github.com/aquaproj/aqua-registry/pull/18326#issuecomment-1862164476](https://togithub.com/aquaproj/aqua-registry/pull/18326#issuecomment-1862164476)

### [`v2.21.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.21.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.20.0...v2.21.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.21.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.21.0)
| https://github.com/aquaproj/aqua/compare/v2.20.0...v2.21.0

##### Features

[#&#8203;2517](https://togithub.com/aquaproj/aqua/issues/2517)
[#&#8203;2518](https://togithub.com/aquaproj/aqua/issues/2518) perf:
Convert Standard Registry and github_content Registries from YAML to
JSON when installing them

This update improves the performance to read Registries.
Stanard registry is a huge YAML file over 30,000 lines so it has a
little overhead to read it.
By this update, aqua converts Standard Registry and github_content
Registries from YAML to JSON.
JSON format decreases the overhead.
aqua converts them internally, so we don't need to do anything.

### [`v2.20.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.20.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.19.0...v2.20.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.20.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.20.0)
| https://github.com/aquaproj/aqua/compare/v2.19.0...v2.20.0

##### Features

[#&#8203;2514](https://togithub.com/orgs/aquaproj/discussions/2514)
[#&#8203;2515](https://togithub.com/aquaproj/aqua/issues/2515) Add a
field `windows_arm_emulation` for Windows ARM Emulation

ARM based Windows 11 supports the emulation to run x64 Windows apps.


https://learn.microsoft.com/en-us/windows/arm/add-arm-support#emulation-on-arm-based-devices-for-x86-or-x64-windows-apps

> Windows 11 extends that emulation to run unmodified x64 Windows apps
on Arm-powered devices.

If the field `windows_arm_emulation` is `true`, aqua uses pre built
binaries for Windows amd64 on Windows arm64. `windows_arm_emulation`
must be boolean. By default, `windows_arm_emulation` is false.

`windows_arm_emulation` is similar with
[rosetta2](https://aquaproj.github.io/docs/reference/registry-config/rosetta2).

### [`v2.19.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.19.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.18.0...v2.19.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.19.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.19.0)
| https://github.com/aquaproj/aqua/compare/v2.18.0...v2.19.0

##### Features

[#&#8203;2506](https://togithub.com/orgs/aquaproj/discussions/2506)
[#&#8203;2507](https://togithub.com/aquaproj/aqua/issues/2507) which:
Add the command line option `--version`

e.g.

```console
$ aqua which --version yq
v4.40.2
```

##### Bug Fixes

[#&#8203;2508](https://togithub.com/orgs/aquaproj/discussions/2508)
[#&#8203;2512](https://togithub.com/aquaproj/aqua/issues/2512) Fix a bug
of bash scripts for Git Bash

https://www.shellcheck.net/wiki/SC2086

Bash scripts generated by aqua had a bug that command line arguments
having spaces were separated to multiple arguments incorrectly.

```console
$  curl -sSfL https://jsonplaceholder.typicode.com/todos | jq '.[] | .id'
jq: error: Could not open file |: Invalid argument
jq: error: Could not open file .id: No such file or directory
```

### [`v2.18.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.18.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.17.4...v2.18.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.18.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.18.0)
| https://github.com/aquaproj/aqua/compare/v2.17.4...v2.18.0

##### Features

[#&#8203;2494](https://togithub.com/aquaproj/aqua/issues/2494) update:
Support specifying new package versions

e.g.

```sh
aqua up [email protected]
```

[#&#8203;2461](https://togithub.com/aquaproj/aqua/issues/2461) Add debug
logs of `update` and `generate` commands
[@&#8203;dreamjz](https://togithub.com/dreamjz)

##### Bug Fixes

[#&#8203;2493](https://togithub.com/aquaproj/aqua/issues/2493)
[#&#8203;2495](https://togithub.com/aquaproj/aqua/issues/2495)
generate-registry: Fix the pagination of GitHub API List Releases

### [`v2.17.4`](https://togithub.com/aquaproj/aqua/releases/tag/v2.17.4)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.17.3...v2.17.4)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.17.4)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.17.4)
| https://github.com/aquaproj/aqua/compare/v2.17.3...v2.17.4

#### Others

[#&#8203;2401](https://togithub.com/aquaproj/aqua/issues/2401)
[#&#8203;2483](https://togithub.com/aquaproj/aqua/issues/2483) Release
aqua to
[Winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/)
🎉


[https://github.com/microsoft/winget-pkgs/pull/127174](https://togithub.com/microsoft/winget-pkgs/pull/127174)

### [`v2.17.3`](https://togithub.com/aquaproj/aqua/releases/tag/v2.17.3)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.17.2...v2.17.3)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.17.3)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.17.3)
| https://github.com/aquaproj/aqua/compare/v2.17.2...v2.17.3

##### Bug Fixes 🐞

[#&#8203;2476](https://togithub.com/orgs/aquaproj/discussions/2476)
[#&#8203;2479](https://togithub.com/aquaproj/aqua/issues/2479) policy:
fix a bug that the [Git Repository root's policy
file](https://aquaproj.github.io/docs/reference/security/policy-as-code/git-policy/)
doesn't work well in working trees

##### Others

[#&#8203;2470](https://togithub.com/aquaproj/aqua/issues/2470)
[#&#8203;2472](https://togithub.com/aquaproj/aqua/issues/2472) Replace
the third party library github.com/codingsince1985/checksum with
standard libraries

This library caused the bug
[#&#8203;2467](https://togithub.com/aquaproj/aqua/issues/2467) and we
can replace the library with standard libraries easily.
We should use standard libraries as much as possible.

[#&#8203;2473](https://togithub.com/aquaproj/aqua/issues/2473) Revert
[#&#8203;2469](https://togithub.com/aquaproj/aqua/issues/2469)

[#&#8203;2469](https://togithub.com/aquaproj/aqua/issues/2469) was
required to resolve
[#&#8203;2467](https://togithub.com/aquaproj/aqua/issues/2467) , but
[#&#8203;2467](https://togithub.com/aquaproj/aqua/issues/2467) was
resolved by
[#&#8203;2472](https://togithub.com/aquaproj/aqua/issues/2472) so
[#&#8203;2469](https://togithub.com/aquaproj/aqua/issues/2469) is
unnecessary anymore.


[https://github.com/aquaproj/aqua/pull/2472#issuecomment-1812023515](https://togithub.com/aquaproj/aqua/pull/2472#issuecomment-1812023515)

### [`v2.17.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.17.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.17.1...v2.17.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.17.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.17.2)
| https://github.com/aquaproj/aqua/compare/v2.17.1...v2.17.2

#### Bug Fixes

[#&#8203;2457](https://togithub.com/orgs/aquaproj/discussions/2457)
[#&#8203;2458](https://togithub.com/aquaproj/aqua/issues/2458) update:
Fix a panic when trying to update commands unmanaged by aqua
[@&#8203;dreamjz](https://togithub.com/dreamjz)
[#&#8203;2468](https://togithub.com/aquaproj/aqua/issues/2468) policy
init: Fix typo in CLI output [@&#8203;ka2n](https://togithub.com/ka2n)
[#&#8203;2467](https://togithub.com/aquaproj/aqua/issues/2467)
[#&#8203;2469](https://togithub.com/aquaproj/aqua/issues/2469)
update-checksum: Copy an asset to a temporal file to calculate the
checksum correctly

##### update-checksum: Copy an asset to a temporal file to calculate the
checksum correctly

[#&#8203;2467](https://togithub.com/aquaproj/aqua/issues/2467)
[#&#8203;2469](https://togithub.com/aquaproj/aqua/issues/2469)

This fixes a bug that the checksum verification of aws/aws-cli fails
because the expected checksum of aws/aws-cli is wrong.

If you face the issue already, please remove checksums of aws/aws-cli
from aqua-checksums.json and run `aqua update-checksum` with aqua
v2.17.2 or newer.

aqua-checksums.json

```json
    // Delete this element
    {
      "id": "http/awscli.amazonaws.com/AWSCLIV2-2.13.35.pkg",
      "checksum": "520E1CB49004ECED7DB1CFE70E6FA73EFC6EDDF1CDB38AF535D126F1DB6574C8",
      "algorithm": "sha256"
    },
```

#### 🎉 New Contributors

Thank you for your contribution!

[@&#8203;ka2n](https://togithub.com/ka2n)
[#&#8203;2468](https://togithub.com/aquaproj/aqua/issues/2468)

### [`v2.17.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.17.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.17.0...v2.17.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.17.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.17.1)
| https://github.com/aquaproj/aqua/compare/v2.17.0...v2.17.1

#### Bug Fixes 🐞

[#&#8203;2456](https://togithub.com/aquaproj/aqua/issues/2456)
generate-registry: Fix a bug that the order of versions in pkg.yaml is
wrong

### [`v2.17.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.17.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.16.4...v2.17.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.17.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.17.0)
| https://github.com/aquaproj/aqua/compare/v2.16.4...v2.17.0

##### Features

[#&#8203;2355](https://togithub.com/aquaproj/aqua/issues/2355)
[#&#8203;2447](https://togithub.com/aquaproj/aqua/issues/2447) Limit the
number of versions retrieved by command `generate` and `update`
[@&#8203;dreamjz](https://togithub.com/dreamjz)

With aqua v2.16.4 or earlier, `aqua generate -s` and `aqua update -s`
retrieved all versions and these commands couldn't change the number of
versions.
This release adds the command line option `--limit/-l` to these
commands.
The value of this option is the number of versions.
The default value is `30`.
If the value is less than zero, all versions are retrieved.

This change would reduced useless GitHub API calls and make these
commands faster.

e.g.

```sh
aqua g -s # Retrieve 30 versions
aqua g -s -l 10 # Retrieve 10 versions
aqua g -s -l -1 # Retrieve all versions
```

[#&#8203;2445](https://togithub.com/aquaproj/aqua/issues/2445) Change
the default checksum algorithm from `sha512` to `sha256`

sha256 is enough.
We don't need to use sha512.

[#&#8203;2428](https://togithub.com/aquaproj/aqua/issues/2428) Add an
alias of `update-checksum` command

```sh
aqua upc
```

[#&#8203;2105](https://togithub.com/aquaproj/aqua/issues/2105)
[#&#8203;2425](https://togithub.com/aquaproj/aqua/issues/2425)
[#&#8203;2413](https://togithub.com/aquaproj/aqua/issues/2413)
generate-registry: Improve the format of `version_overrides` and improve
the logic to generate `version_overrides`

##### Bug Fixes 🐞

[#&#8203;2444](https://togithub.com/aquaproj/aqua/issues/2444)
generate-registry: Fix checksum filename for sha1

##### Others

[#&#8203;2436](https://togithub.com/aquaproj/aqua/issues/2436)
chore(deps): update dependency slsa-framework/slsa-verifier to v2.4.1
[#&#8203;2395](https://togithub.com/aquaproj/aqua/issues/2395) change
the format of prebuilt binaries for Windows to zip

Before:

aqua_windows_amd64.tar.gz
aqua_windows_arm64.tar.gz

After:

aqua_windows_amd64.zip
aqua_windows_arm64.zip

On Windows zip is more user friendly than tar.gz.
And to support Winget for Windows, it seems we need to change the format
to zip.

-
[https://github.com/aquaproj/aqua/issues/2401](https://togithub.com/aquaproj/aqua/issues/2401)

<!---->

      • winget
⨯ release failed after 1m11s error=no zip archives found matching
goos=[windows] goarch=[amd64 386] goamd64=v1 ids=[]
    Error: Process completed with exit code 1.

⚠️ To upgrade aqua to v2.17.0 or newer on Windows, you need to upgrade
aqua to v2.16.1 ~ v2.16.4 once.

e.g.

```sh
aqua upa v2.16.4
aqua upa
```

##### New Contributors 🎉

Thank you for your contribution!

[@&#8203;dreamjz](https://togithub.com/dreamjz)
[#&#8203;2447](https://togithub.com/aquaproj/aqua/issues/2447)

### [`v2.16.4`](https://togithub.com/aquaproj/aqua/releases/tag/v2.16.4)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.16.3...v2.16.4)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.16.4)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.16.4)
| https://github.com/aquaproj/aqua/compare/v2.16.3...v2.16.4

##### Bug Fixes

[#&#8203;2420](https://togithub.com/aquaproj/aqua/issues/2420)
generate-registry: Get latest versions of cargo packages

### [`v2.16.3`](https://togithub.com/aquaproj/aqua/releases/tag/v2.16.3)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.16.2...v2.16.3)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.16.3)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.16.3)
| https://github.com/aquaproj/aqua/compare/v2.16.2...v2.16.3

##### Bug Fixes

[#&#8203;2414](https://togithub.com/orgs/aquaproj/discussions/2414)
[#&#8203;2415](https://togithub.com/aquaproj/aqua/issues/2415) fix a bug
that AQUA_DISABLE_POLIDY doesn't work
[#&#8203;2412](https://togithub.com/aquaproj/aqua/issues/2412)
generate-registry: Improve the judgement of OS by file extensions such
as `.exe`, `.pkg`, and `.dmg`

##### Others

Refactoring

### [`v2.16.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.16.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.16.1...v2.16.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.16.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.16.2)
| https://github.com/aquaproj/aqua/compare/v2.16.1...v2.16.2

#### Others

[#&#8203;2399](https://togithub.com/aquaproj/aqua/issues/2399)
[#&#8203;2400](https://togithub.com/aquaproj/aqua/issues/2400) Support
[Scoop](https://scoop.sh/) 🎉

You can install aqua by [Scoop](https://scoop.sh/) on Windows.

```sh
scoop bucket add aquaproj https://github.com/aquaproj/scoop-bucket
scoop install aqua
```

### [`v2.16.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.16.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.16.0...v2.16.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.16.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.16.1)
| https://github.com/aquaproj/aqua/compare/v2.16.0...v2.16.1

##### Bug Fixes

[#&#8203;2393](https://togithub.com/aquaproj/aqua/issues/2393)
generate-registry: Fix the usage of `-cmd` option

##### Others

[#&#8203;2394](https://togithub.com/aquaproj/aqua/issues/2394)
[#&#8203;2396](https://togithub.com/aquaproj/aqua/issues/2396) Change
the format to zip on Windows at aqua v2.17.0

This is a preparation for the future change.
At aqua v2.17.0, the format of prebuilt binaries for Windows will be
changed from `tar.gz` to `zip`.
This is because `zip` is more user friendly for Windows Users and some
tools such as Winget expects zip.


https://github.com/goreleaser/goreleaser/blob/b1271d2559e05711e31c6d39c9cbf9eb3e808d5a/internal/pipe/winget/winget.go#L41

To upgrade aqua to v2.17.0 or later on Windows, you need to upgrade aqua
to v2.16.1 or later first.
aqua can't upgrade aqua from v2.16.0 or earlier to v2.17.0 or later on
Windows.

```console
$ aqua update-aqua v2.16.1
$ aqua update-aqua
```

### [`v2.16.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.16.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.15.1...v2.16.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.16.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.16.0)
| https://github.com/aquaproj/aqua/compare/v2.15.1...v2.16.0

#### Features

[#&#8203;2380](https://togithub.com/aquaproj/aqua/issues/2380) Support
removing packages by command names

e.g.

```sh
aqua rm tfcmt # Remove suzuki-shunsuke/tfcmt
```

### [`v2.15.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.15.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.15.0...v2.15.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.15.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.15.1)
| https://github.com/aquaproj/aqua/compare/v2.15.0...v2.15.1

##### Bug Fixes

[#&#8203;2376](https://togithub.com/aquaproj/aqua/issues/2376) Fix a bug
that aqua stops searching configuration files if files are located in
either aqua or .aqua directory

##### How to reproduce the issue

Directory structure

    /workspace/
      aqua.yaml
      foo/ # current directory
        aqua/
          aqua.yaml

Run `aqua i`.

```sh
aqua i
```

##### Expected behaviour

aqua installs packages with `/workspace/aqua.yaml` and
`/workspace/foo/aqua/aqua.yaml`.

##### Actual behaviour

aqua installs packages with only `/workspace/foo/aqua/aqua.yaml`, and
ignores `/workspace/aqua.yaml`.

### [`v2.15.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.15.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.14.1...v2.15.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.15.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.15.0)
| https://github.com/aquaproj/aqua/compare/v2.14.1...v2.15.0

##### Overview

-   Features
- [#&#8203;2351](https://togithub.com/aquaproj/aqua/issues/2351)
[#&#8203;2366](https://togithub.com/aquaproj/aqua/issues/2366)
generate-registry: Get all GitHub Releases by default
- [#&#8203;2349](https://togithub.com/aquaproj/aqua/issues/2349)
[#&#8203;2362](https://togithub.com/aquaproj/aqua/issues/2362)
generate-registry: Add an option `-cmd`
-   Others
- [#&#8203;2359](https://togithub.com/aquaproj/aqua/issues/2359)
update-aqua: Add an alias `upa` to the command

##### generate-registry: Get all GitHub Releases by default

[#&#8203;2351](https://togithub.com/aquaproj/aqua/issues/2351)
[#&#8203;2366](https://togithub.com/aquaproj/aqua/issues/2366)

The behaviour of `generate-registry` command was changed.
The command gets all GitHub Releases by default to generate
`version_overrides`.

The option `--deep` is deprecated. The option has no meaning anymore.
The option is kept only for the compatibility.
The option will be removed at aqua v3.

The option `--limit (-l)` is added. This option takes an integer, which
is the maximum number of releases.

e.g.

```sh
aqua gr --limit 100
```

##### generate-registry: Add an option `-cmd`

[#&#8203;2349](https://togithub.com/aquaproj/aqua/issues/2349)
[#&#8203;2362](https://togithub.com/aquaproj/aqua/issues/2362)

If `-cmd` is set, `files` is set.

e.g.

```console
$ aqua gr -cmd gh cli/cli
```

```yaml

##### ...
  files:
    - name: gh
```

You can specify multiple commands with commas `,`.

e.g.

```console
$ aqua gr -cmd age,age-keygen FiloSottile/age
```

```yaml

##### ...
  files:
    - name: age
    - name: age-keygen
```

##### update-aqua: Add an alias `upa` to the command

[#&#8203;2359](https://togithub.com/aquaproj/aqua/issues/2359)

`update-aqua` is too long.

```console
$ aqua upa # update-aqua
```

### [`v2.14.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.14.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.14.0...v2.14.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.14.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.14.1)
| https://github.com/aquaproj/aqua/compare/v2.14.0...v2.14.1

##### Fixes

[#&#8203;2354](https://togithub.com/aquaproj/aqua/issues/2354)
[#&#8203;2356](https://togithub.com/aquaproj/aqua/issues/2356) generate:
Fixed a bug that sometimes `aqua g` outputs non latest version

versiongetter: Fix getting the latest version

Use GetLatestRelease API before using ListReleases API

[#&#8203;2245](https://togithub.com/aquaproj/aqua/issues/2245)
[#&#8203;2358](https://togithub.com/aquaproj/aqua/issues/2358) generate:
Fixed a bug that `aqua g -i` fails when a comment exists in the same
line with `packages:`

Get string values from `*ast.StringNode.Value` instead of
`ast.MapKeyNode.String()`

##### Others

[#&#8203;2340](https://togithub.com/aquaproj/aqua/issues/2340)
fix(deps): update module github.com/google/go-github/v55 to v56

### [`v2.14.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.14.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.13.1...v2.14.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.14.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.14.0)
| https://github.com/aquaproj/aqua/compare/v2.13.1...v2.14.0

[#&#8203;1657](https://togithub.com/aquaproj/aqua/issues/1657)
[#&#8203;2329](https://togithub.com/aquaproj/aqua/issues/2329) Update
registries and packages by update command

Finally `aqua update` command is supported 🎉
You can update all packages and registries, or select updated packages.
You can also select packages and versions with fuzzy finder.

[Document](https://aquaproj.github.io/docs/guides/update-command/)

> \[!NOTE]\
> You can update registries and packages by Renovate too.
> Please see [Update packages by
Renovate](https://aquaproj.github.io/docs/guides/renovate).

You can update registries and packages by `aqua update (up)` command.

If no argument is passed, all registries and packages are updated to the
latest.

```sh

##### Update all packages and registries to the latest versions
aqua update
```

This command has an alias "up"

```sh
aqua up
```

This command

- gets the latest version from GitHub Releases, GitHub Tags, and
crates.io and updates aqua.yaml
-   doesn't install packages

##### Updated configuration file paths

This command finds a configuration file `aqua.yaml` according to [the
rule](https://aquaproj.github.io/docs/reference/config/#configuration-file-path)
and updates only one file.
Once this command finds one file, it stops searching other aqua.yaml.

So if you want to update other files, please change the current
directory or specify the configuration file path with the option `-c`.

```sh
aqua -c foo/aqua.yaml update
```

##### Update only registries

If you want to update only registries, please use the `--only-registry
[-r]` option.

```sh

##### Update only registries
aqua update -r
```

##### Update only packages

If you want to update only packages, please use the `--only-package
[-p]` option.

```sh

##### Update only packages
aqua update -p
```

##### Update only specific commands

You can specify packages with command names. aqua finds packages that
have these commands and updates them.

```sh
aqua update <command name> [<command name> ...]
```

e.g.

```sh

##### Update cli/cli
aqua update gh
```

##### Select packages with Fuzzy Finder

If you want to update only specific packages, please use the `-i`
option.
You can select packages with the fuzzy finder.
If `-i` option is used, registries aren't updated.

```sh

##### Select updated packages with fuzzy finder
aqua update -i
```

##### Select the package version with Fuzzy Finder

If you want to select versions, please use the `-s` option.
You can select versions with the fuzzy finder. You can not only update
but also downgrade packages.

```sh

##### Select updated packages and versions with fuzzy finder
aqua update -i -s
```

##### The field `version` is ignored

This command doesn't update packages if the `version` field is used.

```yaml
packages:
  - name: cli/[email protected] # Update
  - name: gohugoio/hugo
    version: v0.118.0 # Doesn't update
```

So if you don't want to update specific packages, the `version` field is
useful.

##### commit hashes are ignored

This command doesn't update commit hashes.

```yaml
packages:
  - name: google/pprof@d04f2422c8a17569c14e84da0fae252d9529826b # Doesn't update
```

##### ⚠️ Known Issues

There are some known issues related to the third party library
[goccy/go-yaml](https://togithub.com/goccy/go-yaml).

##### `null` is set to `packages` wrongly if registries are updated and
`packages` is empty

This issue is because of the third party library
[goccy/go-yaml](https://togithub.com/goccy/go-yaml).

Before

```yaml
registries:
- ref: v4.60.0
  type: standard
packages:
```

Run `aqua up`.

```console
$ aqua up
INFO[0000] updating a registry                           aqua_version= env=darwin/arm64 new_version=v4.65.0 old_version=v4.60.0 program=aqua registry_name=standard
```

After

```yaml
registries:
- ref: v4.65.0
  type: standard
packages: null
```

##### Newlines are removed wrongly

This issue is because of the third party library
[goccy/go-yaml](https://togithub.com/goccy/go-yaml).

-
[https://github.com/goccy/go-yaml/issues/285](https://togithub.com/goccy/go-yaml/issues/285)

Before

```yaml
registries:
- ref: v4.60.0
  type: standard

packages:
- name: suzuki-shunsuke/[email protected]
```

Run `aqua up`.

```console
$ aqua up
INFO[0000] updating a registry                           aqua_version= env=darwin/arm64 new_version=v4.65.0 old_version=v4.60.0 program=aqua registry_name=standard
```

After

```yaml
registries:
- ref: v4.65.0
  type: standard
packages:
- name: suzuki-shunsuke/[email protected]
```

##### Discord Channel was open 🎉

This has nothing to do with this release, but we opened a Discord
channel 🎉

https://discord.com/channels/1141777454164365382/1162444533959757955

### [`v2.13.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.13.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.13.0...v2.13.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.13.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.13.1)
| https://github.com/aquaproj/aqua/compare/v2.13.0...v2.13.1

##### Others

[#&#8203;2332](https://togithub.com/aquaproj/aqua/issues/2332)
chore(deps): update dependency golang/go to v1.21.3
[#&#8203;2335](https://togithub.com/aquaproj/aqua/issues/2335)
fix(deps): update module github.com/google/go-cmp to v0.6.0

### [`v2.13.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.13.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.12.2...v2.13.0)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.13.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.13.0)
| https://github.com/aquaproj/aqua/compare/v2.12.2...v2.13.0

This release includes several improvement of Registry settings.
This updates affect Registry developers including aqua-registry's
contributors.
There is no direct change for almost all aqua users.

To keep the compatibility and minimize the effect to users, we won't use
new features in
[aqua-registry](https://togithub.com/aquaproj/aqua-registry) for at
least one month after v2.13.0 is released.
If we apply new features to existing packages of aqua-registry, this
requires a major update of aqua-registry because this is a breaking
change.

#### Features

[#&#8203;2318](https://togithub.com/aquaproj/aqua/issues/2318)
[#&#8203;2320](https://togithub.com/aquaproj/aqua/issues/2320) Add a new
field `envs` to `overrides` instead of `goos` and `goarch`
[#&#8203;2132](https://togithub.com/aquaproj/aqua/issues/2132)
[#&#8203;2317](https://togithub.com/aquaproj/aqua/issues/2317) Support
using `go_install` or `go_build` if the platform isn't included in
`supported_envs`
[#&#8203;1774](https://togithub.com/aquaproj/aqua/issues/1774)
[#&#8203;2314](https://togithub.com/aquaproj/aqua/issues/2314) Support
omitting `.{{.Format}}` in `asset` and `url`
[#&#8203;1876](https://togithub.com/aquaproj/aqua/issues/1876)
[#&#8203;2313](https://togithub.com/aquaproj/aqua/issues/2313) Support
short file extensions in `format`
[#&#8203;1774](https://togithub.com/aquaproj/aqua/issues/1774)
[#&#8203;2310](https://togithub.com/aquaproj/aqua/issues/2310) Add the
template variable `AssetWithoutExt` to `files[].src`

##### Add a new field `envs` to `overrides` instead of `goos` and
`goarch`

[#&#8203;2318](https://togithub.com/aquaproj/aqua/issues/2318)
[#&#8203;2320](https://togithub.com/aquaproj/aqua/issues/2320)

Add a new field `envs` to `overrides`.
The syntax of `envs` is same with `supported_envs`.

The syntax of `envs` is more flexible than the combination of `goos` and
`goarch`.
In some cases we can simplify the code.

For example, the combination of `goos` and `goarch` can't express the
pair of `linux/arm64` and `windows/arm64`.

```yaml
overrides:
  - goos: windows
    goarch: arm64

### ...
  - goos: linux
    goarch: arm64

### ...
```

`envs` can simplify the code.

```yaml
overrides:
  - envs:
      - windows/arm64
      - linux/arm64

### ...
```

##### Support using `go_install` or `go_build` if the platform isn't
included in `supported_envs`

[#&#8203;2132](https://togithub.com/aquaproj/aqua/issues/2132)
[#&#8203;2317](https://togithub.com/aquaproj/aqua/issues/2317)

A new field `build` is added to Registry settings.
This enables to install packages by `go_install` or `go_build` on
platforms where prebuilt binaries aren't published.

This is an example usage of the new field `build`.

```yaml
packages:
  - type: github_release
    repo_owner: suzuki-shunsuke
    repo_name: tfcmt
    asset: tfcmt_{{.OS}}_{{.Arch}}.{{.Format}}
    format: tar.gz
    supported_envs:
      - linux
    build:
      type: go_build
      files:
        - name: tfcmt
          src: ./cmd/tfcmt
          dir: tfcmt-{{trimV .Version}}
```

`supported_envs` is `linux`, so on platforms other than linux aqua
installs tfcmt by `go_build`.

`go_install` is also available.

```yaml
    build:
      type: go_install
      path: github.com/suzuki-shunsuke/tfcmt/v4/cmd/tfcmt
```

If `go_build` failed on windows/arm64 and you'd like to exclude
windows/arm64, `excluded_envs` is available.

```yaml
    build:
      type: go_build
      excluded_envs:
        - windows/arm64
      files:
        - name: tfcmt
          src: ./cmd/tfcmt
          dir: tfcmt-{{trimV .Version}}
```

If you'd like to disable `build` in version_overrides, `enabled` is
available.

```yaml
build:
  enabled: false
```

##### Why not `overrides`?

Of 

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
[repository job
log](https://developer.mend.io/github/DelineaXPM/github-workflows).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yOTMuMCIsInVwZGF0ZWRJblZlciI6IjM4LjIwLjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
scottames referenced this issue in scottames/containers Aug 10, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.29.0` -> `v2.30.0` |
| [aquaproj/aqua-registry](https://togithub.com/aquaproj/aqua-registry)
| minor | `v4.208.1` -> `v4.212.0` |
| [casey/just](https://togithub.com/casey/just) | minor | `1.33.0` ->
`1.34.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0-1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| aquaproj/aqua@v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| aquaproj/aqua@v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| aquaproj/aqua@v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

</details>

<details>
<summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary>

###
[`v4.212.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.212.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.211.0...v4.212.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.212.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.212.0)
| aquaproj/aqua-registry@v4.211.0...v4.212.0

#### 🎉 New Packages


[#&#8203;25676](https://togithub.com/aquaproj/aqua-registry/issues/25676)
[FeLvi-zzz/tentez](https://togithub.com/FeLvi-zzz/tentez): Tentez helps
you switching traffic

[#&#8203;25708](https://togithub.com/aquaproj/aqua-registry/issues/25708)
[alcideio/rbac-tool](https://togithub.com/alcideio/rbac-tool): Rapid7 |
insightCloudSec | Kubernetes RBAC Power Toys - Visualize, Analyze,
Generate & Query

[#&#8203;25706](https://togithub.com/aquaproj/aqua-registry/issues/25706)
[cloudposse/github-commenter](https://togithub.com/cloudposse/github-commenter):
Command line utility for creating GitHub comments on Commits, Pull
Request Reviews or Issues

[#&#8203;25704](https://togithub.com/aquaproj/aqua-registry/issues/25704)
[cloudposse/slack-notifier](https://togithub.com/cloudposse/slack-notifier):
Command line utility to send messages with attachments to Slack channels
via Incoming Webhooks

[#&#8203;25709](https://togithub.com/aquaproj/aqua-registry/issues/25709)
[cloverstd/tcping](https://togithub.com/cloverstd/tcping): ping over a
tcp connection

[#&#8203;25712](https://togithub.com/aquaproj/aqua-registry/issues/25712)
[gruntwork-io/fetch](https://togithub.com/gruntwork-io/fetch): Download
files, folders, and release assets from a specific git commit, branch,
or tag of public and private GitHub repos

[#&#8203;25713](https://togithub.com/aquaproj/aqua-registry/issues/25713)
[jwilder/dockerize](https://togithub.com/jwilder/dockerize): Utility to
simplify running applications in docker containers

[#&#8203;25714](https://togithub.com/aquaproj/aqua-registry/issues/25714)
[kahing/goofys](https://togithub.com/kahing/goofys): a high-performance,
POSIX-ish Amazon S3 file system written in Go

[#&#8203;25715](https://togithub.com/aquaproj/aqua-registry/issues/25715)
[krallin/tini](https://togithub.com/krallin/tini): A tiny but valid
`init` for containers

[#&#8203;25719](https://togithub.com/aquaproj/aqua-registry/issues/25719)
[legal90/awscurl](https://togithub.com/legal90/awscurl): cURL with AWS
request signing

[#&#8203;25720](https://togithub.com/aquaproj/aqua-registry/issues/25720)
[lewispeckover/consulator](https://togithub.com/lewispeckover/consulator):
Import and synchronize your Consul KV data from JSON and YAML

###
[`v4.211.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.211.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.210.0...v4.211.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.211.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.211.0)
| aquaproj/aqua-registry@v4.210.0...v4.211.0

##### 🎉 New Packages


[#&#8203;25637](https://togithub.com/aquaproj/aqua-registry/issues/25637)
[suzuki-shunsuke/ghomfc](https://togithub.com/suzuki-shunsuke/ghomfc):
GitHub Organization Members' Followers Counter

[#&#8203;25608](https://togithub.com/aquaproj/aqua-registry/issues/25608)
[dimo414/bkt](https://togithub.com/dimo414/bkt): a subprocess caching
utility, available as a command line binary and a Rust library
[@&#8203;sheldonhull](https://togithub.com/sheldonhull)

##### Fixes


[#&#8203;25620](https://togithub.com/aquaproj/aqua-registry/issues/25620)
Rename the package `MichaelMure/git-bug` to
[git-bug/git-bug](https://togithub.com/git-bug/git-bug)

The GitHub repository was transferred.

###
[`v4.210.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.210.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.209.0...v4.210.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.210.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.210.0)
| aquaproj/aqua-registry@v4.209.0...v4.210.0

##### 🎉 New Packages


[#&#8203;25562](https://togithub.com/aquaproj/aqua-registry/issues/25562)
[siderolabs/omni/omni](https://togithub.com/siderolabs/omni):
SaaS-simple deployment of Kubernetes - on your own hardware

[#&#8203;25562](https://togithub.com/aquaproj/aqua-registry/issues/25562)
[siderolabs/omni/omnictl](https://togithub.com/siderolabs/omni): A CLI
for accessing Omni API

###
[`v4.209.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.209.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.208.1...v4.209.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.209.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.209.0)
| aquaproj/aqua-registry@v4.208.1...v4.209.0

#### 🎉 New Packages


[#&#8203;25546](https://togithub.com/aquaproj/aqua-registry/issues/25546)
[mrjackwills/oxker](https://togithub.com/mrjackwills/oxker): A simple
tui to view & control docker containers

#### Fixes


[#&#8203;25549](https://togithub.com/aquaproj/aqua-registry/issues/25549)
fix(electric-saw/kafta): follow up changes of kafka v0.1.8

</details>

<details>
<summary>casey/just (casey/just)</summary>

###
[`v1.34.0`](https://togithub.com/casey/just/blob/HEAD/CHANGELOG.md#1340---2024-08-02)

[Compare
Source](https://togithub.com/casey/just/compare/1.33.0...1.34.0)

##### Fixed

- Make function paths relative to correct working directory
([#&#8203;2294](https://togithub.com/casey/just/pull/2294) by
[casey](https://togithub.com/casey))

##### Changed

- Keep multi-line shebangs together
([#&#8203;2276](https://togithub.com/casey/just/pull/2276) by
[vkstrm](https://togithub.com/vkstrm))

##### Misc

- Document `set working-directory`
([#&#8203;2288](https://togithub.com/casey/just/pull/2288) by
[nyurik](https://togithub.com/nyurik))
- Fix readme typos
([#&#8203;2289](https://togithub.com/casey/just/pull/2289) by
[casey](https://togithub.com/casey))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on thursday" in timezone
America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
[repository job
log](https://developer.mend.io/github/scottames/containers).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMC4xIiwidXBkYXRlZEluVmVyIjoiMzguMjAuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this issue in scottames/daggerverse Aug 10, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua](https://togithub.com/aquaproj/aqua) | minor |
`v2.29.0` -> `v2.30.0` |
| [aquaproj/aqua-registry](https://togithub.com/aquaproj/aqua-registry)
| minor | `v4.208.1` -> `v4.212.0` |
| [casey/just](https://togithub.com/casey/just) | minor | `1.33.0` ->
`1.34.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua (aquaproj/aqua)</summary>

### [`v2.30.0`](https://togithub.com/aquaproj/aqua/releases/tag/v2.30.0)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.2...v2.30.0-1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.30.0)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.30.0)
| aquaproj/aqua@v2.29.2...v2.30.0

#### Features

[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
[#&#8203;3005](https://togithub.com/aquaproj/aqua/issues/3005) Use
aqua-proxy and hard links instead of shell scripts and bat scripts on
Windows

Document:
[https://github.com/aquaproj/aquaproj.github.io/pull/1049](https://togithub.com/aquaproj/aquaproj.github.io/pull/1049)
https://aquaproj.github.io/docs/reference/lazy-install#on-windows

aqua doesn't use symbolic links on Windows because symbolic links have
several issues on Windows.

1. [Non-administrators can't create symbolic links by default on
Windows](https://togithub.com/git-for-windows/git/wiki/Symbolic-Links)
2. [PowerShell doesn't use the final target of a symbolic link when
starting a process or running a native command on
Windows](https://togithub.com/PowerShell/PowerShell/issues/16171)

aqua v2.29.2 or older used shell scripts and bat scripts instead of
symbolic links and aqua-proxy.

[#&#8203;885](https://togithub.com/aquaproj/aqua/issues/885)
[#&#8203;892](https://togithub.com/aquaproj/aqua/issues/892)
[#&#8203;893](https://togithub.com/aquaproj/aqua/issues/893) aqua >=
v1.12.0, aqua <= v2.29.2

But using shell scripts and bat scripts also had several issues.

1.  Using both shell scripts and bat scripts is confusing
2. tools can't be executed on Nushell
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2223107022](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2223107022)
3. bat scripts can't handle signals properly
[https://github.com/aquaproj/aqua/issues/2918#issuecomment-2228449541](https://togithub.com/aquaproj/aqua/issues/2918#issuecomment-2228449541)

So aqua v2.30.0 or later uses hard links and aqua-proxy instead of shell
scripts and bat scripts.
[#&#8203;2918](https://togithub.com/aquaproj/aqua/issues/2918)
aqua installs `aqua-proxy` and creates hard links to `aqua-proxy` on
`$(aqua root-dir)/bin` directory.
When aqua updates `aqua-proxy`, aqua recreates hard links.
From aqua v2.30.0, aqua doesn't use bat scripts so you can remove
`$(aqua root-dir)/bat` directory and remove `$(aqua root-dir)/bat` from
`PATH`.

#### Others

[#&#8203;3004](https://togithub.com/aquaproj/aqua/issues/3004) Update
slsa-verifier to v2.6.0
[#&#8203;3008](https://togithub.com/aquaproj/aqua/issues/3008) Update
module github.com/goccy/go-yaml to v1.12.0

### [`v2.29.2`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.2)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.1...v2.29.2)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.2)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.2)
| aquaproj/aqua@v2.29.1...v2.29.2

##### Bug Fixes

[#&#8203;3001](https://togithub.com/aquaproj/aqua/issues/3001) Fix
checksums of Cosign

Fixed a bug of aqua v2.29.1

### [`v2.29.1`](https://togithub.com/aquaproj/aqua/releases/tag/v2.29.1)

[Compare
Source](https://togithub.com/aquaproj/aqua/compare/v2.29.0...v2.29.1)

[Pull
Requests](https://togithub.com/aquaproj/aqua/pulls?q=is%3Apr+milestone%3Av2.29.1)
|
[Issues](https://togithub.com/aquaproj/aqua/issues?q=is%3Aissue+milestone%3Av2.29.1)
| aquaproj/aqua@v2.29.0...v2.29.1

#### Features

[#&#8203;2965](https://togithub.com/aquaproj/aqua/issues/2965) list: Add
an alias of command line option `-installed`

```sh
aqua list -i
```

#### Fixes

[#&#8203;2981](https://togithub.com/aquaproj/aqua/issues/2981) Fix a bug
that the shell completion of specific tools doesn't work

For detail, please see the following issues and pull request.

-
[https://github.com/lintnet/lintnet/issues/528#issuecomment-2192810380](https://togithub.com/lintnet/lintnet/issues/528#issuecomment-2192810380)
-
[https://github.com/urfave/cli/issues/1932](https://togithub.com/urfave/cli/issues/1932)
-
[https://github.com/urfave/cli/pull/1938](https://togithub.com/urfave/cli/pull/1938)

#### Others

Update Go to 1.22.5

</details>

<details>
<summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary>

###
[`v4.212.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.212.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.211.0...v4.212.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.212.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.212.0)
| aquaproj/aqua-registry@v4.211.0...v4.212.0

#### 🎉 New Packages


[#&#8203;25676](https://togithub.com/aquaproj/aqua-registry/issues/25676)
[FeLvi-zzz/tentez](https://togithub.com/FeLvi-zzz/tentez): Tentez helps
you switching traffic

[#&#8203;25708](https://togithub.com/aquaproj/aqua-registry/issues/25708)
[alcideio/rbac-tool](https://togithub.com/alcideio/rbac-tool): Rapid7 |
insightCloudSec | Kubernetes RBAC Power Toys - Visualize, Analyze,
Generate & Query

[#&#8203;25706](https://togithub.com/aquaproj/aqua-registry/issues/25706)
[cloudposse/github-commenter](https://togithub.com/cloudposse/github-commenter):
Command line utility for creating GitHub comments on Commits, Pull
Request Reviews or Issues

[#&#8203;25704](https://togithub.com/aquaproj/aqua-registry/issues/25704)
[cloudposse/slack-notifier](https://togithub.com/cloudposse/slack-notifier):
Command line utility to send messages with attachments to Slack channels
via Incoming Webhooks

[#&#8203;25709](https://togithub.com/aquaproj/aqua-registry/issues/25709)
[cloverstd/tcping](https://togithub.com/cloverstd/tcping): ping over a
tcp connection

[#&#8203;25712](https://togithub.com/aquaproj/aqua-registry/issues/25712)
[gruntwork-io/fetch](https://togithub.com/gruntwork-io/fetch): Download
files, folders, and release assets from a specific git commit, branch,
or tag of public and private GitHub repos

[#&#8203;25713](https://togithub.com/aquaproj/aqua-registry/issues/25713)
[jwilder/dockerize](https://togithub.com/jwilder/dockerize): Utility to
simplify running applications in docker containers

[#&#8203;25714](https://togithub.com/aquaproj/aqua-registry/issues/25714)
[kahing/goofys](https://togithub.com/kahing/goofys): a high-performance,
POSIX-ish Amazon S3 file system written in Go

[#&#8203;25715](https://togithub.com/aquaproj/aqua-registry/issues/25715)
[krallin/tini](https://togithub.com/krallin/tini): A tiny but valid
`init` for containers

[#&#8203;25719](https://togithub.com/aquaproj/aqua-registry/issues/25719)
[legal90/awscurl](https://togithub.com/legal90/awscurl): cURL with AWS
request signing

[#&#8203;25720](https://togithub.com/aquaproj/aqua-registry/issues/25720)
[lewispeckover/consulator](https://togithub.com/lewispeckover/consulator):
Import and synchronize your Consul KV data from JSON and YAML

###
[`v4.211.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.211.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.210.0...v4.211.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.211.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.211.0)
| aquaproj/aqua-registry@v4.210.0...v4.211.0

##### 🎉 New Packages


[#&#8203;25637](https://togithub.com/aquaproj/aqua-registry/issues/25637)
[suzuki-shunsuke/ghomfc](https://togithub.com/suzuki-shunsuke/ghomfc):
GitHub Organization Members' Followers Counter

[#&#8203;25608](https://togithub.com/aquaproj/aqua-registry/issues/25608)
[dimo414/bkt](https://togithub.com/dimo414/bkt): a subprocess caching
utility, available as a command line binary and a Rust library
[@&#8203;sheldonhull](https://togithub.com/sheldonhull)

##### Fixes


[#&#8203;25620](https://togithub.com/aquaproj/aqua-registry/issues/25620)
Rename the package `MichaelMure/git-bug` to
[git-bug/git-bug](https://togithub.com/git-bug/git-bug)

The GitHub repository was transferred.

###
[`v4.210.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.210.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.209.0...v4.210.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.210.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.210.0)
| aquaproj/aqua-registry@v4.209.0...v4.210.0

##### 🎉 New Packages


[#&#8203;25562](https://togithub.com/aquaproj/aqua-registry/issues/25562)
[siderolabs/omni/omni](https://togithub.com/siderolabs/omni):
SaaS-simple deployment of Kubernetes - on your own hardware

[#&#8203;25562](https://togithub.com/aquaproj/aqua-registry/issues/25562)
[siderolabs/omni/omnictl](https://togithub.com/siderolabs/omni): A CLI
for accessing Omni API

###
[`v4.209.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.209.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.208.1...v4.209.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.209.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.209.0)
| aquaproj/aqua-registry@v4.208.1...v4.209.0

#### 🎉 New Packages


[#&#8203;25546](https://togithub.com/aquaproj/aqua-registry/issues/25546)
[mrjackwills/oxker](https://togithub.com/mrjackwills/oxker): A simple
tui to view & control docker containers

#### Fixes


[#&#8203;25549](https://togithub.com/aquaproj/aqua-registry/issues/25549)
fix(electric-saw/kafta): follow up changes of kafka v0.1.8

</details>

<details>
<summary>casey/just (casey/just)</summary>

###
[`v1.34.0`](https://togithub.com/casey/just/blob/HEAD/CHANGELOG.md#1340---2024-08-02)

[Compare
Source](https://togithub.com/casey/just/compare/1.33.0...1.34.0)

##### Fixed

- Make function paths relative to correct working directory
([#&#8203;2294](https://togithub.com/casey/just/pull/2294) by
[casey](https://togithub.com/casey))

##### Changed

- Keep multi-line shebangs together
([#&#8203;2276](https://togithub.com/casey/just/pull/2276) by
[vkstrm](https://togithub.com/vkstrm))

##### Misc

- Document `set working-directory`
([#&#8203;2288](https://togithub.com/casey/just/pull/2288) by
[nyurik](https://togithub.com/nyurik))
- Fix readme typos
([#&#8203;2289](https://togithub.com/casey/just/pull/2289) by
[casey](https://togithub.com/casey))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on thursday" in timezone
America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
[repository job
log](https://developer.mend.io/github/scottames/daggerverse).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMC4xIiwidXBkYXRlZEluVmVyIjoiMzguMjAuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants