Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pinact for openSUSE:Factory checked 
in at 2025-11-19 14:54:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pinact (Old)
 and      /work/SRC/openSUSE:Factory/.pinact.new.2061 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pinact"

Wed Nov 19 14:54:48 2025 rev:2 rq:1318469 version:3.4.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/pinact/pinact.changes    2025-11-18 
15:34:47.834683786 +0100
+++ /work/SRC/openSUSE:Factory/.pinact.new.2061/pinact.changes  2025-11-19 
14:57:52.694142316 +0100
@@ -1,0 +2,13 @@
+Mon Nov 17 12:24:22 UTC 2025 - Johannes Kastl 
<[email protected]>
+
+- Update to version 3.4.4:
+  * Bug Fixes
+    - Skip prerelease tags when current version is stable
+      @fredericlepied
+  * Dependencies
+    - chore(deps): update dependency aquaproj/aqua-registry to
+      v4.436.0 (#1215)
+    - chore(deps): update dependency suzuki-shunsuke/pinact to
+      v3.4.3 (#1214)
+
+-------------------------------------------------------------------

Old:
----
  pinact-3.4.3.obscpio

New:
----
  pinact-3.4.4.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pinact.spec ++++++
--- /var/tmp/diff_new_pack.cIvlyy/_old  2025-11-19 14:57:58.234376845 +0100
+++ /var/tmp/diff_new_pack.cIvlyy/_new  2025-11-19 14:57:58.234376845 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           pinact
-Version:        3.4.3
+Version:        3.4.4
 Release:        0
 Summary:        CLI to edit GitHub Workflows and pin versions of Actions and 
Reusable Workflows
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.cIvlyy/_old  2025-11-19 14:57:58.302379724 +0100
+++ /var/tmp/diff_new_pack.cIvlyy/_new  2025-11-19 14:57:58.314380231 +0100
@@ -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/v3.4.3</param>
+    <param name="revision">refs/tags/v3.4.4</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="changesgenerate">enable</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.cIvlyy/_old  2025-11-19 14:57:58.354381924 +0100
+++ /var/tmp/diff_new_pack.cIvlyy/_new  2025-11-19 14:57:58.370382602 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/suzuki-shunsuke/pinact.git</param>
-              <param 
name="changesrevision">6abf4616d28c0f2fd51e7ad2039c885f65c80d1c</param></service></servicedata>
+              <param 
name="changesrevision">50fd4d7458ba44c8b45ec7dec5275347e426ff0e</param></service></servicedata>
 (No newline at EOF)
 

++++++ pinact-3.4.3.obscpio -> pinact-3.4.4.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/README.md new/pinact-3.4.4/README.md
--- old/pinact-3.4.3/README.md  2025-11-15 04:43:18.000000000 +0100
+++ new/pinact-3.4.4/README.md  2025-11-17 12:01:26.000000000 +0100
@@ -1,6 +1,6 @@
 # pinact
 
-[Motivation](#motivation) | [Install](INSTALL.md) | [How to use](#how-to-use) 
| [GitHub Actions](https://github.com/suzuki-shunsuke/pinact-action) | 
[Configuration](#configuration) | [Contributing](CONTRIBUTING.md) | 
[LICENSE](LICENSE)
+[NotebookLM](https://notebooklm.google.com/notebook/31982d97-104e-4778-9a8f-3b2c044a719d)
 | [Install](INSTALL.md) | [How to use](#how-to-use) | 
[Configuration](#configuration)
 
 pinact is a CLI to edit GitHub Workflow and Composite action files and pin 
versions of Actions and Reusable Workflows.
 pinact can also [update their versions](#update-actions), [verify version 
annotations](docs/codes/001.md), and [create reviews](#create-reviews).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/USAGE.md new/pinact-3.4.4/USAGE.md
--- old/pinact-3.4.3/USAGE.md   2025-11-15 04:43:18.000000000 +0100
+++ new/pinact-3.4.4/USAGE.md   2025-11-17 12:01:26.000000000 +0100
@@ -11,7 +11,7 @@
    pinact [global options] [command [command options]]
 
 VERSION:
-   3.4.2
+   3.4.3
 
 COMMANDS:
    init        Create .pinact.yaml if it doesn't exist
@@ -78,12 +78,12 @@
 
 
 OPTIONS:
-   --verify, -v                                                 Verify if 
pairs of commit SHA and version are correct (default: false)
-   --check                                                      Exit with a 
non-zero status code if actions are not pinned. If this is true, files aren't 
updated (default: false)
-   --update, -u                                                 Update actions 
to latest versions (default: false)
-   --review                                                     Create reviews 
(default: false)
-   --fix                                                        Fix code. By 
default, this is true. If -check or -diff is true, this is false by default 
(default: false)
-   --diff                                                       Output diff. 
By default, this is false (default: false)
+   --verify, -v                                                 Verify if 
pairs of commit SHA and version are correct
+   --check                                                      Exit with a 
non-zero status code if actions are not pinned. If this is true, files aren't 
updated
+   --update, -u                                                 Update actions 
to latest versions
+   --review                                                     Create reviews
+   --fix                                                        Fix code. By 
default, this is true. If -check or -diff is true, this is false by default
+   --diff                                                       Output diff. 
By default, this is false
    --repo-owner string                                          GitHub 
repository owner [$GITHUB_REPOSITORY_OWNER]
    --repo-name string                                           GitHub 
repository name
    --sha string                                                 Commit SHA to 
be reviewed
@@ -148,7 +148,7 @@
    Set GitHub Access token to keyring.
 
 OPTIONS:
-   --stdin     Read GitHub Access token from stdin (default: false)
+   --stdin     Read GitHub Access token from stdin
    --help, -h  show help
 ```
 
@@ -180,7 +180,7 @@
    pinact version
 
 OPTIONS:
-   --json, -j  Output version in JSON format (default: false)
+   --json, -j  Output version in JSON format
    --help, -h  show help
 ```
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/aqua/aqua-checksums.json 
new/pinact-3.4.4/aqua/aqua-checksums.json
--- old/pinact-3.4.3/aqua/aqua-checksums.json   2025-11-15 04:43:18.000000000 
+0100
+++ new/pinact-3.4.4/aqua/aqua-checksums.json   2025-11-17 12:01:26.000000000 
+0100
@@ -306,38 +306,38 @@
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_darwin_amd64.tar.gz",
-      "checksum": 
"5E2A94BC37BDAEF84F409B0B811F4E56EBFFFAE227624B86D58A172085AB73AA",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_darwin_amd64.tar.gz",
+      "checksum": 
"505965C3E18D862F35985082283502B597EFBB654C280D4A496B00C13AE564F0",
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_darwin_arm64.tar.gz",
-      "checksum": 
"354811A84886C99422269B39DEEC399C8A42CE97FCF2E586C4F2F6B57E1E63EE",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_darwin_arm64.tar.gz",
+      "checksum": 
"30E289D6A5EEE87C1178A3FFF4A17528AED8460607544C0B4F4AD6C3BF65055D",
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_linux_amd64.tar.gz",
-      "checksum": 
"CF2F26FF37F195FADB7E5368CD618733107F7EA92C808CA4256521FC4BD6EA4F",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_linux_amd64.tar.gz",
+      "checksum": 
"0F4ED8164659A554C5B06ED01158C9B29DA32DCB8A9AD22AE71B15419B946398",
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_linux_arm64.tar.gz",
-      "checksum": 
"CF109ED679276D60414366719EA721744F75F7E27F6F7B8394C66F3412F86A64",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_linux_arm64.tar.gz",
+      "checksum": 
"398CAB2EA8A74D5F7099E4680DBE320866C6CFC74DB1EFA0704122E38700907C",
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_windows_amd64.zip",
-      "checksum": 
"34715E03474BD94E9A873450771A0E78B369F17DBA580E7134C19728BFBA5846",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_windows_amd64.zip",
+      "checksum": 
"21ACF44EC679ECB46015E6618837A11770FF6A0F0480BB4AD4819F4F5815AA6A",
       "algorithm": "sha256"
     },
     {
-      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.2/pinact_windows_arm64.zip",
-      "checksum": 
"9DFC4477E4BC0DEB16B53A597F5759C04DB3BD37B2424CEE8644890A1F5D4B5B",
+      "id": 
"github_release/github.com/suzuki-shunsuke/pinact/v3.4.3/pinact_windows_arm64.zip",
+      "checksum": 
"F88449D9F319F9D0DD5B2A6A9C2E33047F15F80C74858FA0C4FC2F4FA332286A",
       "algorithm": "sha256"
     },
     {
-      "id": 
"registries/github_content/github.com/aquaproj/aqua-registry/v4.435.0/registry.yaml",
-      "checksum": 
"A933288EE36456016440AB7B1258DB1FD1FE06EB52CC26FF4985B886D2729F91E318D9743A67B1A09A2FFE6CCD4F30B6CEEEBF6FB39DF6DC67CCEC7B37DE8D34",
+      "id": 
"registries/github_content/github.com/aquaproj/aqua-registry/v4.436.0/registry.yaml",
+      "checksum": 
"D10A9E3D8F3D28C8A75E536FD30C8B1C2E91C92637DF4BC97B61E375E133DDF271E277F9F7F628DBC8A1CA2C5F03CD4CAADB338EEB549B3C00C4BA9F5E444BEB",
       "algorithm": "sha512"
     }
   ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/aqua/aqua.yaml 
new/pinact-3.4.4/aqua/aqua.yaml
--- old/pinact-3.4.3/aqua/aqua.yaml     2025-11-15 04:43:18.000000000 +0100
+++ new/pinact-3.4.4/aqua/aqua.yaml     2025-11-17 12:01:26.000000000 +0100
@@ -7,5 +7,5 @@
   require_checksum: true
 registries:
   - type: standard
-    ref: v4.435.0 # renovate: depName=aquaproj/aqua-registry
+    ref: v4.436.0 # renovate: depName=aquaproj/aqua-registry
 import_dir: imports
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/aqua/imports/pinact.yaml 
new/pinact-3.4.4/aqua/imports/pinact.yaml
--- old/pinact-3.4.3/aqua/imports/pinact.yaml   2025-11-15 04:43:18.000000000 
+0100
+++ new/pinact-3.4.4/aqua/imports/pinact.yaml   2025-11-17 12:01:26.000000000 
+0100
@@ -1,2 +1,2 @@
 packages:
-  - name: suzuki-shunsuke/[email protected]
+  - name: suzuki-shunsuke/[email protected]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pinact-3.4.3/pkg/controller/run/github.go 
new/pinact-3.4.4/pkg/controller/run/github.go
--- old/pinact-3.4.3/pkg/controller/run/github.go       2025-11-15 
04:43:18.000000000 +0100
+++ new/pinact-3.4.4/pkg/controller/run/github.go       2025-11-17 
12:01:26.000000000 +0100
@@ -137,15 +137,24 @@
 //   - currentVersion: current version to check if stable (empty string to 
include all versions)
 //
 // Returns the latest version string or an error.
-func (c *Controller) getLatestVersion(ctx context.Context, logE *logrus.Entry, 
owner string, repo string, currentVersion string) (string, error) {
-       lv, err := c.getLatestVersionFromReleases(ctx, logE, owner, repo, 
currentVersion)
+func (c *Controller) getLatestVersion(ctx context.Context, logE *logrus.Entry, 
owner, repo, currentVersion string) (string, error) {
+       isStable := isStableVersion(currentVersion)
+       lv, err := c.getLatestVersionFromReleases(ctx, logE, owner, repo, 
isStable)
        if err != nil {
                logerr.WithError(logE, err).Debug("get the latest version from 
releases")
        }
        if lv != "" {
                return lv, nil
        }
-       return c.getLatestVersionFromTags(ctx, logE, owner, repo)
+       return c.getLatestVersionFromTags(ctx, logE, owner, repo, isStable)
+}
+
+func isStableVersion(v string) bool {
+       if v == "" {
+               return false
+       }
+       cv, err := version.NewVersion(v)
+       return err == nil && cv.Prerelease() == ""
 }
 
 // compare evaluates a tag against the current latest version.
@@ -187,7 +196,7 @@
 //   - currentVersion: current version to check if stable (empty string to 
include all versions)
 //
 // Returns the latest version string or an error.
-func (c *Controller) getLatestVersionFromReleases(ctx context.Context, logE 
*logrus.Entry, owner string, repo string, currentVersion string) (string, 
error) {
+func (c *Controller) getLatestVersionFromReleases(ctx context.Context, logE 
*logrus.Entry, owner, repo string, isStable bool) (string, error) {
        opts := &github.ListOptions{
                PerPage: 30, //nolint:mnd
        }
@@ -196,20 +205,11 @@
                return "", fmt.Errorf("list releases: %w", err)
        }
 
-       // Check if current version is stable (issue #1095)
-       currentIsStable := false
-       if currentVersion != "" {
-               cv, err := version.NewVersion(currentVersion)
-               if err == nil && cv.Prerelease() == "" {
-                       currentIsStable = true
-               }
-       }
-
        var latestSemver *version.Version
        latestVersion := ""
        for _, release := range releases {
                // Skip prereleases if current version is stable (issue #1095)
-               if currentIsStable && release.GetPrerelease() {
+               if isStable && release.GetPrerelease() {
                        continue
                }
                tag := release.GetTagName()
@@ -231,15 +231,17 @@
 // getLatestVersionFromTags finds the latest version from repository tags.
 // It retrieves tags from GitHub API and compares them to find the highest
 // version using semantic versioning when possible, falling back to string 
comparison.
+// It filters out prerelease versions when currentVersion is stable.
 //
 // Parameters:
 //   - ctx: context for cancellation and timeout control
 //   - logE: logrus entry for structured logging
 //   - owner: repository owner
 //   - repo: repository name
+//   - currentVersion: current version to check if stable (empty string to 
include all versions)
 //
 // Returns the latest version string or an error.
-func (c *Controller) getLatestVersionFromTags(ctx context.Context, logE 
*logrus.Entry, owner string, repo string) (string, error) {
+func (c *Controller) getLatestVersionFromTags(ctx context.Context, logE 
*logrus.Entry, owner, repo string, isStable bool) (string, error) {
        opts := &github.ListOptions{
                PerPage: 30, //nolint:mnd
        }
@@ -247,10 +249,19 @@
        if err != nil {
                return "", fmt.Errorf("list tags: %w", err)
        }
+
        var latestSemver *version.Version
        latestVersion := ""
        for _, tag := range tags {
                t := tag.GetName()
+
+               // Skip prereleases if current version is stable (issue #1095)
+               if isStable {
+                       if tv, err := version.NewVersion(t); err == nil && 
tv.Prerelease() != "" {
+                               continue
+                       }
+               }
+
                ls, lv, err := compare(latestSemver, latestVersion, t)
                latestSemver = ls
                latestVersion = lv
@@ -278,7 +289,7 @@
 //   - err: error to report (mutually exclusive with suggestion)
 //
 // Returns the HTTP status code and any error.
-func (c *Controller) review(ctx context.Context, filePath string, sha string, 
line int, suggestion string, err error) (int, error) {
+func (c *Controller) review(ctx context.Context, filePath, sha string, line 
int, suggestion string, err error) (int, error) {
        cmt := &github.PullRequestComment{
                Body: github.Ptr(""),
                Path: github.Ptr(filePath),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pinact-3.4.3/pkg/controller/run/github_internal_test.go 
new/pinact-3.4.4/pkg/controller/run/github_internal_test.go
--- old/pinact-3.4.3/pkg/controller/run/github_internal_test.go 2025-11-15 
04:43:18.000000000 +0100
+++ new/pinact-3.4.4/pkg/controller/run/github_internal_test.go 2025-11-17 
12:01:26.000000000 +0100
@@ -180,12 +180,12 @@
 func TestController_getLatestVersionFromReleases(t *testing.T) { 
//nolint:funlen
        t.Parallel()
        tests := []struct {
-               name           string
-               releases       []*github.RepositoryRelease
-               listErr        error
-               currentVersion string
-               wantVersion    string
-               wantErr        bool
+               name        string
+               releases    []*github.RepositoryRelease
+               listErr     error
+               isStable    bool
+               wantVersion string
+               wantErr     bool
        }{
                {
                        name: "single semver release",
@@ -290,9 +290,9 @@
                                {TagName: github.Ptr("v5.0.0"), Prerelease: 
github.Ptr(false)},
                                {TagName: github.Ptr("v4.3.0"), Prerelease: 
github.Ptr(false)},
                        },
-                       currentVersion: "v5.0.0",
-                       wantVersion:    "v5.0.0",
-                       wantErr:        false,
+                       isStable:    true,
+                       wantVersion: "v5.0.0",
+                       wantErr:     false,
                },
                {
                        name: "prerelease version can update to newer 
prerelease (issue #1095)",
@@ -300,9 +300,9 @@
                                {TagName: github.Ptr("v6-beta"), Prerelease: 
github.Ptr(true)},
                                {TagName: github.Ptr("v5.0.0"), Prerelease: 
github.Ptr(false)},
                        },
-                       currentVersion: "v6-alpha",
-                       wantVersion:    "v6-beta",
-                       wantErr:        false,
+                       isStable:    false,
+                       wantVersion: "v6-beta",
+                       wantErr:     false,
                },
        }
 
@@ -322,7 +322,7 @@
                        ctx := t.Context()
                        logE := logrus.NewEntry(logrus.New())
 
-                       gotVersion, err := c.getLatestVersionFromReleases(ctx, 
logE, "owner", "repo", tt.currentVersion)
+                       gotVersion, err := c.getLatestVersionFromReleases(ctx, 
logE, "owner", "repo", tt.isStable)
 
                        if (err != nil) != tt.wantErr {
                                t.Errorf("getLatestVersionFromReleases() error 
= %v, wantErr %v", err, tt.wantErr)
@@ -479,7 +479,7 @@
                        ctx := t.Context()
                        logE := logrus.NewEntry(logrus.New())
 
-                       gotVersion, err := c.getLatestVersionFromTags(ctx, 
logE, "owner", "repo")
+                       gotVersion, err := c.getLatestVersionFromTags(ctx, 
logE, "owner", "repo", false)
 
                        if (err != nil) != tt.wantErr {
                                t.Errorf("getLatestVersionFromTags() error = 
%v, wantErr %v", err, tt.wantErr)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pinact-3.4.3/pkg/controller/run/parse_line_internal_test.go 
new/pinact-3.4.4/pkg/controller/run/parse_line_internal_test.go
--- old/pinact-3.4.3/pkg/controller/run/parse_line_internal_test.go     
2025-11-15 04:43:18.000000000 +0100
+++ new/pinact-3.4.4/pkg/controller/run/parse_line_internal_test.go     
2025-11-17 12:01:26.000000000 +0100
@@ -190,6 +190,12 @@
                                                Response: &github.Response{},
                                        },
                                },
+                               Releases: map[string]*ListReleasesResult{
+                                       "actions/checkout/0": {
+                                               Releases: 
[]*github.RepositoryRelease{}, // Empty releases forces fallback to tags
+                                               Response: &github.Response{},
+                                       },
+                               },
                                Commits: map[string]*GetCommitSHA1Result{
                                        "actions/checkout/v3": {
                                                SHA: 
"8e5e7e5ab8b370d6c329ec480221332ada57f0ab",

++++++ pinact.obsinfo ++++++
--- /var/tmp/diff_new_pack.cIvlyy/_old  2025-11-19 14:57:58.778399874 +0100
+++ /var/tmp/diff_new_pack.cIvlyy/_new  2025-11-19 14:57:58.810401229 +0100
@@ -1,5 +1,5 @@
 name: pinact
-version: 3.4.3
-mtime: 1763178198
-commit: 6abf4616d28c0f2fd51e7ad2039c885f65c80d1c
+version: 3.4.4
+mtime: 1763377286
+commit: 50fd4d7458ba44c8b45ec7dec5275347e426ff0e
 

++++++ vendor.tar.gz ++++++

Reply via email to