openSUSE Commits
Threads by month
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
June 2024
- 2 participants
- 1220 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package docker-compose for openSUSE:Factory checked in at 2024-06-25 23:07:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/docker-compose (Old)
and /work/SRC/openSUSE:Factory/.docker-compose.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "docker-compose"
Tue Jun 25 23:07:24 2024 rev:44 rq:1183059 version:2.28.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/docker-compose/docker-compose.changes 2024-06-24 20:52:49.159269428 +0200
+++ /work/SRC/openSUSE:Factory/.docker-compose.new.18349/docker-compose.changes 2024-06-25 23:08:10.683838028 +0200
@@ -1,0 +2,7 @@
+Mon Jun 24 18:55:23 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 2.28.1:
+ * Remove `console.Terminal` check and use `IsTerminal` from
+ `streams.Out`
+
+-------------------------------------------------------------------
Old:
----
compose-2.28.0.obscpio
New:
----
compose-2.28.1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ docker-compose.spec ++++++
--- /var/tmp/diff_new_pack.pel5IF/_old 2024-06-25 23:08:11.927883377 +0200
+++ /var/tmp/diff_new_pack.pel5IF/_new 2024-06-25 23:08:11.931883522 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: docker-compose
-Version: 2.28.0
+Version: 2.28.1
Release: 0
Summary: Define and run multi-container applications with Docker
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.pel5IF/_old 2024-06-25 23:08:11.959884543 +0200
+++ /var/tmp/diff_new_pack.pel5IF/_new 2024-06-25 23:08:11.963884689 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/docker/compose</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v2.28.0</param>
+ <param name="revision">v2.28.1</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
@@ -17,7 +17,7 @@
<param name="compression">gz</param>
</service>
<service name="go_modules" mode="manual">
- <param name="archive">compose-2.28.0.obscpio</param>
+ <param name="archive">compose-2.28.1.obscpio</param>
</service>
</services>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.pel5IF/_old 2024-06-25 23:08:11.983885418 +0200
+++ /var/tmp/diff_new_pack.pel5IF/_new 2024-06-25 23:08:11.987885564 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/docker/compose</param>
- <param name="changesrevision">6a000dcff1300e137bb52467d3934e9211a017ed</param></service></servicedata>
+ <param name="changesrevision">f79c28168bf6a95ea0cbd1c298f4a0ff4c3ac36b</param></service></servicedata>
(No newline at EOF)
++++++ compose-2.28.0.obscpio -> compose-2.28.1.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/compose-2.28.0/go.mod new/compose-2.28.1/go.mod
--- old/compose-2.28.0/go.mod 2024-06-21 14:04:40.000000000 +0200
+++ new/compose-2.28.1/go.mod 2024-06-24 14:58:19.000000000 +0200
@@ -8,7 +8,6 @@
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d
github.com/buger/goterm v1.0.4
github.com/compose-spec/compose-go/v2 v2.1.3
- github.com/containerd/console v1.0.4
github.com/containerd/containerd v1.7.18
github.com/davecgh/go-spew v1.1.1
github.com/distribution/reference v0.6.0
@@ -81,6 +80,7 @@
github.com/beorn7/perks v1.0.1 // indirect
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
+ github.com/containerd/console v1.0.4 // indirect
github.com/containerd/continuity v0.4.3 // indirect
github.com/containerd/errdefs v0.1.0 // indirect
github.com/containerd/log v0.1.0 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/compose-2.28.0/pkg/compose/compose.go new/compose-2.28.1/pkg/compose/compose.go
--- old/compose-2.28.0/pkg/compose/compose.go 2024-06-21 14:04:40.000000000 +0200
+++ new/compose-2.28.1/pkg/compose/compose.go 2024-06-24 14:58:19.000000000 +0200
@@ -20,7 +20,6 @@
"context"
"errors"
"fmt"
- "io"
"os"
"strconv"
"strings"
@@ -129,11 +128,11 @@
return s.dockerCli.In()
}
-func (s *composeService) stderr() io.Writer {
+func (s *composeService) stderr() *streams.Out {
return s.dockerCli.Err()
}
-func (s *composeService) stdinfo() io.Writer {
+func (s *composeService) stdinfo() *streams.Out {
if stdioToStdout {
return s.dockerCli.Out()
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/compose-2.28.0/pkg/progress/writer.go new/compose-2.28.1/pkg/progress/writer.go
--- old/compose-2.28.0/pkg/progress/writer.go 2024-06-21 14:04:40.000000000 +0200
+++ new/compose-2.28.1/pkg/progress/writer.go 2024-06-24 14:58:19.000000000 +0200
@@ -21,9 +21,7 @@
"io"
"sync"
- "github.com/containerd/console"
- "github.com/moby/term"
- "github.com/sirupsen/logrus"
+ "github.com/docker/cli/cli/streams"
"golang.org/x/sync/errgroup"
"github.com/docker/compose/v2/pkg/api"
@@ -59,14 +57,14 @@
type progressFuncWithStatus func(context.Context) (string, error)
// Run will run a writer and the progress function in parallel
-func Run(ctx context.Context, pf progressFunc, out io.Writer) error {
+func Run(ctx context.Context, pf progressFunc, out *streams.Out) error {
_, err := RunWithStatus(ctx, func(ctx context.Context) (string, error) {
return "", pf(ctx)
}, out, "Running")
return err
}
-func RunWithTitle(ctx context.Context, pf progressFunc, out io.Writer, progressTitle string) error {
+func RunWithTitle(ctx context.Context, pf progressFunc, out *streams.Out, progressTitle string) error {
_, err := RunWithStatus(ctx, func(ctx context.Context) (string, error) {
return "", pf(ctx)
}, out, progressTitle)
@@ -74,7 +72,7 @@
}
// RunWithStatus will run a writer and the progress function in parallel and return a status
-func RunWithStatus(ctx context.Context, pf progressFuncWithStatus, out io.Writer, progressTitle string) (string, error) {
+func RunWithStatus(ctx context.Context, pf progressFuncWithStatus, out *streams.Out, progressTitle string) (string, error) {
eg, _ := errgroup.WithContext(ctx)
w, err := NewWriter(ctx, out, progressTitle)
var result string
@@ -115,8 +113,8 @@
var Mode = ModeAuto
// NewWriter returns a new multi-progress writer
-func NewWriter(ctx context.Context, out io.Writer, progressTitle string) (Writer, error) {
- _, isTerminal := term.GetFdInfo(out)
+func NewWriter(ctx context.Context, out *streams.Out, progressTitle string) (Writer, error) {
+ isTerminal := out.IsTerminal()
dryRun, ok := ctx.Value(api.DryRunKey{}).(bool)
if !ok {
dryRun = false
@@ -124,16 +122,13 @@
if Mode == ModeQuiet {
return quiet{}, nil
}
- f, isConsole := out.(console.File) // see https://github.com/docker/compose/issues/10560
- if Mode == ModeAuto && isTerminal && isConsole {
- return newTTYWriter(f, dryRun, progressTitle)
- }
- if Mode == ModeTTY {
- if !isConsole {
- logrus.Warn("Terminal is not a POSIX console")
- } else {
- return newTTYWriter(f, dryRun, progressTitle)
- }
+
+ tty := Mode == ModeTTY
+ if Mode == ModeAuto && isTerminal {
+ tty = true
+ }
+ if tty {
+ return newTTYWriter(out, dryRun, progressTitle)
}
return &plainWriter{
out: out,
@@ -142,14 +137,9 @@
}, nil
}
-func newTTYWriter(out console.File, dryRun bool, progressTitle string) (Writer, error) {
- con, err := console.ConsoleFromFile(out)
- if err != nil {
- return nil, err
- }
-
+func newTTYWriter(out io.Writer, dryRun bool, progressTitle string) (Writer, error) {
return &ttyWriter{
- out: con,
+ out: out,
eventIDs: []string{},
events: map[string]Event{},
repeated: false,
++++++ compose.obsinfo ++++++
--- /var/tmp/diff_new_pack.pel5IF/_old 2024-06-25 23:08:12.207893584 +0200
+++ /var/tmp/diff_new_pack.pel5IF/_new 2024-06-25 23:08:12.211893729 +0200
@@ -1,5 +1,5 @@
name: compose
-version: 2.28.0
-mtime: 1718971480
-commit: 6a000dcff1300e137bb52467d3934e9211a017ed
+version: 2.28.1
+mtime: 1719233899
+commit: f79c28168bf6a95ea0cbd1c298f4a0ff4c3ac36b
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/docker-compose/vendor.tar.gz /work/SRC/openSUSE:Factory/.docker-compose.new.18349/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package bitcoin for openSUSE:Factory checked in at 2024-06-25 23:07:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/bitcoin (Old)
and /work/SRC/openSUSE:Factory/.bitcoin.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bitcoin"
Tue Jun 25 23:07:21 2024 rev:56 rq:1183047 version:27.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/bitcoin/bitcoin.changes 2024-04-29 17:59:07.449068712 +0200
+++ /work/SRC/openSUSE:Factory/.bitcoin.new.18349/bitcoin.changes 2024-06-25 23:08:01.559505423 +0200
@@ -1,0 +2,26 @@
+Mon Jun 24 09:37:55 UTC 2024 - andrea.manzini(a)suse.com
+
+- Update to version 27.1:
+ * doc: update manual pages for 27.1
+ * build: bump version to v27.1 final
+ * depends: Update Boost download link
+ * build: Fix building `fuzz` binary on on SunOS / illumos
+ * qt: 27.1rc1 translations update
+ * depends: Fetch miniupnpc sources from an alternative website
+ * test: add GetAddedNodeInfo() CJDNS regression unit test
+ * p2p, bugfix: detect addnode cjdns peers in GetAddedNodeInfo()
+ * crypto: disable asan for sha256_sse4 with clang and -O0
+ * rpc: move UniValue in blockToJSON
+ * gui: don't permit port in proxy IP option
+ * gui: fix create unsigned transaction fee bump
+ * depends: Fix build of Qt for 32-bit platforms
+ * Fix #29767, set m_synced = true after Commit()
+ * sign: don't assume we are parsing a sane Miniscript
+ * rpc: Reword SighashFromStr error message
+ * build: Fix false positive `CHECK_ATOMIC` test for clang-15
+ * test: Fix failing univalue float test
+ * doc: archive 27.0 release notes
+ * [rpc, bugfix] Enforce maximum value for setmocktime
+ * Change Luke Dashjr seed to dashjr-list-of-p2p-nodes.us
+
+-------------------------------------------------------------------
Old:
----
bitcoin-27.0.obscpio
New:
----
bitcoin-27.1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ bitcoin.spec ++++++
--- /var/tmp/diff_new_pack.7lO89U/_old 2024-06-25 23:08:09.675801283 +0200
+++ /var/tmp/diff_new_pack.7lO89U/_new 2024-06-25 23:08:09.675801283 +0200
@@ -24,7 +24,7 @@
%define consensus 1
%define is_base 1
Name: bitcoin
-Version: 27.0
+Version: 27.1
Release: 0
Summary: P2P Digital Currency
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.7lO89U/_old 2024-06-25 23:08:09.723803033 +0200
+++ /var/tmp/diff_new_pack.7lO89U/_new 2024-06-25 23:08:09.727803178 +0200
@@ -6,7 +6,7 @@
<param name="changesgenerate">enable</param>
<param name="exclude">.*</param>
<param name="versionrewrite-pattern">v(.*)</param>
- <param name="revision">refs/tags/v27.0</param>
+ <param name="revision">refs/tags/v27.1</param>
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.7lO89U/_old 2024-06-25 23:08:09.743803761 +0200
+++ /var/tmp/diff_new_pack.7lO89U/_new 2024-06-25 23:08:09.747803907 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/bitcoin/bitcoin.git</param>
- <param name="changesrevision">d82283950f5ff3b2116e705f931c6e89e5fdd0be</param></service></servicedata>
+ <param name="changesrevision">1088a98f5aad080cc6cca2da174f206509fcda6c</param></service></servicedata>
(No newline at EOF)
++++++ bitcoin-27.0.obscpio -> bitcoin-27.1.obscpio ++++++
/work/SRC/openSUSE:Factory/bitcoin/bitcoin-27.0.obscpio /work/SRC/openSUSE:Factory/.bitcoin.new.18349/bitcoin-27.1.obscpio differ: char 49, line 1
++++++ bitcoin.obsinfo ++++++
--- /var/tmp/diff_new_pack.7lO89U/_old 2024-06-25 23:08:09.803805948 +0200
+++ /var/tmp/diff_new_pack.7lO89U/_new 2024-06-25 23:08:09.803805948 +0200
@@ -1,5 +1,5 @@
name: bitcoin
-version: 27.0
-mtime: 1713198512
-commit: d82283950f5ff3b2116e705f931c6e89e5fdd0be
+version: 27.1
+mtime: 1718111937
+commit: 1088a98f5aad080cc6cca2da174f206509fcda6c
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package chezmoi for openSUSE:Factory checked in at 2024-06-25 23:07:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chezmoi (Old)
and /work/SRC/openSUSE:Factory/.chezmoi.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chezmoi"
Tue Jun 25 23:07:17 2024 rev:55 rq:1183046 version:2.49.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/chezmoi/chezmoi.changes 2024-06-11 18:33:15.109550862 +0200
+++ /work/SRC/openSUSE:Factory/.chezmoi.new.18349/chezmoi.changes 2024-06-25 23:07:57.123343714 +0200
@@ -1,0 +2,7 @@
+Mon Jun 24 17:01:13 UTC 2024 - Filippo Bonazzi <filippo.bonazzi(a)suse.com>
+
+- Update to version 2.49.1:
+ - Fixes
+ * fix: Accept line-endings template directive as well as line-ending
+
+-------------------------------------------------------------------
Old:
----
chezmoi-2.49.0.obscpio
New:
----
chezmoi-2.49.1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ chezmoi.spec ++++++
--- /var/tmp/diff_new_pack.5jrpUP/_old 2024-06-25 23:07:59.511430766 +0200
+++ /var/tmp/diff_new_pack.5jrpUP/_new 2024-06-25 23:07:59.515430912 +0200
@@ -17,7 +17,7 @@
Name: chezmoi
-Version: 2.49.0
+Version: 2.49.1
Release: 0
Summary: A multi-host manager for dotfiles
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.5jrpUP/_old 2024-06-25 23:07:59.547432079 +0200
+++ /var/tmp/diff_new_pack.5jrpUP/_new 2024-06-25 23:07:59.547432079 +0200
@@ -2,7 +2,7 @@
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://github.com/twpayne/chezmoi.git</param>
- <param name="revision">v2.49.0</param>
+ <param name="revision">v2.49.1</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
</service>
++++++ chezmoi-2.49.0.obscpio -> chezmoi-2.49.1.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/.github/workflows/govulncheck.yml new/chezmoi-2.49.1/.github/workflows/govulncheck.yml
--- old/chezmoi-2.49.0/.github/workflows/govulncheck.yml 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/.github/workflows/govulncheck.yml 2024-06-23 13:05:46.000000000 +0200
@@ -16,7 +16,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- name: go-version
id: go-version
run: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/.github/workflows/installer.yml new/chezmoi-2.49.1/.github/workflows/installer.yml
--- old/chezmoi-2.49.0/.github/workflows/installer.yml 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/.github/workflows/installer.yml 2024-06-23 13:05:46.000000000 +0200
@@ -17,7 +17,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- id: filter
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36
with:
@@ -36,8 +36,8 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- - uses: reviewdog/action-misspell@8cd4a880dd86b1b175092c18c23cdec31283d654
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
+ - uses: reviewdog/action-misspell@30433ca7be17888deb78a32521706fb65defbf3f
with:
locale: US
ignore: ackward
@@ -54,7 +54,7 @@
env:
BINARY: ${{ matrix.os == 'windows-2022' && 'bin/chezmoi.exe' || 'bin/chezmoi' }}
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- name: test-${{ matrix.os }}-local
shell: bash
run: |
@@ -77,7 +77,7 @@
env:
BINARY: ${{ matrix.os == 'windows-2022' && 'bin/chezmoi.exe' || 'bin/chezmoi' }}
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- name: test-${{ matrix.os }}-local-pwsh
shell: pwsh
run: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/.github/workflows/main.yml new/chezmoi-2.49.1/.github/workflows/main.yml
--- old/chezmoi-2.49.0/.github/workflows/main.yml 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/.github/workflows/main.yml 2024-06-23 13:05:46.000000000 +0200
@@ -12,7 +12,7 @@
- cron: 32 2 * * *
env:
ACTIONLINT_VERSION: 1.7.1 # https://github.com/rhysd/actionlint/releases
- AGE_VERSION: 1.1.1 # https://github.com/FiloSottile/age/releases
+ AGE_VERSION: 1.2.0 # https://github.com/FiloSottile/age/releases
CHOCOLATEY_VERSION: 2.2.2 # https://github.com/chocolatey/choco/releases
EDITORCONFIG_CHECKER_VERSION: 3.0.1 # https://github.com/editorconfig-checker/editorconfig-checker/releases
FIND_TYPOS_VERSION: 0.0.3 # https://github.com/twpayne/find-typos/tags
@@ -20,7 +20,7 @@
GOFUMPT_VERSION: 0.6.0 # https://github.com/mvdan/gofumpt/releases
GOLANGCI_LINT_VERSION: 1.59.1 # https://github.com/golangci/golangci-lint/releases
GOLINES_VERSION: 0.12.2 # https://github.com/segmentio/golines/releases
- GORELEASER_VERSION: 2.0.0 # https://github.com/goreleaser/goreleaser/releases
+ GORELEASER_VERSION: 2.0.1 # https://github.com/goreleaser/goreleaser/releases
GOVERSIONINFO_VERSION: 1.4.0 # https://github.com/josephspurrier/goversioninfo/releases
RAGE_VERSION: 0.10.0 # https://github.com/str4d/rage/releases
jobs:
@@ -31,7 +31,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- id: filter
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36
with:
@@ -57,7 +57,7 @@
permissions:
security-events: write
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 1
- uses: github/codeql-action/init@f079b8493333aace61c81488f8bd40919487bd9f
@@ -69,8 +69,8 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
- - uses: reviewdog/action-misspell@8cd4a880dd86b1b175092c18c23cdec31283d654
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
+ - uses: reviewdog/action-misspell@30433ca7be17888deb78a32521706fb65defbf3f
with:
locale: US
ignore: ackward
@@ -81,7 +81,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- name: test
env:
CHEZMOI_GITHUB_TOKEN: ${{ secrets.CHEZMOI_GITHUB_TOKEN }}
@@ -94,7 +94,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- name: test
env:
CHEZMOI_GITHUB_TOKEN: ${{ secrets.CHEZMOI_GITHUB_TOKEN }}
@@ -107,7 +107,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
with:
go-version: ${{ env.GO_VERSION }}
@@ -142,7 +142,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
with:
go-version: oldstable
@@ -175,7 +175,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
@@ -240,7 +240,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
@@ -282,7 +282,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
with:
go-version: ${{ env.GO_VERSION }}
@@ -300,7 +300,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
with:
go-version: ${{ env.GO_VERSION }}
@@ -326,7 +326,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
@@ -382,7 +382,7 @@
permissions:
contents: read
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
with:
go-version: stable
@@ -424,7 +424,7 @@
run: snapcraft whoami
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
@@ -452,7 +452,7 @@
permissions:
contents: write
steps:
- - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
+ - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
fetch-depth: 0
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/Makefile new/chezmoi-2.49.1/Makefile
--- old/chezmoi-2.49.0/Makefile 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/Makefile 2024-06-23 13:05:46.000000000 +0200
@@ -9,6 +9,7 @@
GOLINES_VERSION=$(shell awk '/GOLINES_VERSION:/ { print $$2 }' .github/workflows/main.yml)
GORELEASER_VERSION=$(shell awk '/GORELEASER_VERSION:/ { print $$2 }' .github/workflows/main.yml)
GOVERSIONINFO_VERSION=$(shell awk '/GOVERSIONINFO_VERSION:/ { print $$2 }' .github/workflows/main.yml)
+UPSTREAM=$(shell git remote -v | awk '/github.com[:\/]twpayne\/chezmoi(.git)? \(fetch\)/ {print $$1}')
ifdef VERSION
GO_LDFLAGS+=-X main.version=${VERSION}
endif
@@ -121,7 +122,7 @@
${GO} run ./internal/cmds/lint-whitespace
find . -name \*.txtar | xargs ${GO} run ./internal/cmds/lint-txtar
./bin/find-typos chezmoi .
- go run ./internal/cmds/lint-commit-messages origin/master..HEAD
+ go run ./internal/cmds/lint-commit-messages ${UPSTREAM}/master..HEAD
.PHONY: format
format: ensure-gofumpt ensure-golines
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/go.mod new/chezmoi-2.49.1/go.mod
--- old/chezmoi-2.49.0/go.mod 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/go.mod 2024-06-23 13:05:46.000000000 +0200
@@ -5,20 +5,20 @@
toolchain go1.22.0
require (
- filippo.io/age v1.1.1
- github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2
+ filippo.io/age v1.2.0
+ github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azsecrets v1.1.0
github.com/Masterminds/sprig/v3 v3.2.3
github.com/Netflix/go-expect v0.0.0-20220104043353-73e0943537d2
github.com/Shopify/ejson v1.5.2
github.com/alecthomas/assert/v2 v2.10.0
- github.com/aws/aws-sdk-go-v2 v1.27.2
- github.com/aws/aws-sdk-go-v2/config v1.27.18
- github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.29.3
+ github.com/aws/aws-sdk-go-v2 v1.30.0
+ github.com/aws/aws-sdk-go-v2/config v1.27.21
+ github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.31.1
github.com/bmatcuk/doublestar/v4 v4.6.1
github.com/bradenhilton/mozillainstallhash v1.0.1
github.com/charmbracelet/bubbles v0.18.0
- github.com/charmbracelet/bubbletea v0.26.4
+ github.com/charmbracelet/bubbletea v0.26.5
github.com/charmbracelet/glamour v0.7.0
github.com/coreos/go-semver v0.3.1
github.com/fsnotify/fsnotify v1.7.0
@@ -27,7 +27,7 @@
github.com/google/renameio/v2 v2.0.0
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79
github.com/itchyny/gojq v0.12.16
- github.com/klauspost/compress v1.17.8
+ github.com/klauspost/compress v1.17.9
github.com/mitchellh/copystructure v1.2.0
github.com/mitchellh/mapstructure v1.5.0
github.com/muesli/combinator v0.3.0
@@ -35,7 +35,7 @@
github.com/pelletier/go-toml/v2 v2.2.2
github.com/rogpeppe/go-internal v1.12.0
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3
- github.com/spf13/cobra v1.8.0
+ github.com/spf13/cobra v1.8.1
github.com/spf13/pflag v1.0.5
github.com/tailscale/hujson v0.0.0-20221223112325-20486734a56a
github.com/twpayne/go-pinentry/v4 v4.0.0
@@ -44,7 +44,7 @@
github.com/twpayne/go-xdg/v6 v6.1.3
github.com/ulikunitz/xz v0.5.12
github.com/zalando/go-keyring v0.2.5
- github.com/zricethezav/gitleaks/v8 v8.18.3
+ github.com/zricethezav/gitleaks/v8 v8.18.4
go.etcd.io/bbolt v1.3.10
golang.org/x/crypto v0.24.0
golang.org/x/oauth2 v0.21.0
@@ -72,16 +72,16 @@
github.com/alecthomas/repr v0.4.0 // indirect
github.com/alessio/shellescape v1.4.2 // indirect
github.com/atotto/clipboard v0.1.4 // indirect
- github.com/aws/aws-sdk-go-v2/credentials v1.17.18 // indirect
- github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.5 // indirect
- github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.9 // indirect
- github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.9 // indirect
+ github.com/aws/aws-sdk-go-v2/credentials v1.17.21 // indirect
+ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.8 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.12 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.12 // indirect
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect
- github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.11 // indirect
- github.com/aws/aws-sdk-go-v2/service/sso v1.20.11 // indirect
- github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.5 // indirect
- github.com/aws/aws-sdk-go-v2/service/sts v1.28.12 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.14 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sso v1.21.1 // indirect
+ github.com/aws/aws-sdk-go-v2/service/ssooidc v1.25.1 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sts v1.29.1 // indirect
github.com/aws/smithy-go v1.20.2 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/aymerick/douceur v0.2.0 // indirect
@@ -92,7 +92,7 @@
github.com/charmbracelet/x/input v0.1.2 // indirect
github.com/charmbracelet/x/term v0.1.1 // indirect
github.com/charmbracelet/x/windows v0.1.2 // indirect
- github.com/cloudflare/circl v1.3.8 // indirect
+ github.com/cloudflare/circl v1.3.9 // indirect
github.com/creack/pty/v2 v2.0.0-20231209135443-03db72c7b76c // indirect
github.com/cyphar/filepath-securejoin v0.2.5 // indirect
github.com/danieljoos/wincred v1.2.1 // indirect
@@ -149,10 +149,10 @@
github.com/subosito/gotenv v1.6.0 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
- github.com/yuin/goldmark v1.7.1 // indirect
+ github.com/yuin/goldmark v1.7.2 // indirect
github.com/yuin/goldmark-emoji v1.0.2 // indirect
go.uber.org/multierr v1.11.0 // indirect
- golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 // indirect
+ golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 // indirect
golang.org/x/net v0.26.0 // indirect
golang.org/x/text v0.16.0 // indirect
golang.org/x/tools v0.22.0 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/go.sum new/chezmoi-2.49.1/go.sum
--- old/chezmoi-2.49.0/go.sum 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/go.sum 2024-06-23 13:05:46.000000000 +0200
@@ -1,3 +1,5 @@
+c2sp.org/CCTV/age v0.0.0-20240306222714-3ec4d716e805 h1:u2qwJeEvnypw+OCPUHmoZE3IqwfuN5kgDfo5MLzpNM0=
+c2sp.org/CCTV/age v0.0.0-20240306222714-3ec4d716e805/go.mod h1:FomMrUJ2Lxt5jCLmZkG3FHa72zUprnhd3v/Z18Snm4w=
cloud.google.com/go v0.112.1 h1:uJSeirPke5UNZHIb4SxfZklVSiWWVqW4oXlETwZziwM=
cloud.google.com/go v0.112.1/go.mod h1:+Vbu+Y1UU+I1rjmzeMOb/8RfkKJK2Gyxi1X6jJCZLo4=
cloud.google.com/go/compute v1.24.0 h1:phWcR2eWzRJaL/kOiJwfFsPs4BaKq1j6vnpZrc1YlVg=
@@ -14,14 +16,14 @@
cloud.google.com/go/storage v1.35.1/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8=
dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk=
dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk=
-filippo.io/age v1.1.1 h1:pIpO7l151hCnQ4BdyBujnGP2YlUo0uj6sAVNHGBvXHg=
-filippo.io/age v1.1.1/go.mod h1:l03SrzDUrBkdBx8+IILdnn2KZysqQdbEBUQ4p3sqEQE=
-filippo.io/edwards25519 v1.0.0 h1:0wAIcmJUqRdI8IJ/3eGi5/HwXZWPujYXXlkrQogz0Ek=
-filippo.io/edwards25519 v1.0.0/go.mod h1:N1IkdkCkiLB6tki+MYJoSx2JTY9NUlxZE7eHn5EwJns=
+filippo.io/age v1.2.0 h1:vRDp7pUMaAJzXNIWJVAZnEf/Dyi4Vu4wI8S1LBzufhE=
+filippo.io/age v1.2.0/go.mod h1:JL9ew2lTN+Pyft4RiNGguFfOpewKwSHm5ayKD/A4004=
+filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
+filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.12.0 h1:1nGuui+4POelzDwI7RG56yfQJHCnKvwfMoU7VsEp+Zg=
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.12.0/go.mod h1:99EvauvlcJ1U06amZiksfYz/3aFGyIhWGHVyiZXtBAI=
-github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2 h1:FDif4R1+UUR+00q6wquyX90K7A8dN+R5E8GEadoP7sU=
-github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.2/go.mod h1:aiYBYui4BJ/BJCAIKs92XiPyQfTaBWqvHujDwKb6CBU=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0 h1:tfLQ34V6F7tVSwoTf/4lH5sE0o6eCJuNDTmH09nDpbc=
+github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0/go.mod h1:9kIvujWAA58nmPmWB1m23fyWic1kYZMxD9CxaWn4Qpg=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.9.0 h1:H+U3Gk9zY56G3u872L82bk4thcsy2Gghb9ExT4Zvm1o=
github.com/Azure/azure-sdk-for-go/sdk/internal v1.9.0/go.mod h1:mgrmMSgaLp9hmax62XQTd0N4aAqSE5E0DulSpVYK7vc=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azsecrets v1.1.0 h1:h4Zxgmi9oyZL2l8jeg1iRTqPloHktywWcu0nlJmo1tA=
@@ -62,32 +64,32 @@
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4=
github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI=
-github.com/aws/aws-sdk-go-v2 v1.27.2 h1:pLsTXqX93rimAOZG2FIYraDQstZaaGVVN4tNw65v0h8=
-github.com/aws/aws-sdk-go-v2 v1.27.2/go.mod h1:ffIFB97e2yNsv4aTSGkqtHnppsIJzw7G7BReUZ3jCXM=
-github.com/aws/aws-sdk-go-v2/config v1.27.18 h1:wFvAnwOKKe7QAyIxziwSKjmer9JBMH1vzIL6W+fYuKk=
-github.com/aws/aws-sdk-go-v2/config v1.27.18/go.mod h1:0xz6cgdX55+kmppvPm2IaKzIXOheGJhAufacPJaXZ7c=
-github.com/aws/aws-sdk-go-v2/credentials v1.17.18 h1:D/ALDWqK4JdY3OFgA2thcPO1c9aYTT5STS/CvnkqY1c=
-github.com/aws/aws-sdk-go-v2/credentials v1.17.18/go.mod h1:JuitCWq+F5QGUrmMPsk945rop6bB57jdscu+Glozdnc=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.5 h1:dDgptDO9dxeFkXy+tEgVkzSClHZje/6JkPW5aZyEvrQ=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.5/go.mod h1:gjvE2KBUgUQhcv89jqxrIxH9GaKs1JbZzWejj/DaHGA=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.9 h1:cy8ahBJuhtM8GTTSyOkfy6WVPV1IE+SS5/wfXUYuulw=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.9/go.mod h1:CZBXGLaJnEZI6EVNcPd7a6B5IC5cA/GkRWtu9fp3S6Y=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.9 h1:A4SYk07ef04+vxZToz9LWvAXl9LW0NClpPpMsi31cz0=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.9/go.mod h1:5jJcHuwDagxN+ErjQ3PU3ocf6Ylc/p9x+BLO/+X4iXw=
+github.com/aws/aws-sdk-go-v2 v1.30.0 h1:6qAwtzlfcTtcL8NHtbDQAqgM5s6NDipQTkPxyH/6kAA=
+github.com/aws/aws-sdk-go-v2 v1.30.0/go.mod h1:ffIFB97e2yNsv4aTSGkqtHnppsIJzw7G7BReUZ3jCXM=
+github.com/aws/aws-sdk-go-v2/config v1.27.21 h1:yPX3pjGCe2hJsetlmGNB4Mngu7UPmvWPzzWCv1+boeM=
+github.com/aws/aws-sdk-go-v2/config v1.27.21/go.mod h1:4XtlEU6DzNai8RMbjSF5MgGZtYvrhBP/aKZcRtZAVdM=
+github.com/aws/aws-sdk-go-v2/credentials v1.17.21 h1:pjAqgzfgFhTv5grc7xPHtXCAaMapzmwA7aU+c/SZQGw=
+github.com/aws/aws-sdk-go-v2/credentials v1.17.21/go.mod h1:nhK6PtBlfHTUDVmBLr1dg+WHCOCK+1Fu/WQyVHPsgNQ=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.8 h1:FR+oWPFb/8qMVYMWN98bUZAGqPvLHiyqg1wqQGfUAXY=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.8/go.mod h1:EgSKcHiuuakEIxJcKGzVNWh5srVAQ3jKaSrBGRYvM48=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.12 h1:SJ04WXGTwnHlWIODtC5kJzKbeuHt+OUNOgKg7nfnUGw=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.12/go.mod h1:FkpvXhA92gb3GE9LD6Og0pHHycTxW7xGpnEh5E7Opwo=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.12 h1:hb5KgeYfObi5MHkSSZMEudnIvX30iB+E21evI4r6BnQ=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.12/go.mod h1:CroKe/eWJdyfy9Vx4rljP5wTUjNJfb+fPz1uMYUhEGM=
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU=
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpVgEL2IrrDOf6/m9RQum4NkY=
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 h1:Ji0DY1xUsUr3I8cHps0G+XM3WWU16lP6yG8qu1GAZAs=
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2/go.mod h1:5CsjAbs3NlGQyZNFACh+zztPDI7fU6eW9QsxjfnuBKg=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.11 h1:o4T+fKxA3gTMcluBNZZXE9DNaMkJuUL1O3mffCUjoJo=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.11/go.mod h1:84oZdJ+VjuJKs9v1UTC9NaodRZRseOXCTgku+vQJWR8=
-github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.29.3 h1:+pg3v9mWOmnR01Pxd0dcsDWSLN0GWbcFiKf2YgZ4+SY=
-github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.29.3/go.mod h1:M9TqBwpQ7AC6zu1Yji7vijRliqir7hxjuRcnxIk7jCc=
-github.com/aws/aws-sdk-go-v2/service/sso v1.20.11 h1:gEYM2GSpr4YNWc6hCd5nod4+d4kd9vWIAWrmGuLdlMw=
-github.com/aws/aws-sdk-go-v2/service/sso v1.20.11/go.mod h1:gVvwPdPNYehHSP9Rs7q27U1EU+3Or2ZpXvzAYJNh63w=
-github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.5 h1:iXjh3uaH3vsVcnyZX7MqCoCfcyxIrVE9iOQruRaWPrQ=
-github.com/aws/aws-sdk-go-v2/service/ssooidc v1.24.5/go.mod h1:5ZXesEuy/QcO0WUnt+4sDkxhdXRHTu2yG0uCSH8B6os=
-github.com/aws/aws-sdk-go-v2/service/sts v1.28.12 h1:M/1u4HBpwLuMtjlxuI2y6HoVLzF5e2mfxHCg7ZVMYmk=
-github.com/aws/aws-sdk-go-v2/service/sts v1.28.12/go.mod h1:kcfd+eTdEi/40FIbLq4Hif3XMXnl5b/+t/KTfLt9xIk=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.14 h1:zSDPny/pVnkqABXYRicYuPf9z2bTqfH13HT3v6UheIk=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.14/go.mod h1:3TTcI5JSzda1nw/pkVC9dhgLre0SNBFj2lYS4GctXKI=
+github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.31.1 h1:fMhrWVym3nTAcf3eT9XsYcfN1kgQ/7ZuVLGHjPAn6Ms=
+github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.31.1/go.mod h1:tBCf2+VgRT/Lk9KIlKpTxyCunzxHcP8BFPqcck5I9mM=
+github.com/aws/aws-sdk-go-v2/service/sso v1.21.1 h1:sd0BsnAvLH8gsp2e3cbaIr+9D7T1xugueQ7V/zUAsS4=
+github.com/aws/aws-sdk-go-v2/service/sso v1.21.1/go.mod h1:lcQG/MmxydijbeTOp04hIuJwXGWPZGI3bwdFDGRTv14=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.25.1 h1:1uEFNNskK/I1KoZ9Q8wJxMz5V9jyBlsiaNrM7vA3YUQ=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.25.1/go.mod h1:z0P8K+cBIsFXUr5rzo/psUeJ20XjPN0+Nn8067Nd+E4=
+github.com/aws/aws-sdk-go-v2/service/sts v1.29.1 h1:myX5CxqXE0QMZNja6FA1/FSE3Vu1rVmeUmpJMMzeZg0=
+github.com/aws/aws-sdk-go-v2/service/sts v1.29.1/go.mod h1:N2mQiucsO0VwK9CYuS4/c2n6Smeh1v47Rz3dWCPFLdE=
github.com/aws/smithy-go v1.20.2 h1:tbp628ireGtzcHDDmLT/6ADHidqnwgF57XOXZe6tp4Q=
github.com/aws/smithy-go v1.20.2/go.mod h1:krry+ya/rV9RDcV/Q16kpu6ypI4K2czasz0NC3qS14E=
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
@@ -104,8 +106,8 @@
github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
github.com/charmbracelet/bubbles v0.18.0 h1:PYv1A036luoBGroX6VWjQIE9Syf2Wby2oOl/39KLfy0=
github.com/charmbracelet/bubbles v0.18.0/go.mod h1:08qhZhtIwzgrtBjAcJnij1t1H0ZRjwHyGsy6AL11PSw=
-github.com/charmbracelet/bubbletea v0.26.4 h1:2gDkkzLZaTjMl/dQBpNVtnvcCxsh/FCkimep7FC9c40=
-github.com/charmbracelet/bubbletea v0.26.4/go.mod h1:P+r+RRA5qtI1DOHNFn0otoNwB4rn+zNAzSj/EXz6xU0=
+github.com/charmbracelet/bubbletea v0.26.5 h1:90pqTPElAReb/qQUgSMUresTkfwVr0Wx+zczeHHOgxk=
+github.com/charmbracelet/bubbletea v0.26.5/go.mod h1:dz8CWPlfCCGLFbBlTY4N7bjLiyOGDJEnd2Muu7pOWhk=
github.com/charmbracelet/glamour v0.7.0 h1:2BtKGZ4iVJCDfMF229EzbeR1QRKLWztO9dMtjmqZSng=
github.com/charmbracelet/glamour v0.7.0/go.mod h1:jUMh5MeihljJPQbJ/wf4ldw2+yBP59+ctV36jASy7ps=
github.com/charmbracelet/harmonica v0.2.0 h1:8NxJWRWg/bzKqqEaaeFNipOu77YR5t8aSwG4pgaUBiQ=
@@ -121,16 +123,16 @@
github.com/charmbracelet/x/windows v0.1.2 h1:Iumiwq2G+BRmgoayww/qfcvof7W/3uLoelhxojXlRWg=
github.com/charmbracelet/x/windows v0.1.2/go.mod h1:GLEO/l+lizvFDBPLIOk+49gdX49L9YWMB5t+DZd0jkQ=
github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA=
-github.com/cloudflare/circl v1.3.8 h1:j+V8jJt09PoeMFIu2uh5JUyEaIHTXVOHslFoLNAKqwI=
-github.com/cloudflare/circl v1.3.8/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU=
+github.com/cloudflare/circl v1.3.9 h1:QFrlgFYf2Qpi8bSpVPK1HBvWpx16v/1TZivyo7pGuBE=
+github.com/cloudflare/circl v1.3.9/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU=
github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY=
github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk=
github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4=
github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec=
github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs=
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
-github.com/cpuguy83/go-md2man/v2 v2.0.3 h1:qMCsGGgs+MAzDFyp9LpAe1Lqy/fY/qCovCm0qnXZOBM=
-github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
+github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4=
+github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/creack/pty v1.1.21 h1:1/QdRyBaHHJP61QkWMXlOIBfsgdDeeKfK8SYVUWJKf0=
github.com/creack/pty v1.1.21/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
github.com/creack/pty/v2 v2.0.0-20231209135443-03db72c7b76c h1:5l8y/PgjeX1aUyZxXabtAf2ahCYQaqWzlFzQgU16o0U=
@@ -272,8 +274,8 @@
github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
-github.com/klauspost/compress v1.17.8 h1:YcnTYrq7MikUT7k0Yb5eceMmALQPYBW/Xltxn0NAMnU=
-github.com/klauspost/compress v1.17.8/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
+github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA=
+github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
@@ -322,8 +324,6 @@
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
-github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5 h1:8Q0qkMVC/MmWkpIdlvZgcv2o2jrlF6zqVOh7W5YHdMA=
-github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8=
github.com/montanaflynn/stats v0.7.0 h1:r3y12KyNxj/Sb/iOE46ws+3mS1+MZca1wlHQFPsY/JU=
github.com/montanaflynn/stats v0.7.0/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow=
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI=
@@ -406,8 +406,8 @@
github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0=
github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
-github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0=
-github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho=
+github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM=
+github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y=
github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=
github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo=
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
@@ -452,14 +452,14 @@
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM=
github.com/yuin/goldmark v1.3.7/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
-github.com/yuin/goldmark v1.7.1 h1:3bajkSilaCbjdKVsKdZjZCLBNPL9pYzrCakKaf4U49U=
-github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E=
+github.com/yuin/goldmark v1.7.2 h1:NjGd7lO7zrUn/A7eKwn5PEOt4ONYGqpxSEeZuduvgxc=
+github.com/yuin/goldmark v1.7.2/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E=
github.com/yuin/goldmark-emoji v1.0.2 h1:c/RgTShNgHTtc6xdz2KKI74jJr6rWi7FPgnP9GAsO5s=
github.com/yuin/goldmark-emoji v1.0.2/go.mod h1:RhP/RWpexdp+KHs7ghKnifRoIs/Bq4nDS7tRbCkOwKY=
github.com/zalando/go-keyring v0.2.5 h1:Bc2HHpjALryKD62ppdEzaFG6VxL6Bc+5v0LYpN8Lba8=
github.com/zalando/go-keyring v0.2.5/go.mod h1:HL4k+OXQfJUWaMnqyuSOc0drfGPX2b51Du6K+MRgZMk=
-github.com/zricethezav/gitleaks/v8 v8.18.3 h1:t+tMrQCMMlT/binrVyp8PMYs5vjiKBfph3WncYSE9j8=
-github.com/zricethezav/gitleaks/v8 v8.18.3/go.mod h1:3EFYK+ZNDHPNQinyZTVGHG7/sFsApEZ9DrCGA1AP63M=
+github.com/zricethezav/gitleaks/v8 v8.18.4 h1:mWOfVGO8ksok21iOb7h4DZMcUxyvsol8l6o1uNOQxww=
+github.com/zricethezav/gitleaks/v8 v8.18.4/go.mod h1:3EFYK+ZNDHPNQinyZTVGHG7/sFsApEZ9DrCGA1AP63M=
go.etcd.io/bbolt v1.3.10 h1:+BqfJTcCzTItrop8mq/lbzL8wSGtj94UO/3U31shqG0=
go.etcd.io/bbolt v1.3.10/go.mod h1:bK3UQLPJZly7IlNmV7uVHJDxfe5aK9Ll93e/74Y9oEQ=
go.etcd.io/etcd/api/v3 v3.5.12 h1:W4sw5ZoU2Juc9gBWuLk5U6fHfNVyY1WC5g9uiXZio/c=
@@ -498,8 +498,8 @@
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI=
golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM=
-golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 h1:LoYXNGAShUG3m/ehNk4iFctuhGX/+R1ZpfJ4/ia80JM=
-golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8/go.mod h1:jj3sYF3dwk5D+ghuXyeI3r5MFf+NT2An6/9dOA95KSI=
+golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 h1:yixxcjnhBmY0nkL253HFVIm0JsFHwrHdT3Yh6szTnfY=
+golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8/go.mod h1:jj3sYF3dwk5D+ghuXyeI3r5MFf+NT2An6/9dOA95KSI=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.18.0 h1:5+9lSbEzPSdWkH32vYPBwEpX8KwDbM52Ud9xBUvNlb0=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/internal/chezmoi/interpreter.go new/chezmoi-2.49.1/internal/chezmoi/interpreter.go
--- old/chezmoi-2.49.0/internal/chezmoi/interpreter.go 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/internal/chezmoi/interpreter.go 2024-06-23 13:05:46.000000000 +0200
@@ -7,8 +7,8 @@
// An Interpreter interprets scripts.
type Interpreter struct {
- Command string `mapstructure:"command"`
- Args []string `mapstructure:"args"`
+ Command string `json:"command" mapstructure:"command" yaml:"command"`
+ Args []string `json:"args" mapstructure:"args" yaml:"args"`
}
// ExecCommand returns the *exec.Cmd to interpret name.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/internal/chezmoi/sourcestate_test.go new/chezmoi-2.49.1/internal/chezmoi/sourcestate_test.go
--- old/chezmoi-2.49.0/internal/chezmoi/sourcestate_test.go 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/internal/chezmoi/sourcestate_test.go 2024-06-23 13:05:46.000000000 +0200
@@ -853,6 +853,21 @@
"",
),
},
+ {
+ name: "line_endings_lf",
+ dataStr: "" +
+ "unix\n" +
+ "\n" +
+ "windows\r\n" +
+ "\r\n" +
+ "# chezmoi:template:line-endings=lf\n",
+ expectedStr: chezmoitest.JoinLines(
+ "unix",
+ "",
+ "windows",
+ "",
+ ),
+ },
} {
t.Run(tc.name, func(t *testing.T) {
s := NewSourceState()
@@ -1903,11 +1918,25 @@
},
},
{
+ name: "line_endings_crlf",
+ dataStr: "chezmoi:template:line-endings=crlf",
+ expected: TemplateOptions{
+ LineEnding: "\r\n",
+ },
+ },
+ {
name: "line_ending_quoted",
dataStr: `chezmoi:template:line-ending="\n"`,
expected: TemplateOptions{
LineEnding: "\n",
},
+ },
+ {
+ name: "line_endings_quoted",
+ dataStr: `chezmoi:template:line-endings="\n"`,
+ expected: TemplateOptions{
+ LineEnding: "\n",
+ },
},
} {
t.Run(tc.name, func(t *testing.T) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/internal/chezmoi/template.go new/chezmoi-2.49.1/internal/chezmoi/template.go
--- old/chezmoi-2.49.0/internal/chezmoi/template.go 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/internal/chezmoi/template.go 2024-06-23 13:05:46.000000000 +0200
@@ -85,7 +85,7 @@
switch key {
case "left-delimiter":
o.LeftDelimiter = value
- case "line-ending":
+ case "line-ending", "line-endings":
switch string(keyValuePairMatch[2]) {
case "crlf":
o.LineEnding = "\r\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/internal/cmd/config_tags_test.go new/chezmoi-2.49.1/internal/cmd/config_tags_test.go
--- old/chezmoi-2.49.0/internal/cmd/config_tags_test.go 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.49.1/internal/cmd/config_tags_test.go 2024-06-23 13:05:46.000000000 +0200
@@ -0,0 +1,96 @@
+package cmd
+
+import (
+ "fmt"
+ "reflect"
+ "strings"
+ "testing"
+)
+
+var expectedTags = []string{"json", "yaml", "mapstructure"}
+
+func TestExportedFieldsHaveMatchingMarshalTags(t *testing.T) {
+ failed, errmsg := verifyTagsArePresentAndMatch(reflect.TypeFor[ConfigFile]())
+ if failed {
+ t.Error(errmsg)
+ }
+}
+
+func fieldTypesNeedsVerification(ft reflect.Type) []reflect.Type {
+ kind := ft.Kind()
+ if kind < reflect.Array || kind == reflect.String { // its a ~scalar type
+ return []reflect.Type{}
+ } else if kind == reflect.Struct {
+ return []reflect.Type{ft}
+ }
+ switch kind {
+ case reflect.Pointer:
+ fallthrough
+ case reflect.Array:
+ fallthrough
+ case reflect.Slice:
+ return fieldTypesNeedsVerification(ft.Elem())
+ case reflect.Map:
+ return append(fieldTypesNeedsVerification(ft.Key()), fieldTypesNeedsVerification(ft.Elem())...)
+ default:
+ return []reflect.Type{} // ... we'll assume interface types, funcs, chans are okay.
+ }
+}
+
+func verifyTagsArePresentAndMatch(structType reflect.Type) (failed bool, errmsg string) {
+ name := structType.Name()
+ fields := reflect.VisibleFields(structType)
+ failed = false
+
+ var errs strings.Builder
+
+ for _, f := range fields {
+ if !f.IsExported() {
+ continue
+ }
+
+ ts := f.Tag
+ tagValueGroups := make(map[string][]string)
+
+ for _, tagName := range expectedTags {
+ tagValue, tagPresent := ts.Lookup(tagName)
+
+ if !tagPresent {
+ errs.WriteString(fmt.Sprintf("\n%s field %s is missing a `%s:` tag", name, f.Name, tagName))
+ failed = true
+ }
+
+ matchingTags, notFirstOccurrence := tagValueGroups[tagValue]
+ if notFirstOccurrence {
+ tagValueGroups[tagValue] = append(matchingTags, tagName)
+ } else {
+ tagValueGroups[tagValue] = []string{tagName}
+ }
+ }
+
+ if len(tagValueGroups) > 1 {
+ errs.WriteString(fmt.Sprintf("\n%s field %s has non-matching tag names:", name, f.Name))
+
+ for value, tagsMatching := range tagValueGroups {
+ if len(tagsMatching) == 1 {
+ errs.WriteString(fmt.Sprintf("\n %s says \"%s\"", tagsMatching[0], value))
+ } else {
+ errs.WriteString(fmt.Sprintf("\n (%s) each say \"%s\"", strings.Join(tagsMatching, ", "), value))
+ }
+ }
+ failed = true
+ }
+
+ verifyTypes := fieldTypesNeedsVerification(f.Type)
+ for _, ft := range verifyTypes {
+ subFailed, suberrs := verifyTagsArePresentAndMatch(ft)
+ if subFailed {
+ errs.WriteString(fmt.Sprintf("\n In %s.%s:", name, f.Name))
+ errs.WriteString(strings.ReplaceAll(suberrs, "\n", "\n "))
+ failed = true
+ }
+ }
+ }
+
+ return failed, errs.String()
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.49.0/internal/cmd/config_test.go new/chezmoi-2.49.1/internal/cmd/config_test.go
--- old/chezmoi-2.49.0/internal/cmd/config_test.go 2024-06-10 21:28:41.000000000 +0200
+++ new/chezmoi-2.49.1/internal/cmd/config_test.go 2024-06-23 13:05:46.000000000 +0200
@@ -1,11 +1,14 @@
package cmd
import (
+ "fmt"
"io"
"io/fs"
"path/filepath"
+ "reflect"
"runtime"
"strconv"
+ "strings"
"testing"
"github.com/alecthomas/assert/v2"
@@ -16,6 +19,43 @@
"github.com/twpayne/chezmoi/v2/internal/chezmoitest"
)
+func TestTagFieldNamesMatch(t *testing.T) {
+ fields := reflect.VisibleFields(reflect.TypeFor[ConfigFile]())
+ expectedTags := []string{"json", "yaml", "mapstructure"}
+
+ for _, f := range fields {
+ ts := f.Tag
+ tagValueGroups := make(map[string][]string)
+
+ for _, tagName := range expectedTags {
+ tagValue, tagPresent := ts.Lookup(tagName)
+
+ if !tagPresent {
+ t.Errorf("ConfigFile field %s is missing a %s tag", f.Name, tagName)
+ }
+
+ matchingTags, notFirstOccurrence := tagValueGroups[tagValue]
+ if notFirstOccurrence {
+ tagValueGroups[tagValue] = append(matchingTags, tagName)
+ } else {
+ tagValueGroups[tagValue] = []string{tagName}
+ }
+ }
+
+ if len(tagValueGroups) > 1 {
+ valueMsgs := []string{}
+ for value, tagsMatching := range tagValueGroups {
+ if len(tagsMatching) == 1 {
+ valueMsgs = append(valueMsgs, fmt.Sprintf("%s says \"%s\"", tagsMatching[0], value))
+ } else {
+ valueMsgs = append(valueMsgs, fmt.Sprintf("(%s) each say \"%s\"", strings.Join(tagsMatching, ", "), value))
+ }
+ }
+ t.Errorf("ConfigFile field %s has non-matching tag names:\n %s", f.Name, strings.Join(valueMsgs, "\n "))
+ }
+ }
+}
+
func TestAddTemplateFuncPanic(t *testing.T) {
chezmoitest.WithTestFS(t, nil, func(fileSystem vfs.FS) {
config := newTestConfig(t, fileSystem)
++++++ chezmoi.obsinfo ++++++
--- /var/tmp/diff_new_pack.5jrpUP/_old 2024-06-25 23:07:59.931446077 +0200
+++ /var/tmp/diff_new_pack.5jrpUP/_new 2024-06-25 23:07:59.935446223 +0200
@@ -1,5 +1,5 @@
name: chezmoi
-version: 2.49.0
-mtime: 1718047721
-commit: 2e0573779db0c42717585ac8abc4ad1ab814dfb2
+version: 2.49.1
+mtime: 1719140746
+commit: b4b55659c69fb13a502903c16dcdd566b988eece
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/chezmoi/vendor.tar.gz /work/SRC/openSUSE:Factory/.chezmoi.new.18349/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package aaa_base for openSUSE:Factory checked in at 2024-06-25 23:07:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/aaa_base (Old)
and /work/SRC/openSUSE:Factory/.aaa_base.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "aaa_base"
Tue Jun 25 23:07:06 2024 rev:501 rq:1182048 version:84.87+git20240620.57ee9e1
Changes:
--------
--- /work/SRC/openSUSE:Factory/aaa_base/aaa_base.changes 2024-05-27 11:41:14.337659544 +0200
+++ /work/SRC/openSUSE:Factory/.aaa_base.new.18349/aaa_base.changes 2024-06-25 23:07:26.862240619 +0200
@@ -1,0 +2,21 @@
+Fri Jun 21 07:42:46 UTC 2024 - kukuk(a)suse.com
+
+- Update to version 84.87+git20240620.57ee9e1:
+ * Remove legacy-actions support [jsc#PED-264]
+
+-------------------------------------------------------------------
+Mon Jun 17 16:05:14 UTC 2024 - ro(a)suse.com
+
+- Update to version 84.87+git20240617.f5ff27f:
+ * add /usr/bin/nu to etc/shells for nushell
+
+-------------------------------------------------------------------
+Fri Jun 14 12:18:04 UTC 2024 - ro(a)suse.com
+
+- Update to version 84.87+git20240614.332933e:
+ * Do not save/restore cursor for foot at status line
+ * Add tmux and others to DIR_COLORS (Issue #116)
+ * Remove kernel.pid_max limit (bsc#1219038)
+ * Add subpackge to enable ptrace
+
+-------------------------------------------------------------------
Old:
----
aaa_base-84.87+git20240523.10a5692.tar
New:
----
aaa_base-84.87+git20240620.57ee9e1.tar
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ aaa_base.spec ++++++
--- /var/tmp/diff_new_pack.6ciwd0/_old 2024-06-25 23:07:30.794383956 +0200
+++ /var/tmp/diff_new_pack.6ciwd0/_new 2024-06-25 23:07:30.798384102 +0200
@@ -33,7 +33,7 @@
%endif
Name: aaa_base
-Version: 84.87+git20240523.10a5692%{git_version}
+Version: 84.87+git20240620.57ee9e1%{git_version}
Release: 0
Summary: openSUSE Base Package
License: GPL-2.0-or-later
@@ -103,6 +103,18 @@
for Linux. It should only be installed on WSL and not on regular Linux
systems.
+%package yama-enable-ptrace
+Summary: sysctl setting to allow ptrace with the YAMA LSM enabled
+Group: System/Fhs
+Requires: %{name} = %{version}
+
+%description yama-enable-ptrace
+When the YAMA LSM is enabled, ptrace is restriced by default. On
+developer systems this has an impact on e.g. strace and gdb. So
+this package contains a setting that allows ptrace again.
+
+See https://docs.kernel.org/admin-guide/LSM/Yama.html
+
%prep
%setup -q
@@ -120,8 +132,6 @@
for i in boot.local after.local ; do
install -m 755 /dev/null %{buildroot}/etc/init.d/$i
done
-#
-install -d -m 755 %buildroot%{_libexecdir}/initscripts/legacy-actions
# keep as ghost for migration
touch %buildroot/etc/inittab
@@ -210,9 +220,8 @@
/usr/share/man/man1/smart_agetty.1*
/usr/share/man/man5/defaultdomain.5*
/usr/share/man/man8/service.8*
-/usr/lib/sysctl.d/*.conf
-%dir %{_libexecdir}/initscripts
-%dir %{_libexecdir}/initscripts/legacy-actions
+/usr/lib/sysctl.d/50-default.conf
+/usr/lib/sysctl.d/51-network.conf
%{_fillupdir}/sysconfig.language
%{_fillupdir}/sysconfig.proxy
%{_fillupdir}/sysconfig.windowmanager
@@ -238,3 +247,6 @@
/usr/etc/profile.d/wsl.csh
/usr/etc/profile.d/wsl.sh
+%files yama-enable-ptrace
+/usr/lib/sysctl.d/52-yama.conf
+
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.6ciwd0/_old 2024-06-25 23:07:30.846385852 +0200
+++ /var/tmp/diff_new_pack.6ciwd0/_new 2024-06-25 23:07:30.850385998 +0200
@@ -1,6 +1,7 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/openSUSE/aaa_base.git</param>
- <param name="changesrevision">10a56928297e6a9a2f4aa06a7fbb02d72534f724</param></service>
+ <param name="changesrevision">57ee9e1a842e029646a8d9551ed492ef6993ec82</param></service>
</servicedata>
+(No newline at EOF)
++++++ aaa_base-84.87+git20240523.10a5692.tar -> aaa_base-84.87+git20240620.57ee9e1.tar ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/aaa_base.spec new/aaa_base-84.87+git20240620.57ee9e1/aaa_base.spec
--- old/aaa_base-84.87+git20240523.10a5692/aaa_base.spec 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/aaa_base.spec 2024-06-20 14:11:06.000000000 +0200
@@ -103,6 +103,18 @@
for Linux. It should only be installed on WSL and not on regular Linux
systems.
+%package yama-enable-ptrace
+Summary: sysctl setting to allow ptrace with the YAMA LSM enabled
+Group: System/Fhs
+Requires: %{name} = %{version}
+
+%description yama-enable-ptrace
+When the YAMA LSM is enabled, ptrace is restriced by default. On
+developer systems this has an impact on e.g. strace and gdb. So
+this package contains a setting that allows ptrace again.
+
+See https://docs.kernel.org/admin-guide/LSM/Yama.html
+
%prep
%setup -q
@@ -120,8 +132,6 @@
for i in boot.local after.local ; do
install -m 755 /dev/null %{buildroot}/etc/init.d/$i
done
-#
-install -d -m 755 %buildroot%{_libexecdir}/initscripts/legacy-actions
# keep as ghost for migration
touch %buildroot/etc/inittab
@@ -210,9 +220,8 @@
/usr/share/man/man1/smart_agetty.1*
/usr/share/man/man5/defaultdomain.5*
/usr/share/man/man8/service.8*
-/usr/lib/sysctl.d/*.conf
-%dir %{_libexecdir}/initscripts
-%dir %{_libexecdir}/initscripts/legacy-actions
+/usr/lib/sysctl.d/50-default.conf
+/usr/lib/sysctl.d/51-network.conf
%{_fillupdir}/sysconfig.language
%{_fillupdir}/sysconfig.proxy
%{_fillupdir}/sysconfig.windowmanager
@@ -238,4 +247,7 @@
/usr/etc/profile.d/wsl.csh
/usr/etc/profile.d/wsl.sh
+%files yama-enable-ptrace
+/usr/lib/sysctl.d/52-yama.conf
+
%changelog
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/etc/bash.bashrc new/aaa_base-84.87+git20240620.57ee9e1/files/etc/bash.bashrc
--- old/aaa_base-84.87+git20240523.10a5692/files/etc/bash.bashrc 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/etc/bash.bashrc 2024-06-20 14:11:06.000000000 +0200
@@ -149,7 +149,7 @@
#
if _path tput hs 2>/dev/null || _path tput -T $TERM+sl hs 2>/dev/null || \
_path tput -T ${TERM%%[.-]*}+sl hs 2>/dev/null || \
- [[ $TERM = *xterm* || $TERM = *gnome* || $TERM = *konsole* || $TERM = *xfce* ]]
+ [[ $TERM = *xterm* || $TERM = *gnome* || $TERM = *konsole* || $TERM = *xfce* || $TERM = *foot* ]]
then
#
# Mirror prompt in terminal "status line", which for graphical
@@ -176,8 +176,15 @@
_isl=''
_fsl=$(_path tput fsl 2>/dev/null)
fi
- _sc=$(tput sc 2>/dev/null)
- _rc=$(tput rc 2>/dev/null)
+ if [[ $TERM = *foot* ]]
+ then
+ # Do not save cursor during writing status line for "foot" nor restore it
+ _sc=''
+ _rc=''
+ else
+ _sc=$(tput sc 2>/dev/null)
+ _rc=$(tput rc 2>/dev/null)
+ fi
if test -n "$_tsl" -a -n "$_isl" -a "$_fsl" ; then
TS1="$_sc$_tsl%s@%s:%s$_fsl$_isl%s$_fsl$_rc"
elif test -n "$_tsl" -a "$_fsl" ; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/etc/shells new/aaa_base-84.87+git20240620.57ee9e1/files/etc/shells
--- old/aaa_base-84.87+git20240523.10a5692/files/etc/shells 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/etc/shells 2024-06-20 14:11:06.000000000 +0200
@@ -24,3 +24,4 @@
/usr/bin/fish
/usr/bin/scsh
/usr/bin/rash
+/usr/bin/nu
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/usr/etc/DIR_COLORS new/aaa_base-84.87+git20240620.57ee9e1/files/usr/etc/DIR_COLORS
--- old/aaa_base-84.87+git20240523.10a5692/files/usr/etc/DIR_COLORS 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/usr/etc/DIR_COLORS 2024-06-20 14:11:06.000000000 +0200
@@ -58,11 +58,19 @@
TERM screen-256color
TERM screen-256color-bce
TERM screen-bce
+TERM screen.gnome
+TERM screen.konsole
+TERM screen.konsole-256color
+TERM screen.putty
+TERM screen.putty-256color
TERM screen-w
+TERM screen.xterm
TERM screen.xterm-256color
TERM screen.linux
TERM screen.rxvt
TERM terminator
+TERM tmux
+TERM tmux-256color
TERM vt100
TERM vt102
TERM xterm
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/usr/lib/sysctl.d/50-default.conf new/aaa_base-84.87+git20240620.57ee9e1/files/usr/lib/sysctl.d/50-default.conf
--- old/aaa_base-84.87+git20240523.10a5692/files/usr/lib/sysctl.d/50-default.conf 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/usr/lib/sysctl.d/50-default.conf 2024-06-20 14:11:06.000000000 +0200
@@ -56,6 +56,10 @@
# default 184 = 128+32+16+8
kernel.sysrq = 184
+# Remove pid_max limit by setting maximum possible value
+# (bsc#1219038, https://www.suse.com/support/kb/doc/?id=000020429)
+kernel.pid_max = 4194304
+
# enable hard- and symlink protection (bnc#821585)
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/usr/lib/sysctl.d/52-yama.conf new/aaa_base-84.87+git20240620.57ee9e1/files/usr/lib/sysctl.d/52-yama.conf
--- old/aaa_base-84.87+git20240523.10a5692/files/usr/lib/sysctl.d/52-yama.conf 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/usr/lib/sysctl.d/52-yama.conf 2024-06-20 14:11:06.000000000 +0200
@@ -19,5 +19,5 @@
# cannot be changed.
#
# The default value of ptrace_scope is 1. Any value other than 0 will break some
-# legitimate usecases.
--kernel.yama.ptrace_scope = 1
+# legitimate usecases, such as calling strace or gdb on other processes.
+-kernel.yama.ptrace_scope = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/usr/sbin/service new/aaa_base-84.87+git20240620.57ee9e1/files/usr/sbin/service
--- old/aaa_base-84.87+git20240523.10a5692/files/usr/sbin/service 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/usr/sbin/service 2024-06-20 14:11:06.000000000 +0200
@@ -23,9 +23,6 @@
#
RCDIR="/etc/init.d"
-# legacy actions
-actiondir="/usr/libexec/initscripts/legacy-actions"
-
#
# Clean environment
#
@@ -105,9 +102,6 @@
fi
echo "$1 is neither service nor target!?" >&2
return "1"
- elif [ -n "$2" -a -x "$actiondir/$1/$2" ]; then
- rc="$actiondir/$1/$2"
- shift 2
elif [ ${0##*/} = service ] ; then
echo "Usage: $0 "$1" {start|stop|reload|restart|try-restart|force-reload|status}"
return 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aaa_base-84.87+git20240523.10a5692/files/usr/share/man/man8/service.8 new/aaa_base-84.87+git20240620.57ee9e1/files/usr/share/man/man8/service.8
--- old/aaa_base-84.87+git20240523.10a5692/files/usr/share/man/man8/service.8 2024-05-23 15:04:46.000000000 +0200
+++ new/aaa_base-84.87+git20240620.57ee9e1/files/usr/share/man/man8/service.8 2024-06-20 14:11:06.000000000 +0200
@@ -14,16 +14,9 @@
The supported values of \fBACTION\fR depend on the specified service.
The actions start, stop, reload, restart, try-restart, force-reload, and status
are forwarded to systemctl, \fBOPTIONS\fR are ignored in that case.
-Other actions may be defined in /usr/lib/initscripts/legacy-actions. Legacy
-actions are called directly and \fBOPTIONS\fR are passed on the command line.
The \-\-status-all option displays the status of all loaded service units.
-.SH FILES
-/usr/lib/initscripts/legacy-actions
- Directory containing System V legacy actions
-.BR
-
.SH HISTORY
service used to run System V init scripts in a predictable environment.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2024-06-25 23:07:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kernel-source (Old)
and /work/SRC/openSUSE:Factory/.kernel-source.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source"
Tue Jun 25 23:07:05 2024 rev:737 rq:1182944 version:6.9.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes 2024-06-18 22:51:56.842974869 +0200
+++ /work/SRC/openSUSE:Factory/.kernel-source.new.18349/dtb-aarch64.changes 2024-06-25 23:07:14.541791509 +0200
@@ -1,0 +2,533 @@
+Sat Jun 22 11:38:28 CEST 2024 - jslaby(a)suse.cz
+
+- netfilter: ipset: Fix suspicious rcu_dereference_protected()
+ (git-fixes).
+- net: stmmac: No need to calculate speed divider when offload
+ is disabled (git-fixes).
+- commit e256f5c
+
+-------------------------------------------------------------------
+Sat Jun 22 09:41:21 CEST 2024 - jslaby(a)suse.cz
+
+- Linux 6.9.6 (bsc#1012628).
+- wifi: ath11k: fix WCN6750 firmware crash caused by 17 num_vdevs
+ (bsc#1012628).
+- wifi: ath11k: move power type check to ASSOC stage when
+ connecting to 6 GHz AP (bsc#1012628).
+- cpufreq: amd-pstate: Unify computation of
+ {max,min,nominal,lowest_nonlinear}_freq (bsc#1012628).
+- cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities
+ missing (bsc#1012628).
+- cpufreq: amd-pstate: remove global header file (bsc#1012628).
+- wifi: mac80211: mesh: Fix leak of mesh_preq_queue objects
+ (bsc#1012628).
+- wifi: mac80211: Fix deadlock in
+ ieee80211_sta_ps_deliver_wakeup() (bsc#1012628).
+- wifi: cfg80211: fully move wiphy work to unbound workqueue
+ (bsc#1012628).
+- wifi: cfg80211: Lock wiphy in cfg80211_get_station
+ (bsc#1012628).
+- wifi: cfg80211: pmsr: use correct nla_get_uX functions
+ (bsc#1012628).
+- wifi: mac80211: pass proper link id for channel switch started
+ notification (bsc#1012628).
+- wifi: iwlwifi: mvm: don't initialize csa_work twice
+ (bsc#1012628).
+- wifi: iwlwifi: mvm: revert gen2 TX A-MPDU size to 64
+ (bsc#1012628).
+- wifi: iwlwifi: mvm: set properly mac header (bsc#1012628).
+- wifi: iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of
+ debugfs ifdef (bsc#1012628).
+- wifi: iwlwifi: mvm: check n_ssids before accessing the ssids
+ (bsc#1012628).
+- wifi: iwlwifi: mvm: don't read past the mfuart notifcation
+ (bsc#1012628).
+- wifi: mac80211: fix Spatial Reuse element size check
+ (bsc#1012628).
+- wifi: mac80211: correctly parse Spatial Reuse Parameter Set
+ element (bsc#1012628).
+- scsi: ufs: mcq: Fix error output and clean up ufshcd_mcq_abort()
+ (bsc#1012628).
+- RISC-V: KVM: No need to use mask when hart-index-bit is 0
+ (bsc#1012628).
+- RISC-V: KVM: Fix incorrect reg_subtype labels in
+ kvm_riscv_vcpu_set_reg_isa_ext function (bsc#1012628).
+- virtio_net: fix possible dim status unrecoverable (bsc#1012628).
+- ax25: Fix refcount imbalance on inbound connections
+ (bsc#1012628).
+- ax25: Replace kfree() in ax25_dev_free() with ax25_dev_put()
+ (bsc#1012628).
+- net/ncsi: Fix the multi thread manner of NCSI driver
+ (bsc#1012628).
+- net: phy: micrel: fix KSZ9477 PHY issues after suspend/resume
+ (bsc#1012628).
+- bpf: Fix a potential use-after-free in bpf_link_free()
+ (bsc#1012628).
+- KVM: SEV-ES: Disallow SEV-ES guests when X86_FEATURE_LBRV is
+ absent (bsc#1012628).
+- KVM: SEV-ES: Delegate LBR virtualization to the processor
+ (bsc#1012628).
+- vmxnet3: disable rx data ring on dma allocation failure
+ (bsc#1012628).
+- ipv6: ioam: block BH from ioam6_output() (bsc#1012628).
+- ipv6: sr: block BH in seg6_output_core() and seg6_input_core()
+ (bsc#1012628).
+- net: tls: fix marking packets as decrypted (bsc#1012628).
+- bpf: Set run context for rawtp test_run callback (bsc#1012628).
+- octeontx2-af: Always allocate PF entries from low prioriy zone
+ (bsc#1012628).
+- net/smc: avoid overwriting when adjusting sock bufsizes
+ (bsc#1012628).
+- net: phy: Micrel KSZ8061: fix errata solution not taking effect
+ problem (bsc#1012628).
+- ionic: fix kernel panic in XDP_TX action (bsc#1012628).
+- net: sched: sch_multiq: fix possible OOB write in multiq_tune()
+ (bsc#1012628).
+- tcp: count CLOSE-WAIT sockets for TCP_MIB_CURRESTAB
+ (bsc#1012628).
+- mptcp: count CLOSE-WAIT sockets for MPTCP_MIB_CURRESTAB
+ (bsc#1012628).
+- rtnetlink: make the "split" NLM_DONE handling generic
+ (bsc#1012628).
+- net: ethernet: mtk_eth_soc: handle dma buffer size soc specific
+ (bsc#1012628).
+- net/mlx5: Stop waiting for PCI if pci channel is offline
+ (bsc#1012628).
+- net/mlx5: Always stop health timer during driver removal
+ (bsc#1012628).
+- net/mlx5: Fix tainted pointer delete is case of flow rules
+ creation fail (bsc#1012628).
+- net/sched: taprio: always validate TCA_TAPRIO_ATTR_PRIOMAP
+ (bsc#1012628).
+- ptp: Fix error message on failed pin verification (bsc#1012628).
+- ice: fix iteration of TLVs in Preserved Fields Area
+ (bsc#1012628).
+- ice: fix reads from NVM Shadow RAM on E830 and E825-C devices
+ (bsc#1012628).
+- ice: remove af_xdp_zc_qps bitmap (bsc#1012628).
+- ice: add flag to distinguish reset from .ndo_bpf in XDP rings
+ config (bsc#1012628).
+- ice: map XDP queues to vectors in ice_vsi_map_rings_to_vectors()
+ (bsc#1012628).
+- igc: Fix Energy Efficient Ethernet support declaration
+ (bsc#1012628).
+- net: wwan: iosm: Fix tainted pointer delete is case of region
+ creation fail (bsc#1012628).
+- af_unix: Set sk->sk_state under unix_state_lock() for truly
+ disconencted peer (bsc#1012628).
+- af_unix: Annodate data-races around sk->sk_state for writers
+ (bsc#1012628).
+- af_unix: Annotate data-race of sk->sk_state in unix_inq_len()
+ (bsc#1012628).
+- af_unix: Annotate data-races around sk->sk_state in
+ unix_write_space() and poll() (bsc#1012628).
+- af_unix: Annotate data-race of sk->sk_state in
+ unix_stream_connect() (bsc#1012628).
+- af_unix: Annotate data-races around sk->sk_state in sendmsg()
+ and recvmsg() (bsc#1012628).
+- af_unix: Annotate data-race of sk->sk_state in
+ unix_stream_read_skb() (bsc#1012628).
+- af_unix: Annotate data-races around sk->sk_state in UNIX_DIAG
+ (bsc#1012628).
+- af_unix: Annotate data-races around sk->sk_sndbuf (bsc#1012628).
+- af_unix: Annotate data-race of net->unx.sysctl_max_dgram_qlen
+ (bsc#1012628).
+- af_unix: Use unix_recvq_full_lockless() in unix_stream_connect()
+ (bsc#1012628).
+- af_unix: Use skb_queue_empty_lockless() in unix_release_sock()
+ (bsc#1012628).
+- af_unix: Use skb_queue_len_lockless() in sk_diag_show_rqlen()
+ (bsc#1012628).
+- af_unix: Annotate data-race of sk->sk_shutdown in sk_diag_fill()
+ (bsc#1012628).
+- ipv6: fix possible race in __fib6_drop_pcpu_from()
+ (bsc#1012628).
+- net: ethtool: fix the error condition in
+ ethtool_get_phy_stats_ethtool() (bsc#1012628).
+- x86/cpu: Get rid of an unnecessary local variable in
+ get_cpu_address_sizes() (bsc#1012628).
+- x86/cpu: Provide default cache line size if not enumerated
+ (bsc#1012628).
+- selftests/mm: ksft_exit functions do not return (bsc#1012628).
+- selftests/mm: compaction_test: fix bogus test success and
+ reduce probability of OOM-killer invocation (bsc#1012628).
+- eventfs: Update all the eventfs_inodes from the events
+ descriptor (bsc#1012628).
+- .editorconfig: remove trim_trailing_whitespace option
+ (bsc#1012628).
+- io_uring/rsrc: don't lock while !TASK_RUNNING (bsc#1012628).
+- io_uring: fix cancellation overwriting req->flags (bsc#1012628).
+- USB: class: cdc-wdm: Fix CPU lockup caused by excessive log
+ messages (bsc#1012628).
+- kcov, usb: disable interrupts in kcov_remote_start_usb_softirq
+ (bsc#1012628).
+- USB: xen-hcd: Traverse host/ when CONFIG_USB_XEN_HCD is selected
+ (bsc#1012628).
+- usb: typec: tcpm: fix use-after-free case in
+ tcpm_register_source_caps (bsc#1012628).
+- usb: typec: tcpm: Ignore received Hard Reset in TOGGLING state
+ (bsc#1012628).
+- mei: me: release irq in mei_me_pci_resume error path
+ (bsc#1012628).
+- mei: vsc: Don't stop/restart mei device during system
+ suspend/resume (bsc#1012628).
+- tty: n_tty: Fix buffer offsets when lookahead is used
+ (bsc#1012628).
+- serial: 8250_pxa: Configure tx_loadsz to match FIFO IRQ level
+ (bsc#1012628).
+- serial: port: Don't block system suspend even if bytes are
+ left to xmit (bsc#1012628).
+- landlock: Fix d_parent walk (bsc#1012628).
+- jfs: xattr: fix buffer overflow for invalid xattr (bsc#1012628).
+- xhci: Set correct transferred length for cancelled bulk
+ transfers (bsc#1012628).
+- xhci: Apply reset resume quirk to Etron EJ188 xHCI host
+ (bsc#1012628).
+- xhci: Handle TD clearing for multiple streams case
+ (bsc#1012628).
+- xhci: Apply broken streams quirk to Etron EJ188 xHCI host
+ (bsc#1012628).
+- thunderbolt: debugfs: Fix margin debugfs node creation condition
+ (bsc#1012628).
+- scsi: core: Disable CDL by default (bsc#1012628).
+- scsi: mpi3mr: Fix ATA NCQ priority support (bsc#1012628).
+- scsi: mpt3sas: Avoid test/set_bit() operating in non-allocated
+ memory (bsc#1012628).
+- scsi: sd: Use READ(16) when reading block zero on large capacity
+ disks (bsc#1012628).
+- gve: Clear napi->skb before dev_kfree_skb_any() (bsc#1012628).
+- powerpc/85xx: fix compile error without CONFIG_CRASH_DUMP
+ (bsc#1012628).
+- powerpc/uaccess: Fix build errors seen with GCC 13/14
+ (bsc#1012628).
+- HID: nvidia-shield: Add missing check for
+ input_ff_create_memless (bsc#1012628).
+- cxl/test: Add missing vmalloc.h for tools/testing/cxl/test/mem.c
+ (bsc#1012628).
+- cxl/region: Fix memregion leaks in devm_cxl_add_region()
+ (bsc#1012628).
+- cachefiles: add output string to
+ cachefiles_obj_[get|put]_ondemand_fd (bsc#1012628).
+- cachefiles: remove requests from xarray during flushing requests
+ (bsc#1012628).
+- cachefiles: fix slab-use-after-free in
+ cachefiles_ondemand_get_fd() (bsc#1012628).
+- cachefiles: fix slab-use-after-free in
+ cachefiles_ondemand_daemon_read() (bsc#1012628).
+- cachefiles: add spin_lock for cachefiles_ondemand_info
+ (bsc#1012628).
+- cachefiles: remove err_put_fd label in
+ cachefiles_ondemand_daemon_read() (bsc#1012628).
+- cachefiles: never get a new anonymous fd if ondemand_id is valid
+ (bsc#1012628).
+- cachefiles: defer exposing anon_fd until after copy_to_user()
+ succeeds (bsc#1012628).
+- cachefiles: flush all requests after setting CACHEFILES_DEAD
+ (bsc#1012628).
+- kselftest/alsa: Ensure _GNU_SOURCE is defined (bsc#1012628).
+- selftests/ftrace: Fix to check required event file
+ (bsc#1012628).
+- clk: sifive: Do not register clkdevs for PRCI clocks
+ (bsc#1012628).
+- NFSv4.1 enforce rootpath check in fs_location query
+ (bsc#1012628).
+- SUNRPC: return proper error from gss_wrap_req_priv
+ (bsc#1012628).
+- NFS: add barriers when testing for NFS_FSDATA_BLOCKED
+ (bsc#1012628).
+- selftests/tracing: Fix event filter test to retry up to 10 times
+ (bsc#1012628).
+- selftests/futex: don't pass a const char* to asprintf(3)
+ (bsc#1012628).
+- nvme: fix nvme_pr_* status code parsing (bsc#1012628).
+- drm/panel: sitronix-st7789v: Add check for
+ of_drm_get_panel_orientation (bsc#1012628).
+- platform/x86: dell-smbios: Fix wrong token data in sysfs
+ (bsc#1012628).
+- gpio: tqmx86: fix typo in Kconfig label (bsc#1012628).
+- gpio: tqmx86: introduce shadow register for GPIO output value
+ (bsc#1012628).
+- gpio: tqmx86: store IRQ trigger type and unmask status
+ separately (bsc#1012628).
+- gpio: tqmx86: fix broken IRQ_TYPE_EDGE_BOTH interrupt type
+ (bsc#1012628).
+- HID: core: remove unnecessary WARN_ON() in implement()
+ (bsc#1012628).
+- iommu/amd: Fix sysfs leak in iommu init (bsc#1012628).
+- iommu: Return right value in iommu_sva_bind_device()
+ (bsc#1012628).
+- io_uring/io-wq: Use set_bit() and test_bit() at worker->flags
+ (bsc#1012628).
+- io_uring/io-wq: avoid garbage value of 'match' in
+ io_wq_enqueue() (bsc#1012628).
+- HID: logitech-dj: Fix memory leak in
+ logi_dj_recv_switch_to_dj_mode() (bsc#1012628).
+- drm/vmwgfx: Filter modes which exceed graphics memory
+ (bsc#1012628).
+- drm/vmwgfx: 3D disabled should not effect STDU memory limits
+ (bsc#1012628).
+- drm/vmwgfx: Remove STDU logic from generic mode_valid function
+ (bsc#1012628).
+- drm/vmwgfx: Don't memcmp equivalent pointers (bsc#1012628).
+- af_unix: Annotate data-race of sk->sk_state in unix_accept()
+ (bsc#1012628).
+- modpost: do not warn about missing MODULE_DESCRIPTION() for
+ vmlinux.o (bsc#1012628).
+- net: sfp: Always call `sfp_sm_mod_remove()` on remove
+ (bsc#1012628).
+- net: hns3: fix kernel crash problem in concurrent scenario
+ (bsc#1012628).
+- net: hns3: add cond_resched() to hns3 ring buffer init process
+ (bsc#1012628).
+- thermal: core: Do not fail cdev registration because of invalid
+ initial state (bsc#1012628).
+- liquidio: Adjust a NULL pointer handling path in
+ lio_vf_rep_copy_packet (bsc#1012628).
+- net: stmmac: dwmac-qcom-ethqos: Configure host DMA width
+ (bsc#1012628).
+- netdevsim: fix backwards compatibility in nsim_get_iflink()
+ (bsc#1012628).
+- drm/komeda: check for error-valued pointer (bsc#1012628).
+- drm/bridge/panel: Fix runtime warning on panel bridge release
+ (bsc#1012628).
+- tcp: fix race in tcp_v6_syn_recv_sock() (bsc#1012628).
+- net dsa: qca8k: fix usages of device_get_named_child_node()
+ (bsc#1012628).
+- geneve: Fix incorrect inner network header offset when
+ innerprotoinherit is set (bsc#1012628).
++++ 236 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes
++++ and /work/SRC/openSUSE:Factory/.kernel-source.new.18349/dtb-aarch64.changes
dtb-armv6l.changes: same change
dtb-armv7l.changes: same change
dtb-riscv64.changes: same change
kernel-64kb.changes: same change
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-docs.changes: same change
kernel-kvmsmall.changes: same change
kernel-lpae.changes: same change
kernel-obs-build.changes: same change
kernel-obs-qa.changes: same change
kernel-pae.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-zfcpdump.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dtb-aarch64.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:24.902169170 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:24.902169170 +0200
@@ -17,7 +17,7 @@
%define srcversion 6.9
-%define patchversion 6.9.5
+%define patchversion 6.9.6
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -25,9 +25,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: dtb-aarch64
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
dtb-armv6l.spec: same change
dtb-armv7l.spec: same change
dtb-riscv64.spec: same change
++++++ kernel-64kb.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.014173253 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.018173398 +0200
@@ -18,8 +18,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%define compress_modules zstd
%define compress_vmlinux xz
@@ -36,9 +36,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-64kb
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.102176461 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.102176461 +0200
@@ -17,8 +17,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%define build_html 1
%define build_pdf 0
@@ -28,9 +28,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-docs
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-kvmsmall.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.130177482 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.134177627 +0200
@@ -18,8 +18,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%define compress_modules zstd
%define compress_vmlinux xz
@@ -36,9 +36,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-kvmsmall
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
kernel-lpae.spec: same change
++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.186179523 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.190179668 +0200
@@ -19,7 +19,7 @@
#!BuildIgnore: post-build-checks
-%define patchversion 6.9.5
+%define patchversion 6.9.6
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -38,16 +38,16 @@
%endif
%endif
%endif
-%global kernel_package kernel%kernel_flavor-srchash-c9c2e244cf9031882276be043b882ccf33835a4f
+%global kernel_package kernel%kernel_flavor-srchash-e256f5c5f76f713f78cf71fa72da40bf33857bcb
%endif
%if 0%{?rhel_version}
%global kernel_package kernel
%endif
Name: kernel-obs-build
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-obs-qa.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.214180543 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.218180689 +0200
@@ -17,15 +17,15 @@
# needsrootforbuild
-%define patchversion 6.9.5
+%define patchversion 6.9.6
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
Name: kernel-obs-qa
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.246181710 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.246181710 +0200
@@ -18,8 +18,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%define compress_modules zstd
%define compress_vmlinux xz
@@ -36,9 +36,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-pae
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.274182731 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.278182877 +0200
@@ -17,8 +17,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -26,9 +26,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-source
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.306183898 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.310184043 +0200
@@ -16,16 +16,16 @@
#
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
Name: kernel-syms
-Version: 6.9.5
+Version: 6.9.6
%if %using_buildservice
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:25.338185064 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:25.338185064 +0200
@@ -18,8 +18,8 @@
%define srcversion 6.9
-%define patchversion 6.9.5
-%define git_commit c9c2e244cf9031882276be043b882ccf33835a4f
+%define patchversion 6.9.6
+%define git_commit e256f5c5f76f713f78cf71fa72da40bf33857bcb
%define variant %{nil}
%define compress_modules zstd
%define compress_vmlinux xz
@@ -36,9 +36,9 @@
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
Name: kernel-vanilla
-Version: 6.9.5
+Version: 6.9.6
%if 0%{?is_kotd}
-Release: <RELEASE>.gc9c2e24
+Release: <RELEASE>.ge256f5c
%else
Release: 0
%endif
kernel-zfcpdump.spec: same change
++++++ patches.kernel.org.tar.bz2 ++++++
++++ 25400 lines of diff (skipped)
++++++ patches.suse.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/Bluetooth-fix-connection-setup-in-l2cap_connect.patch new/patches.suse/Bluetooth-fix-connection-setup-in-l2cap_connect.patch
--- old/patches.suse/Bluetooth-fix-connection-setup-in-l2cap_connect.patch 2024-06-17 14:26:59.000000000 +0200
+++ new/patches.suse/Bluetooth-fix-connection-setup-in-l2cap_connect.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,39 +0,0 @@
-From: Pauli Virtanen <pav(a)iki.fi>
-Date: Sun, 9 Jun 2024 18:06:20 +0300
-Subject: Bluetooth: fix connection setup in l2cap_connect
-Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
-Git-commit: 5fe0be8868aaa96fdd31bab5cfef079bf89a3fa2
-Patch-mainline: Queued in subsystem maintainer repository
-References: https://github.com/bluez/bluez/issues/865
-
-The amp_id argument of l2cap_connect() was removed in
-commit 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support")
-
-It was always called with amp_id == 0, i.e. AMP_ID_BREDR == 0x00 (ie.
-non-AMP controller). In the above commit, the code path for amp_id != 0
-was preserved, although it should have used the amp_id == 0 one.
-
-Restore the previous behavior of the non-AMP code path, to fix problems
-with L2CAP connections.
-
-Fixes: 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support")
-Signed-off-by: Pauli Virtanen <pav(a)iki.fi>
-Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz(a)intel.com>
-Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
----
- net/bluetooth/l2cap_core.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/net/bluetooth/l2cap_core.c
-+++ b/net/bluetooth/l2cap_core.c
-@@ -4009,8 +4009,8 @@ static void l2cap_connect(struct l2cap_c
- status = L2CAP_CS_AUTHOR_PEND;
- chan->ops->defer(chan);
- } else {
-- l2cap_state_change(chan, BT_CONNECT2);
-- result = L2CAP_CR_PEND;
-+ l2cap_state_change(chan, BT_CONFIG);
-+ result = L2CAP_CR_SUCCESS;
- status = L2CAP_CS_NO_INFO;
- }
- } else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/ata-libata-scsi-Set-the-RMB-bit-only-for-removable-m.patch new/patches.suse/ata-libata-scsi-Set-the-RMB-bit-only-for-removable-m.patch
--- old/patches.suse/ata-libata-scsi-Set-the-RMB-bit-only-for-removable-m.patch 2024-06-17 14:26:59.000000000 +0200
+++ new/patches.suse/ata-libata-scsi-Set-the-RMB-bit-only-for-removable-m.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,105 +0,0 @@
-From a6a75edc8669a4f030546c7390808ef0cc034742 Mon Sep 17 00:00:00 2001
-From: Damien Le Moal <dlemoal(a)kernel.org>
-Date: Thu, 13 Jun 2024 19:33:53 +0200
-Subject: [PATCH] ata: libata-scsi: Set the RMB bit only for removable media devices
-Mime-version: 1.0
-Content-type: text/plain; charset=UTF-8
-Content-transfer-encoding: 8bit
-Git-commit: a6a75edc8669a4f030546c7390808ef0cc034742
-Patch-mainline: v6.10-rc4
-References: bsc#1226214
-
-The SCSI Removable Media Bit (RMB) should only be set for removable media,
-where the device stays and the media changes, e.g. CD-ROM or floppy.
-
-The ATA removable media device bit is obsoleted since ATA-8 ACS (2006),
-but before that it was used to indicate that the device can have its media
-removed (while the device stays).
-
-Commit 8a3e33cf92c7 ("ata: ahci: find eSATA ports and flag them as
-removable") introduced a change to set the RMB bit if the port has either
-the eSATA bit or the hot-plug capable bit set. The reasoning was that the
-author wanted his eSATA ports to get treated like a USB stick.
-
-This is however wrong. See "20-082r23SPC-6: Removable Medium Bit
-Expectations" which has since been integrated to SPC, which states that:
-
-"""
-Reports have been received that some USB Memory Stick device servers set
-the removable medium (RMB) bit to one. The rub comes when the medium is
-actually removed, because... The device server is removed concurrently
-with the medium removal. If there is no device server, then there is no
-device server that is waiting to have removable medium inserted.
-
-Sufficient numbers of SCSI analysts see such a device:
-- not as a device that supports removable medium;
-but
-- as a removable, hot pluggable device.
-"""
-
-The definition of the RMB bit in the SPC specification has since been
-clarified to match this.
-
-Thus, a USB stick should not have the RMB bit set (and neither shall an
-eSATA nor a hot-plug capable port).
-
-Commit dc8b4afc4a04 ("ata: ahci: don't mark HotPlugCapable Ports as
-external/removable") then changed so that the RMB bit is only set for the
-eSATA bit (and not for the hot-plug capable bit), because of a lot of bug
-reports of SATA devices were being automounted by udisks. However,
-treating eSATA and hot-plug capable ports differently is not correct.
-
-From the AHCI 1.3.1 spec:
-Hot Plug Capable Port (HPCP): When set to '1', indicates that this port's
-signal and power connectors are externally accessible via a joint signal
-and power connector for blindmate device hot plug.
-
-So a hot-plug capable port is an external port, just like commit
-45b96d65ec68 ("ata: ahci: a hotplug capable port is an external port")
-claims.
-
-In order to not violate the SPC specification, modify the SCSI INQUIRY
-data to only set the RMB bit if the ATA device can have its media removed.
-
-This fixes a reported problem where GNOME/udisks was automounting devices
-connected to hot-plug capable ports.
-
-Fixes: 45b96d65ec68 ("ata: ahci: a hotplug capable port is an external port")
-Cc: stable(a)vger.kernel.org
-Reviewed-by: Mario Limonciello <mario.limonciello(a)amd.com>
-Reviewed-by: Thomas Weißschuh <linux(a)weissschuh.net>
-Tested-by: Thomas Weißschuh <linux(a)weissschuh.net>
-Reported-by: Thomas Weißschuh <linux(a)weissschuh.net>
-Closes: https://lore.kernel.org/linux-ide/c0de8262-dc4b-4c22-9fac-33432e5bddd3@t-8c…
-Signed-off-by: Damien Le Moal <dlemoal(a)kernel.org>
-[cassel: wrote commit message]
-Signed-off-by: Niklas Cassel <cassel(a)kernel.org>
-Acked-by: Takashi Iwai <tiwai(a)suse.de>
-
----
- drivers/ata/libata-scsi.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
-index cdf29b178ddc..bb4d30d377ae 100644
---- a/drivers/ata/libata-scsi.c
-+++ b/drivers/ata/libata-scsi.c
-@@ -1831,11 +1831,11 @@ static unsigned int ata_scsiop_inq_std(struct ata_scsi_args *args, u8 *rbuf)
- 2
- };
-
-- /* set scsi removable (RMB) bit per ata bit, or if the
-- * AHCI port says it's external (Hotplug-capable, eSATA).
-+ /*
-+ * Set the SCSI Removable Media Bit (RMB) if the ATA removable media
-+ * device bit (obsolete since ATA-8 ACS) is set.
- */
-- if (ata_id_removable(args->id) ||
-- (args->dev->link->ap->pflags & ATA_PFLAG_EXTERNAL))
-+ if (ata_id_removable(args->id))
- hdr[1] |= (1 << 7);
-
- if (args->dev->class == ATA_DEV_ZAC) {
---
-2.43.0
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/net-stmmac-No-need-to-calculate-speed-divider-when-o.patch new/patches.suse/net-stmmac-No-need-to-calculate-speed-divider-when-o.patch
--- old/patches.suse/net-stmmac-No-need-to-calculate-speed-divider-when-o.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/net-stmmac-No-need-to-calculate-speed-divider-when-o.patch 2024-06-22 11:38:29.000000000 +0200
@@ -0,0 +1,73 @@
+From: Xiaolei Wang <xiaolei.wang(a)windriver.com>
+Date: Mon, 17 Jun 2024 09:39:22 +0800
+Subject: net: stmmac: No need to calculate speed divider when offload is
+ disabled
+Git-commit: b8c43360f6e424131fa81d3ba8792ad8ff25a09e
+Patch-mainline: v6.10-rc5
+References: git-fixes
+
+commit be27b8965297 ("net: stmmac: replace priv->speed with
+the portTransmitRate from the tc-cbs parameters") introduced
+a problem. When deleting, it prompts "Invalid portTransmitRate
+0 (idleSlope - sendSlope)" and exits. Add judgment on cbs.enable.
+Only when offload is enabled, speed divider needs to be calculated.
+
+Fixes: be27b8965297 ("net: stmmac: replace priv->speed with the portTransmitRate from the tc-cbs parameters")
+Signed-off-by: Xiaolei Wang <xiaolei.wang(a)windriver.com>
+Reviewed-by: Simon Horman <horms(a)kernel.org>
+Link: https://lore.kernel.org/r/20240617013922.1035854-1-xiaolei.wang@windriver.c…
+Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
+Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
+---
+ drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c | 40 +++++++++++++-----------
+ 1 file changed, 22 insertions(+), 18 deletions(-)
+
+--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c
++++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c
+@@ -358,24 +358,28 @@ static int tc_setup_cbs(struct stmmac_pr
+
+ port_transmit_rate_kbps = qopt->idleslope - qopt->sendslope;
+
+- /* Port Transmit Rate and Speed Divider */
+- switch (div_s64(port_transmit_rate_kbps, 1000)) {
+- case SPEED_10000:
+- case SPEED_5000:
+- ptr = 32;
+- break;
+- case SPEED_2500:
+- case SPEED_1000:
+- ptr = 8;
+- break;
+- case SPEED_100:
+- ptr = 4;
+- break;
+- default:
+- netdev_err(priv->dev,
+- "Invalid portTransmitRate %lld (idleSlope - sendSlope)\n",
+- port_transmit_rate_kbps);
+- return -EINVAL;
++ if (qopt->enable) {
++ /* Port Transmit Rate and Speed Divider */
++ switch (div_s64(port_transmit_rate_kbps, 1000)) {
++ case SPEED_10000:
++ case SPEED_5000:
++ ptr = 32;
++ break;
++ case SPEED_2500:
++ case SPEED_1000:
++ ptr = 8;
++ break;
++ case SPEED_100:
++ ptr = 4;
++ break;
++ default:
++ netdev_err(priv->dev,
++ "Invalid portTransmitRate %lld (idleSlope - sendSlope)\n",
++ port_transmit_rate_kbps);
++ return -EINVAL;
++ }
++ } else {
++ ptr = 0;
+ }
+
+ mode_to_use = priv->plat->tx_queues_cfg[queue].mode_to_use;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/netfilter-ipset-Fix-suspicious-rcu_dereference_prote.patch new/patches.suse/netfilter-ipset-Fix-suspicious-rcu_dereference_prote.patch
--- old/patches.suse/netfilter-ipset-Fix-suspicious-rcu_dereference_prote.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/netfilter-ipset-Fix-suspicious-rcu_dereference_prote.patch 2024-06-22 11:38:29.000000000 +0200
@@ -0,0 +1,54 @@
+From: Jozsef Kadlecsik <kadlec(a)netfilter.org>
+Date: Mon, 17 Jun 2024 11:18:15 +0200
+Subject: netfilter: ipset: Fix suspicious rcu_dereference_protected()
+Git-commit: 8ecd06277a7664f4ef018abae3abd3451d64e7a6
+Patch-mainline: v6.10-rc5
+References: git-fixes
+
+When destroying all sets, we are either in pernet exit phase or
+are executing a "destroy all sets command" from userspace. The latter
+was taken into account in ip_set_dereference() (nfnetlink mutex is held),
+but the former was not. The patch adds the required check to
+rcu_dereference_protected() in ip_set_dereference().
+
+Fixes: 4e7aaa6b82d6 ("netfilter: ipset: Fix race between namespace cleanup and gc in the list:set type")
+Reported-by: syzbot+b62c37cdd58103293a5a(a)syzkaller.appspotmail.com
+Reported-by: syzbot+cfbe1da5fdfc39efc293(a)syzkaller.appspotmail.com
+Reported-by: kernel test robot <oliver.sang(a)intel.com>
+Closes: https://lore.kernel.org/oe-lkp/202406141556.e0b6f17e-lkp@intel.com
+Signed-off-by: Jozsef Kadlecsik <kadlec(a)netfilter.org>
+Signed-off-by: Pablo Neira Ayuso <pablo(a)netfilter.org>
+Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
+---
+ net/netfilter/ipset/ip_set_core.c | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+--- a/net/netfilter/ipset/ip_set_core.c
++++ b/net/netfilter/ipset/ip_set_core.c
+@@ -53,12 +53,13 @@ MODULE_DESCRIPTION("core IP set support"
+ MODULE_ALIAS_NFNL_SUBSYS(NFNL_SUBSYS_IPSET);
+
+ /* When the nfnl mutex or ip_set_ref_lock is held: */
+-#define ip_set_dereference(p) \
+- rcu_dereference_protected(p, \
++#define ip_set_dereference(inst) \
++ rcu_dereference_protected((inst)->ip_set_list, \
+ lockdep_nfnl_is_held(NFNL_SUBSYS_IPSET) || \
+- lockdep_is_held(&ip_set_ref_lock))
++ lockdep_is_held(&ip_set_ref_lock) || \
++ (inst)->is_deleted)
+ #define ip_set(inst, id) \
+- ip_set_dereference((inst)->ip_set_list)[id]
++ ip_set_dereference(inst)[id]
+ #define ip_set_ref_netlink(inst,id) \
+ rcu_dereference_raw((inst)->ip_set_list)[id]
+ #define ip_set_dereference_nfnl(p) \
+@@ -1133,7 +1134,7 @@ static int ip_set_create(struct sk_buff
+ if (!list)
+ goto cleanup;
+ /* nfnl mutex is held, both lists are valid */
+- tmp = ip_set_dereference(inst->ip_set_list);
++ tmp = ip_set_dereference(inst);
+ memcpy(list, tmp, sizeof(struct ip_set *) * inst->ip_set_max);
+ rcu_assign_pointer(inst->ip_set_list, list);
+ /* Make sure all current packets have passed through */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/scsi-core-alua-I-O-errors-for-ALUA-state-transitions.patch new/patches.suse/scsi-core-alua-I-O-errors-for-ALUA-state-transitions.patch
--- old/patches.suse/scsi-core-alua-I-O-errors-for-ALUA-state-transitions.patch 2024-06-17 14:26:59.000000000 +0200
+++ new/patches.suse/scsi-core-alua-I-O-errors-for-ALUA-state-transitions.patch 2024-06-22 11:38:29.000000000 +0200
@@ -1,8 +1,7 @@
From: Martin Wilck <martin.wilck(a)suse.com>
Date: Tue, 14 May 2024 16:03:44 +0200
Subject: scsi: core: alua: I/O errors for ALUA state transitions
-Patch-mainline: Queued in subsystem maintainer repository
-Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git
+Patch-mainline: v6.10-rc3
Git-commit: 10157b1fc1a762293381e9145041253420dfc6ad
References: bsc#1189970
++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:26.538228808 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:26.542228954 +0200
@@ -1015,6 +1015,287 @@
patches.kernel.org/6.9.5-155-nilfs2-fix-nilfs_empty_dir-misjudgment-and-lon…
patches.kernel.org/6.9.5-156-smb-client-fix-deadlock-in-smb2_find_smb_tcon.…
patches.kernel.org/6.9.5-157-Linux-6.9.5.patch
+ patches.kernel.org/6.9.6-001-wifi-ath11k-fix-WCN6750-firmware-crash-caused-…
+ patches.kernel.org/6.9.6-002-wifi-ath11k-move-power-type-check-to-ASSOC-sta…
+ patches.kernel.org/6.9.6-003-cpufreq-amd-pstate-Unify-computation-of-max-mi…
+ patches.kernel.org/6.9.6-004-cpufreq-amd-pstate-Add-quirk-for-the-pstate-CP…
+ patches.kernel.org/6.9.6-005-cpufreq-amd-pstate-remove-global-header-file.p…
+ patches.kernel.org/6.9.6-006-wifi-mac80211-mesh-Fix-leak-of-mesh_preq_queue…
+ patches.kernel.org/6.9.6-007-wifi-mac80211-Fix-deadlock-in-ieee80211_sta_ps…
+ patches.kernel.org/6.9.6-008-wifi-cfg80211-fully-move-wiphy-work-to-unbound…
+ patches.kernel.org/6.9.6-009-wifi-cfg80211-Lock-wiphy-in-cfg80211_get_stati…
+ patches.kernel.org/6.9.6-010-wifi-cfg80211-pmsr-use-correct-nla_get_uX-func…
+ patches.kernel.org/6.9.6-011-wifi-mac80211-pass-proper-link-id-for-channel-…
+ patches.kernel.org/6.9.6-012-wifi-iwlwifi-mvm-don-t-initialize-csa_work-twi…
+ patches.kernel.org/6.9.6-013-wifi-iwlwifi-mvm-revert-gen2-TX-A-MPDU-size-to…
+ patches.kernel.org/6.9.6-014-wifi-iwlwifi-mvm-set-properly-mac-header.patch
+ patches.kernel.org/6.9.6-015-wifi-iwlwifi-dbg_ini-move-iwl_dbg_tlv_free-out…
+ patches.kernel.org/6.9.6-016-wifi-iwlwifi-mvm-check-n_ssids-before-accessin…
+ patches.kernel.org/6.9.6-017-wifi-iwlwifi-mvm-don-t-read-past-the-mfuart-no…
+ patches.kernel.org/6.9.6-018-wifi-mac80211-fix-Spatial-Reuse-element-size-c…
+ patches.kernel.org/6.9.6-019-wifi-mac80211-correctly-parse-Spatial-Reuse-Pa…
+ patches.kernel.org/6.9.6-020-scsi-ufs-mcq-Fix-error-output-and-clean-up-ufs…
+ patches.kernel.org/6.9.6-021-RISC-V-KVM-No-need-to-use-mask-when-hart-index…
+ patches.kernel.org/6.9.6-022-RISC-V-KVM-Fix-incorrect-reg_subtype-labels-in…
+ patches.kernel.org/6.9.6-023-virtio_net-fix-possible-dim-status-unrecoverab…
+ patches.kernel.org/6.9.6-024-ax25-Fix-refcount-imbalance-on-inbound-connect…
+ patches.kernel.org/6.9.6-025-ax25-Replace-kfree-in-ax25_dev_free-with-ax25_…
+ patches.kernel.org/6.9.6-026-net-ncsi-Fix-the-multi-thread-manner-of-NCSI-d…
+ patches.kernel.org/6.9.6-027-net-phy-micrel-fix-KSZ9477-PHY-issues-after-su…
+ patches.kernel.org/6.9.6-028-bpf-Fix-a-potential-use-after-free-in-bpf_link…
+ patches.kernel.org/6.9.6-029-KVM-SEV-ES-Disallow-SEV-ES-guests-when-X86_FEA…
+ patches.kernel.org/6.9.6-030-KVM-SEV-ES-Delegate-LBR-virtualization-to-the-…
+ patches.kernel.org/6.9.6-031-vmxnet3-disable-rx-data-ring-on-dma-allocation…
+ patches.kernel.org/6.9.6-032-ipv6-ioam-block-BH-from-ioam6_output.patch
+ patches.kernel.org/6.9.6-033-ipv6-sr-block-BH-in-seg6_output_core-and-seg6_…
+ patches.kernel.org/6.9.6-034-net-tls-fix-marking-packets-as-decrypted.patch
+ patches.kernel.org/6.9.6-035-bpf-Set-run-context-for-rawtp-test_run-callbac…
+ patches.kernel.org/6.9.6-036-octeontx2-af-Always-allocate-PF-entries-from-l…
+ patches.kernel.org/6.9.6-037-net-smc-avoid-overwriting-when-adjusting-sock-…
+ patches.kernel.org/6.9.6-038-net-phy-Micrel-KSZ8061-fix-errata-solution-not…
+ patches.kernel.org/6.9.6-039-ionic-fix-kernel-panic-in-XDP_TX-action.patch
+ patches.kernel.org/6.9.6-040-net-sched-sch_multiq-fix-possible-OOB-write-in…
+ patches.kernel.org/6.9.6-041-tcp-count-CLOSE-WAIT-sockets-for-TCP_MIB_CURRE…
+ patches.kernel.org/6.9.6-042-mptcp-count-CLOSE-WAIT-sockets-for-MPTCP_MIB_C…
+ patches.kernel.org/6.9.6-043-rtnetlink-make-the-split-NLM_DONE-handling-gen…
+ patches.kernel.org/6.9.6-044-net-ethernet-mtk_eth_soc-handle-dma-buffer-siz…
+ patches.kernel.org/6.9.6-045-net-mlx5-Stop-waiting-for-PCI-if-pci-channel-i…
+ patches.kernel.org/6.9.6-046-net-mlx5-Always-stop-health-timer-during-drive…
+ patches.kernel.org/6.9.6-047-net-mlx5-Fix-tainted-pointer-delete-is-case-of…
+ patches.kernel.org/6.9.6-048-net-sched-taprio-always-validate-TCA_TAPRIO_AT…
+ patches.kernel.org/6.9.6-049-ptp-Fix-error-message-on-failed-pin-verificati…
+ patches.kernel.org/6.9.6-050-ice-fix-iteration-of-TLVs-in-Preserved-Fields-…
+ patches.kernel.org/6.9.6-051-ice-fix-reads-from-NVM-Shadow-RAM-on-E830-and-…
+ patches.kernel.org/6.9.6-052-ice-remove-af_xdp_zc_qps-bitmap.patch
+ patches.kernel.org/6.9.6-053-ice-add-flag-to-distinguish-reset-from-.ndo_bp…
+ patches.kernel.org/6.9.6-054-ice-map-XDP-queues-to-vectors-in-ice_vsi_map_r…
+ patches.kernel.org/6.9.6-055-igc-Fix-Energy-Efficient-Ethernet-support-decl…
+ patches.kernel.org/6.9.6-056-net-wwan-iosm-Fix-tainted-pointer-delete-is-ca…
+ patches.kernel.org/6.9.6-057-af_unix-Set-sk-sk_state-under-unix_state_lock-…
+ patches.kernel.org/6.9.6-058-af_unix-Annodate-data-races-around-sk-sk_state…
+ patches.kernel.org/6.9.6-059-af_unix-Annotate-data-race-of-sk-sk_state-in-u…
+ patches.kernel.org/6.9.6-060-af_unix-Annotate-data-races-around-sk-sk_state…
+ patches.kernel.org/6.9.6-061-af_unix-Annotate-data-race-of-sk-sk_state-in-u…
+ patches.kernel.org/6.9.6-062-af_unix-Annotate-data-races-around-sk-sk_state…
+ patches.kernel.org/6.9.6-063-af_unix-Annotate-data-race-of-sk-sk_state-in-u…
+ patches.kernel.org/6.9.6-064-af_unix-Annotate-data-races-around-sk-sk_state…
+ patches.kernel.org/6.9.6-065-af_unix-Annotate-data-races-around-sk-sk_sndbu…
+ patches.kernel.org/6.9.6-066-af_unix-Annotate-data-race-of-net-unx.sysctl_m…
+ patches.kernel.org/6.9.6-067-af_unix-Use-unix_recvq_full_lockless-in-unix_s…
+ patches.kernel.org/6.9.6-068-af_unix-Use-skb_queue_empty_lockless-in-unix_r…
+ patches.kernel.org/6.9.6-069-af_unix-Use-skb_queue_len_lockless-in-sk_diag_…
+ patches.kernel.org/6.9.6-070-af_unix-Annotate-data-race-of-sk-sk_shutdown-i…
+ patches.kernel.org/6.9.6-071-ipv6-fix-possible-race-in-__fib6_drop_pcpu_fro…
+ patches.kernel.org/6.9.6-072-net-ethtool-fix-the-error-condition-in-ethtool…
+ patches.kernel.org/6.9.6-073-x86-cpu-Get-rid-of-an-unnecessary-local-variab…
+ patches.kernel.org/6.9.6-074-x86-cpu-Provide-default-cache-line-size-if-not…
+ patches.kernel.org/6.9.6-075-selftests-mm-ksft_exit-functions-do-not-return…
+ patches.kernel.org/6.9.6-076-selftests-mm-compaction_test-fix-bogus-test-su…
+ patches.kernel.org/6.9.6-077-eventfs-Update-all-the-eventfs_inodes-from-the…
+ patches.kernel.org/6.9.6-078-.editorconfig-remove-trim_trailing_whitespace-…
+ patches.kernel.org/6.9.6-079-io_uring-rsrc-don-t-lock-while-TASK_RUNNING.pa…
+ patches.kernel.org/6.9.6-080-io_uring-fix-cancellation-overwriting-req-flag…
+ patches.kernel.org/6.9.6-081-USB-class-cdc-wdm-Fix-CPU-lockup-caused-by-exc…
+ patches.kernel.org/6.9.6-082-kcov-usb-disable-interrupts-in-kcov_remote_sta…
+ patches.kernel.org/6.9.6-083-USB-xen-hcd-Traverse-host-when-CONFIG_USB_XEN_…
+ patches.kernel.org/6.9.6-084-usb-typec-tcpm-fix-use-after-free-case-in-tcpm…
+ patches.kernel.org/6.9.6-085-usb-typec-tcpm-Ignore-received-Hard-Reset-in-T…
+ patches.kernel.org/6.9.6-086-mei-me-release-irq-in-mei_me_pci_resume-error-…
+ patches.kernel.org/6.9.6-087-mei-vsc-Don-t-stop-restart-mei-device-during-s…
+ patches.kernel.org/6.9.6-088-tty-n_tty-Fix-buffer-offsets-when-lookahead-is…
+ patches.kernel.org/6.9.6-089-serial-8250_pxa-Configure-tx_loadsz-to-match-F…
+ patches.kernel.org/6.9.6-090-serial-port-Don-t-block-system-suspend-even-if…
+ patches.kernel.org/6.9.6-091-landlock-Fix-d_parent-walk.patch
+ patches.kernel.org/6.9.6-092-jfs-xattr-fix-buffer-overflow-for-invalid-xatt…
+ patches.kernel.org/6.9.6-093-xhci-Set-correct-transferred-length-for-cancel…
+ patches.kernel.org/6.9.6-094-xhci-Apply-reset-resume-quirk-to-Etron-EJ188-x…
+ patches.kernel.org/6.9.6-095-xhci-Handle-TD-clearing-for-multiple-streams-c…
+ patches.kernel.org/6.9.6-096-xhci-Apply-broken-streams-quirk-to-Etron-EJ188…
+ patches.kernel.org/6.9.6-097-thunderbolt-debugfs-Fix-margin-debugfs-node-cr…
+ patches.kernel.org/6.9.6-098-ata-libata-scsi-Set-the-RMB-bit-only-for-remov…
+ patches.kernel.org/6.9.6-099-scsi-core-Disable-CDL-by-default.patch
+ patches.kernel.org/6.9.6-100-scsi-mpi3mr-Fix-ATA-NCQ-priority-support.patch
+ patches.kernel.org/6.9.6-101-scsi-mpt3sas-Avoid-test-set_bit-operating-in-n…
+ patches.kernel.org/6.9.6-102-scsi-sd-Use-READ-16-when-reading-block-zero-on…
+ patches.kernel.org/6.9.6-103-gve-Clear-napi-skb-before-dev_kfree_skb_any.pa…
+ patches.kernel.org/6.9.6-104-powerpc-85xx-fix-compile-error-without-CONFIG_…
+ patches.kernel.org/6.9.6-105-powerpc-uaccess-Fix-build-errors-seen-with-GCC…
+ patches.kernel.org/6.9.6-106-HID-nvidia-shield-Add-missing-check-for-input_…
+ patches.kernel.org/6.9.6-107-cxl-test-Add-missing-vmalloc.h-for-tools-testi…
+ patches.kernel.org/6.9.6-108-cxl-region-Fix-memregion-leaks-in-devm_cxl_add…
+ patches.kernel.org/6.9.6-109-cachefiles-add-output-string-to-cachefiles_obj…
+ patches.kernel.org/6.9.6-110-cachefiles-remove-requests-from-xarray-during-…
+ patches.kernel.org/6.9.6-111-cachefiles-fix-slab-use-after-free-in-cachefil…
+ patches.kernel.org/6.9.6-112-cachefiles-fix-slab-use-after-free-in-cachefil…
+ patches.kernel.org/6.9.6-113-cachefiles-add-spin_lock-for-cachefiles_ondema…
+ patches.kernel.org/6.9.6-114-cachefiles-remove-err_put_fd-label-in-cachefil…
+ patches.kernel.org/6.9.6-115-cachefiles-never-get-a-new-anonymous-fd-if-ond…
+ patches.kernel.org/6.9.6-116-cachefiles-defer-exposing-anon_fd-until-after-…
+ patches.kernel.org/6.9.6-117-cachefiles-flush-all-requests-after-setting-CA…
+ patches.kernel.org/6.9.6-118-kselftest-alsa-Ensure-_GNU_SOURCE-is-defined.p…
+ patches.kernel.org/6.9.6-119-selftests-ftrace-Fix-to-check-required-event-f…
+ patches.kernel.org/6.9.6-120-clk-sifive-Do-not-register-clkdevs-for-PRCI-cl…
+ patches.kernel.org/6.9.6-121-NFSv4.1-enforce-rootpath-check-in-fs_location-…
+ patches.kernel.org/6.9.6-122-SUNRPC-return-proper-error-from-gss_wrap_req_p…
+ patches.kernel.org/6.9.6-123-NFS-add-barriers-when-testing-for-NFS_FSDATA_B…
+ patches.kernel.org/6.9.6-124-selftests-tracing-Fix-event-filter-test-to-ret…
+ patches.kernel.org/6.9.6-125-selftests-futex-don-t-pass-a-const-char-to-asp…
+ patches.kernel.org/6.9.6-126-nvme-fix-nvme_pr_-status-code-parsing.patch
+ patches.kernel.org/6.9.6-127-drm-panel-sitronix-st7789v-Add-check-for-of_dr…
+ patches.kernel.org/6.9.6-128-platform-x86-dell-smbios-Fix-wrong-token-data-…
+ patches.kernel.org/6.9.6-129-gpio-tqmx86-fix-typo-in-Kconfig-label.patch
+ patches.kernel.org/6.9.6-130-gpio-tqmx86-introduce-shadow-register-for-GPIO…
+ patches.kernel.org/6.9.6-131-gpio-tqmx86-store-IRQ-trigger-type-and-unmask-…
+ patches.kernel.org/6.9.6-132-gpio-tqmx86-fix-broken-IRQ_TYPE_EDGE_BOTH-inte…
+ patches.kernel.org/6.9.6-133-HID-core-remove-unnecessary-WARN_ON-in-impleme…
+ patches.kernel.org/6.9.6-134-iommu-amd-Fix-sysfs-leak-in-iommu-init.patch
+ patches.kernel.org/6.9.6-135-iommu-Return-right-value-in-iommu_sva_bind_dev…
+ patches.kernel.org/6.9.6-136-io_uring-io-wq-Use-set_bit-and-test_bit-at-wor…
+ patches.kernel.org/6.9.6-137-io_uring-io-wq-avoid-garbage-value-of-match-in…
+ patches.kernel.org/6.9.6-138-HID-logitech-dj-Fix-memory-leak-in-logi_dj_rec…
+ patches.kernel.org/6.9.6-139-drm-vmwgfx-Filter-modes-which-exceed-graphics-…
+ patches.kernel.org/6.9.6-140-drm-vmwgfx-3D-disabled-should-not-effect-STDU-…
+ patches.kernel.org/6.9.6-141-drm-vmwgfx-Remove-STDU-logic-from-generic-mode…
+ patches.kernel.org/6.9.6-142-drm-vmwgfx-Don-t-memcmp-equivalent-pointers.pa…
+ patches.kernel.org/6.9.6-143-af_unix-Annotate-data-race-of-sk-sk_state-in-u…
+ patches.kernel.org/6.9.6-144-modpost-do-not-warn-about-missing-MODULE_DESCR…
+ patches.kernel.org/6.9.6-145-net-sfp-Always-call-sfp_sm_mod_remove-on-remov…
+ patches.kernel.org/6.9.6-146-net-hns3-fix-kernel-crash-problem-in-concurren…
+ patches.kernel.org/6.9.6-147-net-hns3-add-cond_resched-to-hns3-ring-buffer-…
+ patches.kernel.org/6.9.6-148-thermal-core-Do-not-fail-cdev-registration-bec…
+ patches.kernel.org/6.9.6-149-liquidio-Adjust-a-NULL-pointer-handling-path-i…
+ patches.kernel.org/6.9.6-150-net-stmmac-dwmac-qcom-ethqos-Configure-host-DM…
+ patches.kernel.org/6.9.6-151-netdevsim-fix-backwards-compatibility-in-nsim_…
+ patches.kernel.org/6.9.6-152-drm-komeda-check-for-error-valued-pointer.patch
+ patches.kernel.org/6.9.6-153-drm-bridge-panel-Fix-runtime-warning-on-panel-…
+ patches.kernel.org/6.9.6-154-tcp-fix-race-in-tcp_v6_syn_recv_sock.patch
+ patches.kernel.org/6.9.6-155-net-dsa-qca8k-fix-usages-of-device_get_named_c…
+ patches.kernel.org/6.9.6-156-geneve-Fix-incorrect-inner-network-header-offs…
+ patches.kernel.org/6.9.6-157-net-mlx5e-Fix-features-validation-check-for-tu…
+ patches.kernel.org/6.9.6-158-Bluetooth-hci_sync-Fix-not-using-correct-handl…
+ patches.kernel.org/6.9.6-159-Bluetooth-L2CAP-Fix-rejecting-L2CAP_CONN_PARAM…
+ patches.kernel.org/6.9.6-160-Bluetooth-fix-connection-setup-in-l2cap_connec…
+ patches.kernel.org/6.9.6-161-net-sched-initialize-noop_qdisc-owner.patch
+ patches.kernel.org/6.9.6-162-tcp-use-signed-arithmetic-in-tcp_rtx_probe0_ti…
+ patches.kernel.org/6.9.6-163-drm-nouveau-don-t-attempt-to-schedule-hpd_work…
+ patches.kernel.org/6.9.6-164-netfilter-nft_inner-validate-mandatory-meta-an…
+ patches.kernel.org/6.9.6-165-netfilter-ipset-Fix-race-between-namespace-cle…
+ patches.kernel.org/6.9.6-166-x86-asm-Use-c-n-instead-of-P-operand-modifier-…
+ patches.kernel.org/6.9.6-167-x86-uaccess-Fix-missed-zeroing-of-ia32-u64-get…
+ patches.kernel.org/6.9.6-168-scsi-ufs-core-Quiesce-request-queues-before-ch…
+ patches.kernel.org/6.9.6-169-net-pse-pd-Use-EOPNOTSUPP-error-code-instead-o…
+ patches.kernel.org/6.9.6-170-gve-ignore-nonrelevant-GSO-type-bits-when-proc…
+ patches.kernel.org/6.9.6-171-net-stmmac-replace-priv-speed-with-the-portTra…
+ patches.kernel.org/6.9.6-172-block-sed-opal-avoid-possible-wrong-address-re…
+ patches.kernel.org/6.9.6-173-block-fix-request.queuelist-usage-in-flush.pat…
+ patches.kernel.org/6.9.6-174-nvmet-passthru-propagate-status-from-id-overri…
+ patches.kernel.org/6.9.6-175-net-ipv6-Fix-the-RT-cache-flush-via-sysctl-usi…
+ patches.kernel.org/6.9.6-176-net-bridge-mst-pass-vlan-group-directly-to-br_…
+ patches.kernel.org/6.9.6-177-net-bridge-mst-fix-suspicious-rcu-usage-in-br_…
+ patches.kernel.org/6.9.6-178-drm-xe-xe_gt_idle-use-GT-forcewake-domain-asse…
+ patches.kernel.org/6.9.6-179-drm-xe-flush-engine-buffers-before-signalling-…
+ patches.kernel.org/6.9.6-180-drm-xe-Remove-mem_access-from-guc_pc-calls.pat…
+ patches.kernel.org/6.9.6-181-drm-xe-move-disable_c6-call.patch
+ patches.kernel.org/6.9.6-182-ionic-fix-use-after-netif_napi_del.patch
+ patches.kernel.org/6.9.6-183-bnxt_en-Cap-the-size-of-HWRM_PORT_PHY_QCFG-for…
+ patches.kernel.org/6.9.6-184-af_unix-Read-with-MSG_PEEK-loops-if-the-first-…
+ patches.kernel.org/6.9.6-185-bnxt_en-Adjust-logging-of-firmware-messages-in…
+ patches.kernel.org/6.9.6-186-misc-microchip-pci1xxxx-fix-double-free-in-the…
+ patches.kernel.org/6.9.6-187-ksmbd-move-leading-slash-check-to-smb2_get_nam…
+ patches.kernel.org/6.9.6-188-ksmbd-fix-missing-use-of-get_write-in-in-smb2_…
+ patches.kernel.org/6.9.6-189-tick-nohz_full-Don-t-abuse-smp_call_function_s…
+ patches.kernel.org/6.9.6-190-leds-class-Revert-If-no-default-trigger-is-giv…
+ patches.kernel.org/6.9.6-191-x86-boot-Don-t-add-the-EFI-stub-to-targets-aga…
+ patches.kernel.org/6.9.6-192-iio-adc-ad9467-fix-scan-type-sign.patch
+ patches.kernel.org/6.9.6-193-iio-dac-ad5592r-fix-temperature-channel-scalin…
+ patches.kernel.org/6.9.6-194-iio-imu-bmi323-Fix-trigger-notification-in-cas…
+ patches.kernel.org/6.9.6-195-iio-invensense-fix-odr-switching-to-same-value…
+ patches.kernel.org/6.9.6-196-iio-pressure-bmp280-Fix-BMP580-temperature-rea…
+ patches.kernel.org/6.9.6-197-iio-temperature-mlx90635-Fix-ERR_PTR-dereferen…
+ patches.kernel.org/6.9.6-198-iio-imu-inv_icm42600-delete-unneeded-update-wa…
+ patches.kernel.org/6.9.6-199-drivers-core-synchronize-really_probe-and-dev_…
+ patches.kernel.org/6.9.6-200-parisc-Try-to-fix-random-segmentation-faults-i…
+ patches.kernel.org/6.9.6-201-RAS-AMD-ATL-Fix-MI300-bank-hash.patch
+ patches.kernel.org/6.9.6-202-RAS-AMD-ATL-Use-system-settings-for-MI300-DRAM…
+ patches.kernel.org/6.9.6-203-ACPI-x86-Force-StorageD3Enable-on-more-product…
+ patches.kernel.org/6.9.6-204-thermal-ACPI-Invalidate-trip-points-with-tempe…
+ patches.kernel.org/6.9.6-205-x86-mm-numa-Use-NUMA_NO_NODE-when-calling-memb…
+ patches.kernel.org/6.9.6-206-memblock-make-memblock_set_node-also-warn-abou…
+ patches.kernel.org/6.9.6-207-drm-exynos-vidi-fix-memory-leak-in-.get_modes.…
+ patches.kernel.org/6.9.6-208-drm-exynos-hdmi-report-safe-640x480-mode-as-a-…
+ patches.kernel.org/6.9.6-209-mptcp-ensure-snd_una-is-properly-initialized-o…
+ patches.kernel.org/6.9.6-210-mptcp-pm-inc-RmAddr-MIB-counter-once-per-RM_AD…
+ patches.kernel.org/6.9.6-211-mptcp-pm-update-add_addr-counters-after-connec…
+ patches.kernel.org/6.9.6-212-irqchip-sifive-plic-Chain-to-parent-IRQ-after-…
+ patches.kernel.org/6.9.6-213-irqchip-gic-v3-its-Fix-potential-race-conditio…
+ patches.kernel.org/6.9.6-214-x86-kexec-Fix-bug-with-call-depth-tracking.pat…
+ patches.kernel.org/6.9.6-215-x86-amd_nb-Check-for-invalid-SMN-reads.patch
+ patches.kernel.org/6.9.6-216-perf-core-Fix-missing-wakeup-when-waiting-for-…
+ patches.kernel.org/6.9.6-217-perf-auxtrace-Fix-multiple-use-of-itrace-optio…
+ patches.kernel.org/6.9.6-218-perf-script-Show-also-errors-for-insn-trace-op…
+ patches.kernel.org/6.9.6-219-wifi-cfg80211-validate-HE-operation-element-pa…
+ patches.kernel.org/6.9.6-220-wifi-rtlwifi-Ignore-IEEE80211_CONF_CHANGE_RETR…
+ patches.kernel.org/6.9.6-221-wifi-mt76-mt7615-add-missing-chanctx-ops.patch
+ patches.kernel.org/6.9.6-222-locking-atomic-scripts-fix-atomic-_sub_and_tes…
+ patches.kernel.org/6.9.6-223-riscv-fix-overlap-of-allocated-page-and-PTR_ER…
+ patches.kernel.org/6.9.6-224-tracing-selftests-Fix-kprobe-event-name-test-f…
+ patches.kernel.org/6.9.6-225-kheaders-explicitly-define-file-modes-for-arch…
+ patches.kernel.org/6.9.6-226-null_blk-Print-correct-max-open-zones-limit-in…
+ patches.kernel.org/6.9.6-227-ata-ahci-Do-not-apply-Intel-PCS-quirk-on-Intel…
+ patches.kernel.org/6.9.6-228-ata-libata-core-Add-ATA_HORKAGE_NOLPM-for-Apac…
+ patches.kernel.org/6.9.6-229-ata-libata-core-Add-ATA_HORKAGE_NOLPM-for-Cruc…
+ patches.kernel.org/6.9.6-230-ata-libata-core-Add-ATA_HORKAGE_NOLPM-for-AMD-…
+ patches.kernel.org/6.9.6-231-sock_map-avoid-race-between-sock_map_close-and…
+ patches.kernel.org/6.9.6-232-dma-buf-handle-testing-kthreads-creation-failu…
+ patches.kernel.org/6.9.6-233-vmci-prevent-speculation-leaks-by-sanitizing-e…
+ patches.kernel.org/6.9.6-234-spmi-hisi-spmi-controller-Do-not-override-devi…
+ patches.kernel.org/6.9.6-235-knfsd-LOOKUP-can-return-an-illegal-error-value…
+ patches.kernel.org/6.9.6-236-fs-proc-fix-softlockup-in-__read_vmcore.patch
+ patches.kernel.org/6.9.6-237-kexec-fix-the-unexpected-kexec_dprintk-macro.p…
+ patches.kernel.org/6.9.6-238-ocfs2-update-inode-fsync-transaction-id-in-ocf…
+ patches.kernel.org/6.9.6-239-ocfs2-use-coarse-time-for-new-created-files.pa…
+ patches.kernel.org/6.9.6-240-ocfs2-fix-races-between-hole-punching-and-AIO-…
+ patches.kernel.org/6.9.6-241-dm-integrity-set-discard_granularity-to-logica…
+ patches.kernel.org/6.9.6-242-PCI-rockchip-ep-Remove-wrong-mask-on-subsys_ve…
+ patches.kernel.org/6.9.6-243-dmaengine-axi-dmac-fix-possible-race-in-remove…
+ patches.kernel.org/6.9.6-244-drm-bridge-aux-hpd-bridge-correct-devm_drm_dp_…
+ patches.kernel.org/6.9.6-245-remoteproc-k3-r5-Wait-for-core0-power-up-befor…
+ patches.kernel.org/6.9.6-246-remoteproc-k3-r5-Do-not-allow-core1-to-power-u…
+ patches.kernel.org/6.9.6-247-iio-adc-axi-adc-make-sure-AXI-clock-is-enabled…
+ patches.kernel.org/6.9.6-248-iio-temperature-mcp9600-Fix-temperature-readin…
+ patches.kernel.org/6.9.6-249-iio-invensense-fix-interrupt-timestamp-alignme…
+ patches.kernel.org/6.9.6-250-drm-mst-Fix-NULL-pointer-dereference-at-drm_dp…
+ patches.kernel.org/6.9.6-251-riscv-rewrite-__kernel_map_pages-to-fix-sleepi…
+ patches.kernel.org/6.9.6-252-riscv-force-PAGE_SIZE-linear-mapping-if-debug_…
+ patches.kernel.org/6.9.6-253-rtla-timerlat-Simplify-no-value-printing-on-to…
+ patches.kernel.org/6.9.6-254-rtla-auto-analysis-Replace-t-with-spaces.patch
+ patches.kernel.org/6.9.6-255-drm-i915-gt-Disarm-breadcrumbs-if-engines-are-…
+ patches.kernel.org/6.9.6-256-drm-shmem-helper-Fix-BUG_ON-on-mmap-PROT_WRITE…
+ patches.kernel.org/6.9.6-257-drm-xe-Properly-handle-alloc_guc_id-failure.pa…
+ patches.kernel.org/6.9.6-258-drm-i915-dpt-Make-DPT-object-unshrinkable.patch
+ patches.kernel.org/6.9.6-259-drm-i915-Fix-audio-component-initialization.pa…
+ patches.kernel.org/6.9.6-260-intel_th-pci-Add-Granite-Rapids-support.patch
+ patches.kernel.org/6.9.6-261-intel_th-pci-Add-Granite-Rapids-SOC-support.pa…
+ patches.kernel.org/6.9.6-262-intel_th-pci-Add-Sapphire-Rapids-SOC-support.p…
+ patches.kernel.org/6.9.6-263-intel_th-pci-Add-Meteor-Lake-S-support.patch
+ patches.kernel.org/6.9.6-264-intel_th-pci-Add-Lunar-Lake-support.patch
+ patches.kernel.org/6.9.6-265-pmdomain-ti-sci-Fix-duplicate-PD-referrals.pat…
+ patches.kernel.org/6.9.6-266-btrfs-zoned-fix-use-after-free-due-to-race-wit…
+ patches.kernel.org/6.9.6-267-wifi-iwlwifi-mvm-support-iwl_dev_tx_power_cmd_…
+ patches.kernel.org/6.9.6-268-wifi-iwlwifi-mvm-fix-a-crash-on-7265.patch
+ patches.kernel.org/6.9.6-269-mm-huge_memory-don-t-unpoison-huge_zero_folio.…
+ patches.kernel.org/6.9.6-270-remoteproc-k3-r5-Jump-to-error-handling-labels…
+ patches.kernel.org/6.9.6-271-greybus-Fix-use-after-free-bug-in-gb_interface…
+ patches.kernel.org/6.9.6-272-ima-Fix-use-after-free-on-a-dentry-s-dname.nam…
+ patches.kernel.org/6.9.6-273-serial-8250_dw-Don-t-use-struct-dw8250_data-ou…
+ patches.kernel.org/6.9.6-274-dt-bindings-usb-realtek-rts5411-Add-missing-ad…
+ patches.kernel.org/6.9.6-275-usb-storage-alauda-Check-whether-the-media-is-…
+ patches.kernel.org/6.9.6-276-mei-vsc-Fix-wrong-invocation-of-ACPI-SID-metho…
+ patches.kernel.org/6.9.6-277-misc-microchip-pci1xxxx-Fix-a-memory-leak-in-t…
+ patches.kernel.org/6.9.6-278-i2c-at91-Fix-the-functionality-flags-of-the-sl…
+ patches.kernel.org/6.9.6-279-i2c-designware-Fix-the-functionality-flags-of-…
+ patches.kernel.org/6.9.6-280-zap_pid_ns_processes-clear-TIF_NOTIFY_SIGNAL-a…
+ patches.kernel.org/6.9.6-281-Linux-6.9.6.patch
########################################################
# Build fixes that apply to the vanilla kernel too.
@@ -1046,13 +1327,9 @@
patches.suse/bus-mhi-host-add-mhi_power_down_no_destroy.patch
patches.suse/net-qrtr-support-suspend-hibernation.patch
patches.suse/wifi-ath11k-support-hibernation.patch
- patches.suse/ata-libata-scsi-Set-the-RMB-bit-only-for-removable-m.patch
-
- # mkp/scsi queue
patches.suse/scsi-core-alua-I-O-errors-for-ALUA-state-transitions.patch
-
- # bluetooth/bluetooth-next
- patches.suse/Bluetooth-fix-connection-setup-in-l2cap_connect.patch
+ patches.suse/net-stmmac-No-need-to-calculate-speed-divider-when-o.patch
+ patches.suse/netfilter-ipset-Fix-suspicious-rcu_dereference_prote.patch
########################################################
# end of sorted patches
++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.c6OVBG/_old 2024-06-25 23:07:26.566229829 +0200
+++ /var/tmp/diff_new_pack.c6OVBG/_new 2024-06-25 23:07:26.566229829 +0200
@@ -1,4 +1,4 @@
-2024-06-18 07:38:24 +0000
-GIT Revision: c9c2e244cf9031882276be043b882ccf33835a4f
+2024-06-22 09:38:29 +0000
+GIT Revision: e256f5c5f76f713f78cf71fa72da40bf33857bcb
GIT Branch: stable
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libreoffice for openSUSE:Factory checked in at 2024-06-25 23:06:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libreoffice (Old)
and /work/SRC/openSUSE:Factory/.libreoffice.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libreoffice"
Tue Jun 25 23:06:45 2024 rev:293 rq:1183080 version:24.2.4.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/libreoffice/libreoffice.changes 2024-06-09 20:22:57.535423088 +0200
+++ /work/SRC/openSUSE:Factory/.libreoffice.new.18349/libreoffice.changes 2024-06-25 23:07:06.873511981 +0200
@@ -1,0 +2,7 @@
+Mon Jun 17 19:22:02 UTC 2024 - Martin Schreiner <martin.schreiner(a)suse.com>
+
+- Add QT6 support to Tumbleweed/SLFO.
+ Remaining builds still enable either QT5 (Leap or SLE 15-SP4 and
+ newer) or GTK3 (all of them).
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libreoffice.spec ++++++
--- /var/tmp/diff_new_pack.soLVHZ/_old 2024-06-25 23:07:13.313746743 +0200
+++ /var/tmp/diff_new_pack.soLVHZ/_new 2024-06-25 23:07:13.313746743 +0200
@@ -26,12 +26,26 @@
%else
%bcond_with lto
%endif
-# Enable the kde integration on openSUSE and SLE15-SP4 or newer
+
+# Enable KDE integration with QT6 support on Tumbleweed/SLFO
+%if 0%{?suse_version} >= 1600
+%bcond_without qt6
+%bcond_without kdeintegration
+%bcond_with qt5
+%else
+# Enable the KDE integration with QT5 support on openSUSE Leap and SLE15-SP4 or newer
%if 0%{?is_opensuse} || 0%{?sle_version} >= 150400
+%bcond_without qt5
%bcond_without kdeintegration
+%bcond_with qt6
%else
+# Disable KDE integration and QT support
%bcond_with kdeintegration
+%bcond_with qt5
+%bcond_with qt6
+%endif
%endif
+
# Use system gpgme and curl on TW and SLE15-SP4 or newer
%if 0%{?suse_version} > 1500
%bcond_without system_gpgme
@@ -265,8 +279,11 @@
Requires: python3
Recommends: dejavu-fonts
Recommends: google-carlito-fonts
-%if %{with kdeintegration}
-Recommends: (libreoffice-qt5 if lxqt-session)
+%if %{with kdeintegration} && %{with qt5}
+Recommends: libreoffice-qt5
+%endif
+%if %{with kdeintegration} && %{with qt6}
+Recommends: libreoffice-qt6
%endif
Provides: %{name}-draw-extensions = %{version}
Obsoletes: %{name}-draw-extensions < %{version}
@@ -346,7 +363,7 @@
%if %{with firebird}
BuildRequires: pkgconfig(fbclient)
%endif
-%if %{with kdeintegration}
+%if %{with kdeintegration} && %{with qt5}
BuildRequires: libqt5-qtbase-common-devel
BuildRequires: cmake(KF5Config)
BuildRequires: cmake(KF5CoreAddons)
@@ -365,6 +382,23 @@
Provides: %{name}-qt5 = %{version}
Obsoletes: %{name}-qt5 < %{version}
%endif
+%if %{with kdeintegration} && %{with qt6}
+BuildRequires: qt6-base-common-devel
+BuildRequires: qt6-base-devel
+BuildRequires: cmake(KF6Config)
+BuildRequires: cmake(KF6CoreAddons)
+BuildRequires: cmake(KF6I18n)
+BuildRequires: cmake(KF6KIO)
+BuildRequires: cmake(KF6WindowSystem)
+BuildRequires: pkgconfig(Qt6Core)
+BuildRequires: pkgconfig(Qt6Gui)
+BuildRequires: pkgconfig(Qt6Network)
+BuildRequires: pkgconfig(Qt6Widgets)
+BuildRequires: pkgconfig(xcb-icccm)
+%else
+Provides: %{name}-qt6 = %{version}
+Obsoletes: %{name}-qt6 < %{version}
+%endif
%description
LibreOffice is a comprehensive office package featuring a word
@@ -384,6 +418,7 @@
- libreoffice-mailmerge
- libreoffice-filters
- libreoffice-qt5
+- libreoffice-qt6
- libreoffice-gnome
Non-English localizations are provided by extra packages as well, for
@@ -647,6 +682,20 @@
%description qt5
This package contains Qt5/KDE Frameworks interface rendering options for LibreOffice.
+%package qt6
+Summary: Qt6/KDE Frameworks interface for LibreOffice
+Group: Productivity/Office/Suite
+Requires: %{name} = %{version}
+%if 0%{suse_version} < 1500
+Supplements: packageand(libreoffice:plasma6-workspace)
+%else
+Supplements: (libreoffice and plasma6-workspace)
+%endif
+Obsoletes: %{name}-qt5 <= %{version}
+
+%description qt6
+This package contains Qt6/KDE Frameworks interface rendering options for LibreOffice.
+
%package sdk
Summary: LibreOffice SDK
Group: Documentation/HTML
@@ -1110,6 +1159,11 @@
google_default_client_id="4139804441.apps.googleusercontent.com"
google_default_client_secret="KDTRKEZk2jwT_7CDpcmMA--P"
+%if %{with qt6}
+export qt6_libexec_dirs="%{_libexecdir}/qt6"
+export QT6DIR="%{_libdir}/qt6"
+%endif
+
# do not run configure in autogen but use macro later
export NOCONFIGURE=yes
./autogen.sh
@@ -1139,13 +1193,24 @@
--disable-online-update \
--enable-gstreamer-1-0 \
--enable-gtk3 \
-%if %{with kdeintegration}
+%if %{with kdeintegration} && %{with qt6}
+ --enable-kf6 \
+ --enable-qt6 \
+ --disable-kf5 \
+ --disable-qt5 \
+%else
+%if %{with kdeintegration} && %{with qt5}
--enable-gtk3-kde5 \
--enable-kf5 \
--enable-qt5 \
+ --disable-kf6 \
+ --disable-qt6 \
%else
--disable-kf5 \
--disable-qt5 \
+ --disable-kf6 \
+ --disable-qt6 \
+%endif
%endif
--enable-introspection \
--with-doxygen \
@@ -1618,7 +1683,7 @@
%files gtk3
%{_libdir}/libreoffice/program/libvclplug_gtk3lo.so
-%if %{with kdeintegration}
+%if %{with kdeintegration} && %{with qt5}
%files -f file-lists/kde4_list.txt qt5
%{_libdir}/libreoffice/program/libkf5be1lo.so
%{_libdir}/libreoffice/program/libvclplug_kf5lo.so
@@ -1627,6 +1692,12 @@
%{_libdir}/libreoffice/program/lo_kde5filepicker
%endif
+%if %{with kdeintegration} && %{with qt6}
+%files -f file-lists/kde4_list.txt qt6
+%{_libdir}/libreoffice/program/libvclplug_kf6lo.so
+%{_libdir}/libreoffice/program/libvclplug_qt6lo.so
+%endif
+
%files -f file-lists/officebean_list.txt officebean
%files -f file-lists/sdk_list.txt sdk
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xen for openSUSE:Factory checked in at 2024-06-25 23:06:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xen (Old)
and /work/SRC/openSUSE:Factory/.xen.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xen"
Tue Jun 25 23:06:43 2024 rev:346 rq:1183065 version:4.18.2_06
Changes:
--------
--- /work/SRC/openSUSE:Factory/xen/xen.changes 2024-06-06 12:31:17.085556322 +0200
+++ /work/SRC/openSUSE:Factory/.xen.new.18349/xen.changes 2024-06-25 23:07:01.473315130 +0200
@@ -1,0 +2,22 @@
+Mon Jun 24 16:20:00 CEST 2024 - jbeulich(a)suse.com
+
+- bsc#1214718 - The system hangs intermittently when Power Control
+ Mode is set to Minimum Power on SLES15SP5 Xen
+ 6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch
+ 666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
+ 666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
+ 66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
+ 6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
+ 6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch
+- Upstream bug fixes (bsc#1027519)
+ 66450626-sched-set-all-sched_resource-data-inside-locked.patch
+ 66450627-x86-respect-mapcache_domain_init-failing.patch
+ 6646031f-x86-ucode-further-identify-already-up-to-date.patch
+ 666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
+ 666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
+ 666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
+ 667187cc-x86-Intel-unlock-CPUID-earlier.patch
+ 6672c846-x86-xstate-initialisation-of-XSS-cache.patch
+ 6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch
+
+-------------------------------------------------------------------
New:
----
66450626-sched-set-all-sched_resource-data-inside-locked.patch
66450627-x86-respect-mapcache_domain_init-failing.patch
6646031f-x86-ucode-further-identify-already-up-to-date.patch
6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch
666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
667187cc-x86-Intel-unlock-CPUID-earlier.patch
66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
6672c846-x86-xstate-initialisation-of-XSS-cache.patch
6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch
6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch
BETA DEBUG BEGIN:
New:- Upstream bug fixes (bsc#1027519)
66450626-sched-set-all-sched_resource-data-inside-locked.patch
66450627-x86-respect-mapcache_domain_init-failing.patch
New: 66450626-sched-set-all-sched_resource-data-inside-locked.patch
66450627-x86-respect-mapcache_domain_init-failing.patch
6646031f-x86-ucode-further-identify-already-up-to-date.patch
New: 66450627-x86-respect-mapcache_domain_init-failing.patch
6646031f-x86-ucode-further-identify-already-up-to-date.patch
666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
New: Mode is set to Minimum Power on SLES15SP5 Xen
6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch
666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
New: 6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch
666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
New: 666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
New: 6646031f-x86-ucode-further-identify-already-up-to-date.patch
666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
New: 666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
New: 666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
667187cc-x86-Intel-unlock-CPUID-earlier.patch
New: 666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
667187cc-x86-Intel-unlock-CPUID-earlier.patch
6672c846-x86-xstate-initialisation-of-XSS-cache.patch
New: 666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
New: 66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch
New: 667187cc-x86-Intel-unlock-CPUID-earlier.patch
6672c846-x86-xstate-initialisation-of-XSS-cache.patch
6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch
New: 6672c846-x86-xstate-initialisation-of-XSS-cache.patch
6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch
New: 6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch
- Upstream bug fixes (bsc#1027519)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xen.spec ++++++
--- /var/tmp/diff_new_pack.W2wIIm/_old 2024-06-25 23:07:05.849474652 +0200
+++ /var/tmp/diff_new_pack.W2wIIm/_new 2024-06-25 23:07:05.853474798 +0200
@@ -119,7 +119,7 @@
%endif
Provides: installhint(reboot-needed)
-Version: 4.18.2_05
+Version: 4.18.2_06
Release: 0
Summary: Xen Virtualization: Hypervisor (aka VMM aka Microkernel)
License: GPL-2.0-only
@@ -164,6 +164,21 @@
Patch8: 663a4f3e-x86-cpu-policy-migration-IceLake-to-CascadeLake.patch
Patch9: 663d05b5-x86-ucode-distinguish-up-to-date.patch
Patch10: 663eaa27-libxl-XenStore-error-handling-in-device-creation.patch
+Patch11: 66450626-sched-set-all-sched_resource-data-inside-locked.patch
+Patch12: 66450627-x86-respect-mapcache_domain_init-failing.patch
+Patch13: 6646031f-x86-ucode-further-identify-already-up-to-date.patch
+Patch14: 6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch
+Patch15: 666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch
+Patch16: 666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch
+Patch17: 666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch
+Patch18: 666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch
+Patch19: 666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch
+Patch20: 667187cc-x86-Intel-unlock-CPUID-earlier.patch
+Patch21: 66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch
+Patch22: 6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch
+Patch23: 6672c846-x86-xstate-initialisation-of-XSS-cache.patch
+Patch24: 6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch
+Patch25: 6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch
# EMBARGOED security fixes
# libxc
Patch301: libxc-bitmap-long.patch
++++++ 66450626-sched-set-all-sched_resource-data-inside-locked.patch ++++++
# Commit d104a07524ffc92ae7a70dfe192c291de2a563cc
# Date 2024-05-15 19:59:52 +0100
# Author Juergen Gross <jgross(a)suse.com>
# Committer Andrew Cooper <andrew.cooper3(a)citrix.com>
xen/sched: set all sched_resource data inside locked region for new cpu
When adding a cpu to a scheduler, set all data items of struct
sched_resource inside the locked region, as otherwise a race might
happen (e.g. when trying to access the cpupool of the cpu):
(XEN) ----[ Xen-4.19.0-1-d x86_64 debug=y Tainted: H ]----
(XEN) CPU: 45
(XEN) RIP: e008:[<ffff82d040244cbf>] common/sched/credit.c#csched_load_balance+0x41/0x877
(XEN) RFLAGS: 0000000000010092 CONTEXT: hypervisor
(XEN) rax: ffff82d040981618 rbx: ffff82d040981618 rcx: 0000000000000000
(XEN) rdx: 0000003ff68cd000 rsi: 000000000000002d rdi: ffff83103723d450
(XEN) rbp: ffff83207caa7d48 rsp: ffff83207caa7b98 r8: 0000000000000000
(XEN) r9: ffff831037253cf0 r10: ffff83103767c3f0 r11: 0000000000000009
(XEN) r12: ffff831037237990 r13: ffff831037237990 r14: ffff831037253720
(XEN) r15: 0000000000000000 cr0: 000000008005003b cr4: 0000000000f526e0
(XEN) cr3: 000000005bc2f000 cr2: 0000000000000010
(XEN) fsb: 0000000000000000 gsb: 0000000000000000 gss: 0000000000000000
(XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: e008
(XEN) Xen code around <ffff82d040244cbf> (common/sched/credit.c#csched_load_balance+0x41/0x877):
(XEN) 48 8b 0c 10 48 8b 49 08 <48> 8b 79 10 48 89 bd b8 fe ff ff 49 8b 4e 28 48
<snip>
(XEN) Xen call trace:
(XEN) [<ffff82d040244cbf>] R common/sched/credit.c#csched_load_balance+0x41/0x877
(XEN) [<ffff82d040245a18>] F common/sched/credit.c#csched_schedule+0x36a/0x69f
(XEN) [<ffff82d040252644>] F common/sched/core.c#do_schedule+0xe8/0x433
(XEN) [<ffff82d0402572dd>] F common/sched/core.c#schedule+0x2e5/0x2f9
(XEN) [<ffff82d040232f35>] F common/softirq.c#__do_softirq+0x94/0xbe
(XEN) [<ffff82d040232fc8>] F do_softirq+0x13/0x15
(XEN) [<ffff82d0403075ef>] F arch/x86/domain.c#idle_loop+0x92/0xe6
(XEN)
(XEN) Pagetable walk from 0000000000000010:
(XEN) L4[0x000] = 000000103ff61063 ffffffffffffffff
(XEN) L3[0x000] = 000000103ff60063 ffffffffffffffff
(XEN) L2[0x000] = 0000001033dff063 ffffffffffffffff
(XEN) L1[0x000] = 0000000000000000 ffffffffffffffff
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 45:
(XEN) FATAL PAGE FAULT
(XEN) [error_code=0000]
(XEN) Faulting linear address: 0000000000000010
(XEN) ****************************************
Reported-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Fixes: a8c6c623192e ("sched: clarify use cases of schedule_cpu_switch()")
Signed-off-by: Juergen Gross <jgross(a)suse.com>
Acked-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Tested-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -3179,6 +3179,8 @@ int schedule_cpu_add(unsigned int cpu, s
sr->scheduler = new_ops;
sr->sched_priv = ppriv;
+ sr->granularity = cpupool_get_granularity(c);
+ sr->cpupool = c;
/*
* Reroute the lock to the per pCPU lock as /last/ thing. In fact,
@@ -3191,8 +3193,6 @@ int schedule_cpu_add(unsigned int cpu, s
/* _Not_ pcpu_schedule_unlock(): schedule_lock has changed! */
spin_unlock_irqrestore(old_lock, flags);
- sr->granularity = cpupool_get_granularity(c);
- sr->cpupool = c;
/* The cpu is added to a pool, trigger it to go pick up some work */
cpu_raise_softirq(cpu, SCHEDULE_SOFTIRQ);
++++++ 66450627-x86-respect-mapcache_domain_init-failing.patch ++++++
# Commit 7270fdc7a0028d4b7b26fd1b36c6b9e97abcf3da
# Date 2024-05-15 19:59:52 +0100
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Andrew Cooper <andrew.cooper3(a)citrix.com>
x86: respect mapcache_domain_init() failing
The function itself properly handles and hands onwards failure from
create_perdomain_mapping(). Therefore its caller should respect possible
failure, too.
Fixes: 4b28bf6ae90b ("x86: re-introduce map_domain_page() et al")
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Acked-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -850,7 +850,8 @@ int arch_domain_create(struct domain *d,
}
else if ( is_pv_domain(d) )
{
- mapcache_domain_init(d);
+ if ( (rc = mapcache_domain_init(d)) != 0 )
+ goto fail;
if ( (rc = pv_domain_initialise(d)) != 0 )
goto fail;
++++++ 6646031f-x86-ucode-further-identify-already-up-to-date.patch ++++++
# Commit 977d98e67c2e929c62aa1f495fc4c6341c45abb5
# Date 2024-05-16 13:59:11 +0100
# Author Andrew Cooper <andrew.cooper3(a)citrix.com>
# Committer Andrew Cooper <andrew.cooper3(a)citrix.com>
x86/ucode: Further fixes to identify "ucode already up to date"
When the revision in hardware is newer than anything Xen has to hand,
'microcode_cache' isn't set up. Then, `xen-ucode` initiates the update
because it doesn't know whether the revisions across the system are symmetric
or not. This involves the patch getting all the way into the
apply_microcode() hooks before being found to be too old.
This is all a giant mess and needs an overhaul, but in the short term simply
adjust the apply_microcode() to return -EEXIST.
Also, unconditionally print the preexisting microcode revision on boot. It's
relevant information which is otherwise unavailable if Xen doesn't find new
microcode to use.
Fixes: 648db37a155a ("x86/ucode: Distinguish "ucode already up to date"")
Signed-off-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
Acked-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/cpu/microcode/amd.c
+++ b/xen/arch/x86/cpu/microcode/amd.c
@@ -222,12 +222,15 @@ static int cf_check apply_microcode(cons
uint32_t rev, old_rev = sig->rev;
enum microcode_match_result result = microcode_fits(patch);
+ if ( result == MIS_UCODE )
+ return -EINVAL;
+
/*
* Allow application of the same revision to pick up SMT-specific changes
* even if the revision of the other SMT thread is already up-to-date.
*/
- if ( result != NEW_UCODE && result != SAME_UCODE )
- return -EINVAL;
+ if ( result == OLD_UCODE )
+ return -EEXIST;
if ( check_final_patch_levels(sig) )
{
--- a/xen/arch/x86/cpu/microcode/core.c
+++ b/xen/arch/x86/cpu/microcode/core.c
@@ -887,6 +887,8 @@ int __init early_microcode_init(unsigned
ucode_ops.collect_cpu_info();
+ printk(XENLOG_INFO "BSP microcode revision: 0x%08x\n", this_cpu(cpu_sig).rev);
+
/*
* Some hypervisors deliberately report a microcode revision of -1 to
* mean that they will not accept microcode updates.
--- a/xen/arch/x86/cpu/microcode/intel.c
+++ b/xen/arch/x86/cpu/microcode/intel.c
@@ -294,10 +294,13 @@ static int cf_check apply_microcode(cons
result = microcode_update_match(patch);
- if ( result != NEW_UCODE &&
- !(opt_ucode_allow_same && result == SAME_UCODE) )
+ if ( result == MIS_UCODE )
return -EINVAL;
+ if ( result == OLD_UCODE ||
+ (result == SAME_UCODE && !opt_ucode_allow_same) )
+ return -EEXIST;
+
wbinvd();
wrmsrl(MSR_IA32_UCODE_WRITE, (unsigned long)patch->data);
++++++ 6666ba52-x86-irq-remove-offline-CPUs-from-old-CPU-mask-when.patch ++++++
References: bsc#1214718
# Commit e63209d3ba2fd1b2f232babd14c9c679ffa7b09a
# Date 2024-06-10 10:33:22 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/irq: remove offline CPUs from old CPU mask when adjusting move_cleanup_count
When adjusting move_cleanup_count to account for CPUs that are offline also
adjust old_cpu_mask, otherwise further calls to fixup_irqs() could subtract
those again and create an imbalance in move_cleanup_count.
Fixes: 472e0b74c5c4 ('x86/IRQ: deal with move cleanup count state in fixup_irqs()')
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2576,6 +2576,14 @@ void fixup_irqs(const cpumask_t *mask, b
desc->arch.move_cleanup_count -= cpumask_weight(affinity);
if ( !desc->arch.move_cleanup_count )
release_old_vec(desc);
+ else
+ /*
+ * Adjust old_cpu_mask to account for the offline CPUs,
+ * otherwise further calls to fixup_irqs() could subtract those
+ * again and possibly underflow the counter.
+ */
+ cpumask_andnot(desc->arch.old_cpu_mask, desc->arch.old_cpu_mask,
+ affinity);
}
if ( !desc->action || cpumask_subset(desc->affinity, mask) )
++++++ 666994ab-x86-SMP-no-shorthand-IPI-in-hotplug.patch ++++++
References: bsc#1214718
# Commit 171c52fba5d94e050d704770480dcb983490d0ad
# Date 2024-06-12 14:29:31 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/smp: do not use shorthand IPI destinations in CPU hot{,un}plug contexts
Due to the current rwlock logic, if the CPU calling get_cpu_maps() does
so from a cpu_hotplug_{begin,done}() region the function will still
return success, because a CPU taking the rwlock in read mode after
having taken it in write mode is allowed. Such corner case makes using
get_cpu_maps() alone not enough to prevent using the shorthand in CPU
hotplug regions.
Introduce a new helper to detect whether the current caller is between a
cpu_hotplug_{begin,done}() region and use it in send_IPI_mask() to restrict
shorthand usage.
Fixes: 5500d265a2a8 ('x86/smp: use APIC ALLBUT destination shorthand when possible')
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/smp.c
+++ b/xen/arch/x86/smp.c
@@ -88,7 +88,7 @@ void send_IPI_mask(const cpumask_t *mask
* the system have been accounted for.
*/
if ( system_state > SYS_STATE_smp_boot &&
- !unaccounted_cpus && !disabled_cpus &&
+ !unaccounted_cpus && !disabled_cpus && !cpu_in_hotplug_context() &&
/* NB: get_cpu_maps lock requires enabled interrupts. */
local_irq_is_enabled() && (cpus_locked = get_cpu_maps()) &&
(park_offline_cpus ||
--- a/xen/common/cpu.c
+++ b/xen/common/cpu.c
@@ -68,6 +68,11 @@ void cpu_hotplug_done(void)
write_unlock(&cpu_add_remove_lock);
}
+bool cpu_in_hotplug_context(void)
+{
+ return rw_is_write_locked_by_me(&cpu_add_remove_lock);
+}
+
static NOTIFIER_HEAD(cpu_chain);
void __init register_cpu_notifier(struct notifier_block *nb)
--- a/xen/include/xen/cpu.h
+++ b/xen/include/xen/cpu.h
@@ -13,6 +13,16 @@ void put_cpu_maps(void);
void cpu_hotplug_begin(void);
void cpu_hotplug_done(void);
+/*
+ * Returns true when the caller CPU is between a cpu_hotplug_{begin,done}()
+ * region.
+ *
+ * This is required to safely identify hotplug contexts, as get_cpu_maps()
+ * would otherwise succeed because a caller holding the lock in write mode is
+ * allowed to acquire the same lock in read mode.
+ */
+bool cpu_in_hotplug_context(void);
+
/* Receive notification of CPU hotplug events. */
void register_cpu_notifier(struct notifier_block *nb);
--- a/xen/include/xen/rwlock.h
+++ b/xen/include/xen/rwlock.h
@@ -309,6 +309,8 @@ static always_inline void write_lock_irq
#define rw_is_locked(l) _rw_is_locked(l)
#define rw_is_write_locked(l) _rw_is_write_locked(l)
+#define rw_is_write_locked_by_me(l) \
+ lock_evaluate_nospec(_is_write_locked_by_me(atomic_read(&(l)->cnts)))
typedef struct percpu_rwlock percpu_rwlock_t;
++++++ 666994f0-x86-IRQ-limit-interrupt-movement-in-fixup_irqs.patch ++++++
References: bsc#1214718
# Commit c7564d7366d865cc407e3d64bca816d07edee174
# Date 2024-06-12 14:30:40 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/irq: limit interrupt movement done by fixup_irqs()
The current check used in fixup_irqs() to decide whether to move around
interrupts is based on the affinity mask, but such mask can have all bits set,
and hence is unlikely to be a subset of the input mask. For example if an
interrupt has an affinity mask of all 1s, any input to fixup_irqs() that's not
an all set CPU mask would cause that interrupt to be shuffled around
unconditionally.
What fixup_irqs() care about is evacuating interrupts from CPUs not set on the
input CPU mask, and for that purpose it should check whether the interrupt is
assigned to a CPU not present in the input mask. Assume that ->arch.cpu_mask
is a subset of the ->affinity mask, and keep the current logic that resets the
->affinity mask if the interrupt has to be shuffled around.
Doing the affinity movement based on ->arch.cpu_mask requires removing the
special handling to ->arch.cpu_mask done for high priority vectors, otherwise
the adjustment done to cpu_mask makes them always skip the CPU interrupt
movement.
While there also adjust the comment as to the purpose of fixup_irqs().
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/include/asm/irq.h
+++ b/xen/arch/x86/include/asm/irq.h
@@ -132,7 +132,7 @@ void free_domain_pirqs(struct domain *d)
int map_domain_emuirq_pirq(struct domain *d, int pirq, int emuirq);
int unmap_domain_pirq_emuirq(struct domain *d, int pirq);
-/* Reset irq affinities to match the given CPU mask. */
+/* Evacuate interrupts assigned to CPUs not present in the input CPU mask. */
void fixup_irqs(const cpumask_t *mask, bool verbose);
void fixup_eoi(void);
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2529,7 +2529,7 @@ static int __init cf_check setup_dump_ir
}
__initcall(setup_dump_irqs);
-/* Reset irq affinities to match the given CPU mask. */
+/* Evacuate interrupts assigned to CPUs not present in the input CPU mask. */
void fixup_irqs(const cpumask_t *mask, bool verbose)
{
unsigned int irq;
@@ -2553,19 +2553,15 @@ void fixup_irqs(const cpumask_t *mask, b
vector = irq_to_vector(irq);
if ( vector >= FIRST_HIPRIORITY_VECTOR &&
- vector <= LAST_HIPRIORITY_VECTOR )
+ vector <= LAST_HIPRIORITY_VECTOR &&
+ desc->handler == &no_irq_type )
{
- cpumask_and(desc->arch.cpu_mask, desc->arch.cpu_mask, mask);
-
/*
* This can in particular happen when parking secondary threads
* during boot and when the serial console wants to use a PCI IRQ.
*/
- if ( desc->handler == &no_irq_type )
- {
- spin_unlock(&desc->lock);
- continue;
- }
+ spin_unlock(&desc->lock);
+ continue;
}
if ( desc->arch.move_cleanup_count )
@@ -2586,7 +2582,12 @@ void fixup_irqs(const cpumask_t *mask, b
affinity);
}
- if ( !desc->action || cpumask_subset(desc->affinity, mask) )
+ /*
+ * Avoid shuffling the interrupt around as long as current target CPUs
+ * are a subset of the input mask. What fixup_irqs() cares about is
+ * evacuating interrupts from CPUs not in the input mask.
+ */
+ if ( !desc->action || cpumask_subset(desc->arch.cpu_mask, mask) )
{
spin_unlock(&desc->lock);
continue;
++++++ 666b07ee-x86-EPT-special-page-in-epte_get_entry_emt.patch ++++++
# Commit 5540b94e8191059eb9cbbe98ac316232a42208f6
# Date 2024-06-13 16:53:34 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/EPT: correct special page checking in epte_get_entry_emt()
mfn_valid() granularity is (currently) 256Mb. Therefore the start of a
1Gb page passing the test doesn't necessarily mean all parts of such a
range would also pass. Yet using the result of mfn_to_page() on an MFN
which doesn't pass mfn_valid() checking is liable to result in a crash
(the invocation of mfn_to_page() alone is presumably "just" UB in such a
case).
Fixes: ca24b2ffdbd9 ("x86/hvm: set 'ipat' in EPT for special pages")
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/mm/p2m-ept.c
+++ b/xen/arch/x86/mm/p2m-ept.c
@@ -518,8 +518,12 @@ int epte_get_entry_emt(struct domain *d,
}
for ( special_pgs = i = 0; i < (1ul << order); i++ )
- if ( is_special_page(mfn_to_page(mfn_add(mfn, i))) )
+ {
+ mfn_t cur = mfn_add(mfn, i);
+
+ if ( mfn_valid(cur) && is_special_page(mfn_to_page(cur)) )
special_pgs++;
+ }
if ( special_pgs )
{
++++++ 666b0819-x86-EPT-avoid-marking-np-ents-for-reconfig.patch ++++++
# Commit 777c71d31325bc55ba1cc3f317d4155fe519ab0b
# Date 2024-06-13 16:54:17 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/EPT: avoid marking non-present entries for re-configuring
For non-present entries EMT, like most other fields, is meaningless to
hardware. Make the logic in ept_set_entry() setting the field (and iPAT)
conditional upon dealing with a present entry, leaving the value at 0
otherwise. This has two effects for epte_get_entry_emt() which we'll
want to leverage subsequently:
1) The call moved here now won't be issued with INVALID_MFN anymore (a
respective BUG_ON() is being added).
2) Neither of the other two calls could now be issued with a truncated
form of INVALID_MFN anymore (as long as there's no bug anywhere
marking an entry present when that was populated using INVALID_MFN).
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/mm/p2m-ept.c
+++ b/xen/arch/x86/mm/p2m-ept.c
@@ -649,6 +649,8 @@ static int cf_check resolve_misconfig(st
if ( e.emt != MTRR_NUM_TYPES )
break;
+ ASSERT(is_epte_present(&e));
+
if ( level == 0 )
{
for ( gfn -= i, i = 0; i < EPT_PAGETABLE_ENTRIES; ++i )
@@ -914,17 +916,6 @@ ept_set_entry(struct p2m_domain *p2m, gf
if ( mfn_valid(mfn) || p2m_allows_invalid_mfn(p2mt) )
{
- bool ipat;
- int emt = epte_get_entry_emt(p2m->domain, _gfn(gfn), mfn,
- i * EPT_TABLE_ORDER, &ipat,
- p2mt);
-
- if ( emt >= 0 )
- new_entry.emt = emt;
- else /* ept_handle_misconfig() will need to take care of this. */
- new_entry.emt = MTRR_NUM_TYPES;
-
- new_entry.ipat = ipat;
new_entry.sp = !!i;
new_entry.sa_p2mt = p2mt;
new_entry.access = p2ma;
@@ -940,6 +931,22 @@ ept_set_entry(struct p2m_domain *p2m, gf
need_modify_vtd_table = 0;
ept_p2m_type_to_flags(p2m, &new_entry);
+
+ if ( is_epte_present(&new_entry) )
+ {
+ bool ipat;
+ int emt = epte_get_entry_emt(p2m->domain, _gfn(gfn), mfn,
+ i * EPT_TABLE_ORDER, &ipat,
+ p2mt);
+
+ BUG_ON(mfn_eq(mfn, INVALID_MFN));
+
+ if ( emt >= 0 )
+ new_entry.emt = emt;
+ else /* ept_handle_misconfig() will need to take care of this. */
+ new_entry.emt = MTRR_NUM_TYPES;
+ new_entry.ipat = ipat;
+ }
}
if ( sve != -1 )
++++++ 666b085a-x86-EPT-drop-questionable-mfn_valid-from-.patch ++++++
# Commit 4fdd8d75566fdad06667a79ec0ce6f43cc466c54
# Date 2024-06-13 16:55:22 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/EPT: drop questionable mfn_valid() from epte_get_entry_emt()
mfn_valid() is RAM-focused; it will often return false for MMIO. Yet
access to actual MMIO space should not generally be restricted to UC
only; especially video frame buffer accesses are unduly affected by such
a restriction.
Since, as of 777c71d31325 ("x86/EPT: avoid marking non-present entries
for re-configuring"), the function won't be called with INVALID_MFN or,
worse, truncated forms thereof anymore, we call fully drop that check.
Fixes: 81fd0d3ca4b2 ("x86/hvm: simplify 'mmio_direct' check in epte_get_entry_emt()")
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/mm/p2m-ept.c
+++ b/xen/arch/x86/mm/p2m-ept.c
@@ -500,12 +500,6 @@ int epte_get_entry_emt(struct domain *d,
return -1;
}
- if ( !mfn_valid(mfn) )
- {
- *ipat = true;
- return X86_MT_UC;
- }
-
/*
* Conditional must be kept in sync with the code in
* {iomem,ioports}_{permit,deny}_access().
++++++ 667187cc-x86-Intel-unlock-CPUID-earlier.patch ++++++
# Commit fa4d026737a47cd1d66ffb797a29150b4453aa9f
# Date 2024-06-18 15:12:44 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/Intel: unlock CPUID earlier for the BSP
Intel CPUs have a MSR bit to limit CPUID enumeration to leaf two. If
this bit is set by the BIOS then CPUID evaluation does not work when
data from any leaf greater than two is needed; early_cpu_init() in
particular wants to collect leaf 7 data.
Cure this by unlocking CPUID right before evaluating anything which
depends on the maximum CPUID leaf being greater than two.
Inspired by (and description cloned from) Linux commit 0c2f6d04619e
("x86/topology/intel: Unlock CPUID before evaluating anything").
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Roger Pau Monné <roger.pau(a)citrix.com>
--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -336,7 +336,8 @@ void __init early_cpu_init(bool verbose)
c->x86_vendor = x86_cpuid_lookup_vendor(ebx, ecx, edx);
switch (c->x86_vendor) {
- case X86_VENDOR_INTEL: actual_cpu = intel_cpu_dev; break;
+ case X86_VENDOR_INTEL: intel_unlock_cpuid_leaves(c);
+ actual_cpu = intel_cpu_dev; break;
case X86_VENDOR_AMD: actual_cpu = amd_cpu_dev; break;
case X86_VENDOR_CENTAUR: actual_cpu = centaur_cpu_dev; break;
case X86_VENDOR_SHANGHAI: actual_cpu = shanghai_cpu_dev; break;
--- a/xen/arch/x86/cpu/cpu.h
+++ b/xen/arch/x86/cpu/cpu.h
@@ -24,3 +24,5 @@ void amd_init_lfence(struct cpuinfo_x86
void amd_init_ssbd(const struct cpuinfo_x86 *c);
void amd_init_spectral_chicken(void);
void detect_zen2_null_seg_behaviour(void);
+
+void intel_unlock_cpuid_leaves(struct cpuinfo_x86 *c);
--- a/xen/arch/x86/cpu/intel.c
+++ b/xen/arch/x86/cpu/intel.c
@@ -303,10 +303,24 @@ static void __init noinline intel_init_l
ctxt_switch_masking = intel_ctxt_switch_masking;
}
-static void cf_check early_init_intel(struct cpuinfo_x86 *c)
+/* Unmask CPUID levels if masked. */
+void intel_unlock_cpuid_leaves(struct cpuinfo_x86 *c)
{
- u64 misc_enable, disable;
+ uint64_t misc_enable, disable;
+
+ rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable);
+
+ disable = misc_enable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID;
+ if (disable) {
+ wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable);
+ bootsym(trampoline_misc_enable_off) |= disable;
+ c->cpuid_level = cpuid_eax(0);
+ printk(KERN_INFO "revised cpuid level: %u\n", c->cpuid_level);
+ }
+}
+static void cf_check early_init_intel(struct cpuinfo_x86 *c)
+{
/* Netburst reports 64 bytes clflush size, but does IO in 128 bytes */
if (c->x86 == 15 && c->x86_cache_alignment == 64)
c->x86_cache_alignment = 128;
@@ -315,16 +329,7 @@ static void cf_check early_init_intel(st
bootsym(trampoline_misc_enable_off) & MSR_IA32_MISC_ENABLE_XD_DISABLE)
printk(KERN_INFO "re-enabled NX (Execute Disable) protection\n");
- /* Unmask CPUID levels and NX if masked: */
- rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable);
-
- disable = misc_enable & MSR_IA32_MISC_ENABLE_LIMIT_CPUID;
- if (disable) {
- wrmsrl(MSR_IA32_MISC_ENABLE, misc_enable & ~disable);
- bootsym(trampoline_misc_enable_off) |= disable;
- printk(KERN_INFO "revised cpuid level: %d\n",
- cpuid_eax(0));
- }
+ intel_unlock_cpuid_leaves(c);
/* CPUID workaround for Intel 0F33/0F34 CPU */
if (boot_cpu_data.x86 == 0xF && boot_cpu_data.x86_model == 3 &&
++++++ 66718849-x86-IRQ-old_cpu_mask-in-fixup_irqs.patch ++++++
References: bsc#1214718
# Commit 817d1cd627be668c358d038f0fadbf7d24d417d3
# Date 2024-06-18 15:14:49 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/irq: deal with old_cpu_mask for interrupts in movement in fixup_irqs()
Given the current logic it's possible for ->arch.old_cpu_mask to get out of
sync: if a CPU set in old_cpu_mask is offlined and then onlined
again without old_cpu_mask having been updated the data in the mask will no
longer be accurate, as when brought back online the CPU will no longer have
old_vector configured to handle the old interrupt source.
If there's an interrupt movement in progress, and the to be offlined CPU (which
is the call context) is in the old_cpu_mask, clear it and update the mask, so
it doesn't contain stale data.
Note that when the system is going down fixup_irqs() will be called by
smp_send_stop() from CPU 0 with a mask with only CPU 0 on it, effectively
asking to move all interrupts to the current caller (CPU 0) which is the only
CPU to remain online. In that case we don't care to migrate interrupts that
are in the process of being moved, as it's likely we won't be able to move all
interrupts to CPU 0 due to vector shortage anyway.
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2539,7 +2539,7 @@ void fixup_irqs(const cpumask_t *mask, b
for ( irq = 0; irq < nr_irqs; irq++ )
{
bool break_affinity = false, set_affinity = true;
- unsigned int vector;
+ unsigned int vector, cpu = smp_processor_id();
cpumask_t *affinity = this_cpu(scratch_cpumask);
if ( irq == 2 )
@@ -2582,6 +2582,33 @@ void fixup_irqs(const cpumask_t *mask, b
affinity);
}
+ if ( desc->arch.move_in_progress &&
+ /*
+ * Only attempt to adjust the mask if the current CPU is going
+ * offline, otherwise the whole system is going down and leaving
+ * stale data in the masks is fine.
+ */
+ !cpu_online(cpu) &&
+ cpumask_test_cpu(cpu, desc->arch.old_cpu_mask) )
+ {
+ /*
+ * This CPU is going offline, remove it from ->arch.old_cpu_mask
+ * and possibly release the old vector if the old mask becomes
+ * empty.
+ *
+ * Note cleaning ->arch.old_cpu_mask is required if the CPU is
+ * brought offline and then online again, as when re-onlined the
+ * per-cpu vector table will no longer have ->arch.old_vector
+ * setup, and hence ->arch.old_cpu_mask would be stale.
+ */
+ cpumask_clear_cpu(cpu, desc->arch.old_cpu_mask);
+ if ( cpumask_empty(desc->arch.old_cpu_mask) )
+ {
+ desc->arch.move_in_progress = 0;
+ release_old_vec(desc);
+ }
+ }
+
/*
* Avoid shuffling the interrupt around as long as current target CPUs
* are a subset of the input mask. What fixup_irqs() cares about is
++++++ 6671885e-x86-IRQ-handle-moving-in-_assign_irq_vector.patch ++++++
References: bsc#1214718
# Commit 369558924a642bbb0cb731e9a3375958867cb17b
# Date 2024-06-18 15:15:10 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/irq: handle moving interrupts in _assign_irq_vector()
Currently there's logic in fixup_irqs() that attempts to prevent
_assign_irq_vector() from failing, as fixup_irqs() is required to evacuate all
interrupts from the CPUs not present in the input mask. The current logic in
fixup_irqs() is incomplete, as it doesn't deal with interrupts that have
move_cleanup_count > 0 and a non-empty ->arch.old_cpu_mask field.
Instead of attempting to fixup the interrupt descriptor in fixup_irqs() so that
_assign_irq_vector() cannot fail, introduce logic in _assign_irq_vector()
to deal with interrupts that have either move_{in_progress,cleanup_count} set
and no remaining online CPUs in ->arch.cpu_mask.
If _assign_irq_vector() is requested to move an interrupt in the state
described above, first attempt to see if ->arch.old_cpu_mask contains any valid
CPUs that could be used as fallback, and if that's the case do move the
interrupt back to the previous destination. Note this is easier because the
vector hasn't been released yet, so there's no need to allocate and setup a new
vector on the destination.
Due to the logic in fixup_irqs() that clears offline CPUs from
->arch.old_cpu_mask (and releases the old vector if the mask becomes empty) it
shouldn't be possible to get into _assign_irq_vector() with
->arch.move_{in_progress,cleanup_count} set but no online CPUs in
->arch.old_cpu_mask.
However if ->arch.move_{in_progress,cleanup_count} is set and the interrupt has
also changed affinity, it's possible the members of ->arch.old_cpu_mask are no
longer part of the affinity set, move the interrupt to a different CPU part of
the provided mask and keep the current ->arch.old_{cpu_mask,vector} for the
pending interrupt movement to be completed.
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -553,7 +553,58 @@ static int _assign_irq_vector(struct irq
}
if ( desc->arch.move_in_progress || desc->arch.move_cleanup_count )
- return -EAGAIN;
+ {
+ /*
+ * If the current destination is online refuse to shuffle. Retry after
+ * the in-progress movement has finished.
+ */
+ if ( cpumask_intersects(desc->arch.cpu_mask, &cpu_online_map) )
+ return -EAGAIN;
+
+ /*
+ * Due to the logic in fixup_irqs() that clears offlined CPUs from
+ * ->arch.old_cpu_mask it shouldn't be possible to get here with
+ * ->arch.move_{in_progress,cleanup_count} set and no online CPUs in
+ * ->arch.old_cpu_mask.
+ */
+ ASSERT(valid_irq_vector(desc->arch.old_vector));
+ ASSERT(cpumask_intersects(desc->arch.old_cpu_mask, &cpu_online_map));
+
+ if ( cpumask_intersects(desc->arch.old_cpu_mask, mask) )
+ {
+ /*
+ * Fallback to the old destination if moving is in progress and the
+ * current destination is to be offlined. This is only possible if
+ * the CPUs in old_cpu_mask intersect with the affinity mask passed
+ * in the 'mask' parameter.
+ */
+ desc->arch.vector = desc->arch.old_vector;
+ cpumask_and(desc->arch.cpu_mask, desc->arch.old_cpu_mask, mask);
+
+ /* Undo any possibly done cleanup. */
+ for_each_cpu(cpu, desc->arch.cpu_mask)
+ per_cpu(vector_irq, cpu)[desc->arch.vector] = irq;
+
+ /* Cancel the pending move and release the current vector. */
+ desc->arch.old_vector = IRQ_VECTOR_UNASSIGNED;
+ cpumask_clear(desc->arch.old_cpu_mask);
+ desc->arch.move_in_progress = 0;
+ desc->arch.move_cleanup_count = 0;
+ if ( desc->arch.used_vectors )
+ {
+ ASSERT(test_bit(old_vector, desc->arch.used_vectors));
+ clear_bit(old_vector, desc->arch.used_vectors);
+ }
+
+ return 0;
+ }
+
+ /*
+ * There's an interrupt movement in progress but the destination(s) in
+ * ->arch.old_cpu_mask are not suitable given the 'mask' parameter, go
+ * through the full logic to find a new vector in a suitable CPU.
+ */
+ }
err = -ENOSPC;
@@ -609,7 +660,22 @@ next:
current_vector = vector;
current_offset = offset;
- if ( valid_irq_vector(old_vector) )
+ if ( desc->arch.move_in_progress || desc->arch.move_cleanup_count )
+ {
+ ASSERT(!cpumask_intersects(desc->arch.cpu_mask, &cpu_online_map));
+ /*
+ * Special case when evacuating an interrupt from a CPU to be
+ * offlined and the interrupt was already in the process of being
+ * moved. Leave ->arch.old_{vector,cpu_mask} as-is and just
+ * replace ->arch.{cpu_mask,vector} with the new destination.
+ * Cleanup will be done normally for the old fields, just release
+ * the current vector here.
+ */
+ if ( desc->arch.used_vectors &&
+ !test_and_clear_bit(old_vector, desc->arch.used_vectors) )
+ ASSERT_UNREACHABLE();
+ }
+ else if ( valid_irq_vector(old_vector) )
{
cpumask_and(desc->arch.old_cpu_mask, desc->arch.cpu_mask,
&cpu_online_map);
@@ -2620,33 +2686,6 @@ void fixup_irqs(const cpumask_t *mask, b
continue;
}
- /*
- * In order for the affinity adjustment below to be successful, we
- * need _assign_irq_vector() to succeed. This in particular means
- * clearing desc->arch.move_in_progress if this would otherwise
- * prevent the function from succeeding. Since there's no way for the
- * flag to get cleared anymore when there's no possible destination
- * left (the only possibility then would be the IRQs enabled window
- * after this loop), there's then also no race with us doing it here.
- *
- * Therefore the logic here and there need to remain in sync.
- */
- if ( desc->arch.move_in_progress &&
- !cpumask_intersects(mask, desc->arch.cpu_mask) )
- {
- unsigned int cpu;
-
- cpumask_and(affinity, desc->arch.old_cpu_mask, &cpu_online_map);
-
- spin_lock(&vector_lock);
- for_each_cpu(cpu, affinity)
- per_cpu(vector_irq, cpu)[desc->arch.old_vector] = ~irq;
- spin_unlock(&vector_lock);
-
- release_old_vec(desc);
- desc->arch.move_in_progress = 0;
- }
-
if ( !cpumask_intersects(mask, desc->affinity) )
{
break_affinity = true;
++++++ 6672c846-x86-xstate-initialisation-of-XSS-cache.patch ++++++
# Commit 9e6dbbe8bf400aacb99009ddffa91d2a0c312b39
# Date 2024-06-19 13:00:06 +0100
# Author Andrew Cooper <andrew.cooper3(a)citrix.com>
# Committer Andrew Cooper <andrew.cooper3(a)citrix.com>
x86/xstate: Fix initialisation of XSS cache
The clobbering of this_cpu(xcr0) and this_cpu(xss) to architecturally invalid
values is to force the subsequent set_xcr0() and set_msr_xss() to reload the
hardware register.
While XCR0 is reloaded in xstate_init(), MSR_XSS isn't. This causes
get_msr_xss() to return the invalid value, and logic of the form:
old = get_msr_xss();
set_msr_xss(new);
...
set_msr_xss(old);
to try and restore said invalid value.
The architecturally invalid value must be purged from the cache, meaning the
hardware register must be written at least once. This in turn highlights that
the invalid value must only be used in the case that the hardware register is
available.
Fixes: f7f4a523927f ("x86/xstate: reset cached register values on resume")
Signed-off-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -641,13 +641,6 @@ void xstate_init(struct cpuinfo_x86 *c)
return;
}
- /*
- * Zap the cached values to make set_xcr0() and set_msr_xss() really
- * write it.
- */
- this_cpu(xcr0) = 0;
- this_cpu(xss) = ~0;
-
cpuid_count(XSTATE_CPUID, 0, &eax, &ebx, &ecx, &edx);
feature_mask = (((u64)edx << 32) | eax) & XCNTXT_MASK;
BUG_ON(!valid_xcr0(feature_mask));
@@ -657,8 +650,19 @@ void xstate_init(struct cpuinfo_x86 *c)
* Set CR4_OSXSAVE and run "cpuid" to get xsave_cntxt_size.
*/
set_in_cr4(X86_CR4_OSXSAVE);
+
+ /*
+ * Zap the cached values to make set_xcr0() and set_msr_xss() really write
+ * the hardware register.
+ */
+ this_cpu(xcr0) = 0;
if ( !set_xcr0(feature_mask) )
BUG();
+ if ( cpu_has_xsaves )
+ {
+ this_cpu(xss) = ~0;
+ set_msr_xss(0);
+ }
if ( bsp )
{
++++++ 6672c847-x86-CPUID-XSAVE-dynamic-leaves.patch ++++++
# Commit 71cacfb035f4a78ee10970dc38a3baa04d387451
# Date 2024-06-19 13:00:06 +0100
# Author Andrew Cooper <andrew.cooper3(a)citrix.com>
# Committer Andrew Cooper <andrew.cooper3(a)citrix.com>
x86/cpuid: Fix handling of XSAVE dynamic leaves
[ This is a minimal backport of commit 71cacfb035f4 ("x86/cpuid: Fix handling
of XSAVE dynamic leaves") to fix the bugs without depending on the large
rework of XSTATE handling in Xen 4.19 ]
First, if XSAVE is available in hardware but not visible to the guest, the
dynamic leaves shouldn't be filled in.
Second, the comment concerning XSS state is wrong. VT-x doesn't manage
host/guest state automatically, but there is provision for "host only" bits to
be set, so the implications are still accurate.
In Xen 4.18, no XSS states are supported, so it's safe to keep deferring to
real hardware.
Signed-off-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -330,24 +330,20 @@ void guest_cpuid(const struct vcpu *v, u
case XSTATE_CPUID:
switch ( subleaf )
{
- case 1:
- if ( p->xstate.xsavec || p->xstate.xsaves )
- {
- /*
- * TODO: Figure out what to do for XSS state. VT-x manages
- * host vs guest MSR_XSS automatically, so as soon as we start
- * supporting any XSS states, the wrong XSS will be in
- * context.
- */
- BUILD_BUG_ON(XSTATE_XSAVES_ONLY != 0);
-
- /*
- * Read CPUID[0xD,0/1].EBX from hardware. They vary with
- * enabled XSTATE, and appropraite XCR0|XSS are in context.
- */
+ /*
+ * Read CPUID[0xd,0/1].EBX from hardware. They vary with enabled
+ * XSTATE, and the appropriate XCR0 is in context.
+ */
case 0:
- res->b = cpuid_count_ebx(leaf, subleaf);
- }
+ if ( p->basic.xsave )
+ res->b = cpuid_count_ebx(0xd, 0);
+ break;
+
+ case 1:
+ /* This only works because Xen doesn't support XSS states yet. */
+ BUILD_BUG_ON(XSTATE_XSAVES_ONLY != 0);
+ if ( p->xstate.xsavec )
+ res->b = cpuid_count_ebx(0xd, 1);
break;
}
break;
++++++ 6673ffdc-x86-IRQ-forward-pending-to-new-dest-in-fixup_irqs.patch ++++++
References: bsc#1214718
# Commit e2bb28d621584fce15c907002ddc7c6772644b64
# Date 2024-06-20 12:09:32 +0200
# Author Roger Pau Monné <roger.pau(a)citrix.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/irq: forward pending interrupts to new destination in fixup_irqs()
fixup_irqs() is used to evacuate interrupts from to be offlined CPUs. Given
the CPU is to become offline, the normal migration logic used by Xen where the
vector in the previous target(s) is left configured until the interrupt is
received on the new destination is not suitable.
Instead attempt to do as much as possible in order to prevent loosing
interrupts. If fixup_irqs() is called from the CPU to be offlined (as is
currently the case for CPU hot unplug) attempt to forward pending vectors when
interrupts that target the current CPU are migrated to a different destination.
Additionally, for interrupts that have already been moved from the current CPU
prior to the call to fixup_irqs() but that haven't been delivered to the new
destination (iow: interrupts with move_in_progress set and the current CPU set
in ->arch.old_cpu_mask) also check whether the previous vector is pending and
forward it to the new destination.
This allows us to remove the window with interrupts enabled at the bottom of
fixup_irqs(). Such window wasn't safe anyway: references to the CPU to become
offline are removed from interrupts masks, but the per-CPU vector_irq[] array
is not updated to reflect those changes (as the CPU is going offline anyway).
Signed-off-by: Roger Pau Monné <roger.pau(a)citrix.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
--- a/xen/arch/x86/include/asm/apic.h
+++ b/xen/arch/x86/include/asm/apic.h
@@ -145,6 +145,11 @@ static __inline bool_t apic_isr_read(u8
(vector & 0x1f)) & 1;
}
+static inline bool apic_irr_read(unsigned int vector)
+{
+ return apic_read(APIC_IRR + (vector / 32 * 0x10)) & (1U << (vector % 32));
+}
+
static __inline u32 get_apic_id(void) /* Get the physical APIC id */
{
u32 id = apic_read(APIC_ID);
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2604,7 +2604,7 @@ void fixup_irqs(const cpumask_t *mask, b
for ( irq = 0; irq < nr_irqs; irq++ )
{
- bool break_affinity = false, set_affinity = true;
+ bool break_affinity = false, set_affinity = true, check_irr = false;
unsigned int vector, cpu = smp_processor_id();
cpumask_t *affinity = this_cpu(scratch_cpumask);
@@ -2658,6 +2658,25 @@ void fixup_irqs(const cpumask_t *mask, b
cpumask_test_cpu(cpu, desc->arch.old_cpu_mask) )
{
/*
+ * This to be offlined CPU was the target of an interrupt that's
+ * been moved, and the new destination target hasn't yet
+ * acknowledged any interrupt from it.
+ *
+ * We know the interrupt is configured to target the new CPU at
+ * this point, so we can check IRR for any pending vectors and
+ * forward them to the new destination.
+ *
+ * Note that for the other case of an interrupt movement being in
+ * progress (move_cleanup_count being non-zero) we know the new
+ * destination has already acked at least one interrupt from this
+ * source, and hence there's no need to forward any stale
+ * interrupts.
+ */
+ if ( apic_irr_read(desc->arch.old_vector) )
+ send_IPI_mask(cpumask_of(cpumask_any(desc->arch.cpu_mask)),
+ desc->arch.vector);
+
+ /*
* This CPU is going offline, remove it from ->arch.old_cpu_mask
* and possibly release the old vector if the old mask becomes
* empty.
@@ -2697,6 +2716,14 @@ void fixup_irqs(const cpumask_t *mask, b
if ( desc->handler->disable )
desc->handler->disable(desc);
+ /*
+ * If the current CPU is going offline and is (one of) the target(s) of
+ * the interrupt, signal to check whether there are any pending vectors
+ * to be handled in the local APIC after the interrupt has been moved.
+ */
+ if ( !cpu_online(cpu) && cpumask_test_cpu(cpu, desc->arch.cpu_mask) )
+ check_irr = true;
+
if ( desc->handler->set_affinity )
desc->handler->set_affinity(desc, affinity);
else if ( !(warned++) )
@@ -2707,6 +2734,18 @@ void fixup_irqs(const cpumask_t *mask, b
cpumask_copy(affinity, desc->affinity);
+ if ( check_irr && apic_irr_read(vector) )
+ /*
+ * Forward pending interrupt to the new destination, this CPU is
+ * going offline and otherwise the interrupt would be lost.
+ *
+ * Do the IRR check as late as possible before releasing the irq
+ * desc in order for any in-flight interrupts to be delivered to
+ * the lapic.
+ */
+ send_IPI_mask(cpumask_of(cpumask_any(desc->arch.cpu_mask)),
+ desc->arch.vector);
+
spin_unlock(&desc->lock);
if ( !verbose )
@@ -2718,11 +2757,6 @@ void fixup_irqs(const cpumask_t *mask, b
printk("Broke affinity for IRQ%u, new: %*pb\n",
irq, CPUMASK_PR(affinity));
}
-
- /* That doesn't seem sufficient. Give it 1ms. */
- local_irq_enable();
- mdelay(1);
- local_irq_disable();
}
void fixup_eoi(void)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pydantic for openSUSE:Factory checked in at 2024-06-25 23:06:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pydantic (Old)
and /work/SRC/openSUSE:Factory/.python-pydantic.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pydantic"
Tue Jun 25 23:06:41 2024 rev:28 rq:1183039 version:2.7.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pydantic/python-pydantic.changes 2024-06-07 15:02:47.714523522 +0200
+++ /work/SRC/openSUSE:Factory/.python-pydantic.new.18349/python-pydantic.changes 2024-06-25 23:06:59.869256574 +0200
@@ -1,0 +2,7 @@
+Mon Jun 24 15:45:05 UTC 2024 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.7.4:
+ * Bump `pydantic.v1` to `v1.10.16` reference
+ * Specify `recursive_guard` as kwarg in `FutureRef._evaluate`
+
+-------------------------------------------------------------------
Old:
----
pydantic-2.7.3.tar.gz
New:
----
pydantic-2.7.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pydantic.spec ++++++
--- /var/tmp/diff_new_pack.djlaL4/_old 2024-06-25 23:07:00.609283634 +0200
+++ /var/tmp/diff_new_pack.djlaL4/_new 2024-06-25 23:07:00.609283634 +0200
@@ -27,7 +27,7 @@
%endif
%{?sle15_python_module_pythons}
Name: python-pydantic%{psuffix}
-Version: 2.7.3
+Version: 2.7.4
Release: 0
Summary: Data validation and settings management using python type hinting
License: MIT
++++++ pydantic-2.7.3.tar.gz -> pydantic-2.7.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/HISTORY.md new/pydantic-2.7.4/HISTORY.md
--- old/pydantic-2.7.3/HISTORY.md 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/HISTORY.md 2024-06-12 15:44:13.000000000 +0200
@@ -1,3 +1,17 @@
+## v2.7.4 (2024-06-12)
+
+[Github release](https://github.com/pydantic/pydantic/releases/tag/v2.7.4)
+
+### What's Changed
+
+#### Packaging
+
+* Bump `pydantic.v1` to `v1.10.16` reference by @sydney-runkle in [#9639](https://github.com/pydantic/pydantic/pull/9639)
+
+#### Fixes
+
+* Specify `recursive_guard` as kwarg in `FutureRef._evaluate` by @vfazio in [#9612](https://github.com/pydantic/pydantic/pull/9612)
+
## v2.7.3 (2024-06-03)
[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.7.3)
@@ -992,6 +1006,11 @@
<!-- package description limit -->
+## v1.10.16 (2024-06-11)
+
+* Specify recursive_guard as kwarg in FutureRef._evaluate by @vfazio in https://github.com/pydantic/pydantic/pull/9612
+* Fix mypy v1 plugin for upcoming mypy release by @ cdce8p in https://github.com/pydantic/pydantic/pull/9586
+* Import modules/objects directly from v1 namespace by @exs-dwoodward in https://github.com/pydantic/pydantic/pull/9162
## v1.10.15 (2024-04-03)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/__init__.py new/pydantic-2.7.4/pydantic/v1/__init__.py
--- old/pydantic-2.7.3/pydantic/v1/__init__.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/__init__.py 2024-06-12 15:44:13.000000000 +0200
@@ -1,24 +1,24 @@
# flake8: noqa
-from . import dataclasses
-from .annotated_types import create_model_from_namedtuple, create_model_from_typeddict
-from .class_validators import root_validator, validator
-from .config import BaseConfig, ConfigDict, Extra
-from .decorator import validate_arguments
-from .env_settings import BaseSettings
-from .error_wrappers import ValidationError
-from .errors import *
-from .fields import Field, PrivateAttr, Required
-from .main import *
-from .networks import *
-from .parse import Protocol
-from .tools import *
-from .types import *
-from .version import VERSION, compiled
+from pydantic.v1 import dataclasses
+from pydantic.v1.annotated_types import create_model_from_namedtuple, create_model_from_typeddict
+from pydantic.v1.class_validators import root_validator, validator
+from pydantic.v1.config import BaseConfig, ConfigDict, Extra
+from pydantic.v1.decorator import validate_arguments
+from pydantic.v1.env_settings import BaseSettings
+from pydantic.v1.error_wrappers import ValidationError
+from pydantic.v1.errors import *
+from pydantic.v1.fields import Field, PrivateAttr, Required
+from pydantic.v1.main import *
+from pydantic.v1.networks import *
+from pydantic.v1.parse import Protocol
+from pydantic.v1.tools import *
+from pydantic.v1.types import *
+from pydantic.v1.version import VERSION, compiled
__version__ = VERSION
-# WARNING __all__ from .errors is not included here, it will be removed as an export here in v2
-# please use "from pydantic.errors import ..." instead
+# WARNING __all__ from pydantic.errors is not included here, it will be removed as an export here in v2
+# please use "from pydantic.v1.errors import ..." instead
__all__ = [
# annotated types utils
'create_model_from_namedtuple',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/_hypothesis_plugin.py new/pydantic-2.7.4/pydantic/v1/_hypothesis_plugin.py
--- old/pydantic-2.7.3/pydantic/v1/_hypothesis_plugin.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/_hypothesis_plugin.py 2024-06-12 15:44:13.000000000 +0200
@@ -35,7 +35,7 @@
import pydantic
import pydantic.color
import pydantic.types
-from pydantic.utils import lenient_issubclass
+from pydantic.v1.utils import lenient_issubclass
# FilePath and DirectoryPath are explicitly unsupported, as we'd have to create
# them on-disk, and that's unsafe in general without being told *where* to do so.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/annotated_types.py new/pydantic-2.7.4/pydantic/v1/annotated_types.py
--- old/pydantic-2.7.3/pydantic/v1/annotated_types.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/annotated_types.py 2024-06-12 15:44:13.000000000 +0200
@@ -1,9 +1,9 @@
import sys
from typing import TYPE_CHECKING, Any, Dict, FrozenSet, NamedTuple, Type
-from .fields import Required
-from .main import BaseModel, create_model
-from .typing import is_typeddict, is_typeddict_special
+from pydantic.v1.fields import Required
+from pydantic.v1.main import BaseModel, create_model
+from pydantic.v1.typing import is_typeddict, is_typeddict_special
if TYPE_CHECKING:
from typing_extensions import TypedDict
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/class_validators.py new/pydantic-2.7.4/pydantic/v1/class_validators.py
--- old/pydantic-2.7.3/pydantic/v1/class_validators.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/class_validators.py 2024-06-12 15:44:13.000000000 +0200
@@ -5,12 +5,12 @@
from types import FunctionType
from typing import TYPE_CHECKING, Any, Callable, Dict, Iterable, List, Optional, Set, Tuple, Type, Union, overload
-from .errors import ConfigError
-from .typing import AnyCallable
-from .utils import ROOT_KEY, in_ipython
+from pydantic.v1.errors import ConfigError
+from pydantic.v1.typing import AnyCallable
+from pydantic.v1.utils import ROOT_KEY, in_ipython
if TYPE_CHECKING:
- from .typing import AnyClassMethod
+ from pydantic.v1.typing import AnyClassMethod
class Validator:
@@ -36,9 +36,9 @@
if TYPE_CHECKING:
from inspect import Signature
- from .config import BaseConfig
- from .fields import ModelField
- from .types import ModelOrDc
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.fields import ModelField
+ from pydantic.v1.types import ModelOrDc
ValidatorCallable = Callable[[Optional[ModelOrDc], Any, Dict[str, Any], ModelField, Type[BaseConfig]], Any]
ValidatorsList = List[ValidatorCallable]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/color.py new/pydantic-2.7.4/pydantic/v1/color.py
--- old/pydantic-2.7.3/pydantic/v1/color.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/color.py 2024-06-12 15:44:13.000000000 +0200
@@ -12,11 +12,11 @@
from colorsys import hls_to_rgb, rgb_to_hls
from typing import TYPE_CHECKING, Any, Dict, Optional, Tuple, Union, cast
-from .errors import ColorError
-from .utils import Representation, almost_equal_floats
+from pydantic.v1.errors import ColorError
+from pydantic.v1.utils import Representation, almost_equal_floats
if TYPE_CHECKING:
- from .typing import CallableGenerator, ReprArgs
+ from pydantic.v1.typing import CallableGenerator, ReprArgs
ColorTuple = Union[Tuple[int, int, int], Tuple[int, int, int, float]]
ColorType = Union[ColorTuple, str]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/config.py new/pydantic-2.7.4/pydantic/v1/config.py
--- old/pydantic-2.7.3/pydantic/v1/config.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/config.py 2024-06-12 15:44:13.000000000 +0200
@@ -4,15 +4,15 @@
from typing_extensions import Literal, Protocol
-from .typing import AnyArgTCallable, AnyCallable
-from .utils import GetterDict
-from .version import compiled
+from pydantic.v1.typing import AnyArgTCallable, AnyCallable
+from pydantic.v1.utils import GetterDict
+from pydantic.v1.version import compiled
if TYPE_CHECKING:
from typing import overload
- from .fields import ModelField
- from .main import BaseModel
+ from pydantic.v1.fields import ModelField
+ from pydantic.v1.main import BaseModel
ConfigType = Type['BaseConfig']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/dataclasses.py new/pydantic-2.7.4/pydantic/v1/dataclasses.py
--- old/pydantic-2.7.3/pydantic/v1/dataclasses.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/dataclasses.py 2024-06-12 15:44:13.000000000 +0200
@@ -47,17 +47,17 @@
from typing_extensions import dataclass_transform
-from .class_validators import gather_all_validators
-from .config import BaseConfig, ConfigDict, Extra, get_config
-from .error_wrappers import ValidationError
-from .errors import DataclassTypeError
-from .fields import Field, FieldInfo, Required, Undefined
-from .main import create_model, validate_model
-from .utils import ClassAttribute
+from pydantic.v1.class_validators import gather_all_validators
+from pydantic.v1.config import BaseConfig, ConfigDict, Extra, get_config
+from pydantic.v1.error_wrappers import ValidationError
+from pydantic.v1.errors import DataclassTypeError
+from pydantic.v1.fields import Field, FieldInfo, Required, Undefined
+from pydantic.v1.main import create_model, validate_model
+from pydantic.v1.utils import ClassAttribute
if TYPE_CHECKING:
- from .main import BaseModel
- from .typing import CallableGenerator, NoArgAnyCallable
+ from pydantic.v1.main import BaseModel
+ from pydantic.v1.typing import CallableGenerator, NoArgAnyCallable
DataclassT = TypeVar('DataclassT', bound='Dataclass')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/datetime_parse.py new/pydantic-2.7.4/pydantic/v1/datetime_parse.py
--- old/pydantic-2.7.3/pydantic/v1/datetime_parse.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/datetime_parse.py 2024-06-12 15:44:13.000000000 +0200
@@ -18,7 +18,7 @@
from datetime import date, datetime, time, timedelta, timezone
from typing import Dict, Optional, Type, Union
-from . import errors
+from pydantic.v1 import errors
date_expr = r'(?P<year>\d{4})-(?P<month>\d{1,2})-(?P<day>\d{1,2})'
time_expr = (
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/decorator.py new/pydantic-2.7.4/pydantic/v1/decorator.py
--- old/pydantic-2.7.3/pydantic/v1/decorator.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/decorator.py 2024-06-12 15:44:13.000000000 +0200
@@ -1,17 +1,17 @@
from functools import wraps
from typing import TYPE_CHECKING, Any, Callable, Dict, List, Mapping, Optional, Tuple, Type, TypeVar, Union, overload
-from . import validator
-from .config import Extra
-from .errors import ConfigError
-from .main import BaseModel, create_model
-from .typing import get_all_type_hints
-from .utils import to_camel
+from pydantic.v1 import validator
+from pydantic.v1.config import Extra
+from pydantic.v1.errors import ConfigError
+from pydantic.v1.main import BaseModel, create_model
+from pydantic.v1.typing import get_all_type_hints
+from pydantic.v1.utils import to_camel
__all__ = ('validate_arguments',)
if TYPE_CHECKING:
- from .typing import AnyCallable
+ from pydantic.v1.typing import AnyCallable
AnyCallableT = TypeVar('AnyCallableT', bound=AnyCallable)
ConfigType = Union[None, Type[Any], Dict[str, Any]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/env_settings.py new/pydantic-2.7.4/pydantic/v1/env_settings.py
--- old/pydantic-2.7.3/pydantic/v1/env_settings.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/env_settings.py 2024-06-12 15:44:13.000000000 +0200
@@ -3,12 +3,12 @@
from pathlib import Path
from typing import AbstractSet, Any, Callable, ClassVar, Dict, List, Mapping, Optional, Tuple, Type, Union
-from .config import BaseConfig, Extra
-from .fields import ModelField
-from .main import BaseModel
-from .types import JsonWrapper
-from .typing import StrPath, display_as_type, get_origin, is_union
-from .utils import deep_update, lenient_issubclass, path_type, sequence_like
+from pydantic.v1.config import BaseConfig, Extra
+from pydantic.v1.fields import ModelField
+from pydantic.v1.main import BaseModel
+from pydantic.v1.types import JsonWrapper
+from pydantic.v1.typing import StrPath, display_as_type, get_origin, is_union
+from pydantic.v1.utils import deep_update, lenient_issubclass, path_type, sequence_like
env_file_sentinel = str(object())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/error_wrappers.py new/pydantic-2.7.4/pydantic/v1/error_wrappers.py
--- old/pydantic-2.7.3/pydantic/v1/error_wrappers.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/error_wrappers.py 2024-06-12 15:44:13.000000000 +0200
@@ -1,15 +1,15 @@
import json
from typing import TYPE_CHECKING, Any, Dict, Generator, List, Optional, Sequence, Tuple, Type, Union
-from .json import pydantic_encoder
-from .utils import Representation
+from pydantic.v1.json import pydantic_encoder
+from pydantic.v1.utils import Representation
if TYPE_CHECKING:
from typing_extensions import TypedDict
- from .config import BaseConfig
- from .types import ModelOrDc
- from .typing import ReprArgs
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.types import ModelOrDc
+ from pydantic.v1.typing import ReprArgs
Loc = Tuple[Union[int, str], ...]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/errors.py new/pydantic-2.7.4/pydantic/v1/errors.py
--- old/pydantic-2.7.3/pydantic/v1/errors.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/errors.py 2024-06-12 15:44:13.000000000 +0200
@@ -2,12 +2,12 @@
from pathlib import Path
from typing import TYPE_CHECKING, Any, Callable, Sequence, Set, Tuple, Type, Union
-from .typing import display_as_type
+from pydantic.v1.typing import display_as_type
if TYPE_CHECKING:
- from .typing import DictStrAny
+ from pydantic.v1.typing import DictStrAny
-# explicitly state exports to avoid "from .errors import *" also importing Decimal, Path etc.
+# explicitly state exports to avoid "from pydantic.v1.errors import *" also importing Decimal, Path etc.
__all__ = (
'PydanticTypeError',
'PydanticValueError',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/fields.py new/pydantic-2.7.4/pydantic/v1/fields.py
--- old/pydantic-2.7.3/pydantic/v1/fields.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/fields.py 2024-06-12 15:44:13.000000000 +0200
@@ -28,12 +28,12 @@
from typing_extensions import Annotated, Final
-from . import errors as errors_
-from .class_validators import Validator, make_generic_validator, prep_validators
-from .error_wrappers import ErrorWrapper
-from .errors import ConfigError, InvalidDiscriminator, MissingDiscriminator, NoneIsNotAllowedError
-from .types import Json, JsonWrapper
-from .typing import (
+from pydantic.v1 import errors as errors_
+from pydantic.v1.class_validators import Validator, make_generic_validator, prep_validators
+from pydantic.v1.error_wrappers import ErrorWrapper
+from pydantic.v1.errors import ConfigError, InvalidDiscriminator, MissingDiscriminator, NoneIsNotAllowedError
+from pydantic.v1.types import Json, JsonWrapper
+from pydantic.v1.typing import (
NoArgAnyCallable,
convert_generics,
display_as_type,
@@ -48,7 +48,7 @@
is_union,
new_type_supertype,
)
-from .utils import (
+from pydantic.v1.utils import (
PyObjectStr,
Representation,
ValueItems,
@@ -59,7 +59,7 @@
sequence_like,
smart_deepcopy,
)
-from .validators import constant_validator, dict_validator, find_validators, validate_json
+from pydantic.v1.validators import constant_validator, dict_validator, find_validators, validate_json
Required: Any = Ellipsis
@@ -83,11 +83,11 @@
Undefined = UndefinedType()
if TYPE_CHECKING:
- from .class_validators import ValidatorsList
- from .config import BaseConfig
- from .error_wrappers import ErrorList
- from .types import ModelOrDc
- from .typing import AbstractSetIntStr, MappingIntStrAny, ReprArgs
+ from pydantic.v1.class_validators import ValidatorsList
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.error_wrappers import ErrorList
+ from pydantic.v1.types import ModelOrDc
+ from pydantic.v1.typing import AbstractSetIntStr, MappingIntStrAny, ReprArgs
ValidateReturn = Tuple[Optional[Any], Optional[ErrorList]]
LocStr = Union[Tuple[Union[int, str], ...], str]
@@ -490,7 +490,7 @@
class_validators: Optional[Dict[str, Validator]],
config: Type['BaseConfig'],
) -> 'ModelField':
- from .schema import get_annotation_from_field_info
+ from pydantic.v1.schema import get_annotation_from_field_info
field_info, value = cls._get_field_info(name, annotation, value, config)
required: 'BoolUndefined' = Undefined
@@ -1160,7 +1160,7 @@
"""
Whether the field is "complex" eg. env variables should be parsed as JSON.
"""
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
return (
self.shape != SHAPE_SINGLETON
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/generics.py new/pydantic-2.7.4/pydantic/v1/generics.py
--- old/pydantic-2.7.3/pydantic/v1/generics.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/generics.py 2024-06-12 15:44:13.000000000 +0200
@@ -22,12 +22,12 @@
from typing_extensions import Annotated, Literal as ExtLiteral
-from .class_validators import gather_all_validators
-from .fields import DeferredType
-from .main import BaseModel, create_model
-from .types import JsonWrapper
-from .typing import display_as_type, get_all_type_hints, get_args, get_origin, typing_base
-from .utils import all_identical, lenient_issubclass
+from pydantic.v1.class_validators import gather_all_validators
+from pydantic.v1.fields import DeferredType
+from pydantic.v1.main import BaseModel, create_model
+from pydantic.v1.types import JsonWrapper
+from pydantic.v1.typing import display_as_type, get_all_type_hints, get_args, get_origin, typing_base
+from pydantic.v1.utils import all_identical, lenient_issubclass
if sys.version_info >= (3, 10):
from typing import _UnionGenericAlias
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/json.py new/pydantic-2.7.4/pydantic/v1/json.py
--- old/pydantic-2.7.3/pydantic/v1/json.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/json.py 2024-06-12 15:44:13.000000000 +0200
@@ -9,9 +9,9 @@
from typing import Any, Callable, Dict, Type, Union
from uuid import UUID
-from .color import Color
-from .networks import NameEmail
-from .types import SecretBytes, SecretStr
+from pydantic.v1.color import Color
+from pydantic.v1.networks import NameEmail
+from pydantic.v1.types import SecretBytes, SecretStr
__all__ = 'pydantic_encoder', 'custom_pydantic_encoder', 'timedelta_isoformat'
@@ -72,7 +72,7 @@
def pydantic_encoder(obj: Any) -> Any:
from dataclasses import asdict, is_dataclass
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
if isinstance(obj, BaseModel):
return obj.dict()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/main.py new/pydantic-2.7.4/pydantic/v1/main.py
--- old/pydantic-2.7.3/pydantic/v1/main.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/main.py 2024-06-12 15:44:13.000000000 +0200
@@ -26,11 +26,11 @@
from typing_extensions import dataclass_transform
-from .class_validators import ValidatorGroup, extract_root_validators, extract_validators, inherit_validators
-from .config import BaseConfig, Extra, inherit_config, prepare_config
-from .error_wrappers import ErrorWrapper, ValidationError
-from .errors import ConfigError, DictError, ExtraError, MissingError
-from .fields import (
+from pydantic.v1.class_validators import ValidatorGroup, extract_root_validators, extract_validators, inherit_validators
+from pydantic.v1.config import BaseConfig, Extra, inherit_config, prepare_config
+from pydantic.v1.error_wrappers import ErrorWrapper, ValidationError
+from pydantic.v1.errors import ConfigError, DictError, ExtraError, MissingError
+from pydantic.v1.fields import (
MAPPING_LIKE_SHAPES,
Field,
ModelField,
@@ -39,11 +39,11 @@
Undefined,
is_finalvar_with_default_val,
)
-from .json import custom_pydantic_encoder, pydantic_encoder
-from .parse import Protocol, load_file, load_str_bytes
-from .schema import default_ref_template, model_schema
-from .types import PyObject, StrBytes
-from .typing import (
+from pydantic.v1.json import custom_pydantic_encoder, pydantic_encoder
+from pydantic.v1.parse import Protocol, load_file, load_str_bytes
+from pydantic.v1.schema import default_ref_template, model_schema
+from pydantic.v1.types import PyObject, StrBytes
+from pydantic.v1.typing import (
AnyCallable,
get_args,
get_origin,
@@ -53,7 +53,7 @@
resolve_annotations,
update_model_forward_refs,
)
-from .utils import (
+from pydantic.v1.utils import (
DUNDER_ATTRIBUTES,
ROOT_KEY,
ClassAttribute,
@@ -73,9 +73,9 @@
if TYPE_CHECKING:
from inspect import Signature
- from .class_validators import ValidatorListDict
- from .types import ModelOrDc
- from .typing import (
+ from pydantic.v1.class_validators import ValidatorListDict
+ from pydantic.v1.types import ModelOrDc
+ from pydantic.v1.typing import (
AbstractSetIntStr,
AnyClassMethod,
CallableGenerator,
@@ -669,7 +669,7 @@
def schema_json(
cls, *, by_alias: bool = True, ref_template: str = default_ref_template, **dumps_kwargs: Any
) -> str:
- from .json import pydantic_encoder
+ from pydantic.v1.json import pydantic_encoder
return cls.__config__.json_dumps(
cls.schema(by_alias=by_alias, ref_template=ref_template), default=pydantic_encoder, **dumps_kwargs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/mypy.py new/pydantic-2.7.4/pydantic/v1/mypy.py
--- old/pydantic-2.7.3/pydantic/v1/mypy.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/mypy.py 2024-06-12 15:44:13.000000000 +0200
@@ -57,6 +57,7 @@
Type,
TypeOfAny,
TypeType,
+ TypeVarId,
TypeVarType,
UnionType,
get_proper_type,
@@ -65,7 +66,7 @@
from mypy.util import get_unique_redefinition_name
from mypy.version import __version__ as mypy_version
-from .utils import is_valid_field
+from pydantic.v1.utils import is_valid_field
try:
from mypy.types import TypeVarDef # type: ignore[attr-defined]
@@ -498,7 +499,7 @@
tvd = TypeVarType(
self_tvar_name,
tvar_fullname,
- -1,
+ TypeVarId(-1),
[],
obj_type,
AnyType(TypeOfAny.from_omitted_generics), # type: ignore[arg-type]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/networks.py new/pydantic-2.7.4/pydantic/v1/networks.py
--- old/pydantic-2.7.3/pydantic/v1/networks.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/networks.py 2024-06-12 15:44:13.000000000 +0200
@@ -27,17 +27,17 @@
no_type_check,
)
-from . import errors
-from .utils import Representation, update_not_none
-from .validators import constr_length_validator, str_validator
+from pydantic.v1 import errors
+from pydantic.v1.utils import Representation, update_not_none
+from pydantic.v1.validators import constr_length_validator, str_validator
if TYPE_CHECKING:
import email_validator
from typing_extensions import TypedDict
- from .config import BaseConfig
- from .fields import ModelField
- from .typing import AnyCallable
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.fields import ModelField
+ from pydantic.v1.typing import AnyCallable
CallableGenerator = Generator[AnyCallable, None, None]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/parse.py new/pydantic-2.7.4/pydantic/v1/parse.py
--- old/pydantic-2.7.3/pydantic/v1/parse.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/parse.py 2024-06-12 15:44:13.000000000 +0200
@@ -4,7 +4,7 @@
from pathlib import Path
from typing import Any, Callable, Union
-from .types import StrBytes
+from pydantic.v1.types import StrBytes
class Protocol(str, Enum):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/schema.py new/pydantic-2.7.4/pydantic/v1/schema.py
--- old/pydantic-2.7.3/pydantic/v1/schema.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/schema.py 2024-06-12 15:44:13.000000000 +0200
@@ -31,7 +31,7 @@
from typing_extensions import Annotated, Literal
-from .fields import (
+from pydantic.v1.fields import (
MAPPING_LIKE_SHAPES,
SHAPE_DEQUE,
SHAPE_FROZENSET,
@@ -46,9 +46,9 @@
FieldInfo,
ModelField,
)
-from .json import pydantic_encoder
-from .networks import AnyUrl, EmailStr
-from .types import (
+from pydantic.v1.json import pydantic_encoder
+from pydantic.v1.networks import AnyUrl, EmailStr
+from pydantic.v1.types import (
ConstrainedDecimal,
ConstrainedFloat,
ConstrainedFrozenSet,
@@ -69,7 +69,7 @@
conset,
constr,
)
-from .typing import (
+from pydantic.v1.typing import (
all_literal_values,
get_args,
get_origin,
@@ -80,11 +80,11 @@
is_none_type,
is_union,
)
-from .utils import ROOT_KEY, get_model, lenient_issubclass
+from pydantic.v1.utils import ROOT_KEY, get_model, lenient_issubclass
if TYPE_CHECKING:
- from .dataclasses import Dataclass
- from .main import BaseModel
+ from pydantic.v1.dataclasses import Dataclass
+ from pydantic.v1.main import BaseModel
default_prefix = '#/definitions/'
default_ref_template = '#/definitions/{model}'
@@ -378,7 +378,7 @@
:param known_models: used to solve circular references
:return: a set with the model used in the declaration for this field, if any, and all its sub-models
"""
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
flat_models: TypeModelSet = set()
@@ -445,7 +445,7 @@
Take a single ``field`` and generate the schema for its type only, not including additional
information as title, etc. Also return additional schema definitions, from sub-models.
"""
- from .main import BaseModel # noqa: F811
+ from pydantic.v1.main import BaseModel # noqa: F811
definitions = {}
nested_models: Set[str] = set()
@@ -838,7 +838,7 @@
Take a single Pydantic ``ModelField``, and return its schema and any additional definitions from sub-models.
"""
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
definitions: Dict[str, Any] = {}
nested_models: Set[str] = set()
@@ -974,7 +974,7 @@
def encode_default(dft: Any) -> Any:
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
if isinstance(dft, BaseModel) or is_dataclass(dft):
dft = cast('dict[str, Any]', pydantic_encoder(dft))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/tools.py new/pydantic-2.7.4/pydantic/v1/tools.py
--- old/pydantic-2.7.3/pydantic/v1/tools.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/tools.py 2024-06-12 15:44:13.000000000 +0200
@@ -3,16 +3,16 @@
from pathlib import Path
from typing import TYPE_CHECKING, Any, Callable, Optional, Type, TypeVar, Union
-from .parse import Protocol, load_file, load_str_bytes
-from .types import StrBytes
-from .typing import display_as_type
+from pydantic.v1.parse import Protocol, load_file, load_str_bytes
+from pydantic.v1.types import StrBytes
+from pydantic.v1.typing import display_as_type
__all__ = ('parse_file_as', 'parse_obj_as', 'parse_raw_as', 'schema_of', 'schema_json_of')
NameFactory = Union[str, Callable[[Type[Any]], str]]
if TYPE_CHECKING:
- from .typing import DictStrAny
+ from pydantic.v1.typing import DictStrAny
def _generate_parsing_type_name(type_: Any) -> str:
@@ -21,7 +21,7 @@
@lru_cache(maxsize=2048)
def _get_parsing_type(type_: Any, *, type_name: Optional[NameFactory] = None) -> Any:
- from .main import create_model
+ from pydantic.v1.main import create_model
if type_name is None:
type_name = _generate_parsing_type_name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/types.py new/pydantic-2.7.4/pydantic/v1/types.py
--- old/pydantic-2.7.3/pydantic/v1/types.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/types.py 2024-06-12 15:44:13.000000000 +0200
@@ -28,10 +28,10 @@
from uuid import UUID
from weakref import WeakSet
-from . import errors
-from .datetime_parse import parse_date
-from .utils import import_string, update_not_none
-from .validators import (
+from pydantic.v1 import errors
+from pydantic.v1.datetime_parse import parse_date
+from pydantic.v1.utils import import_string, update_not_none
+from pydantic.v1.validators import (
bytes_validator,
constr_length_validator,
constr_lower,
@@ -123,9 +123,9 @@
if TYPE_CHECKING:
from typing_extensions import Annotated
- from .dataclasses import Dataclass
- from .main import BaseModel
- from .typing import CallableGenerator
+ from pydantic.v1.dataclasses import Dataclass
+ from pydantic.v1.main import BaseModel
+ from pydantic.v1.typing import CallableGenerator
ModelOrDc = Type[Union[BaseModel, Dataclass]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/typing.py new/pydantic-2.7.4/pydantic/v1/typing.py
--- old/pydantic-2.7.3/pydantic/v1/typing.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/typing.py 2024-06-12 15:44:13.000000000 +0200
@@ -63,7 +63,9 @@
def evaluate_forwardref(type_: ForwardRef, globalns: Any, localns: Any) -> Any:
# Even though it is the right signature for python 3.9, mypy complains with
# `error: Too many arguments for "_evaluate" of "ForwardRef"` hence the cast...
- return cast(Any, type_)._evaluate(globalns, localns, set())
+ # Python 3.13/3.12.4+ made `recursive_guard` a kwarg, so name it explicitly to avoid:
+ # TypeError: ForwardRef._evaluate() missing 1 required keyword-only argument: 'recursive_guard'
+ return cast(Any, type_)._evaluate(globalns, localns, recursive_guard=set())
if sys.version_info < (3, 9):
@@ -256,7 +258,7 @@
if TYPE_CHECKING:
- from .fields import ModelField
+ from pydantic.v1.fields import ModelField
TupleGenerator = Generator[Tuple[str, Any], None, None]
DictStrAny = Dict[str, Any]
@@ -435,7 +437,7 @@
Check if a given class is a named tuple.
It can be either a `typing.NamedTuple` or `collections.namedtuple`
"""
- from .utils import lenient_issubclass
+ from pydantic.v1.utils import lenient_issubclass
return lenient_issubclass(type_, tuple) and hasattr(type_, '_fields')
@@ -445,7 +447,7 @@
Check if a given class is a typed dict (from `typing` or `typing_extensions`)
In 3.10, there will be a public method (https://docs.python.org/3.10/library/typing.html#typing.is_typeddict)
"""
- from .utils import lenient_issubclass
+ from pydantic.v1.utils import lenient_issubclass
return lenient_issubclass(type_, dict) and hasattr(type_, '__total__')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/utils.py new/pydantic-2.7.4/pydantic/v1/utils.py
--- old/pydantic-2.7.3/pydantic/v1/utils.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/utils.py 2024-06-12 15:44:13.000000000 +0200
@@ -28,8 +28,8 @@
from typing_extensions import Annotated
-from .errors import ConfigError
-from .typing import (
+from pydantic.v1.errors import ConfigError
+from pydantic.v1.typing import (
NoneType,
WithArgsTypes,
all_literal_values,
@@ -39,17 +39,17 @@
is_literal_type,
is_union,
)
-from .version import version_info
+from pydantic.v1.version import version_info
if TYPE_CHECKING:
from inspect import Signature
from pathlib import Path
- from .config import BaseConfig
- from .dataclasses import Dataclass
- from .fields import ModelField
- from .main import BaseModel
- from .typing import AbstractSetIntStr, DictIntStrAny, IntStr, MappingIntStrAny, ReprArgs
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.dataclasses import Dataclass
+ from pydantic.v1.fields import ModelField
+ from pydantic.v1.main import BaseModel
+ from pydantic.v1.typing import AbstractSetIntStr, DictIntStrAny, IntStr, MappingIntStrAny, ReprArgs
RichReprResult = Iterable[Union[Any, Tuple[Any], Tuple[str, Any], Tuple[str, Any, Any]]]
@@ -240,7 +240,7 @@
"""
from inspect import Parameter, Signature, signature
- from .config import Extra
+ from pydantic.v1.config import Extra
present_params = signature(init).parameters.values()
merged_params: Dict[str, Parameter] = {}
@@ -298,7 +298,7 @@
def get_model(obj: Union[Type['BaseModel'], Type['Dataclass']]) -> Type['BaseModel']:
- from .main import BaseModel
+ from pydantic.v1.main import BaseModel
try:
model_cls = obj.__pydantic_model__ # type: ignore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/v1.py new/pydantic-2.7.4/pydantic/v1/v1.py
--- old/pydantic-2.7.3/pydantic/v1/v1.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/v1.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,116 +0,0 @@
-# NOTE This file aliases the pydantic namespace as pydantic.v1 for smoother v1 -> v2 transition
-# flake8: noqa
-from pydantic import *
-
-# WARNING __all__ from .errors is not included here, it will be removed as an export here in v2
-# please use "from pydantic.errors import ..." instead
-__all__ = [
- # annotated types utils
- "create_model_from_namedtuple",
- "create_model_from_typeddict",
- # dataclasses
- "dataclasses",
- # class_validators
- "root_validator",
- "validator",
- # config
- "BaseConfig",
- "ConfigDict",
- "Extra",
- # decorator
- "validate_arguments",
- # env_settings
- "BaseSettings",
- # error_wrappers
- "ValidationError",
- # fields
- "Field",
- "Required",
- # main
- "BaseModel",
- "create_model",
- "validate_model",
- # network
- "AnyUrl",
- "AnyHttpUrl",
- "FileUrl",
- "HttpUrl",
- "stricturl",
- "EmailStr",
- "NameEmail",
- "IPvAnyAddress",
- "IPvAnyInterface",
- "IPvAnyNetwork",
- "PostgresDsn",
- "CockroachDsn",
- "AmqpDsn",
- "RedisDsn",
- "MongoDsn",
- "KafkaDsn",
- "validate_email",
- # parse
- "Protocol",
- # tools
- "parse_file_as",
- "parse_obj_as",
- "parse_raw_as",
- "schema_of",
- "schema_json_of",
- # types
- "NoneStr",
- "NoneBytes",
- "StrBytes",
- "NoneStrBytes",
- "StrictStr",
- "ConstrainedBytes",
- "conbytes",
- "ConstrainedList",
- "conlist",
- "ConstrainedSet",
- "conset",
- "ConstrainedFrozenSet",
- "confrozenset",
- "ConstrainedStr",
- "constr",
- "PyObject",
- "ConstrainedInt",
- "conint",
- "PositiveInt",
- "NegativeInt",
- "NonNegativeInt",
- "NonPositiveInt",
- "ConstrainedFloat",
- "confloat",
- "PositiveFloat",
- "NegativeFloat",
- "NonNegativeFloat",
- "NonPositiveFloat",
- "FiniteFloat",
- "ConstrainedDecimal",
- "condecimal",
- "ConstrainedDate",
- "condate",
- "UUID1",
- "UUID3",
- "UUID4",
- "UUID5",
- "FilePath",
- "DirectoryPath",
- "Json",
- "JsonWrapper",
- "SecretField",
- "SecretStr",
- "SecretBytes",
- "StrictBool",
- "StrictBytes",
- "StrictInt",
- "StrictFloat",
- "PaymentCardNumber",
- "PrivateAttr",
- "ByteSize",
- "PastDate",
- "FutureDate",
- # version
- "compiled",
- "VERSION",
-]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/validators.py new/pydantic-2.7.4/pydantic/v1/validators.py
--- old/pydantic-2.7.3/pydantic/v1/validators.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/validators.py 2024-06-12 15:44:13.000000000 +0200
@@ -28,9 +28,9 @@
)
from uuid import UUID
-from . import errors
-from .datetime_parse import parse_date, parse_datetime, parse_duration, parse_time
-from .typing import (
+from pydantic.v1 import errors
+from pydantic.v1.datetime_parse import parse_date, parse_datetime, parse_duration, parse_time
+from pydantic.v1.typing import (
AnyCallable,
all_literal_values,
display_as_type,
@@ -41,14 +41,14 @@
is_none_type,
is_typeddict,
)
-from .utils import almost_equal_floats, lenient_issubclass, sequence_like
+from pydantic.v1.utils import almost_equal_floats, lenient_issubclass, sequence_like
if TYPE_CHECKING:
from typing_extensions import Literal, TypedDict
- from .config import BaseConfig
- from .fields import ModelField
- from .types import ConstrainedDecimal, ConstrainedFloat, ConstrainedInt
+ from pydantic.v1.config import BaseConfig
+ from pydantic.v1.fields import ModelField
+ from pydantic.v1.types import ConstrainedDecimal, ConstrainedFloat, ConstrainedInt
ConstrainedNumber = Union[ConstrainedDecimal, ConstrainedFloat, ConstrainedInt]
AnyOrderedDict = OrderedDict[Any, Any]
@@ -594,7 +594,7 @@
def make_namedtuple_validator(
namedtuple_cls: Type[NamedTupleT], config: Type['BaseConfig']
) -> Callable[[Tuple[Any, ...]], NamedTupleT]:
- from .annotated_types import create_model_from_namedtuple
+ from pydantic.v1.annotated_types import create_model_from_namedtuple
NamedTupleModel = create_model_from_namedtuple(
namedtuple_cls,
@@ -619,7 +619,7 @@
def make_typeddict_validator(
typeddict_cls: Type['TypedDict'], config: Type['BaseConfig'] # type: ignore[valid-type]
) -> Callable[[Any], Dict[str, Any]]:
- from .annotated_types import create_model_from_typeddict
+ from pydantic.v1.annotated_types import create_model_from_typeddict
TypedDictModel = create_model_from_typeddict(
typeddict_cls,
@@ -698,7 +698,7 @@
def find_validators( # noqa: C901 (ignore complexity)
type_: Type[Any], config: Type['BaseConfig']
) -> Generator[AnyCallable, None, None]:
- from .dataclasses import is_builtin_dataclass, make_dataclass_validator
+ from pydantic.v1.dataclasses import is_builtin_dataclass, make_dataclass_validator
if type_ is Any or type_ is object:
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/v1/version.py new/pydantic-2.7.4/pydantic/v1/version.py
--- old/pydantic-2.7.3/pydantic/v1/version.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/v1/version.py 2024-06-12 15:44:13.000000000 +0200
@@ -1,6 +1,6 @@
__all__ = 'compiled', 'VERSION', 'version_info'
-VERSION = '1.10.15'
+VERSION = '1.10.16'
try:
import cython # type: ignore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/pydantic/version.py new/pydantic-2.7.4/pydantic/version.py
--- old/pydantic-2.7.3/pydantic/version.py 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/pydantic/version.py 2024-06-12 15:44:13.000000000 +0200
@@ -3,7 +3,7 @@
__all__ = 'VERSION', 'version_info'
-VERSION = '2.7.3'
+VERSION = '2.7.4'
"""The version of Pydantic."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pydantic-2.7.3/update_v1.sh new/pydantic-2.7.4/update_v1.sh
--- old/pydantic-2.7.3/update_v1.sh 2024-06-03 20:32:51.000000000 +0200
+++ new/pydantic-2.7.4/update_v1.sh 2024-06-12 15:44:13.000000000 +0200
@@ -19,6 +19,12 @@
# Copy new V1 into pydantic/v1
cp -r pydantic ../pydantic/v1
+# Update imports in pydantic/v1 to use pydantic.v1
+find "../pydantic/v1" -name "*.py" -exec sed -i '' -E 's/from pydantic(\.[a-zA-Z0-9_]*)? import/from pydantic.v1\1 import/g' {} \;
+
+# Remove the v1 file from v1, it's not needed in the v2 codebase
+rm ../pydantic/v1/v1.py
+
popd
# Remove V1 clone
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package suse-module-tools for openSUSE:Factory checked in at 2024-06-25 23:06:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/suse-module-tools (Old)
and /work/SRC/openSUSE:Factory/.suse-module-tools.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "suse-module-tools"
Tue Jun 25 23:06:41 2024 rev:77 rq:1183025 version:16.0.45
Changes:
--------
--- /work/SRC/openSUSE:Factory/suse-module-tools/suse-module-tools.changes 2024-05-23 15:34:39.538306392 +0200
+++ /work/SRC/openSUSE:Factory/.suse-module-tools.new.18349/suse-module-tools.changes 2024-06-25 23:06:58.641211306 +0200
@@ -1,0 +2,6 @@
+Mon Jun 24 14:10:46 UTC 2024 - Martin Wilck <mwilck(a)suse.com>
+
+- Update to version 16.0.45:
+ * udevrules: activate CPUs on hotplug for s390, too (bsc#1224400)
+
+-------------------------------------------------------------------
Old:
----
suse-module-tools-16.0.44.obscpio
New:
----
suse-module-tools-16.0.45.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ suse-module-tools.spec ++++++
--- /var/tmp/diff_new_pack.3k4fhK/_old 2024-06-25 23:06:59.461241534 +0200
+++ /var/tmp/diff_new_pack.3k4fhK/_new 2024-06-25 23:06:59.461241534 +0200
@@ -37,7 +37,7 @@
%global modprobe_conf_rpmsave %(echo "%{modprobe_conf_files}" | sed 's,\\([^ ]*\\),%{_sysconfdir}/modprobe.d/\\1.conf.rpmsave,g')
Name: suse-module-tools
-Version: 16.0.44
+Version: 16.0.45
Release: 0
Summary: Configuration for module loading and SUSE-specific utilities for KMPs
License: GPL-2.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.3k4fhK/_old 2024-06-25 23:06:59.497242861 +0200
+++ /var/tmp/diff_new_pack.3k4fhK/_new 2024-06-25 23:06:59.501243009 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/openSUSE/suse-module-tools.git</param>
- <param name="changesrevision">65af4fbcd4584af98f6ab2f86aa5a17cf02d2b82</param></service></servicedata>
+ <param name="changesrevision">66cef9d663358efd86365b12a1e799b173ea157a</param></service></servicedata>
(No newline at EOF)
++++++ suse-module-tools-16.0.44.obscpio -> suse-module-tools-16.0.45.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/suse-module-tools-16.0.44/suse-module-tools.spec new/suse-module-tools-16.0.45/suse-module-tools.spec
--- old/suse-module-tools-16.0.44/suse-module-tools.spec 2024-05-22 20:30:09.000000000 +0200
+++ new/suse-module-tools-16.0.45/suse-module-tools.spec 2024-06-12 18:19:51.000000000 +0200
@@ -37,7 +37,7 @@
%global modprobe_conf_rpmsave %(echo "%{modprobe_conf_files}" | sed 's,\\([^ ]*\\),%{_sysconfdir}/modprobe.d/\\1.conf.rpmsave,g')
Name: suse-module-tools
-Version: 16.0.44
+Version: 16.0.45
Release: 0
Summary: Configuration for module loading and SUSE-specific utilities for KMPs
License: GPL-2.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/suse-module-tools-16.0.44/udevrules/80-hotplug-cpu-mem.rules new/suse-module-tools-16.0.45/udevrules/80-hotplug-cpu-mem.rules
--- old/suse-module-tools-16.0.44/udevrules/80-hotplug-cpu-mem.rules 2024-05-22 20:30:09.000000000 +0200
+++ new/suse-module-tools-16.0.45/udevrules/80-hotplug-cpu-mem.rules 2024-06-12 18:19:51.000000000 +0200
@@ -8,6 +8,7 @@
# Hotplug physical CPU
#
SUBSYSTEM=="cpu", CONST{arch}=="x86-64", TEST=="online", ATTR{online}=="0", ATTR{online}="1"
+SUBSYSTEM=="cpu", CONST{arch}=="s390*", TEST=="online", ATTR{configure}=="1", ATTR{online}=="0", ATTR{online}="1"
#
# Hotplug physical memory. Instances of tmpfs are remounted so their
++++++ suse-module-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.3k4fhK/_old 2024-06-25 23:06:59.613247137 +0200
+++ /var/tmp/diff_new_pack.3k4fhK/_new 2024-06-25 23:06:59.617247285 +0200
@@ -1,5 +1,5 @@
name: suse-module-tools
-version: 16.0.44
-mtime: 1716402609
-commit: 65af4fbcd4584af98f6ab2f86aa5a17cf02d2b82
+version: 16.0.45
+mtime: 1718209191
+commit: 66cef9d663358efd86365b12a1e799b173ea157a
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package wireshark for openSUSE:Factory checked in at 2024-06-25 23:06:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wireshark (Old)
and /work/SRC/openSUSE:Factory/.wireshark.new.18349 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wireshark"
Tue Jun 25 23:06:38 2024 rev:219 rq:1183022 version:4.2.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/wireshark/wireshark.changes 2024-05-17 20:05:17.935677481 +0200
+++ /work/SRC/openSUSE:Factory/.wireshark.new.18349/wireshark.changes 2024-06-25 23:06:57.465167954 +0200
@@ -1,0 +2,5 @@
+Wed Jun 19 12:34:54 UTC 2024 - Markus Ebner <info(a)ebner-markus.de>
+
+- Fix Wireshark Super User Mode starter
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wireshark.spec ++++++
--- /var/tmp/diff_new_pack.6BIOKw/_old 2024-06-25 23:06:58.253197003 +0200
+++ /var/tmp/diff_new_pack.6BIOKw/_new 2024-06-25 23:06:58.253197003 +0200
@@ -216,7 +216,7 @@
# desktop file
cp resources/freedesktop/%{org_name}.desktop %{buildroot}%{_datadir}/applications/%{org_name}-su.desktop
sed -i -e 's|Name=Wireshark|Name=Wireshark - Super User Mode|g' %{buildroot}%{_datadir}/applications/%{org_name}-su.desktop
-sed -i -e 's|Exec=wireshark %{f}|Exec=xdg-su -c wireshark %{f}|g' %{buildroot}%{_datadir}/applications/%{org_name}-su.desktop
+sed -i -e 's|^Exec=wireshark|Exec=xdg-su -c wireshark|g' %{buildroot}%{_datadir}/applications/%{org_name}-su.desktop
%suse_update_desktop_file %{org_name}
%suse_update_desktop_file %{org_name}-su
1
0