Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package pinact for openSUSE:Factory checked in at 2026-09-19 22:21:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pinact (Old) and /work/SRC/openSUSE:Factory/.pinact.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pinact" Sat Sep 19 22:21:56 2026 rev:15 rq:1378945 version:5.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/pinact/pinact.changes 2026-07-31 16:09:47.009597368 +0200 +++ /work/SRC/openSUSE:Factory/.pinact.new.383539/pinact.changes 2026-09-19 22:23:05.616486999 +0200 @@ -1,0 +2,256 @@ +Sat Sep 19 05:44:43 UTC 2026 - Johannes Kastl <[email protected]> + +- Update to version 5.0.0: + https://github.com/suzuki-shunsuke/pinact/releases/tag/v5.0.0 + https://github.com/suzuki-shunsuke/pinact/blob/v5.0.0/docs/upgrade_guide/v5.md + * pinact is now AI friendly + v5 is about coding agents. An agent that is asked about pinact, + or that hits a pinact error in CI, has until now had to answer + from its training data, from the source code, or from whichever + version of the website it happened to land on. v5 gives it + three things so that it answers from the pinact that is + actually installed: + - #1708 An Agent Skill + + gh skill install suzuki-shunsuke/pinact pinact + + The skill carries no documentation of its own, deliberately. + It is installed separately from the binary, so anything + copied into it would go stale, and an agent would confidently + describe a flag or an error code of a version that isn't the + one on the machine. Instead the skill tells the agent to run + pinact docs list and pinact docs show <name> before + answering, so the answer always comes from the installed + pinact and the skill and the binary can never disagree about + a version. + It adds only the few things an agent gets wrong unless it is + told: that pinact run edits files and --check is the way to + look without touching them, that --update changes which + version a workflow uses, and that the exit codes 1 and 2 are + findings rather than pinact failing. + - #1708 pinact docs: the documentation, embedded in the binary + + $ pinact docs list # the name and the description of every document, as JSON + $ pinact docs show config # one document + $ pinact docs show codes/005 + + The documents are embedded in the binary, so there is nothing + to fetch. An agent doesn't need network access to read them, + doesn't have to guess which branch or tag of the repository + to read, and cannot land on the documentation of a version + other than the one it is being asked about. docs list reports + a description of every document, written to name the symptoms + a reader arrives with, so an agent can pick the one document + it needs instead of reading them all. + The README is split into documents so that the binary ships + them: --update, --min-age, --no-api, SARIF, --diff-file, and + the access token used to exist only in the README, which the + binary doesn't ship, and they are exactly the things an agent + asks about. pinact docs list now lists 21 documents instead + of 12, and the README goes from 431 lines to 169, keeping + what someone reads to decide whether to use pinact. + The command is only useful to an agent that knows it exists, + and an agent arrives at pinact through one of three places, + so all three say so. pinact --help says it in the root + command's description, every error pinact reports carries the + hint as the help attribute, and pinact -v logs it: + + $ pinact -v + pinact version v5.0.0 + INF If you are a coding agent, run `pinact docs list` to list the documentation and `pinact docs show <name>` to read it before answering questions about pinact or troubleshooting its errors. + + Checking the version is often the only pinact command an + agent runs before it starts answering, so without this it + never learns that the documentation is there. The hint goes + to stderr as a log rather than to stdout, so it doesn't break + a script that parses the version, and it is logged at the + info level, so --log-level warn silences it. The routine + outcomes of pinact run are unaffected: the exit codes 1, 2, + and 3 are unchanged, and nothing is logged for them. + - #1705 pinact json-schema: the JSON Schema of the configuration file, embedded in the binary + + $ pinact json-schema > pinact.json + + The schema is embedded in the binary too, so it is the schema + of the configuration that the running version accepts. An + agent writing or reviewing a .pinact.yaml can read the exact + set of fields, their types, and which ones are required, + rather than inferring them from an example it has seen. The + copy served from GitHub, which the existing + yaml-language-server comments point at, describes whatever + main or the pinned tag holds instead. + #1707 makes that schema worth reading: every field is now + described, including version, files[].pattern, + ignore_actions[].name, and ignore_actions[].ref, which had no + description at all. + Editors such as VSCode use the same schema to complete the + configuration file and to warn about invalid settings. + * Breaking Changes + - #1704 The CLI is built with spf13/cobra instead of urfave/cli + The commands, the flags, and their behavior are unchanged, + but a long flag must now be written with two dashes. + + # v4 + pinact run -check + pinact run -fix=false -no-api + pinact run -diff-file diff.txt + + # v5 + pinact run --check + pinact run --fix=false --no-api + pinact run --diff-file diff.txt + + urfave/cli accepted a long flag with a single dash. cobra's + flag parser does not: a single dash introduces short flags, + and -c is the short flag of --config, so -check would + otherwise be read as --config=heck and pinact would silently + look for a configuration file named heck. To prevent that, + pinact rejects a single-dash long flag with an error naming + the form to use: + + $ pinact run -check + unknown flag: -check. Long flags need two dashes since pinact v5: --check + + Short flags are unchanged and can still be written with a + single dash: + + pinact run -u -m 7 + pinact run -i "^actions/.*$" -e "^actions/checkout$" + pinact init -g + pinact -c pinact.yaml run + + --verify and --sep also keep working, as aliases of + --verify-comment and --separator. + The migration fixes two urfave/cli bugs that pinact ran into: + - A workflow file named help could not be passed to pinact + run: the argument was taken as a request for the help of + run. + - Pressing TAB after a -- ran the command instead of + completing it (urfave/cli#1993). Since pinact run fixes + files by default, a TAB pressed while typing a pinact run + -- command line rewrote the workflow files then and there. + cobra completes through a separate hidden command that + never reaches the action. + cobra also brings its own completion command, so pinact + completion bash|zsh|fish|powershell generates a completion + script. + - #1704 The Go module path is now + github.com/suzuki-shunsuke/pinact/v5 + + go install github.com/suzuki-shunsuke/pinact/v5/cmd/pinact@latest + + This affects anyone importing pinact as a library, and go + install. Installing the CLI from a release asset or via aqua + is unaffected. + - #1708 Documents under docs/ are renamed with underscores + docs/why-pinact-not-pin.md becomes + docs/why_pinact_not_pin.md, so a link to the old path from + outside this repository breaks. The README is also split into + documents, so links to the section anchors that moved, such + as #update-actions--update, now land on the README rather + than on the section. + * Fixes + - #1707 Describe every configuration field in the JSON Schema, + and correct required + min_age was required by the schema, so every configuration + file without it was reported as invalid. That is fixed, and + version, ignore_actions[].ref, and rules[].conditions, which + pinact does require, are now marked required. The description + of files is also no longer truncated at a comma. + * Dependency Updates + - #1689 #1711 Update Go to v1.27.1 + - #1681 Update module github.com/suzuki-shunsuke/ghtkn-go-sdk + to v0.6.1 + - #1713 Update module github.com/google/go-github/v90 to v91 + - #1715 Update module golang.org/x/oauth2 to v0.37.0 + - chore(deps): update dependency aquaproj/aqua-registry to + v4.560.0 (#1719) + - chore(deps): update dependency mvdan/gofumpt to v0.12.0 + (#1718) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.559.0 (#1717) + - chore(deps): update dependency goreleaser/goreleaser to + v2.18.1 (#1716) + - fix(deps): update module golang.org/x/oauth2 to v0.37.0 + (#1715) + - fix(deps): update module github.com/google/go-github/v90 to + v91 (#1713) + - chore(deps): update dependency crate-ci/typos to v1.50.1 + (#1712) + - chore(deps): update go module directive to v1.27.1 (#1711) + - fix(deps): update module + github.com/suzuki-shunsuke/cobra-util to v0.0.4 (#1710) + - fix(deps): update module + github.com/suzuki-shunsuke/cobra-util to v0.0.2 (#1706) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.558.1 (#1703) + - chore(deps): update dependency crate-ci/typos to v1.50.0 + (#1702) + - chore(deps): update dependency golangci/golangci-lint to + v2.13.2 (#1701) + - chore(deps): update dependency crate-ci/typos to v1.49.1 + (#1700) + - chore(deps): update dependency anchore/syft to v1.51.1 + (#1699) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.558.0 (#1698) + - chore(deps): update dependency golangci/golangci-lint to + v2.13.1 (#1697) + - chore(deps): update go module directive to v1.27.0 (#1689) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.557.0 (#1696) + - chore(deps): update dependency golangci/golangci-lint to + v2.13.0 (#1690) + - chore(deps): update dependency goreleaser/goreleaser to + v2.18.0 (#1694) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.556.0 (#1693) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.555.0 (#1691) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.554.0 (#1688) + - fix(deps): update module github.com/urfave/cli/v3 to v3.11.0 + (#1687) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.553.0 (#1684) + - chore(deps): update go module directive to v1.26.6 (#1683) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.552.0 (#1682) + - fix(deps): update module + github.com/suzuki-shunsuke/ghtkn-go-sdk to v0.6.1 (#1681) + - fix(deps): update module + github.com/suzuki-shunsuke/ghtkn-go-sdk to v0.6.0 (#1680) + - chore(deps): update dependency anchore/syft to v1.51.0 + (#1679) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.551.0 (#1677) + - chore(deps): update dependency sigstore/cosign to v3.1.3 + (#1675) + - fix(deps): update module github.com/google/go-github/v89 to + v90 (#1674) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.550.0 (#1673) + - chore(deps): update dependency crate-ci/typos to v1.49.0 + (#1672) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.549.0 (#1671) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.548.0 (#1670) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.547.0 (#1669) + - chore(deps): update dependency aquaproj/aqua to v2.62.3 + (#1668) + - chore(deps): update dependency aquaproj/aqua-registry to + v4.546.0 (#1667) + - fix(deps): update module + github.com/suzuki-shunsuke/ghtkn-go-sdk to v0.5.1 (#1666) + - chore(deps): update dependency anchore/syft to v1.50.0 + (#1665) + - chore(deps): update dependency mvdan/gofumpt to v0.11.0 + (#1663) + - chore(deps): update dependency suzuki-shunsuke/pinact to + v4.1.1 (#1662) + - chore(deps): update dependency aquaproj/aqua to v2.62.2 + (#1661) + +------------------------------------------------------------------- Old: ---- pinact-4.1.1.obscpio New: ---- pinact-5.0.0.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pinact.spec ++++++ --- /var/tmp/diff_new_pack.VAQTtL/_old 2026-09-19 22:23:06.918541303 +0200 +++ /var/tmp/diff_new_pack.VAQTtL/_new 2026-09-19 22:23:06.919541344 +0200 @@ -17,7 +17,7 @@ Name: pinact -Version: 4.1.1 +Version: 5.0.0 Release: 0 Summary: CLI to edit GitHub Workflows and pin versions of Actions and Reusable Workflows License: MIT @@ -26,7 +26,7 @@ Source1: vendor.tar.gz BuildRequires: bash-completion BuildRequires: fish -BuildRequires: go1.26 >= 1.26.5 +BuildRequires: go1.27 >= 1.27.1 BuildRequires: zsh %description @@ -36,7 +36,6 @@ %package -n %{name}-bash-completion Summary: Bash Completion for %{name} -Group: System/Shells Requires: %{name} = %{version} Requires: bash-completion Supplements: (%{name} and bash-completion) @@ -47,7 +46,6 @@ %package -n %{name}-fish-completion Summary: Fish Completion for %{name} -Group: System/Shells Requires: %{name} = %{version} Requires: fish Supplements: (%{name} and fish) @@ -58,7 +56,6 @@ %package -n %{name}-zsh-completion Summary: Zsh Completion for %{name} -Group: System/Shells Requires: %{name} = %{version} Requires: zsh Supplements: (%{name} and zsh) ++++++ _service ++++++ --- /var/tmp/diff_new_pack.VAQTtL/_old 2026-09-19 22:23:06.949542596 +0200 +++ /var/tmp/diff_new_pack.VAQTtL/_new 2026-09-19 22:23:06.952542721 +0200 @@ -3,7 +3,7 @@ <param name="url">https://github.com/suzuki-shunsuke/pinact.git</param> <param name="scm">git</param> <param name="exclude">.git</param> - <param name="revision">refs/tags/v4.1.1</param> + <param name="revision">refs/tags/v5.0.0</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="changesgenerate">enable</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.VAQTtL/_old 2026-09-19 22:23:06.971543513 +0200 +++ /var/tmp/diff_new_pack.VAQTtL/_new 2026-09-19 22:23:06.974543638 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/suzuki-shunsuke/pinact.git</param> - <param name="changesrevision">b1a554a82ef4f55533237e49c19a24ddf0045100</param></service></servicedata> + <param name="changesrevision">a4f45e095b184794ac1f82b6b07cc35b0b8cfe7b</param></service></servicedata> (No newline at EOF) ++++++ pinact-4.1.1.obscpio -> pinact-5.0.0.obscpio ++++++ ++++ 3652 lines of diff (skipped) ++++++ pinact.obsinfo ++++++ --- /var/tmp/diff_new_pack.VAQTtL/_old 2026-09-19 22:23:07.136550395 +0200 +++ /var/tmp/diff_new_pack.VAQTtL/_new 2026-09-19 22:23:07.142550645 +0200 @@ -1,5 +1,5 @@ name: pinact -version: 4.1.1 -mtime: 1785370491 -commit: b1a554a82ef4f55533237e49c19a24ddf0045100 +version: 5.0.0 +mtime: 1789188603 +commit: a4f45e095b184794ac1f82b6b07cc35b0b8cfe7b ++++++ vendor.tar.gz ++++++ ++++ 238128 lines of diff (skipped)
