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

fix(cli): don't validate flags when requesting --help #7417

Conversation

helderco
Copy link
Contributor

@helderco helderco commented May 20, 2024

Fixes #7398

The --help flag is now global (interspersed). So the help will no longer be shown next to the command where it’s defined if there’s more to the right. It’s position in the chain no longer matters, it will be the same as adding it to the end. This was needed to look ahead and skip some validations while that flag wasn’t parsed yet, and while it was possible to preserve the previous behavior, making it global seems more consistent with CLI conventions, besides being simpler.

Before

dagger call cli --help file
Develop the Dagger CLI

USAGE
  dagger call cli <function>

After

dagger call cli --help file
Build the CLI binary

USAGE
  dagger call cli file [arguments] <function>

Refactor

Did a bit of refactoring to make the logic easier to follow and encapsulate some responsibilities better in functions.

There’s also some groundwork in preparation for:

Silence errors

Error showing twice after:

Error: required flag(s) "source" not set
Error: required flag(s) "source" not set
exit status 1

Changed telemetry span

The "initialize" telemetry span was being applied to processing constructor flags and building out the next commands, which showed the module loading as failed, and context upload step adding noise to a missing required flag error, for example. So moved only the module initialization to it’s own function to limit the "initialize" span scope.

Before

dagger call cli
✘ initialize 12.1s
! required flag(s) "source" not set
  ✔ Module.initialize: Module! 1.4s
  ✔ ModuleSource.resolveFromCaller: ModuleSource! 0.6s
    ✔ upload /Users/.../dagger from xxx (client id: oq8yf7p509lm3o9qqhden90vx) (exclude: **/.git) (include: ci/**/*, **/go.mod, **/go.sum, **/go.work, **/go.work.sum, **/vendor/, **/*.go, dagger.json) 0.6s

Error: required flag(s) "source" not set

After

dagger call version string

✔ initialize 6.7s
✘ prepare 0.0s
! required flag(s) "source" not set

Error: required flag(s) "source" not set
Run 'dagger call --help' for usage.
exit status 1

Removed aliases

When they were added, the API returned the original name used by the SDK. Somewhere along the way, to avoid the need for SDKs to handle naming conventions, the engine started to store the original name under a private field, and converted name to the normalized GraphQL convention for fields. So, for a while now, the aliases haven’t been the name that users see in code, which was why we added them in the first place.

@helderco helderco added this to the v0.11.5 milestone May 20, 2024
@nipuna-perera
Copy link

nipuna-perera commented May 20, 2024

Hey @helderco I have a request. It's not necessary to be done as part of this PR but I wanted to bring it to the team's attention. I am trying to run some dagger functions in parallel within my CI system (Jenkins). Since the function calls are the first thing dagger related that happens in the pipeline, I have a separate stage to run dagger call --help to "initialize" the engine (basically pull the image and get it ready).

I see this same pattern in the dagger's own CI too. There is a "Wait for engine to be ready" step in the actions.

Now the issue is, my modules are in a daggerverse folder and I when I do dagger call --help I have to pass in a module like dagger call -m ./mymodule --help. Which isn't that ergonomic. Is there a better way to get the engine to "initialize" without calling --help? If not, can you make the dagger call --help not return a nonzero when it's outside of a module folder?

@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch from add5711 to b51cf6d Compare May 20, 2024 17:33
@helderco
Copy link
Contributor Author

Hey @nipuna-perera, you'll be able to do that with:

Then I'd suggest you call the version core function:

dagger -m- call version
v0.11.5

That has much less output but still informative and it can be run from anywhere. Doesn't need to load any module.

@nipuna-perera
Copy link

Hey @nipuna-perera, you'll be able to do that with:

Then I'd suggest you call the version core function:

❯ dagger -m- call version
v0.11.5

That has much less output but still informative and it can be run from anywhere. Doesn't need to load any module.

That is perfect! Thank you! Looking forward to these DX cleanup/improve PRs getting merged :)

@helderco helderco requested review from jedevc and sipsma May 21, 2024 11:32
@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch 3 times, most recently from fbb4c22 to 9eb6ebf Compare May 22, 2024 10:40
@jedevc
Copy link
Member

jedevc commented May 23, 2024

The "initialize" telemetry span was being applied to processing constructor flags and building out the next commands, which showed the module loading as failed, and context upload step adding noise to a missing required flag error, for example. So moved only the module initialization to it’s own function to limit the "initialize" span scope.

Something in this change seems to effectively revert #7347

I think this is because all cli args were moved to be part of that span - including user args. I'm not sure what the answer is here, ideally we should keep the spans for loading these attached to the intitialize context, but I agree that we shouldn't unfold this on an error.

Potentially, we should only error the entire span if there's a loading error, but on a required flag error, the span shouldn't error - initialization has succeeded, and we can propagate the error back up, but not error the span.

@helderco
Copy link
Contributor Author

The "initialize" telemetry span was being applied to processing constructor flags and building out the next commands, which showed the module loading as failed, and context upload step adding noise to a missing required flag error, for example. So moved only the module initialization to it’s own function to limit the "initialize" span scope.

Something in this change seems to effectively revert #7347

Thanks for catching that, I'll see what I can do.

@helderco
Copy link
Contributor Author

If I put in another span it's cleaner.

Before

dagger call version string

✘ initialize 6.9s
! required flag(s) "source" not set
  ✔ ModuleSource.resolveFromCaller: ModuleSource! 0.7s
    ✔ upload /Users/helder/Projects/dagger from Sirius (client id: mr82245cdk074u11yv694vty4) (exclude: **/.git) (include: **/*.go, dagger.json, ci/**/*, **/go.mod, **/go.sum, **/go.work, **/go.work.sum, **/vendor/) 0.7s

