chore(deps): update dependency github:d-kuro/gwq to v0.1.1#927
Open
renovate[bot] wants to merge 1 commit into
Open
chore(deps): update dependency github:d-kuro/gwq to v0.1.1#927renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
ae8e148 to
d9493b1
Compare
d9493b1 to
bd10fae
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.0.19→0.1.1Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
d-kuro/gwq (github:d-kuro/gwq)
v0.1.1Compare Source
Release v0.1.1
🎉 New Features
Template variables in
setup_commands(#110)Each string in
[[repository_settings]].setup_commandsis now rendered with Gotext/templatebefore being executed via POSIXsh -c. Available variables:{{.Host}}github.com(empty if no remote){{.Owner}}d-kuro(empty if no remote){{.Repository}}gwq(empty if no remote){{.Branch}}feature/new-ui(raw, not filesystem-sanitized){{.Hash}}a1b2c3d4(empty if no remote){{.Path}}{{.Path}}is new; the others are the same set thatnaming.templatealready recognized.Because each entry is shelled out through
sh -c, familiar shell features (~expansion,&&, pipes, command substitution, quoting) now work without a wrapper:Commands that reference an unknown key (e.g.
{{.Typo}}) are skipped with a[gwq] setup command template error: ...warning on stderr — they are never passed to the shell with a literal{{ ... }}in them. When the repository has no resolvable origin,{{.Branch}}and{{.Path}}still render and the remote-derived fields remain empty so commands depending only on those two variables keep working.Closes #106.
setup_commandsentries are no longer tokenized withstrings.Fieldsand passed toexec.Command; each entry is now executed withsh -c. Configs that relied on whitespace-split argv semantics, unescaped shell metacharacters, or literal*(which would have been passed verbatim before) may behave differently and should be quoted as regular shell commands.setup_commandsstrings pass throughtext/template. Commands that contain literal{{or}}must escape them using Go template syntax ({{"{{"}}), otherwise the template will fail to parse and the command will be skipped.📦 Upgrade Instructions
Homebrew:
Go:
Full Changelog: d-kuro/gwq@v0.1.0...v0.1.1
v0.1.0Compare Source
Release v0.1.0
🔒 Security Fixes
Gate local
.gwq.tomlbehind a trust prompt (#108)Fixes a privilege escalation vector where any
.gwq.tomlin the current working directory was merged into global configuration on every subcommand. A hostile repository could ship a.gwq.tomlwithrepository_settings.setup_commandsand silently run arbitrary code on the nextgwq add.New behavior:
.gwq.tomlis untrusted until you explicitly accept it. The prompt appears the first time gwq sees a given(absolute path, SHA-256)pair and is persisted to~/.config/gwq/trusted_configs.json(mode0600, atomic rename, symlink-guarded), direnv-style..gwq.tomlinvalidates the decision and re-prompts.\xHHso a hostile config cannot forge the[y/N]prompt via ANSI sequences. Large files are truncated to 4 KiB.gwq cd, completion) is not corrupted..gwq.tomlis unaffected.Behavior matrix:
.gwq.toml.gwq.tomlalready trusted (same hash).gwq.tomlin TTYy/yesmerges and persistsn, Enter, EOF)To revoke trust for a previously-accepted config, delete or edit
~/.config/gwq/trusted_configs.json. A dedicatedgwq config trust/untrustsubcommand is not included in this release..gwq.tomlin the current directory is no longer merged automatically. The first time gwq sees one in an interactive shell, you must confirm at a[y/N]prompt. Users who relied on implicit merge (includingrepository_settings.setup_commands) will need to accept the prompt once per file-content version..gwq.tomlis never merged and is skipped with a stderr warning. If you depended on local config in CI, move those settings to the global~/.config/gwq/config.tomlor wire up trust explicitly by editing~/.config/gwq/trusted_configs.json.📦 Upgrade Instructions
Homebrew:
Go:
Full Changelog: d-kuro/gwq@v0.0.20...v0.1.0
v0.0.20Compare Source
Release v0.0.20
🎉 New Features
Auto-cd on
gwq addunder shell integration (#103)When shell integration is enabled with
cd.launch_shell = false,gwq addcan now change the current shell's directory to the newly created worktree instead of spawning a nested sub-shell.Two mechanisms:
--stay(-s) now does a true cd under shell integration. Previously it always spawned a nested shell, even whencd.launch_shell = false. Now it reuses the same__GWQ_CD_SHIMpipeline asgwq cdand cds the parent shell.cd.auto_cd_on_addconfig (defaultfalse) — whentrueunder shell integration, any successfulgwq addauto-cds into the new worktree without needing-s.Configuration:
Setup (same as
gwq cd):After reloading your shell,
gwq add -s feature/x(or plaingwq add feature/xwithauto_cd_on_add = true) lands you inside the new worktree with no nested shell.Behavior details
cd.launch_shell = trueor wrapper not sourced),--staystill spawns a sub-shell as before.gwq addroutes success messages to stderr so stdout can carry the worktree path for the wrapper to consume. Non-shim stdout behavior is unchanged, sogwq add >log.txtstill captures the success lines.🐛 Bug Fixes
gwq add --expires <invalid>no longer creates a stray worktree. The duration is now parsed before the worktree is created, so invalid values fail fast.📦 Upgrade Instructions
Homebrew:
Go:
Full Changelog: d-kuro/gwq@v0.0.19...v0.0.20
Configuration
📅 Schedule: (in timezone Asia/Tokyo)
🚦 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.
This PR was generated by Mend Renovate. View the repository job log.