Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package
golang-github-prometheus-alertmanager for openSUSE:Factory checked in at
2026-07-06 12:34:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/golang-github-prometheus-alertmanager (Old)
and
/work/SRC/openSUSE:Factory/.golang-github-prometheus-alertmanager.new.1982 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "golang-github-prometheus-alertmanager"
Mon Jul 6 12:34:53 2026 rev:37 rq:1363971 version:0.33.1
Changes:
--------
---
/work/SRC/openSUSE:Factory/golang-github-prometheus-alertmanager/golang-github-prometheus-alertmanager.changes
2026-06-15 19:50:02.043997908 +0200
+++
/work/SRC/openSUSE:Factory/.golang-github-prometheus-alertmanager.new.1982/golang-github-prometheus-alertmanager.changes
2026-07-06 12:37:34.350331747 +0200
@@ -1,0 +2,13 @@
+Mon Jul 6 05:30:08 UTC 2026 - Johannes Kastl
<[email protected]>
+
+- update to 0.33.1:
+ * [BUGFIX] doc: fix missing notification_reason field in webhook
+ documentation (#5329)
+ * [BUGFIX] silences: fix silences snapshot missing legacy
+ matchers field. This caused a bug that prevented older
+ alertmanager versions from reading newer snapshots
+ unnecessarily. (#5330)
+ * [BUGFIX] silence with no matchers should populate an empty
+ array in API response (#5331)
+
+-------------------------------------------------------------------
Old:
----
alertmanager-0.33.0.tar.gz
ui-0.33.0.tar.gz
New:
----
alertmanager-0.33.1.tar.gz
ui-0.33.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ golang-github-prometheus-alertmanager.spec ++++++
--- /var/tmp/diff_new_pack.75S7md/_old 2026-07-06 12:37:35.130358850 +0200
+++ /var/tmp/diff_new_pack.75S7md/_new 2026-07-06 12:37:35.134358990 +0200
@@ -17,7 +17,7 @@
Name: golang-github-prometheus-alertmanager
-Version: 0.33.0
+Version: 0.33.1
Release: 0
Summary: Prometheus Alertmanager
License: Apache-2.0
++++++ alertmanager-0.33.0.tar.gz -> alertmanager-0.33.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/alertmanager-0.33.0/.github/workflows/build-release-branch.yml
new/alertmanager-0.33.1/.github/workflows/build-release-branch.yml
--- old/alertmanager-0.33.0/.github/workflows/build-release-branch.yml
1970-01-01 01:00:00.000000000 +0100
+++ new/alertmanager-0.33.1/.github/workflows/build-release-branch.yml
2026-07-04 21:04:39.000000000 +0200
@@ -0,0 +1,27 @@
+---
+name: Build release branch
+on: # yamllint disable-line rule:truthy
+ push:
+ branches:
+ - release-*
+ workflow_dispatch:
+permissions:
+ contents: read
+
+jobs:
+ ci:
+ name: Run ci
+ uses: ./.github/workflows/ci.yml
+
+ build:
+ name: Build Alertmanager for all architectures
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ thread: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
+ needs: ci
+ steps:
+ - uses: prometheus/promci/build@13941414d409d227afd67544e5d306827db5a1a2
# v0.8.5
+ with:
+ parallelism: 12
+ thread: ${{ matrix.thread }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/CHANGELOG.md
new/alertmanager-0.33.1/CHANGELOG.md
--- old/alertmanager-0.33.0/CHANGELOG.md 2026-06-12 17:28:35.000000000
+0200
+++ new/alertmanager-0.33.1/CHANGELOG.md 2026-07-04 21:04:39.000000000
+0200
@@ -4,6 +4,18 @@
* [FEATURE] ...
* [ENHANCEMENT] ...
+## 0.33.1 / 2026-07-04
+
+* [BUGFIX] doc: fix missing `notification_reason` field in webhook
documentation (#5329)
+* [BUGFIX] silences: fix silences snapshot missing legacy matchers field. This
caused a bug that prevented older alertmanager versions from reading newer
snapshots unnecessarily. (#5330)
+* [BUGFIX] silence with no matchers should populate an empty array in API
response (#5331)
+
+## 0.32.3 / 2026-07-04
+
+* [BUGFIX] doc: fix missing `notification_reason` field in webhook
documentation (#5329)
+* [BUGFIX] silences: fix silences snapshot missing legacy matchers field. This
caused a bug that prevented older alertmanager versions from reading newer
snapshots unnecessarily. (#5330)
+* [BUGFIX] silence with no matchers should populate an empty array in API
response (#5331)
+
## 0.33.0 / 2026-06-12
* [CHANGE] The '--enable-feature=auto-gomaxprocs' option has been removed.
This flag had no effect since v0.29 and was deprecated in v0.32. It can be
safely removed from any startup scripts. #5090, #5251
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/VERSION
new/alertmanager-0.33.1/VERSION
--- old/alertmanager-0.33.0/VERSION 2026-06-12 17:28:35.000000000 +0200
+++ new/alertmanager-0.33.1/VERSION 2026-07-04 21:04:39.000000000 +0200
@@ -1 +1 @@
-0.33.0
+0.33.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/api/v2/compat.go
new/alertmanager-0.33.1/api/v2/compat.go
--- old/alertmanager-0.33.0/api/v2/compat.go 2026-06-12 17:28:35.000000000
+0200
+++ new/alertmanager-0.33.1/api/v2/compat.go 2026-07-04 21:04:39.000000000
+0200
@@ -38,6 +38,7 @@
Silence: open_api_models.Silence{
StartsAt: &start,
EndsAt: &end,
+ Matchers: open_api_models.Matchers{},
Comment: &s.Comment,
CreatedBy: &s.CreatedBy,
Annotations: s.Annotations,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/docs/configuration.md
new/alertmanager-0.33.1/docs/configuration.md
--- old/alertmanager-0.33.0/docs/configuration.md 2026-06-12
17:28:35.000000000 +0200
+++ new/alertmanager-0.33.1/docs/configuration.md 2026-07-04
21:04:39.000000000 +0200
@@ -1944,6 +1944,7 @@
"commonLabels": <object>,
"commonAnnotations": <object>,
"externalURL": <string>, // backlink to the Alertmanager.
+ "notification_reason": <string>, // string represent the reason this
notification was generated
"alerts": [
{
"status": "<resolved|firing>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/silence/silence.go
new/alertmanager-0.33.1/silence/silence.go
--- old/alertmanager-0.33.0/silence/silence.go 2026-06-12 17:28:35.000000000
+0200
+++ new/alertmanager-0.33.1/silence/silence.go 2026-07-04 21:04:39.000000000
+0200
@@ -1359,9 +1359,11 @@
var buf bytes.Buffer
for _, e := range s {
- if _, err := protodelim.MarshalTo(&buf, e); err != nil {
+ b, err := marshalMeshSilence(e)
+ if err != nil {
return nil, err
}
+ buf.Write(b)
}
return buf.Bytes(), nil
}
@@ -1392,7 +1394,9 @@
// the first matcher set to the matchers field for backward compatibility with
// older alertmanager versions.
func prepareSilenceForMarshalling(sil *pb.Silence) {
- if len(sil.MatcherSets) > 0 {
+ // The nil check is here because of rare cases where this function
+ // is called on a nil silence. It's up to the caller to decide if it's
a bug
+ if sil != nil && len(sil.MatcherSets) > 0 {
sil.Matchers = sil.MatcherSets[0].Matchers
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/alertmanager-0.33.0/silence/state_test.go
new/alertmanager-0.33.1/silence/state_test.go
--- old/alertmanager-0.33.0/silence/state_test.go 2026-06-12
17:28:35.000000000 +0200
+++ new/alertmanager-0.33.1/silence/state_test.go 2026-07-04
21:04:39.000000000 +0200
@@ -13,10 +13,17 @@
package silence
import (
+ "bufio"
+ "bytes"
"testing"
"time"
"github.com/stretchr/testify/require"
+ "google.golang.org/protobuf/encoding/protodelim"
+ "google.golang.org/protobuf/proto"
+ "google.golang.org/protobuf/types/known/timestamppb"
+
+ pb "github.com/prometheus/alertmanager/silence/silencepb"
)
func TestCurrentState(t *testing.T) {
@@ -37,3 +44,44 @@
expected = CurrentState(pastStartTime, pastEndTime)
require.Equal(t, SilenceStateExpired, expected)
}
+
+// TestStateMarshalBinaryPopulatesLegacyMatchers asserts that snapshots and
+// cluster local-state payloads written by state.MarshalBinary include the
+// deprecated Silence.Matchers field, so that older Alertmanagers that don't
+// understand MatcherSets still see the silence's first matcher set.
+func TestStateMarshalBinaryPopulatesLegacyMatchers(t *testing.T) {
+ now := time.Now()
+ matchers := []*pb.Matcher{
+ {Name: "alertname", Pattern: "Foo", Type: pb.Matcher_EQUAL},
+ {Name: "severity", Pattern: "warn|crit", Type:
pb.Matcher_REGEXP},
+ }
+ sil := &pb.Silence{
+ Id: "abc",
+ MatcherSets: []*pb.MatcherSet{{Matchers: matchers}},
+ StartsAt: timestamppb.New(now),
+ EndsAt: timestamppb.New(now.Add(time.Hour)),
+ }
+ st := state{sil.Id: &pb.MeshSilence{
+ Silence: sil,
+ ExpiresAt: timestamppb.New(now.Add(2 * time.Hour)),
+ }}
+
+ b, err := st.MarshalBinary()
+ require.NoError(t, err)
+
+ require.Nil(t, sil.Matchers, "MarshalBinary must not mutate in-memory
silences")
+
+ // Decode directly via protodelim, bypassing decodeState — decodeState
+ // strips the legacy field, but we want to observe the on-the-wire
shape.
+ var got pb.MeshSilence
+ require.NoError(t,
protodelim.UnmarshalFrom(bufio.NewReader(bytes.NewReader(b)), &got))
+
+ require.Len(t, got.Silence.MatcherSets, 1)
+ require.Len(t, got.Silence.Matchers, len(matchers))
+ for i, m := range matchers {
+ require.True(t, proto.Equal(m, got.Silence.Matchers[i]),
+ "legacy Matchers[%d] mismatch", i)
+ require.True(t, proto.Equal(m,
got.Silence.MatcherSets[0].Matchers[i]),
+ "MatcherSets[0].Matchers[%d] mismatch", i)
+ }
+}
++++++ ui-0.33.0.tar.gz -> ui-0.33.1.tar.gz ++++++
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/golang-github-prometheus-alertmanager/vendor.tar.gz
/work/SRC/openSUSE:Factory/.golang-github-prometheus-alertmanager.new.1982/vendor.tar.gz
differ: char 12, line 1