-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Add StatusPanelView config #3309
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looked over the code and tested the feature.
Was a little confused as to what this feature changes from the PR title and description. Had to look over the code to see that it's about the status panel's main view.
Other than perhaps thinking about a different name for the config variable, it looks fine to me.
docs/Config.md
Outdated
@@ -86,6 +86,7 @@ gui: | |||
border: 'rounded' # one of 'single' | 'double' | 'rounded' | 'hidden' | |||
animateExplosion: true # shows an explosion animation when nuking the working tree | |||
portraitMode: 'auto' # one of 'auto' | 'never' | 'always' | |||
defaultMainView: 'dashboard' # one of 'dashboard' | 'allBranchesLog' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure the name defaultMainView
is descriptive enough here. Maybe we can consider changing it to something like defaultStatusPanelView
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like defaultStatusPanelView
, I agree it's better than defaultMainView
.
Another concern is that "default" makes it sound as if this is only the initial view, but you can then switch to the respective other one. But this is only true for dashboard; once you see the "all branches log" view, there's no going back. If we think that's acceptable, then I'd omit the "default" from the name and just call it statusPanelView
.
But we could also consider changing the "Show all branch logs" command to a toggle that changes to "Hide all branch logs" if it is showing. I'm not sure anybody needs that functionality though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense. I also doubt anyone would want to be switching between those two views. statusPanelView
sounds good to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Renamed DefaultMainView
to StatusPanelView
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@oakio Thanks; the schema seems to be out of date now, though, please regenerate it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
default: | ||
return self.showDashboard |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am also not sure if we should be quietly choosing the dashboard view in case of an error in the config file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something like this?
default:
return func() error {
return self.c.Error(fmt.Error("Unexpected value for StatusPanelView config"));
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
True, but I'm not sure what else to do. In other cases we panic at the place where it's used (e.g. for git.log.showGraph
, when it was still a config), and that's a terrible UX, we shouldn't do that.
We could validate the config value right after loading, but then there's the risk that the validation code runs out of sync with the code that uses it, since we're working with string literals everywhere.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oops, our messages crossed. Yes, that would also work, but I think I'd prefer to do the validation right after loading (i.e. at the end of loadUserConfig
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could validate the config value right after loading, but then there's the risk that the validation code runs out of sync with the code that uses it, since we're working with string literals everywhere.
😬 you're right. Maybe we do just fallback to default then. We have the schema to at least help the user out here anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added UserConfig
validation. In particular validation for Git.StatusPanelView
.
f3f824d
to
1b16733
Compare
1b16733
to
e196857
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice, thanks for the great work. Two more very small things below, apart from that I'm very happy with this now.
I'm not sure if we need to run this by @jesseduffield before merging it. I'll wait a day or two to see if he wants to chime in on anything here.
pkg/config/user_config_validation.go
Outdated
) | ||
|
||
func (config *UserConfig) Validate() error { | ||
if err := validateEnum("config.Gui.StatusPanelView", config.Gui.StatusPanelView, []string{"dashboard", "allBranchesLog"}); err != nil { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nitpick: the name string should be "config.gui.statusPanelView"
, since that's what the user sees.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, actually we should omit the config.
too, I guess.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
return self.showDashboard | ||
return func() error { | ||
return self.c.Error(fmt.Errorf("Unexpected value for Gui.StatusPanelView config")) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you leave this in intentionally, or is this a left-over? I think we can revert this back to return self.showDashboard
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Revert back to return self.showDashboard
.
e196857
to
f6cc656
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Just two minor changes with the error strings.
pkg/config/app_config.go
Outdated
@@ -165,6 +165,10 @@ func loadUserConfig(configFiles []string, base *UserConfig) (*UserConfig, error) | |||
if err := yaml.Unmarshal(content, base); err != nil { | |||
return nil, fmt.Errorf("The config at `%s` couldn't be parsed, please inspect it before opening up an issue.\n%w", path, err) | |||
} | |||
|
|||
if err := base.Validate(); err != nil { | |||
return nil, fmt.Errorf("The config at `%s` has validation error.\n%w", path, err) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
return nil, fmt.Errorf("The config at `%s` has validation error.\n%w", path, err) | |
return nil, fmt.Errorf("The config at `%s` has a validation error.\n%w", path, err) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
pkg/config/user_config_validation.go
Outdated
return nil | ||
} | ||
allowedValuesStr := strings.Join(allowedValues, ", ") | ||
return fmt.Errorf("unexpectd value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
return fmt.Errorf("unexpectd value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) | |
return fmt.Errorf("Unexpected value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
dashboardString := strings.Join( | ||
[]string{ | ||
lazygitTitle(), | ||
"Copyright 2022 Jesse Duffield", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we update the copyright to display a range of years?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can just use time.Now().Year()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changed to:
fmt.Sprintf("Copyright %d Jesse Duffield", time.Now().Year())
f6cc656
to
365805d
Compare
pkg/config/user_config_validation.go
Outdated
return nil | ||
} | ||
allowedValuesStr := strings.Join(allowedValues, ", ") | ||
return fmt.Errorf("Unexpectd value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
return fmt.Errorf("Unexpectd value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) | |
return fmt.Errorf("Unexpected value '%s' for '%s'. Allowed values: %s", value, name, allowedValuesStr) |
There's still an e missing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, fixed
365805d
to
592005c
Compare
Everything looks good. I think all that's left is just squashing and rebasing. |
@karimkhaleel |
@karimkhaleel rebased on master |
@stefanhaller, I looked over this again and tested it. I think everything looks good here. |
I agree the code looks goods, thanks for the great work @oakio. |
4fa3c48
to
5616d6a
Compare
[![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.181.0` -> `v4.185.1` | | [bitnami-labs/sealed-secrets](https://togithub.com/bitnami-labs/sealed-secrets) | patch | `v0.26.2` -> `v0.26.3` | | [golangci/golangci-lint](https://togithub.com/golangci/golangci-lint) | patch | `v1.58.1` -> `v1.58.2` | | [gruntwork-io/terragrunt](https://togithub.com/gruntwork-io/terragrunt) | patch | `v0.58.6` -> `v0.58.9` | | [helm/helm](https://togithub.com/helm/helm) | patch | `v3.15.0` -> `v3.15.1` | | [jesseduffield/lazygit](https://togithub.com/jesseduffield/lazygit) | minor | `v0.41.0` -> `v0.42.0` | | [kubernetes-sigs/kustomize](https://togithub.com/kubernetes-sigs/kustomize) | patch | `v5.4.1` -> `v5.4.2` | | [simulot/immich-go](https://togithub.com/simulot/immich-go) | minor | `0.13.2` -> `0.14.1` | | [stern/stern](https://togithub.com/stern/stern) | minor | `v1.29.0` -> `v1.30.0` | | [weaveworks/eksctl](https://togithub.com/weaveworks/eksctl) | minor | `v0.177.0` -> `v0.179.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.185.1`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.185.1) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.185.0...v4.185.1) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.185.1) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.185.1) | aquaproj/aqua-registry@v4.185.0...v4.185.1 #### Fix [#​23225](https://togithub.com/aquaproj/aqua-registry/issues/23225) Rename the package `fujiwara/aws-sdk-client-go` to `fujiwara/awslim` [@​ponkio-o](https://togithub.com/ponkio-o) - [https://github.com/fujiwara/awslim/pull/16](https://togithub.com/fujiwara/awslim/pull/16) - https://x.com/fujiwara/status/1793839566283264315 ### [`v4.185.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.185.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.184.0...v4.185.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.185.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.185.0) | aquaproj/aqua-registry@v4.184.0...v4.185.0 #### 🎉 New Packages [#​23170](https://togithub.com/aquaproj/aqua-registry/issues/23170) [leg100/pug](https://togithub.com/leg100/pug): Drive terraform at terminal velocity #### Other This is a update for aqua-registry's contributors. https://aquaproj.github.io/docs/products/aqua-registry/changelog#2024-05-24 [#​23171](https://togithub.com/aquaproj/aqua-registry/issues/23171) [#​23188](https://togithub.com/aquaproj/aqua-registry/issues/23188) [#​23191](https://togithub.com/aquaproj/aqua-registry/issues/23191) [#​23192](https://togithub.com/aquaproj/aqua-registry/issues/23192) The behaviour of `cmdx s`, `cmdx t`, and `cmdx new` were changed. `cmdx s` - `cmdx s` fails if `commit.gpgSign` isn't enabled - All commits must be signed. Please see [the document](https://togithub.com/suzuki-shunsuke/oss-contribution-guide/blob/main/docs/commit-signing.md) - `cmdx s` fails if files in `pkgs` are changed before scaffolding files - This validation prevents unrelated changes from being committed - `cmdx s` creates a feature branch `feat/<package name>` from the remote branch https://github.com/aquaproj/aqua-registry/tree/main before scaffolding code - This prevents old scripts from being executed as much as possible - **`cmdx s` commits scaffolded codes** - This enables us to distinguish scaffolded code and manual changes - **`cmdx s` doesn't connect to a container when test fails** - This is a change of `cmdx t`. `cmdx s` runs `cmdx t` internally `cmdx t` - **`cmdx t` doesn't connect to a container when test fails** - If you want to connect to the container, you can do it by `cmdx con <os> <arch>` command - In most cases you don't have to connect to a container, so we changed the behaviour `cmdx new` - `cmdx new` doesn't create a branch and a commit anymore - **If you change code manually, you have to commit it before running `cmdx new`** - `cmdx new` fails if files in `pkgs` or `registry.yaml` has changes - `cmdx new` fails if the current branch isn't `feat/<package name>` - **You can omit the argument `pkg`** - `cmdx new` gets the package name from the current branch name ### [`v4.184.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.184.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.183.0...v4.184.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.184.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.184.0) | aquaproj/aqua-registry@v4.183.0...v4.184.0 #### 🎉 New Packages [#​23068](https://togithub.com/aquaproj/aqua-registry/issues/23068) [fujiwara/aws-sdk-client-go](https://togithub.com/fujiwara/aws-sdk-client-go): A simplified alternative to the AWS CLI for limited use cases [@​ponkio-o](https://togithub.com/ponkio-o) #### Fix [#​23111](https://togithub.com/aquaproj/aqua-registry/issues/23111) handlename/ssmwrap: Follow up changes of ssmwrap v2.1.0 [#​23112](https://togithub.com/aquaproj/aqua-registry/issues/23112) xremap/xremap/hypr: xremap client for hypr was dropped [#​23113](https://togithub.com/aquaproj/aqua-registry/issues/23113) xremap/xremap/sway: xremap client for sway was dropped [https://github.com/xremap/xremap/pull/479](https://togithub.com/xremap/xremap/pull/479) ### [`v4.183.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.183.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.182.0...v4.183.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.183.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.183.0) | aquaproj/aqua-registry@v4.182.0...v4.183.0 #### 🎉 New Packages [#​23041](https://togithub.com/aquaproj/aqua-registry/issues/23041) [rustsec/rustsec/cargo-audit](https://togithub.com/rustsec/rustsec): Audit your dependencies for crates [@​sapphi-red](https://togithub.com/sapphi-red) #### Fix [#​23049](https://togithub.com/aquaproj/aqua-registry/issues/23049) sl1pm4t/k2tf: Follow up changes of k2tf v0.8.0 ### [`v4.182.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.182.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.181.0...v4.182.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.182.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.182.0) | aquaproj/aqua-registry@v4.181.0...v4.182.0 #### 🎉 New Packages [#​23033](https://togithub.com/aquaproj/aqua-registry/issues/23033) [Ph0enixKM/Amber](https://togithub.com/Ph0enixKM/Amber): Amber the programming language compiled to bash [#​23032](https://togithub.com/aquaproj/aqua-registry/issues/23032) [firebase/firebase-tools](https://togithub.com/firebase/firebase-tools): The Firebase Command Line Tools [@​ka2n](https://togithub.com/ka2n) </details> <details> <summary>bitnami-labs/sealed-secrets (bitnami-labs/sealed-secrets)</summary> ### [`v0.26.3`](https://togithub.com/bitnami-labs/sealed-secrets/blob/HEAD/RELEASE-NOTES.md#v0263) [Compare Source](https://togithub.com/bitnami-labs/sealed-secrets/compare/v0.26.2...v0.26.3) ##### Changelog - fix: code generation ([#​1536](https://togithub.com/bitnami-labs/sealed-secrets/pull/1536)) - fix: show field name in error message when base64 decoding fails ([#​1519](https://togithub.com/bitnami-labs/sealed-secrets/pull/1519)) - helm: Set `GOMAXPROCS` and `GOMEMLIMIT` environment variables ([#​1528](https://togithub.com/bitnami-labs/sealed-secrets/pull/1528)) - docs: mention limitation of backup with key renewal ([#​1533](https://togithub.com/bitnami-labs/sealed-secrets/pull/1533)) - chore: update dependencies ([#​1535](https://togithub.com/bitnami-labs/sealed-secrets/pull/1535)) - chore: Bump k8s.io/code-generator from 0.30.0 to 0.30.1 ([#​1529](https://togithub.com/bitnami-labs/sealed-secrets/pull/1529)) - chore: Bump k8s.io/client-go from 0.30.0 to 0.30.1 ([#​1532](https://togithub.com/bitnami-labs/sealed-secrets/pull/1532)) - chore: Bump github.com/onsi/ginkgo/v2 from 2.17.2 to 2.17.3 ([#​1527](https://togithub.com/bitnami-labs/sealed-secrets/pull/1527)) - chore: Bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 ([#​1526](https://togithub.com/bitnami-labs/sealed-secrets/pull/1526)) - chore: Bump k8s.io/code-generator from 0.29.3 to 0.30.0 ([#​1513](https://togithub.com/bitnami-labs/sealed-secrets/pull/1513)) - chore: Update dependencies ([#​1524](https://togithub.com/bitnami-labs/sealed-secrets/pull/1524)) - chore: Bump github.com/onsi/gomega from 1.33.0 to 1.33.1 ([#​1522](https://togithub.com/bitnami-labs/sealed-secrets/pull/1522)) - chore: Bump github.com/onsi/ginkgo/v2 from 2.17.1 to 2.17.2 ([#​1520](https://togithub.com/bitnami-labs/sealed-secrets/pull/1520)) - chore: Bump github.com/onsi/gomega from 1.32.0 to 1.33.0 ([#​1512](https://togithub.com/bitnami-labs/sealed-secrets/pull/1512)) - chore: increase vib timeout ([#​1509](https://togithub.com/bitnami-labs/sealed-secrets/pull/1509)) - chore: fix publish-release workflow ([#​1508](https://togithub.com/bitnami-labs/sealed-secrets/pull/1508)) - chore: Bump golang.org/x/crypto from 0.21.0 to 0.22.0 ([#​1505](https://togithub.com/bitnami-labs/sealed-secrets/pull/1505)) </details> <details> <summary>golangci/golangci-lint (golangci/golangci-lint)</summary> ### [`v1.58.2`](https://togithub.com/golangci/golangci-lint/compare/v1.58.1...v1.58.2) [Compare Source](https://togithub.com/golangci/golangci-lint/compare/v1.58.1...v1.58.2) </details> <details> <summary>gruntwork-io/terragrunt (gruntwork-io/terragrunt)</summary> ### [`v0.58.9`](https://togithub.com/gruntwork-io/terragrunt/releases/tag/v0.58.9) [Compare Source](https://togithub.com/gruntwork-io/terragrunt/compare/v0.58.8...v0.58.9) #### Updated CLI args, config attributes and blocks - `output-module-groups` - `remote_state` #### Description - Fixed `output-module-groups` command - Improved logging of S3 encryption warning #### Related links - [https://github.com/gruntwork-io/terragrunt/pull/3144](https://togithub.com/gruntwork-io/terragrunt/pull/3144) - [https://github.com/gruntwork-io/terragrunt/pull/3147](https://togithub.com/gruntwork-io/terragrunt/pull/3147) ### [`v0.58.8`](https://togithub.com/gruntwork-io/terragrunt/releases/tag/v0.58.8) [Compare Source](https://togithub.com/gruntwork-io/terragrunt/compare/v0.58.7...v0.58.8) #### Description - Fixed S3 bucket URL modifying #### Related links - [https://github.com/gruntwork-io/terragrunt/pull/3146](https://togithub.com/gruntwork-io/terragrunt/pull/3146) ### [`v0.58.7`](https://togithub.com/gruntwork-io/terragrunt/releases/tag/v0.58.7) [Compare Source](https://togithub.com/gruntwork-io/terragrunt/compare/v0.58.6...v0.58.7) #### Description - Support all `provider_installation` methods in the CLI config with the provider cache. #### Related links - [https://github.com/gruntwork-io/terragrunt/pull/3133](https://togithub.com/gruntwork-io/terragrunt/pull/3133) </details> <details> <summary>helm/helm (helm/helm)</summary> ### [`v3.15.1`](https://togithub.com/helm/helm/compare/v3.15.0...v3.15.1) [Compare Source](https://togithub.com/helm/helm/compare/v3.15.0...v3.15.1) </details> <details> <summary>jesseduffield/lazygit (jesseduffield/lazygit)</summary> ### [`v0.42.0`](https://togithub.com/jesseduffield/lazygit/releases/tag/v0.42.0) [Compare Source](https://togithub.com/jesseduffield/lazygit/compare/v0.41.0...v0.42.0) <!-- Release notes generated using configuration in .github/release.yml at master --> It's time once again for a Lazygit release! This one is not as colossal as the prior release (and we intend to have smaller, more frequent releases in future) but there are plenty of good improvements here. Thanks to all contributors who helped make this release happen! There's a lot of first-time contributors on this release as well so kudos to you all. Thanks as usual to the wonderful [@​stefanhaller](https://togithub.com/stefanhaller) for creating/reviewing many of these changes, and thanks to [@​karimkhaleel](https://togithub.com/karimkhaleel) who has also stepped up to help out with reviews. #### What's Changed ##### Enhancements 🔥 - Make spinner animation configurable by [@​belyakov-am](https://togithub.com/belyakov-am) in [https://github.com/jesseduffield/lazygit/pull/3463](https://togithub.com/jesseduffield/lazygit/pull/3463) - Keep the same commit selected when exiting filtering mode by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3416](https://togithub.com/jesseduffield/lazygit/pull/3416) - Make URLs in confirmation panels clickable, and underline them by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3446](https://togithub.com/jesseduffield/lazygit/pull/3446) - Allow viewing all branches git log in status view by default [@​oakio](https://togithub.com/oakio) in [https://github.com/jesseduffield/lazygit/pull/3309](https://togithub.com/jesseduffield/lazygit/pull/3309) - Drop update-ref todos pointing to head by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3456](https://togithub.com/jesseduffield/lazygit/pull/3456) - Add config options for length of commit hash displayed in commits view by [@​oliviaBahr](https://togithub.com/oliviaBahr) in [https://github.com/jesseduffield/lazygit/pull/3505](https://togithub.com/jesseduffield/lazygit/pull/3505) - Show commit graph in divergence view by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3537](https://togithub.com/jesseduffield/lazygit/pull/3537) - Add commitPrefix config for defining a default commit message prefix across all projects by [@​duckbrain](https://togithub.com/duckbrain) in [https://github.com/jesseduffield/lazygit/pull/3291](https://togithub.com/jesseduffield/lazygit/pull/3291) - Improve `nvim-remote` (neovim) editor mode by [@​cmoog](https://togithub.com/cmoog) in [https://github.com/jesseduffield/lazygit/pull/3508](https://togithub.com/jesseduffield/lazygit/pull/3508) - Delete and edit custom commands history items by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3534](https://togithub.com/jesseduffield/lazygit/pull/3534) - Support externalDiffCommand in diffing mode by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3519](https://togithub.com/jesseduffield/lazygit/pull/3519) ##### Fixes 🔧 - Correctly request force-pushing in a triangular workflow by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3528](https://togithub.com/jesseduffield/lazygit/pull/3528) - Fix and speed-up stashing partial files for git version >= 2.35.0 by [@​dsolerh](https://togithub.com/dsolerh) in [https://github.com/jesseduffield/lazygit/pull/3569](https://togithub.com/jesseduffield/lazygit/pull/3569) - Improve delta pager performance by setting the `TERM` env variable by [@​bash](https://togithub.com/bash) in [https://github.com/jesseduffield/lazygit/pull/3420](https://togithub.com/jesseduffield/lazygit/pull/3420) - Fix deleting update ref todos by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3439](https://togithub.com/jesseduffield/lazygit/pull/3439) - Fix crash when filtering the keybindings menu by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3450](https://togithub.com/jesseduffield/lazygit/pull/3450) - Fix excluding files in submodules or worktrees by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3432](https://togithub.com/jesseduffield/lazygit/pull/3432) - Fix rewording signed commits when the log.showsignature git config is true by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3431](https://togithub.com/jesseduffield/lazygit/pull/3431) - Better support for terminal based pinentry programs by [@​eldios](https://togithub.com/eldios) in [https://github.com/jesseduffield/lazygit/pull/3478](https://togithub.com/jesseduffield/lazygit/pull/3478) - Fix amend-to operation not working with non-HEAD merge commit by [@​brandondong](https://togithub.com/brandondong) in [https://github.com/jesseduffield/lazygit/pull/3510](https://togithub.com/jesseduffield/lazygit/pull/3510) - Fix clicking in status side panel by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3547](https://togithub.com/jesseduffield/lazygit/pull/3547) - Fix loading commits with very long subjects by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3533](https://togithub.com/jesseduffield/lazygit/pull/3533) ##### Maintenance ⚙️ - Migrate null keybindings to `<disabled>`, and remove our yaml fork by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3459](https://togithub.com/jesseduffield/lazygit/pull/3459) - Replace min/max helpers with built-in min/max by [@​Juneezee](https://togithub.com/Juneezee) in [https://github.com/jesseduffield/lazygit/pull/3482](https://togithub.com/jesseduffield/lazygit/pull/3482) - standardize commit hash commit sha by [@​pikomonde](https://togithub.com/pikomonde) in [https://github.com/jesseduffield/lazygit/pull/3398](https://togithub.com/jesseduffield/lazygit/pull/3398) - Bump go version to 1.22 by [@​jesseduffield](https://togithub.com/jesseduffield) in [https://github.com/jesseduffield/lazygit/pull/3574](https://togithub.com/jesseduffield/lazygit/pull/3574) - Simplify error handling by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3502](https://togithub.com/jesseduffield/lazygit/pull/3502) - Use errors.New instead of fmt.Errorf with no parameters by [@​ChengenH](https://togithub.com/ChengenH) in [https://github.com/jesseduffield/lazygit/pull/3523](https://togithub.com/jesseduffield/lazygit/pull/3523) - chore: fix some comments and typos by [@​knowmost](https://togithub.com/knowmost) in [https://github.com/jesseduffield/lazygit/pull/3535](https://togithub.com/jesseduffield/lazygit/pull/3535) - Fix deadlock reporting by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3550](https://togithub.com/jesseduffield/lazygit/pull/3550) - Only run code coverage report on non-fork branches by [@​jesseduffield](https://togithub.com/jesseduffield) in [https://github.com/jesseduffield/lazygit/pull/3571](https://togithub.com/jesseduffield/lazygit/pull/3571) - pkg: fix some comment by [@​HongKuang](https://togithub.com/HongKuang) in [https://github.com/jesseduffield/lazygit/pull/3481](https://togithub.com/jesseduffield/lazygit/pull/3481) - sponsors.yml: Create PR instead of trying to push to a protected branch by [@​SachinVin](https://togithub.com/SachinVin) in [https://github.com/jesseduffield/lazygit/pull/3493](https://togithub.com/jesseduffield/lazygit/pull/3493) - pkg: fix some typos by [@​thirdkeyword](https://togithub.com/thirdkeyword) in [https://github.com/jesseduffield/lazygit/pull/3364](https://togithub.com/jesseduffield/lazygit/pull/3364) ##### Docs 📖 - Update interactive rebase demo by [@​jesseduffield](https://togithub.com/jesseduffield) in [https://github.com/jesseduffield/lazygit/pull/3392](https://togithub.com/jesseduffield/lazygit/pull/3392) - Update Busy.md by [@​eltociear](https://togithub.com/eltociear) in [https://github.com/jesseduffield/lazygit/pull/3433](https://togithub.com/jesseduffield/lazygit/pull/3433) - Fix schema link in Config.md by [@​stefanhaller](https://togithub.com/stefanhaller) in [https://github.com/jesseduffield/lazygit/pull/3451](https://togithub.com/jesseduffield/lazygit/pull/3451) #### New Contributors - [@​bash](https://togithub.com/bash) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3420](https://togithub.com/jesseduffield/lazygit/pull/3420) - [@​eltociear](https://togithub.com/eltociear) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3433](https://togithub.com/jesseduffield/lazygit/pull/3433) - [@​belyakov-am](https://togithub.com/belyakov-am) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3463](https://togithub.com/jesseduffield/lazygit/pull/3463) - [@​HongKuang](https://togithub.com/HongKuang) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3481](https://togithub.com/jesseduffield/lazygit/pull/3481) - [@​eldios](https://togithub.com/eldios) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3478](https://togithub.com/jesseduffield/lazygit/pull/3478) - [@​oakio](https://togithub.com/oakio) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3309](https://togithub.com/jesseduffield/lazygit/pull/3309) - [@​pikomonde](https://togithub.com/pikomonde) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3398](https://togithub.com/jesseduffield/lazygit/pull/3398) - [@​SachinVin](https://togithub.com/SachinVin) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3493](https://togithub.com/jesseduffield/lazygit/pull/3493) - [@​github-actions](https://togithub.com/github-actions) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3498](https://togithub.com/jesseduffield/lazygit/pull/3498) - [@​thirdkeyword](https://togithub.com/thirdkeyword) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3364](https://togithub.com/jesseduffield/lazygit/pull/3364) - [@​brandondong](https://togithub.com/brandondong) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3510](https://togithub.com/jesseduffield/lazygit/pull/3510) - [@​ChengenH](https://togithub.com/ChengenH) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3523](https://togithub.com/jesseduffield/lazygit/pull/3523) - [@​oliviaBahr](https://togithub.com/oliviaBahr) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3505](https://togithub.com/jesseduffield/lazygit/pull/3505) - [@​knowmost](https://togithub.com/knowmost) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3535](https://togithub.com/jesseduffield/lazygit/pull/3535) - [@​duckbrain](https://togithub.com/duckbrain) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3291](https://togithub.com/jesseduffield/lazygit/pull/3291) - [@​dsolerh](https://togithub.com/dsolerh) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3569](https://togithub.com/jesseduffield/lazygit/pull/3569) - [@​cmoog](https://togithub.com/cmoog) made their first contribution in [https://github.com/jesseduffield/lazygit/pull/3508](https://togithub.com/jesseduffield/lazygit/pull/3508) **Full Changelog**: jesseduffield/lazygit@v0.41.0...v0.42.0 </details> <details> <summary>kubernetes-sigs/kustomize (kubernetes-sigs/kustomize)</summary> ### [`v5.4.2`](https://togithub.com/kubernetes-sigs/kustomize/releases/tag/kustomize/v5.4.2) [Compare Source](https://togithub.com/kubernetes-sigs/kustomize/compare/kustomize/v5.4.1...kustomize/v5.4.2) #### Feature [#​5294](https://togithub.com/kubernetes-sigs/kustomize/issues/5294): feat: localize absolute paths [#​5556](https://togithub.com/kubernetes-sigs/kustomize/issues/5556): feat: support labels key in transformer configuration #### chore [#​5671](https://togithub.com/kubernetes-sigs/kustomize/issues/5671): refactor: string in slice is now part of stdlib [#​5681](https://togithub.com/kubernetes-sigs/kustomize/issues/5681): chore: remove unused function [#​5688](https://togithub.com/kubernetes-sigs/kustomize/issues/5688): refactor: function in stdlib now #### Dependencies [#​5672](https://togithub.com/kubernetes-sigs/kustomize/issues/5672): chore(deps): bump dependencies of kustomize + sync go workspace [#​5680](https://togithub.com/kubernetes-sigs/kustomize/issues/5680): chore: restore version for github.com/asaskevich/govalidator [#​5702](https://togithub.com/kubernetes-sigs/kustomize/issues/5702): Update kyaml to v0.17.1 [#​5703](https://togithub.com/kubernetes-sigs/kustomize/issues/5703): Update cmd/config to v0.14.1 [#​5704](https://togithub.com/kubernetes-sigs/kustomize/issues/5704): Update api to v0.17.2 </details> <details> <summary>simulot/immich-go (simulot/immich-go)</summary> ### [`v0.14.1`](https://togithub.com/simulot/immich-go/releases/tag/0.14.1) [Compare Source](https://togithub.com/simulot/immich-go/compare/0.14.0...0.14.1) #### Release 0.14.1 "A better UI" This release is focussed the improvement of the user experience. ##### A shiny user interface . _ _ _ _ . _|_ __ _ _ || | || | ||(_| | (_|(_) version dev _) Working with big database and big takeout files take some time. Users are now informed about the progression of different tasks: ![image](/docs/render1716187129166.gif) The screen presents number of processed photos, how they have been processes, the messages log, and at the bottom, the progression of the 3 mains tasks. ##### A minimalist user interface This shiny interface can be be disabled for quieter user interface (`-no-ui`). The progression is visible. All details on operations are listed in the log file. . _ _ _ _ . _|_ __ _ _ || | || | ||(_| | (_|(_) version dev _) Server status: OK Connected, user: demo@immich.app Immich read 100%, Google Photos Analysis: 100%, Uploaded 100% Input analysis: ---------------------- scanned image file : 25420 scanned video file : 1447 scanned sidecar file : 26934 discarded file : 197 unsupported file : 0 file duplicated in the input : 1706 associated metadata file : 26867 missing associated metadata file : 0 Uploading: ---------- uploaded : 25160 server error : 0 file not selected : 1 server's asset upgraded with the input : 0 server has same photo : 0 server has a better asset : 0 ##### Immich-go runs simultaneously the collect of immich-server's assets and the analysis of the Google takeout The code has been refactored to run several task simultaneously to animate the progression screen. The program runs now the reading of immich asset and the the takeout analysis in parallel. ##### Immich-go now always produces a log file The default name for the log file is `immich-go YYYY-MM-DD HH-MI-SS.log`, located in the current directory. It's possible to give a path and a name to the log file with the option `-log-file=path/to/file.log`. If the file file exists already, the new messages will be added to its end. The log level `OK` is removed. ##### Immich-go is published under the AGPL-3.0 license I chose the same license as the immich project license to release immich-go. ##### Next steps - Issues closing - A shiny user interface for the command `duplicate` #### Changelog - [`e953522`](https://togithub.com/simulot/immich-go/commit/e953522) Automatically determine commit info with buildinfo ([#​243](https://togithub.com/simulot/immich-go/issues/243)) - [`e4c6ba9`](https://togithub.com/simulot/immich-go/commit/e4c6ba9) Google Takeout 403 Forbidden on non admin user ([#​247](https://togithub.com/simulot/immich-go/issues/247)) - [`f8e7b42`](https://togithub.com/simulot/immich-go/commit/f8e7b42) fix e2e test - [`1acd3c8`](https://togithub.com/simulot/immich-go/commit/1acd3c8) impove the banner - [`1f02717`](https://togithub.com/simulot/immich-go/commit/1f02717) A better user interface ([#​245](https://togithub.com/simulot/immich-go/issues/245)) - [`e13cee4`](https://togithub.com/simulot/immich-go/commit/e13cee4) Create LICENSE ([#​220](https://togithub.com/simulot/immich-go/issues/220)) - [`6634a2a`](https://togithub.com/simulot/immich-go/commit/6634a2a) Simulot/issue205 ([#​206](https://togithub.com/simulot/immich-go/issues/206)) - [`674b165`](https://togithub.com/simulot/immich-go/commit/674b165) Update ci.yml ([#​229](https://togithub.com/simulot/immich-go/issues/229)) - [`f79261d`](https://togithub.com/simulot/immich-go/commit/f79261d) Update readme.md ([#​237](https://togithub.com/simulot/immich-go/issues/237)) - [`9c62473`](https://togithub.com/simulot/immich-go/commit/9c62473) Version 0.13.0 not working as expected ([#​200](https://togithub.com/simulot/immich-go/issues/200)) ### [`v0.14.0`](https://togithub.com/simulot/immich-go/releases/tag/0.14.0) [Compare Source](https://togithub.com/simulot/immich-go/compare/0.13.2...0.14.0) #### Release 0.14.0 "A better UI" This release is focussed the improvement of the user experience. ##### A shiny user interface . _ _ _ _ . _|_ __ _ _ || | || | ||(_| | (_|(_) version dev _) Working with big database and big takeout files take some time. Users are now informed about the progression of different tasks: ![image](/docs/render1716187129166.gif) The screen presents number of processed photos, how they have been processes, the messages log, and at the bottom, the progression of the 3 mains tasks. ##### A minimalist user interface This shiny interface can be be disabled for quieter user interface (`-no-ui`). The progression is visible. All details on operations are listed in the log file. . _ _ _ _ . _|_ __ _ _ || | || | ||(_| | (_|(_) version dev _) Server status: OK Connected, user: demo@immich.app Immich read 100%, Google Photos Analysis: 100%, Uploaded 100% Input analysis: ---------------------- scanned image file : 25420 scanned video file : 1447 scanned sidecar file : 26934 discarded file : 197 unsupported file : 0 file duplicated in the input : 1706 associated metadata file : 26867 missing associated metadata file : 0 Uploading: ---------- uploaded : 25160 server error : 0 file not selected : 1 server's asset upgraded with the input : 0 server has same photo : 0 server has a better asset : 0 ##### Immich-go runs simultaneously the collect of immich-server's assets and the analysis of the Google takeout The code has been refactored to run several task simultaneously to animate the progression screen. The program runs now the reading of immich asset and the the takeout analysis in parallel. ##### Immich-go now always produces a log file The default name for the log file is `immich-go YYYY-MM-DD HH-MI-SS.log`, located in the current directory. It's possible to give a path and a name to the log file with the option `-log-file=path/to/file.log`. If the file file exists already, the new messages will be added to its end. The log level `OK` is removed. ##### Immich-go is published under the AGPL-3.0 license I chose the same license as the immich project license to release immich-go. ##### Next steps - Issues closing - A shiny user interface for the command `duplicate` #### Changelog - [`1f02717`](https://togithub.com/simulot/immich-go/commit/1f02717) A better user interface ([#​245](https://togithub.com/simulot/immich-go/issues/245)) - [`e13cee4`](https://togithub.com/simulot/immich-go/commit/e13cee4) Create LICENSE ([#​220](https://togithub.com/simulot/immich-go/issues/220)) - [`6634a2a`](https://togithub.com/simulot/immich-go/commit/6634a2a) Simulot/issue205 ([#​206](https://togithub.com/simulot/immich-go/issues/206)) - [`674b165`](https://togithub.com/simulot/immich-go/commit/674b165) Update ci.yml ([#​229](https://togithub.com/simulot/immich-go/issues/229)) - [`f79261d`](https://togithub.com/simulot/immich-go/commit/f79261d) Update readme.md ([#​237](https://togithub.com/simulot/immich-go/issues/237)) - [`9c62473`](https://togithub.com/simulot/immich-go/commit/9c62473) Version 0.13.0 not working as expected ([#​200](https://togithub.com/simulot/immich-go/issues/200)) - [`2a7f962`](https://togithub.com/simulot/immich-go/commit/2a7f962) chore(deps): bump golangci/golangci-lint-action from 4 to 5 ([#​227](https://togithub.com/simulot/immich-go/issues/227)) - [`d04b35f`](https://togithub.com/simulot/immich-go/commit/d04b35f) chore(deps): bump golangci/golangci-lint-action from 5 to 6 ([#​239](https://togithub.com/simulot/immich-go/issues/239)) - [`eeeb86b`](https://togithub.com/simulot/immich-go/commit/eeeb86b) immich-go appears to retain/cache an API key ([#​214](https://togithub.com/simulot/immich-go/issues/214)) </details> <details> <summary>stern/stern (stern/stern)</summary> ### [`v1.30.0`](https://togithub.com/stern/stern/blob/HEAD/CHANGELOG.md#v1300) [Compare Source](https://togithub.com/stern/stern/compare/v1.29.0...v1.30.0) #### ⚡ Notable Changes ##### Add support for configuring colors for pods and containers You can now configure highlight colors for pods and containers in [the config file](https://togithub.com/stern/stern/blob/master/README.md#config-file) using a comma-separated list of [SGR (Select Graphic Rendition) sequences](https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_\(Select_Graphic_Rendition\)\_parameters). See the ["Customize highlight colors" section](https://togithub.com/stern/stern/blob/master/README.md#customize-highlight-colors) for details. Example configuration: ```yaml ``` </details> <details> <summary>weaveworks/eksctl (weaveworks/eksctl)</summary> ### [`v0.179.0`](https://togithub.com/eksctl-io/eksctl/releases/tag/v0.179.0): eksctl 0.179.0 [Compare Source](https://togithub.com/weaveworks/eksctl/compare/0.178.0-rc.0...0.179.0-rc.0) ### Release v0.179.0 #### 🚀 Features - Support EKS 1.30 ([#​7781](https://togithub.com/weaveworks/eksctl/issues/7781)) ### [`v0.178.0`](https://togithub.com/eksctl-io/eksctl/releases/tag/v0.178.0): eksctl 0.178.0 [Compare Source](https://togithub.com/weaveworks/eksctl/compare/0.177.0...0.178.0-rc.0) ### Release v0.178.0 #### 🐛 Bug Fixes - Fix kubeletExtraConfig support for AL2023 ([#​7758](https://togithub.com/weaveworks/eksctl/issues/7758)) - Update aws-node from 1.12.6 to 1.18.1 ([#​7756](https://togithub.com/weaveworks/eksctl/issues/7756)) #### Acknowledgments The eksctl maintainers would like to sincerely thank [@​consideRatio](https://togithub.com/consideRatio) </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:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNjguMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4zNjguMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> --------- 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>
PR Description
Adds a new config
statusPanelView
which allows you to select the default view of the main window:dashboard
(default),allBranchesLog
.Please check if the PR fulfills these requirements
go generate ./...
)docs/Config.md
) have been updated if necessary