Error: required flag(s) "source" not set

After

dagger call version string

✔ initialize 6.7s
✘ prepare 0.0s
! required flag(s) "source" not set

Error: required flag(s) "source" not set
Run 'dagger call --help' for usage.

Don't love the repetition that I wasn't getting before:

dagger call version string

✔ initialize 4.8s

Error: required flag(s) "source" not set
Run 'dagger call --help' for usage.
exit status 1

But we already have an issue on that:

@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch from 9eb6ebf to 183099a Compare May 23, 2024 21:42
@helderco
Copy link
Contributor Author

helderco commented May 24, 2024

One thing to note is that most (probably, haven't counted) cli args will show at the root anyway, rather than this span. Even for a Directory arg, if it's from git, the flag returns a lazy value. Some flags return a lazy value, others don't. So at this point, I'm not sure of the value of putting them in their own span. Whatever you see above the main pipeline is just the inputs to that pipeline. That's consistent with the general feel in the Cloud UI.

@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch 2 times, most recently from 9d985dd to fe1bd83 Compare May 24, 2024 15:16
@jedevc
Copy link
Member

jedevc commented May 27, 2024

As discussed (note to self):

  • We'll use with prepare that's marked as encapsulate
    • Eventually, we could have a top-level span for each flag
  • We might unlazy git arguments to get them to show at the right top-level span, instead of later on

@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch from fe1bd83 to 162aa9a Compare May 27, 2024 16:00
The `--help` flag is now global (interspersed). So the help will no longer be shown next to the command where it’s defined if there’s more to the right. It’s position in the chain no longer matters, it will be the same as adding it to the end. This was needed to look ahead and skip some validations while that flag wasn’t parsed yet, and while it was possible to preserve the previous behavior, making it global seems more consistent with CLI conventions, besides being simpler.

There's also some refactoring to make the logic easier to follow and encapsulate some responsibilities better in functions.

Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch from 162aa9a to a4e8a88 Compare May 27, 2024 16:01
Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
@helderco helderco force-pushed the helder/oss-333-dont-require-any-params-when-asking-for-help branch from a4e8a88 to 5cb120d Compare May 27, 2024 16:37
@helderco
Copy link
Contributor Author

helderco commented May 27, 2024

@wingyplus, any idea why the Elixir test is failing?

EDIT: fluke

@helderco helderco merged commit cc37cb6 into dagger:main May 27, 2024
93 checks passed
@helderco helderco deleted the helder/oss-333-dont-require-any-params-when-asking-for-help branch May 27, 2024 17:42
renovate bot added a commit to scottames/dots that referenced this pull request Jun 2, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua-registry](https://togithub.com/aquaproj/aqua-registry)
| minor | `v4.185.1` -> `v4.188.0` |
| [casey/just](https://togithub.com/casey/just) | minor | `1.26.0` ->
`1.27.0` |
| [charmbracelet/gum](https://togithub.com/charmbracelet/gum) | patch |
`v0.14.0` -> `v0.14.1` |
| [cli/cli](https://togithub.com/cli/cli) | minor | `v2.49.2` ->
`v2.50.0` |
| [dagger/dagger](https://togithub.com/dagger/dagger) | patch |
`v0.11.4` -> `v0.11.6` |
| [dprint/dprint](https://togithub.com/dprint/dprint) | minor | `0.45.1`
-> `0.46.1` |
| [fujiwara/awslim](https://togithub.com/fujiwara/awslim) | patch |
`v0.1.1` -> `v0.1.2` |
| [golangci/golangci-lint](https://togithub.com/golangci/golangci-lint)
| minor | `v1.58.2` -> `v1.59.0` |
| [simulot/immich-go](https://togithub.com/simulot/immich-go) | minor |
`0.14.1` -> `0.15.0` |
| [snyk/cli](https://togithub.com/snyk/cli) | patch | `v1.1291.0` ->
`v1.1291.1` |
| [twpayne/chezmoi](https://togithub.com/twpayne/chezmoi) | patch |
`v2.48.1` -> `v2.48.2` |
| [weaveworks/eksctl](https://togithub.com/weaveworks/eksctl) | minor |
`v0.179.0` -> `v0.180.0` |

---

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

---

### Release Notes

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

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

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


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

#### 🎉 New Packages


[#&#8203;23408](https://togithub.com/aquaproj/aqua-registry/issues/23408)
[getsavvyinc/savvy-cli](https://togithub.com/getsavvyinc/savvy-cli):
Create, share, and run runbooks from your terminal

[#&#8203;23384](https://togithub.com/aquaproj/aqua-registry/issues/23384)
[joshmedeski/sesh](https://togithub.com/joshmedeski/sesh): Smart session
manager for the terminal
[@&#8203;CrystalMethod](https://togithub.com/CrystalMethod)

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

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


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

#### Fixes


[#&#8203;23378](https://togithub.com/aquaproj/aqua-registry/issues/23378)
authzed/zed: Use gnu binary instead of musl binary
[@&#8203;sapphi-red](https://togithub.com/sapphi-red)

musl version exists for linux, but it is dynamically linked to musl libc
and therefore doesn't work on glibc systems.

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

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


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

#### 🎉 New Packages


[#&#8203;23375](https://togithub.com/aquaproj/aqua-registry/issues/23375)
[authzed/zed](https://togithub.com/authzed/zed): Official command-line
tool for managing SpiceDB
[@&#8203;sapphi-red](https://togithub.com/sapphi-red)

[#&#8203;23277](https://togithub.com/aquaproj/aqua-registry/issues/23277)
[nucleuscloud/neosync](https://togithub.com/nucleuscloud/neosync): Open
source data anonymization and synthetic data orchestration for
developers. Create high fidelity synthetic data and sync it across your
environments

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

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


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

#### 🎉 New Packages


[#&#8203;23253](https://togithub.com/aquaproj/aqua-registry/issues/23253)
[stripe/stripe-cli](https://togithub.com/stripe/stripe-cli): A
command-line tool for Stripe

#### Fix


[#&#8203;23254](https://togithub.com/aquaproj/aqua-registry/issues/23254)
dlvhdr/gh-dash: Follow up changes of gh-dash v4.0.0

-
[dlvhdr/gh-dash#336

</details>

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

###
[`v1.27.0`](https://togithub.com/casey/just/blob/HEAD/CHANGELOG.md#1270---2024-05-25)

[Compare
Source](https://togithub.com/casey/just/compare/1.26.0...1.27.0)

##### Changed

- Use cache dir for temporary files
([#&#8203;2067](https://togithub.com/casey/just/pull/2067))

##### Added

- Add `[doc]` attribute to set and suppress documentation comments
([#&#8203;2050](https://togithub.com/casey/just/pull/2050) by
[neunenak](https://togithub.com/neunenak))
- Add source_file() and source_directory() functions
([#&#8203;2088](https://togithub.com/casey/just/pull/2088))
- Add recipe groups
([#&#8203;1842](https://togithub.com/casey/just/pull/1842) by
[neunenak](https://togithub.com/neunenak))
- Add shell() function for running external commands
([#&#8203;2047](https://togithub.com/casey/just/pull/2047) by
[gyreas](https://togithub.com/gyreas))
- Add `--global-justfile` flag
([#&#8203;1846](https://togithub.com/casey/just/pull/1846) by
[neunenak](https://togithub.com/neunenak))
- Add shell-expanded strings
([#&#8203;2055](https://togithub.com/casey/just/pull/2055))
- Add `encode_uri_component` function
([#&#8203;2052](https://togithub.com/casey/just/pull/2052) by
[laniakea64](https://togithub.com/laniakea64))
- Add `choose` function for generating random strings
([#&#8203;2049](https://togithub.com/casey/just/pull/2049) by
[laniakea64](https://togithub.com/laniakea64))
- Add predefined constants
([#&#8203;2054](https://togithub.com/casey/just/pull/2054))
- Allow setting some command-line options with environment variables
([#&#8203;2044](https://togithub.com/casey/just/pull/2044) by
[neunenak](https://togithub.com/neunenak))
- Add prepend() function
([#&#8203;2045](https://togithub.com/casey/just/pull/2045) by
[gyreas](https://togithub.com/gyreas))
- Add append() function
([#&#8203;2046](https://togithub.com/casey/just/pull/2046) by
[gyreas](https://togithub.com/gyreas))
- Add --man subcommand
([#&#8203;2041](https://togithub.com/casey/just/pull/2041))
- Make `dotenv-path` relative to working directory
([#&#8203;2040](https://togithub.com/casey/just/pull/2040))
- Add `assert` expression
([#&#8203;1845](https://togithub.com/casey/just/pull/1845) by
[de1iza](https://togithub.com/de1iza))
- Add 'allow-duplicate-variables' setting
([#&#8203;1922](https://togithub.com/casey/just/pull/1922) by
[Mijago](https://togithub.com/Mijago))

##### Fixed

- List modules in source order with `--unsorted`
([#&#8203;2085](https://togithub.com/casey/just/pull/2085))
- Show submodule recipes in --choose
([#&#8203;2069](https://togithub.com/casey/just/pull/2069))
- Allow multiple imports of the same file in different modules
([#&#8203;2065](https://togithub.com/casey/just/pull/2065))
- Fix submodule recipe listing indentation
([#&#8203;2063](https://togithub.com/casey/just/pull/2063))
- Pass command as first argument to `shell`
([#&#8203;2061](https://togithub.com/casey/just/pull/2061))
- Allow shell expanded strings in mod and import paths
([#&#8203;2059](https://togithub.com/casey/just/pull/2059))
- Run imported recipes in root justfile with correct working directory
([#&#8203;2056](https://togithub.com/casey/just/pull/2056))
- Fix output `\r\n` stripping
([#&#8203;2035](https://togithub.com/casey/just/pull/2035))

##### Misc

- Forbid whitespace in shell-expanded string prefixes
([#&#8203;2083](https://togithub.com/casey/just/pull/2083))
- Add Debian and Ubuntu install instructions to readme
([#&#8203;2072](https://togithub.com/casey/just/pull/2072))
- Remove snap installation instructions from readme
([#&#8203;2070](https://togithub.com/casey/just/pull/2070))
- Fallback to wget in install script if curl isn't
available([#&#8203;1913](https://togithub.com/casey/just/pull/1913) by
[tgross35](https://togithub.com/tgross35))
- Use std::io::IsTerminal instead of atty crate
([#&#8203;2066](https://togithub.com/casey/just/pull/2066))
- Improve `shell()` documentation
([#&#8203;2060](https://togithub.com/casey/just/pull/2060) by
[laniakea64](https://togithub.com/laniakea64))
- Add bash completion for snap
([#&#8203;2058](https://togithub.com/casey/just/pull/2058) by
[albertodonato](https://togithub.com/albertodonato))
- Refactor list subcommand
([#&#8203;2062](https://togithub.com/casey/just/pull/2062))
- Document working directory
([#&#8203;2053](https://togithub.com/casey/just/pull/2053))
- Replace FunctionContext with Evaluator
([#&#8203;2048](https://togithub.com/casey/just/pull/2048))
- Update clap to version 4
([#&#8203;1924](https://togithub.com/casey/just/pull/1924) by
[poliorcetics](https://togithub.com/poliorcetics))
- Cleanup ([#&#8203;2026](https://togithub.com/casey/just/pull/2026) by
[adamnemecek](https://togithub.com/adamnemecek))
- Increase --list maximum alignable width from 30 to 50
([#&#8203;2039](https://togithub.com/casey/just/pull/2039))
- Document using `env -S`
([#&#8203;2038](https://togithub.com/casey/just/pull/2038))
- Update line continuation documentation
([#&#8203;1998](https://togithub.com/casey/just/pull/1998) by
[laniakea64](https://togithub.com/laniakea64))
- Add example using GNU parallel to run tasks in concurrently
([#&#8203;1915](https://togithub.com/casey/just/pull/1915) by
[amarao](https://togithub.com/amarao))
- Placate clippy: use `clone_into`
([#&#8203;2037](https://togithub.com/casey/just/pull/2037))
- Use --command-color when printing shebang recipe commands
([#&#8203;1911](https://togithub.com/casey/just/pull/1911) by
[avi-cenna](https://togithub.com/avi-cenna))
- Document how to use watchexec to re-run recipes when files change
([#&#8203;2036](https://togithub.com/casey/just/pull/2036))
- Update VS Code extensions in readme
([#&#8203;2034](https://togithub.com/casey/just/pull/2034))
- Add rust:just repology package table to readme
([#&#8203;2032](https://togithub.com/casey/just/pull/2032))

</details>

<details>
<summary>charmbracelet/gum (charmbracelet/gum)</summary>

###
[`v0.14.1`](https://togithub.com/charmbracelet/gum/releases/tag/v0.14.1)

[Compare
Source](https://togithub.com/charmbracelet/gum/compare/v0.14.0...v0.14.1)

#### What's Changed

- Show help with Huh? by
[@&#8203;maaslalani](https://togithub.com/maaslalani) in
[charmbracelet/gum#587
- Support using the Home/End keys in pager by
[@&#8203;lzm0](https://togithub.com/lzm0) in
[charmbracelet/gum#548

##### Fixes

- Handle `huh?` user aborted error by
[@&#8203;MikaelFangel](https://togithub.com/MikaelFangel) in
[charmbracelet/gum#578
- Cursor styling by
[@&#8203;MikaelFangel](https://togithub.com/MikaelFangel) in
[charmbracelet/gum#592
- Re-introduce <kbd>ESC</kbd> for `gum write` by
[@&#8203;MikaelFangel](https://togithub.com/MikaelFangel) in
[charmbracelet/gum#579

#### New Contributors

- [@&#8203;CodeZea1ot](https://togithub.com/CodeZea1ot) made their first
contribution in
[charmbracelet/gum#542
- [@&#8203;camcui](https://togithub.com/camcui) made their first
contribution in
[charmbracelet/gum#537
- [@&#8203;lzm0](https://togithub.com/lzm0) made their first
contribution in
[charmbracelet/gum#548

**Full Changelog**:
charmbracelet/gum@v0.14.0...v0.14.1

***

<a href="https://charm.sh/"><img alt="The Charm logo"
src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a>

Thoughts? Questions? We love hearing from you. Feel free to reach out on
[Twitter](https://twitter.com/charmcli), [The
Fediverse](https://mastodon.technology/@&#8203;charm), or
[Slack](https://charm.sh/slack).

</details>

<details>
<summary>cli/cli (cli/cli)</summary>

### [`v2.50.0`](https://togithub.com/cli/cli/releases/tag/v2.50.0):
GitHub CLI 2.50.0

[Compare Source](https://togithub.com/cli/cli/compare/v2.49.2...v2.50.0)

#### What's Changed

- Refactor git credential flow code by
[@&#8203;williammartin](https://togithub.com/williammartin) in
[cli/cli#9089
- feat: add json output for `gh pr checks` by
[@&#8203;nobe4](https://togithub.com/nobe4) in
[cli/cli#9079
- Rework first auth tests with new gitcredential abstractions by
[@&#8203;williammartin](https://togithub.com/williammartin) in
[cli/cli#9095
- list the various alias permutations for the command and subcommands,
via '--help' and 'gh reference' by
[@&#8203;gabemontero](https://togithub.com/gabemontero) in
[cli/cli#8824
- Removed tty message when checking for extension upgrades by
[@&#8203;leevic31](https://togithub.com/leevic31) in
[cli/cli#9088
- Fix doc bug for gh run watch by
[@&#8203;jasonodonnell](https://togithub.com/jasonodonnell) in
[cli/cli#9052
- feat: add support for stateReason in `gh pr view` by
[@&#8203;nobe4](https://togithub.com/nobe4) in
[cli/cli#9080
- fix: rename the `Attempts` field to `Attempt`; expose in `gh run view`
and `gh run ls` by [@&#8203;cawfeecake](https://togithub.com/cawfeecake)
in
[cli/cli#8905
- Update regex in changedFilesNames to handle quoted paths by
[@&#8203;anda3](https://togithub.com/anda3) in
[cli/cli#9115
- Add a `gh variable get FOO` command by
[@&#8203;arnested](https://togithub.com/arnested) in
[cli/cli#9106
- Add macOS pkg installer to deployment
([#&#8203;7554](https://togithub.com/cli/cli/issues/7554)) by
[@&#8203;paulober](https://togithub.com/paulober) in
[cli/cli#7555
- Add integration tests for `gh attestation verify` shared workflow use
case by [@&#8203;malancas](https://togithub.com/malancas) in
[cli/cli#9107
- Add build provenance for gh CLI releases by
[@&#8203;malancas](https://togithub.com/malancas) in
[cli/cli#9087
- build(deps): bump github.com/gabriel-vasile/mimetype from 1.4.3 to
1.4.4 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[cli/cli#9124
- Build completions during release on macos by
[@&#8203;williammartin](https://togithub.com/williammartin) in
[cli/cli#9136
- Clarify Mac OS Installer packages are unsigned by
[@&#8203;andyfeller](https://togithub.com/andyfeller) in
[cli/cli#9140

#### New Contributors

- [@&#8203;gabemontero](https://togithub.com/gabemontero) made their
first contribution in
[cli/cli#8824
- [@&#8203;jasonodonnell](https://togithub.com/jasonodonnell) made their
first contribution in
[cli/cli#9052
- [@&#8203;anda3](https://togithub.com/anda3) made their first
contribution in
[cli/cli#9115
- [@&#8203;arnested](https://togithub.com/arnested) made their first
contribution in
[cli/cli#9106
- [@&#8203;paulober](https://togithub.com/paulober) made their first
contribution in
[cli/cli#7555

**Full Changelog**: cli/cli@v2.49.2...v2.50.0

</details>

<details>
<summary>dagger/dagger (dagger/dagger)</summary>

###
[`v0.11.6`](https://togithub.com/dagger/dagger/blob/HEAD/CHANGELOG.md#v0116---2024-05-30)

[Compare
Source](https://togithub.com/dagger/dagger/compare/v0.11.5...v0.11.6)

##### Added

- Add `withName` method to File by
[@&#8203;TomChv](https://togithub.com/TomChv) in
[dagger/dagger#7491

##### Fixed

- cli: don't validate flags when requesting `--help` by
[@&#8203;helderco](https://togithub.com/helderco) in
[dagger/dagger#7417
- fix container init being wrong platform in arm image by
[@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7497
- fix container DNS resolution when host has no search domains by
[@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7501
- honor system proxy config during git operations by
[@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7504
- fix windows-style paths used as file+directory arg values in dagger
call by [@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7506

##### What to do next?

-   Read the [documentation](https://docs.dagger.io)
-   Join our [Discord server](https://discord.gg/dagger-io)
-   Follow us on [Twitter](https://twitter.com/dagger_io)

###
[`v0.11.5`](https://togithub.com/dagger/dagger/blob/HEAD/CHANGELOG.md#v0115---2024-05-27)

[Compare
Source](https://togithub.com/dagger/dagger/compare/v0.11.4...v0.11.5)

##### Added

- cli: `dagger login` cloud traces support by
[@&#8203;aluzzardi](https://togithub.com/aluzzardi) in
[dagger/dagger#7125
- cli: improved `--progress=plain` implementation for better visibility
by [@&#8203;jedevc](https://togithub.com/jedevc) in
[dagger/dagger#7272

##### Changed

- cli: cleaner tty progress view by
[@&#8203;jedevc](https://togithub.com/jedevc) in
[dagger/dagger#7347
[dagger/dagger#7371
[dagger/dagger#7386
- cli: don't show functions that can't be called by
[@&#8203;helderco](https://togithub.com/helderco) in
[dagger/dagger#7418
- cli: don't show inherited flags in function commands by
[@&#8203;helderco](https://togithub.com/helderco) in
[dagger/dagger#7419
- core: remove shim and switch to
[dumb-init](https://togithub.com/Yelp/dumb-init) by
[@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7367

##### Fixed

- core: fixed custom CA certs in modules by
[@&#8203;sipsma](https://togithub.com/sipsma) in
[dagger/dagger#7356
- cli: don't validate flags when requesting `--help` by
[@&#8203;helderco](https://togithub.com/helderco) in
[dagger/dagger#7417

##### What to do next?

-   Read the [documentation](https://docs.dagger.io)
-   Join our [Discord server](https://discord.gg/dagger-io)
-   Follow us on [Twitter](https://twitter.com/dagger_io)

</details>

<details>
<summary>dprint/dprint (dprint/dprint)</summary>

### [`v0.46.1`](https://togithub.com/dprint/dprint/releases/tag/0.46.1)

[Compare
Source](https://togithub.com/dprint/dprint/compare/0.46.0...0.46.1)

#### Changes

- fix: dprint 0.46 release for `cargo install` without `--locked` flag
([#&#8203;852](https://togithub.com/dprint/dprint/issues/852))
- fix: upgrade to rustls 0.23.8
([#&#8203;853](https://togithub.com/dprint/dprint/issues/853))

Please run `dprint config update` after upgrading as some BOM handling
happens in the plugins now and some may fail to parse files with a BOM
now. See [#&#8203;854](https://togithub.com/dprint/dprint/issues/854)
and sorry for any headaches (I'm unsure of the impact of this change, so
let me know if this is a huge hassle for you).

#### Install

Run `dprint upgrade` or see https://dprint.dev/install/

#### Checksums

|Artifact|SHA-256 Checksum|
|:--|:--|

|dprint-x86\_64-apple-darwin.zip|cdea84bce1d84c26e8eced2265d246b79a849ec2e7d1377d98dd7bdb21c7ce83|

|dprint-aarch64-apple-darwin.zip|f3ff4faef83d14c3b4ae262e79a40d4e0fc3fa1903d0b6e9b82f0b25b00e9499|

|dprint-x86\_64-pc-windows-msvc.zip|74e5ab38c744d5903862c2b5174d0fef9759b5506da775e1fb93b6a68c63101d|

|dprint-x86\_64-pc-windows-msvc-installer.exe|107786c41be76b49463a50d7d9d788397bba723e107e723347f8e8dde65339dc|

|dprint-x86\_64-unknown-linux-gnu.zip|cb72fa6b474e2847a3cf5705b43ee2cbfdafddd7c69ff162309fd1f4f43c872a|

|dprint-x86\_64-unknown-linux-musl.zip|4a7d6fa6b920ab150f580965556086cdd7992e07078e627ab9a9d1c3bd30ba85|

|dprint-aarch64-unknown-linux-gnu.zip|c4e892d5d237a57ede7900255e5ce669b56160e61c89798c118fbd4c36d48ff2|

|dprint-aarch64-unknown-linux-musl.zip|e2b6d87167d21f1f01571790e79526ef9caff3b8b75f5cac348c4f06f60a8c16|

### [`v0.46.0`](https://togithub.com/dprint/dprint/releases/tag/0.46.0)

[Compare
Source](https://togithub.com/dprint/dprint/compare/0.45.1...0.46.0)

##### Changes

- feat: gitignore support
([#&#8203;832](https://togithub.com/dprint/dprint/issues/832))
- feat: `DPRINT_TLS_CA_STORE` and `DPRINT_CERT`
([#&#8203;850](https://togithub.com/dprint/dprint/issues/850))
- fix: remove BOM handling from the CLI
([#&#8203;844](https://togithub.com/dprint/dprint/issues/844))

Please run `dprint config update` after upgrading as some BOM handling
happens in the plugins now and some may fail to parse files with a BOM
now. See [#&#8203;854](https://togithub.com/dprint/dprint/issues/854)
and sorry for any headaches (I'm unsure of the impact of this change, so
let me know if this is a huge hassle for you).

##### Install

Run `dprint upgrade` or see https://dprint.dev/install/

##### Checksums

|Artifact|SHA-256 Checksum|
|:--|:--|

|dprint-x86\_64-apple-darwin.zip|e339f1f891c60087676d72f70ba5f80dcaedde4bdc58730b9cb68a5483b3abfd|

|dprint-aarch64-apple-darwin.zip|4b608b3676f10e04328c3d8be396bded96328ebca9b95b70bf5baf67bed7b135|

|dprint-x86\_64-pc-windows-msvc.zip|786201545938f6f7c6d407e6404b31ae9bbf9e5a4abc4c88dc9bd73da369a906|

|dprint-x86\_64-pc-windows-msvc-installer.exe|e445b37af124e5d8ef691685632509d2bfc701962c58db89eebc8a8de7352ab4|

|dprint-x86\_64-unknown-linux-gnu.zip|8274ea44d2ab4d10b8bdfcc824d946a6d051594aede49c9db8c5e810887abd67|

|dprint-x86\_64-unknown-linux-musl.zip|7a2c12edc868259be890174c4ec3bd51c81ec8773aa294e12fac0634f36d15f5|

|dprint-aarch64-unknown-linux-gnu.zip|6617465acba53c9b939e73f20538a8027e45593342c34f7ac4826c9f4e6cf53b|

|dprint-aarch64-unknown-linux-musl.zip|e52c0a3398e34e88ffe560e719bf8361ba3f35b4e0927ab9ba0761796884ce24|

</details>

<details>
<summary>fujiwara/awslim (fujiwara/awslim)</summary>

### [`v0.1.2`](https://togithub.com/fujiwara/awslim/releases/tag/v0.1.2)

[Compare
Source](https://togithub.com/fujiwara/awslim/compare/v0.1.1...v0.1.2)

#### What's Changed

- feature: Add suport for building with specified OS/Arch by
[@&#8203;ToshihitoKon](https://togithub.com/ToshihitoKon) in
[fujiwara/awslim#20
- merge [#&#8203;20](https://togithub.com/fujiwara/awslim/issues/20)
into main by [@&#8203;fujiwara](https://togithub.com/fujiwara) in
[fujiwara/awslim#21

#### New Contributors

- [@&#8203;ToshihitoKon](https://togithub.com/ToshihitoKon) made their
first contribution in
[fujiwara/awslim#20

**Full Changelog**:
fujiwara/awslim@v0.1.1...v0.1.2

</details>

<details>
<summary>golangci/golangci-lint (golangci/golangci-lint)</summary>

###
[`v1.59.0`](https://togithub.com/golangci/golangci-lint/compare/v1.58.2...v1.59.0)

[Compare
Source](https://togithub.com/golangci/golangci-lint/compare/v1.58.2...v1.59.0)

</details>

<details>
<summary>simulot/immich-go (simulot/immich-go)</summary>

###
[`v0.15.0`](https://togithub.com/simulot/immich-go/releases/tag/0.15.0)

[Compare
Source](https://togithub.com/simulot/immich-go/compare/0.14.1...0.15.0)

##### fix
[#&#8203;255](https://togithub.com/simulot/immich-go/issues/255) Last
percents of google puzzle solving are very slow when processing very
large takeout archive

The google puzzle solving is now much faster for large takeout archives.

##### fix
[#&#8203;215](https://togithub.com/simulot/immich-go/issues/215) Use
XDG_CONFIG_HOME for storing config

The configuration file that contains the server and the key is now
stored by default in following folder:

-   Linux `$HOME/.config/immich-go/immich-go.json`
-   Windows `%AppData%\immich-go\immich-go.json`
-   Apple `$HOME/Library/Application Support/immich-go/immich-go.json`

##### Store the log files into sensible dir for user's system

The default log file is:

-   Linux `$HOME/.cache/immich-go/immich-go_YYYY-MM-DD_HH-MI-SS.log`
-   Windows `%LocalAppData%\immich-go\immich-go_YYYY-MM-DD_HH-MI-SS.log`
- Apple
`$HOME/Library/Caches/immich-go/immich-go_YYYY-MM-DD_HH-MI-SS.log`

##### Feat:
\[[#&#8203;249](https://togithub.com/simulot/immich-go/issues/249)] Fix
Display the path of log file name

The log file name is printed when the program exits.

#### Changelog

- [`87471f6`](https://togithub.com/simulot/immich-go/commit/87471f6)
Edit releases.md
- [`d4269ee`](https://togithub.com/simulot/immich-go/commit/d4269ee) Fix
Display the path of log file name
([#&#8203;251](https://togithub.com/simulot/immich-go/issues/251))
- [`49bf673`](https://togithub.com/simulot/immich-go/commit/49bf673) Fix
Display the path of log file name
([#&#8203;256](https://togithub.com/simulot/immich-go/issues/256))
- [`73fde8d`](https://togithub.com/simulot/immich-go/commit/73fde8d)
Fixes [#&#8203;255](https://togithub.com/simulot/immich-go/issues/255)
- [`9b70932`](https://togithub.com/simulot/immich-go/commit/9b70932)
Merge branch 'main' into simulot/issue215
- [`734bbeb`](https://togithub.com/simulot/immich-go/commit/734bbeb)
Merge pull request
[#&#8203;257](https://togithub.com/simulot/immich-go/issues/257) from
simulot:simulot/issue255
- [`8805ca7`](https://togithub.com/simulot/immich-go/commit/8805ca7)
Merge pull request
[#&#8203;258](https://togithub.com/simulot/immich-go/issues/258) from
simulot:simulot/issue215
- [`c63dc09`](https://togithub.com/simulot/immich-go/commit/c63dc09)
Merge pull request
[#&#8203;260](https://togithub.com/simulot/immich-go/issues/260) from
simulot:simulot/issue259
- [`e4d1643`](https://togithub.com/simulot/immich-go/commit/e4d1643) Set
a timeout for all http queries
([#&#8203;253](https://togithub.com/simulot/immich-go/issues/253))
- [`f968bd6`](https://togithub.com/simulot/immich-go/commit/f968bd6) The
log doesn't show discared files Fixes
[#&#8203;259](https://togithub.com/simulot/immich-go/issues/259)
- [`37f4b83`](https://togithub.com/simulot/immich-go/commit/37f4b83) Use
XDG_CONFIG_HOME for storing config
([#&#8203;248](https://togithub.com/simulot/immich-go/issues/248))
- [`755e1b7`](https://togithub.com/simulot/immich-go/commit/755e1b7) Use
XDG_CONFIG_HOME for storing config Fixes
[#&#8203;215](https://togithub.com/simulot/immich-go/issues/215)

</details>

<details>
<summary>snyk/cli (snyk/cli)</summary>

### [`v1.1291.1`](https://togithub.com/snyk/cli/releases/tag/v1.1291.1)

[Compare
Source](https://togithub.com/snyk/cli/compare/v1.1291.0...v1.1291.1)

The Snyk CLI is being deployed to different deployment channels, users
can select the stability level according to their needs. For details
please see [this
documentation](https://docs.snyk.io/snyk-cli/releases-and-channels-for-the-snyk-cli)

##### Bug Fixes

- **dependencies:** Upgrade go-getter to v1.7.4 to fix vulnerabilities
([#&#8203;5252](https://togithub.com/snyk/snyk/issues/5252))

</details>

<details>
<summary>twpayne/chezmoi (twpayne/chezmoi)</summary>

###
[`v2.48.2`](https://togithub.com/twpayne/chezmoi/compare/v2.48.1...v2.48.2)

[Compare
Source](https://togithub.com/twpayne/chezmoi/compare/v2.48.1...v2.48.2)

</details>

<details>
<summary>weaveworks/eksctl (weaveworks/eksctl)</summary>

###
[`v0.180.0`](https://togithub.com/eksctl-io/eksctl/releases/tag/v0.180.0):
eksctl 0.180.0

[Compare
Source](https://togithub.com/weaveworks/eksctl/compare/0.179.0-rc.0...0.180.0)

### Release v0.180.0

#### 🐛 Bug Fixes

- Add option to create service account for pod identities which defaults
to `false`
([#&#8203;7784](https://togithub.com/weaveworks/eksctl/issues/7784))

</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 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:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: scottames-github-bot[bot] <162828115+scottames-github-bot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

🐞 Don't require any params when asking for help
3 participants