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 rclone for openSUSE:Factory checked in at 2024-06-03 17:40:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rclone (Old)
and /work/SRC/openSUSE:Factory/.rclone.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rclone"
Mon Jun 3 17:40:51 2024 rev:50 rq:1177842 version:1.66.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/rclone/rclone.changes 2024-03-17 22:18:16.777412301 +0100
+++ /work/SRC/openSUSE:Factory/.rclone.new.24587/rclone.changes 2024-06-03 17:40:56.597437459 +0200
@@ -1,0 +2,5 @@
+Thu May 30 15:42:19 UTC 2024 - Fabian Vogt <fabian(a)ritter-vogt.de>
+
+- Remove %go_nostrip, not necessary and bloats the binary
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rclone.spec ++++++
--- /var/tmp/diff_new_pack.RNDSqc/_old 2024-06-03 17:40:57.713478408 +0200
+++ /var/tmp/diff_new_pack.RNDSqc/_new 2024-06-03 17:40:57.717478555 +0200
@@ -35,8 +35,6 @@
BuildRequires: gcc
%endif
-%{go_nostrip}
-
%description
rsync for cloud storage. rclone is a command line program to sync files and
directories to and from a wide variety of cloud storage providers, providing
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package go-sendxmpp for openSUSE:Factory checked in at 2024-06-03 17:40:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/go-sendxmpp (Old)
and /work/SRC/openSUSE:Factory/.go-sendxmpp.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "go-sendxmpp"
Mon Jun 3 17:40:50 2024 rev:16 rq:1177829 version:0.11.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/go-sendxmpp/go-sendxmpp.changes 2024-04-15 20:24:11.781296012 +0200
+++ /work/SRC/openSUSE:Factory/.go-sendxmpp.new.24587/go-sendxmpp.changes 2024-06-03 17:40:51.997268674 +0200
@@ -1,0 +2,12 @@
+Fri May 31 04:53:19 UTC 2024 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 0.11.0:
+ Changed:
+ * Move private Ox key into JID folder in ~/.local/share/go-sendxmpp.
+ * Use fmt.Errorf() instead of errors.New() to create new error messages.
+ Added:
+ * Add new parameter --subject.
+ * Added flag --fast-off to disable XEP-0484: Fast Authentication
+ Streamlining Tokens (requires go-xmpp >= 0.2.1)
+
+-------------------------------------------------------------------
Old:
----
go-sendxmpp-0.10.0.tar.gz
New:
----
go-sendxmpp-0.11.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ go-sendxmpp.spec ++++++
--- /var/tmp/diff_new_pack.ZAYysn/_old 2024-06-03 17:40:54.097345728 +0200
+++ /var/tmp/diff_new_pack.ZAYysn/_new 2024-06-03 17:40:54.113346315 +0200
@@ -17,7 +17,7 @@
Name: go-sendxmpp
-Version: 0.10.0
+Version: 0.11.0
Release: 0
Summary: A little tool to send messages to an XMPP contact or MUC
License: BSD-2-Clause
++++++ _service ++++++
--- /var/tmp/diff_new_pack.ZAYysn/_old 2024-06-03 17:40:54.417357470 +0200
+++ /var/tmp/diff_new_pack.ZAYysn/_new 2024-06-03 17:40:54.449358644 +0200
@@ -3,7 +3,7 @@
<param name="url">https://salsa.debian.org/mdosch/go-sendxmpp.git</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.10.0</param>
+ <param name="revision">v0.11.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">disable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ go-sendxmpp-0.10.0.tar.gz -> go-sendxmpp-0.11.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/.gitlab-ci.yml new/go-sendxmpp-0.11.0/.gitlab-ci.yml
--- old/go-sendxmpp-0.10.0/.gitlab-ci.yml 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/.gitlab-ci.yml 2024-05-29 18:51:52.000000000 +0200
@@ -45,11 +45,17 @@
stage: build
only:
- tags
+ before_script:
+ - echo "deb https://deb.debian.org/debian/ bookworm-backports main" >> /etc/apt/sources.list
+ - apt-get -qq update && apt-get -qq install -y upx-ucl
script:
- echo "${CI_JOB_ID}" > CI_JOB_ID.txt
- env GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags "-s -w -extldflags '-static'" -o $CI_PROJECT_DIR/linux-amd64/go-sendxmpp
+ - upx $CI_PROJECT_DIR/linux-amd64/go-sendxmpp || true
- env GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags "-s -w -extldflags '-static'" -o $CI_PROJECT_DIR/linux-arm64/go-sendxmpp
+ - upx $CI_PROJECT_DIR/linux-arm64/go-sendxmpp || true
- env GOOS=windows GOARCH=amd64 go build -buildmode=pie -ldflags "-s -w -extldflags '-static'" -o $CI_PROJECT_DIR/win64/go-sendxmpp.exe
+ - upx $CI_PROJECT_DIR/win64/go-sendxmpp.exe || true
artifacts:
paths:
- linux-amd64/go-sendxmpp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/CHANGELOG.md new/go-sendxmpp-0.11.0/CHANGELOG.md
--- old/go-sendxmpp-0.10.0/CHANGELOG.md 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/CHANGELOG.md 2024-05-29 18:51:52.000000000 +0200
@@ -1,5 +1,14 @@
# Changelog
+## [v0.11.0] 2024-05-29
+### Changed
+- Move private Ox key into JID folder in ~/.local/share/go-sendxmpp.
+- Use `fmt.Errorf()` instead of `errors.New()` to create new error messages.
+
+### Added
+- Add new parameter `--subject`.
+- Added flag `--fast-off` to disable XEP-0484: Fast Authentication Streamlining Tokens (requires go-xmpp >= 0.2.1).
+
## [v0.10.0] 2024-04-13
### Changed
- Fixed a race condition in receiving stanzas (requires go-xmpp >= v0.1.5).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/README.md new/go-sendxmpp-0.11.0/README.md
--- old/go-sendxmpp-0.10.0/README.md 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/README.md 2024-05-29 18:51:52.000000000 +0200
@@ -75,10 +75,11 @@
the account details via command line options:
```plain
-Usage: go-sendxmpp [-cdilnt] [-a value] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value] [--oob-file value] [--ox] [--ox-delete-nodes] [--ox-genprivkey-rsa] [--ox-genprivkey-x25519] [--ox-import-privkey value] [--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [--timeout value] [--tls-version value] [-u value] [--version] [recipients…]
+Usage: go-sendxmpp [-cdilnt] [-a value] [--fast-off] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value] [--oob-file value] [--ox] [--ox-delete-nodes] [--ox-genprivkey-rsa] [--ox-genprivkey-x25519] [--ox-import-privkey value] [--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [-s value] [--timeout value] [--tls-version value] [-u value] [--version] [recipients…]
-a, --alias=value Set alias/nicknamefor chatrooms.
-c, --chatroom Send message to a chatroom.
-d, --debug Show debugging info.
+ --fast-off Disable XEP-0484: Fast Authentication Streamlining Tokens.
-f, --file=value Set configuration file. (Default:
~/.config/go-sendxmpp/sendxmpprc)
--headline Send message as type headline.
@@ -117,6 +118,8 @@
--scram-mech-pinning=value
Enforce the use of a certain SCRAM authentication mechanism.
--ssdp-off Disable XEP-0474: SASL SCRAM Downgrade Protection.
+ -s, --subject=value
+ Set message subject.
--timeout=value
Connection timeout in seconds. [10]
-t, --tls Use direct TLS.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/const.go new/go-sendxmpp-0.11.0/const.go
--- old/go-sendxmpp-0.10.0/const.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/const.go 2024-05-29 18:51:52.000000000 +0200
@@ -5,7 +5,7 @@
package main
const (
- version = "0.10.0"
+ version = "0.11.0"
// defaults
defaultBufferSize = 100
defaultConfigRowSep = 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/go.mod new/go-sendxmpp-0.11.0/go.mod
--- old/go-sendxmpp-0.10.0/go.mod 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/go.mod 2024-05-29 18:51:52.000000000 +0200
@@ -4,21 +4,21 @@
require (
github.com/ProtonMail/gopenpgp/v2 v2.7.5
- github.com/beevik/etree v1.3.0
- github.com/gabriel-vasile/mimetype v1.4.3
+ github.com/beevik/etree v1.4.0
+ github.com/gabriel-vasile/mimetype v1.4.4
github.com/google/uuid v1.6.0
github.com/pborman/getopt/v2 v2.1.0
- github.com/xmppo/go-xmpp v0.2.0
- golang.org/x/crypto v0.22.0
+ github.com/xmppo/go-xmpp v0.2.1
+ golang.org/x/crypto v0.23.0
salsa.debian.org/mdosch/xmppsrv v0.2.6
)
require (
github.com/ProtonMail/go-crypto v1.0.0 // indirect
github.com/ProtonMail/go-mime v0.0.0-20230322103455-7d82a3887f2f // indirect
- github.com/cloudflare/circl v1.3.7 // indirect
+ github.com/cloudflare/circl v1.3.8 // indirect
github.com/pkg/errors v0.9.1 // indirect
- golang.org/x/net v0.24.0 // indirect
- golang.org/x/sys v0.19.0 // indirect
- golang.org/x/text v0.14.0 // indirect
+ golang.org/x/net v0.25.0 // indirect
+ golang.org/x/sys v0.20.0 // indirect
+ golang.org/x/text v0.15.0 // indirect
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/go.sum new/go-sendxmpp-0.11.0/go.sum
--- old/go-sendxmpp-0.10.0/go.sum 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/go.sum 2024-05-29 18:51:52.000000000 +0200
@@ -5,17 +5,17 @@
github.com/ProtonMail/go-mime v0.0.0-20230322103455-7d82a3887f2f/go.mod h1:gcr0kNtGBqin9zDW9GOHcVntrwnjrK+qdJ06mWYBybw=
github.com/ProtonMail/gopenpgp/v2 v2.7.5 h1:STOY3vgES59gNgoOt2w0nyHBjKViB/qSg7NjbQWPJkA=
github.com/ProtonMail/gopenpgp/v2 v2.7.5/go.mod h1:IhkNEDaxec6NyzSI0PlxapinnwPVIESk8/76da3Ct3g=
-github.com/beevik/etree v1.3.0 h1:hQTc+pylzIKDb23yYprodCWWTt+ojFfUZyzU09a/hmU=
-github.com/beevik/etree v1.3.0/go.mod h1:aiPf89g/1k3AShMVAzriilpcE4R/Vuor90y83zVZWFc=
+github.com/beevik/etree v1.4.0 h1:oz1UedHRepuY3p4N5OjE0nK1WLCqtzHf25bxplKOHLs=
+github.com/beevik/etree v1.4.0/go.mod h1:cyWiXwGoasx60gHvtnEh5x8+uIjUVnjWqBvEnhnqKDA=
github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA=
-github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU=
-github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA=
+github.com/cloudflare/circl v1.3.8 h1:j+V8jJt09PoeMFIu2uh5JUyEaIHTXVOHslFoLNAKqwI=
+github.com/cloudflare/circl v1.3.8/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0=
-github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk=
+github.com/gabriel-vasile/mimetype v1.4.4 h1:QjV6pZ7/XZ7ryI2KuyeEDE8wnh7fHP9YnQy+R0LnH8I=
+github.com/gabriel-vasile/mimetype v1.4.4/go.mod h1:JwLei5XPtWdGiMFB5Pjle1oEeoSeEuJfJE+TtfvdB/s=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/pborman/getopt/v2 v2.1.0 h1:eNfR+r+dWLdWmV8g5OlpyrTYHkhVNxHBdN2cCrJmOEA=
@@ -27,15 +27,15 @@
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
-github.com/xmppo/go-xmpp v0.2.0 h1:K23zGjq0h6z9LMY2GHv3PpEaqqUDRIRPd0VeNqK0hnc=
-github.com/xmppo/go-xmpp v0.2.0/go.mod h1:wR5vg1WrtcaP0DiW8XRUH9YLdFDjwlwJWl6zQEUqNuo=
+github.com/xmppo/go-xmpp v0.2.1 h1:8Bw6W6RNGTq6ajgMiKxn0iJKYt6Atef5Y0A5AkGWn9Q=
+github.com/xmppo/go-xmpp v0.2.1/go.mod h1:H46WSy/5uHW1SWsyJYI6fRZqFrK326qWmFRpVJ2Wwhs=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
-golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30=
-golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M=
+golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI=
+golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
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/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -44,8 +44,8 @@
golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
-golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w=
-golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8=
+golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac=
+golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -58,8 +58,8 @@
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o=
-golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y=
+golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
@@ -71,8 +71,8 @@
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
-golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk=
+golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/helpers.go new/go-sendxmpp-0.11.0/helpers.go
--- old/go-sendxmpp-0.10.0/helpers.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/helpers.go 2024-05-29 18:51:52.000000000 +0200
@@ -10,7 +10,6 @@
"crypto/cipher"
"crypto/rand"
"encoding/gob"
- "errors"
"fmt"
"log"
"math/big"
@@ -37,7 +36,10 @@
func validURI(s string) (*url.URL, error) {
// Check if URI is valid
uri, err := url.ParseRequestURI(s)
- return uri, fmt.Errorf("validURI: %w", err)
+ if err != nil {
+ return uri, fmt.Errorf("validURI: %w", err)
+ }
+ return uri, nil
}
func readFile(path string) (*bytes.Buffer, error) {
@@ -45,15 +47,12 @@
if err != nil {
return nil, fmt.Errorf("readFile: %w", err)
}
+ defer file.Close()
buffer := new(bytes.Buffer)
_, err = buffer.ReadFrom(file)
if err != nil {
return nil, fmt.Errorf("readFile: %w", err)
}
- err = file.Close()
- if err != nil {
- fmt.Println("error while closing file:", err)
- }
return buffer, nil
}
@@ -197,7 +196,7 @@
return strError, fmt.Errorf("getDataPath: failed to determine user dir: %w", err)
}
if homeDir == "" {
- return strError, errors.New("getDataPath: received empty string for home directory")
+ return strError, fmt.Errorf("getDataPath: received empty string for home directory")
}
dataDir = homeDir + "/.local/share"
}
@@ -243,10 +242,5 @@
}
func getShortID() string {
- id := make([]byte, defaultShortIDBytes)
- _, err := rand.Read(id)
- if err != nil {
- log.Fatal(err)
- }
- return fmt.Sprintf("%x", id[0:4])
+ return uuid.NewString()[:6]
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/httpupload.go new/go-sendxmpp-0.11.0/httpupload.go
--- old/go-sendxmpp-0.10.0/httpupload.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/httpupload.go 2024-05-29 18:51:52.000000000 +0200
@@ -7,7 +7,6 @@
import (
"bytes"
"encoding/xml"
- "errors"
"fmt"
"net/http"
"net/url"
@@ -68,7 +67,7 @@
}
iqDiscoItemsXMLQuery = iqDiscoItemsXML.SelectElement("query")
if iqDiscoItemsXMLQuery == nil {
- return "", errors.New("http-upload: no query element in disco items reply")
+ return "", fmt.Errorf("http-upload: no query element in disco items reply")
}
iqDiscoItemsXMLItems := iqDiscoItemsXMLQuery.SelectElements("item")
@@ -118,7 +117,7 @@
}
}
if uploadComponent == "" {
- return "", errors.New("http-upload: no http upload component found.")
+ return "", fmt.Errorf("http-upload: no http upload component found.")
}
iqDiscoInfoXMLX := iqDiscoInfoXMLQuery.SelectElements("x")
for _, r := range iqDiscoInfoXMLX {
@@ -143,7 +142,7 @@
if prevFieldVal.Text() == nsHTTPUpload {
maxFileSize, err = strconv.ParseInt(curFieldVal.Text(), 10, 64)
if err != nil {
- return "", errors.New("http-upload: error while checking server maximum http upload file size.")
+ return "", fmt.Errorf("http-upload: error while checking server maximum http upload file size.")
}
}
}
@@ -154,9 +153,8 @@
// the best.
if maxFileSize != 0 {
if fileSize > maxFileSize {
- return "", errors.New("http-upload: file size " + strconv.FormatInt(fileSize/1024/1024, 10) +
- " MiB is larger than the maximum file size allowed (" +
- strconv.FormatInt(maxFileSize/1024/1024, 10) + " MiB).")
+ return "", fmt.Errorf("http-upload: file size %s MiB is larger than the maximum file size allowed (%s MiB).",
+ strconv.FormatInt(fileSize/1024/1024, 10), strconv.FormatInt(maxFileSize/1024/1024, 10))
}
}
@@ -178,7 +176,7 @@
return "", err
}
if uploadSlot.Type != strResult {
- return "", errors.New("http-upload: error while requesting upload slot.")
+ return "", fmt.Errorf("http-upload: error while requesting upload slot.")
}
iqHTTPUploadSlotXML := etree.NewDocument()
err = iqHTTPUploadSlotXML.ReadFromBytes(uploadSlot.Query)
@@ -187,18 +185,18 @@
}
iqHTTPUploadSlotXMLSlot := iqHTTPUploadSlotXML.SelectElement("slot")
if iqHTTPUploadSlotXMLSlot == nil {
- return "", errors.New("http-upload: no slot element")
+ return "", fmt.Errorf("http-upload: no slot element")
}
iqHTTPUploadSlotXMLPut := iqHTTPUploadSlotXMLSlot.SelectElement("put")
if iqHTTPUploadSlotXMLPut == nil {
- return "", errors.New("http-upload: no put element")
+ return "", fmt.Errorf("http-upload: no put element")
}
iqHTTPUploadSlotXMLPutURL := iqHTTPUploadSlotXMLPut.SelectAttr("url")
if iqHTTPUploadSlotXMLPutURL == nil {
- return "", errors.New("http-upload: no url attribute")
+ return "", fmt.Errorf("http-upload: no url attribute")
}
if !strings.HasPrefix(iqHTTPUploadSlotXMLPutURL.Value, "https://") {
- return "", errors.New("http-upload: upload slot does not provide https")
+ return "", fmt.Errorf("http-upload: upload slot does not provide https")
}
// Upload file
httpTransport := &http.Transport{
@@ -237,17 +235,17 @@
}
// Test for http status code "200 OK" or "201 Created"
if resp.StatusCode != 200 && resp.StatusCode != 201 {
- return "", errors.New("http-upload: upload failed.")
+ return "", fmt.Errorf("http-upload: upload failed.")
}
// Return http link
iqHTTPUploadSlotXMLGet := iqHTTPUploadSlotXMLSlot.SelectElement("get")
if iqHTTPUploadSlotXMLGet == nil {
- return "", errors.New("http-upload: no get element")
+ return "", fmt.Errorf("http-upload: no get element")
}
iqHTTPUploadSlotXMLGetURL := iqHTTPUploadSlotXMLGet.SelectAttr("url")
if iqHTTPUploadSlotXMLGetURL == nil {
- return "", errors.New("http-upload: no url attribute")
+ return "", fmt.Errorf("http-upload: no url attribute")
}
err = resp.Body.Close()
if err != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/jid.go new/go-sendxmpp-0.11.0/jid.go
--- old/go-sendxmpp-0.10.0/jid.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/jid.go 2024-05-29 18:51:52.000000000 +0200
@@ -8,7 +8,7 @@
package main
import (
- "errors"
+ "fmt"
"strings"
"unicode/utf8"
)
@@ -35,7 +35,7 @@
} else {
// If the resource part exists, make sure it isn't empty.
if sep == len(s)-1 {
- return input, errors.New("Invalid JID" + input + ": The resourcepart must be larger than 0 bytes")
+ return input, fmt.Errorf("invalid JID %s: the resourcepart must be larger than 0 bytes", input)
}
resourcepart = s[sep+1:]
s = s[:sep]
@@ -52,7 +52,7 @@
domainpart = s
case sep == 0:
// The JID starts with an @ sign (invalid empty localpart)
- err = errors.New("Invalid JID:" + input)
+ err = fmt.Errorf("Invalid JID: %s", input)
return input, err
default:
domainpart = s[sep+1:]
@@ -73,11 +73,11 @@
var jid string
if !utf8.ValidString(localpart) || !utf8.ValidString(domainpart) || !utf8.ValidString(resourcepart) {
- return input, errors.New("Invalid JID: " + input)
+ return input, fmt.Errorf("invalid JID: %s", input)
}
if domainpart == "" {
- return input, errors.New("Invalid JID: " + input)
+ return input, fmt.Errorf("invalid JID: %s", input)
}
if localpart == "" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/main.go new/go-sendxmpp-0.11.0/main.go
--- old/go-sendxmpp-0.10.0/main.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/main.go 2024-05-29 18:51:52.000000000 +0200
@@ -8,7 +8,6 @@
"bufio"
"context"
"crypto/tls"
- "errors"
"fmt"
"io"
"log"
@@ -58,6 +57,7 @@
if err != nil {
return output, fmt.Errorf("readMessage: %w", err)
}
+ defer file.Close()
scanner := bufio.NewScanner(file)
scanner.Split(bufio.ScanLines)
for scanner.Scan() {
@@ -74,11 +74,6 @@
}
}
- err = file.Close()
- if err != nil {
- fmt.Println("error while closing file:", err)
- }
-
return output, nil
}
@@ -136,6 +131,8 @@
flagHeadline := getopt.BoolLong("headline", 0, "Send message as type headline.")
flagSCRAMPinning := getopt.StringLong("scram-mech-pinning", 0, "", "Enforce the use of a certain SCRAM authentication mechanism.")
flagSSDPOff := getopt.BoolLong("ssdp-off", 0, "Disable XEP-0474: SASL SCRAM Downgrade Protection.")
+ flagSubject := getopt.StringLong("subject", 's', "", "Set message subject.")
+ flagFastOff := getopt.BoolLong("fast-off", 0, "Disable XEP-0484: Fast Authentication Streamlining Tokens.")
// Parse command line flags.
getopt.Parse()
@@ -270,11 +267,13 @@
fmt.Println(err)
}
- fast, _ = getFastData(user, password)
- // Reset FAST token and mechanism if expired.
- if time.Now().After(fast.Expiry) {
- fast.Token = ""
- fast.Mechanism = ""
+ if !*flagFastOff {
+ fast, _ = getFastData(user, password)
+ // Reset FAST token and mechanism if expired.
+ if time.Now().After(fast.Expiry) {
+ fast.Token = ""
+ fast.Mechanism = ""
+ }
}
// Use ALPN
@@ -320,6 +319,7 @@
SSDP: !*flagSSDPOff,
UserAgentSW: resource,
UserAgentID: clientID,
+ Fast: !*flagFastOff,
FastToken: fast.Token,
FastMechanism: fast.Mechanism,
}
@@ -563,7 +563,7 @@
default:
if err != nil {
cancel()
- closeAndExit(client, errors.New("failed to read from stdin"))
+ closeAndExit(client, fmt.Errorf("failed to read from stdin"))
}
}
}
@@ -581,7 +581,7 @@
continue
}
oxMessage, err := oxEncrypt(client, oxPrivKey,
- recipient.Jid, recipient.OxKeyRing, message)
+ recipient.Jid, recipient.OxKeyRing, message, *flagSubject)
if err != nil {
fmt.Println("Ox: couldn't encrypt to",
recipient.Jid)
@@ -596,6 +596,7 @@
_, err = client.Send(xmpp.Chat{
Remote: recipient.Jid,
Type: msgType, Text: message,
+ Subject: *flagSubject,
})
if err != nil {
cancel()
@@ -692,6 +693,7 @@
_, err = client.Send(xmpp.Chat{
Remote: recipient.Jid,
Type: msgType, Ooburl: message, Text: message,
+ Subject: *flagSubject,
})
if err != nil {
fmt.Println("Couldn't send message to",
@@ -700,9 +702,15 @@
// (Hopefully) temporary workaround due to go-xmpp choking on URL encoding.
// Once this is fixed in the lib the http-upload case above can be reused.
case *flagOOBFile != "":
- _, err = client.SendOrg("<message to='" + recipient.Jid + "' type='" +
- msgType + "'><body>" + message + "</body><x xmlns='jabber:x:oob'><url>" +
- message + "</url></x></message>")
+ var msg string
+ if *flagSubject != "" {
+ msg = fmt.Sprintf("<message to='%s' type='%s'><subject>%s</subject><body>%s</body><x xmlns='jabber:x:oob'><url>%s</url></x></message>",
+ recipient.Jid, msgType, *flagSubject, message, message)
+ } else {
+ msg = fmt.Sprintf("<message to='%s' type='%s'><body>%s</body><x xmlns='jabber:x:oob'><url>%s</url></x></message>",
+ recipient.Jid, msgType, message, message)
+ }
+ _, err = client.SendOrg(msg)
if err != nil {
fmt.Println("Couldn't send message to",
recipient.Jid)
@@ -712,7 +720,7 @@
continue
}
oxMessage, err := oxEncrypt(client, oxPrivKey,
- recipient.Jid, recipient.OxKeyRing, message)
+ recipient.Jid, recipient.OxKeyRing, message, *flagSubject)
if err != nil {
fmt.Println("Ox: couldn't encrypt to", recipient.Jid)
continue
@@ -726,6 +734,7 @@
_, err = client.Send(xmpp.Chat{
Remote: recipient.Jid,
Type: msgType, Text: message,
+ Subject: *flagSubject,
})
if err != nil {
cancel()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/man/go-sendxmpp.1 new/go-sendxmpp-0.11.0/man/go-sendxmpp.1
--- old/go-sendxmpp-0.10.0/man/go-sendxmpp.1 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/man/go-sendxmpp.1 2024-05-29 18:51:52.000000000 +0200
@@ -1,10 +1,10 @@
.\" generated with Ronn-NG/v0.9.1
.\" http://github.com/apjanke/ronn-ng/tree/0.9.1
-.TH "GO\-SENDXMPP" "1" "April 2024" ""
+.TH "GO\-SENDXMPP" "1" "May 2024" ""
.SH "NAME"
\fBgo\-sendxmpp\fR \- A tool to send messages to an XMPP contact or MUC\.
.SH "SYNOPSIS"
-\fBgo\-sendxmpp [\-cdilnt] [\-a value] [\-f value] [\-\-headline] [\-\-help] [\-h value] [\-j value] [\-m value] [\-\-muc\-password value] [\-\-oob\-file value] [\-\-ox] [\-\-ox\-delete\-nodes] [\-\-ox\-genprivkey\-rsa] [\-\-ox\-genprivkey\-x25519] [\-\-ox\-import\-privkey value] [\-\-ox\-passphrase value] [\-p value] [\-\-raw] [\-\-scram\-mech\-pinning value] [\-\-ssdp\-off] [\-\-timeout value] [\-\-tls\-version value] [\-u value] [\-\-version] [recipients…]\fR
+\fBgo\-sendxmpp [\-cdilnt] [\-a value] [\-\-fast\-off] [\-f value] [\-\-headline] [\-\-help] [\-h value] [\-j value] [\-m value] [\-\-muc\-password value] [\-\-oob\-file value] [\-\-ox] [\-\-ox\-delete\-nodes] [\-\-ox\-genprivkey\-rsa] [\-\-ox\-genprivkey\-x25519] [\-\-ox\-import\-privkey value] [\-\-ox\-passphrase value] [\-p value] [\-\-raw] [\-\-scram\-mech\-pinning value] [\-\-ssdp\-off] [\-s value] [\-\-timeout value] [\-\-tls\-version value] [\-u value] [\-\-version] [recipients…]\fR
.SH "DESCRIPTION"
A tool to send messages to an XMPP contact or MUC inspired by \fBsendxmpp\fR\.
.br
@@ -20,6 +20,9 @@
\fB\-d\fR, \fB\-\-debug\fR
Show debugging info\.
.TP
+\fB\-\-fast\-off\fR
+Disable XEP\-0484: Fast Authentication Streamlining Tokens\.
+.TP
\fB\-f\fR, \fB\-\-file\fR=[\fIvalue\fR]
Set configuration file\. (Default: ~/\.config/go\-sendxmpp/config)
.TP
@@ -92,6 +95,9 @@
\fB\-\-ssdp\-off\fR
Disable XEP\-0474: SASL SCRAM Downgrade Protection\.
.TP
+\fB\-s\fR, \fB\-\-subject\fR=[\fIvalue\fR]
+Set message subject\.
+.TP
\fB\-\-timeout=\fR[\fIvalue\fR]
Connection timeout in seconds\. (Default: 10)
.TP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/man/go-sendxmpp.1.html new/go-sendxmpp-0.11.0/man/go-sendxmpp.1.html
--- old/go-sendxmpp-0.10.0/man/go-sendxmpp.1.html 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/man/go-sendxmpp.1.html 2024-05-29 18:51:52.000000000 +0200
@@ -81,10 +81,10 @@
</p>
<h2 id="SYNOPSIS">SYNOPSIS</h2>
-<p><code>go-sendxmpp [-cdilnt] [-a value] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value]
+<p><code>go-sendxmpp [-cdilnt] [-a value] [--fast-off] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value]
[--oob-file value] [--ox] [--ox-delete-nodes] [--ox-genprivkey-rsa] [--ox-genprivkey-x25519] [--ox-import-privkey value]
-[--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [--timeout value] [--tls-version value] [-u value]
-[--version] [recipients…]</code></p>
+[--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [-s value] [--timeout value]
+[--tls-version value] [-u value] [--version] [recipients…]</code></p>
<h2 id="DESCRIPTION">DESCRIPTION</h2>
@@ -108,6 +108,8 @@
<code>-d</code>, <code>--debug</code>
</dt>
<dd>Show debugging info.</dd>
+<dt><code>--fast-off</code></dt>
+<dd>Disable XEP-0484: Fast Authentication Streamlining Tokens.</dd>
<dt>
<code>-f</code>, <code>--file</code>=[<var>value</var>]</dt>
<dd>Set configuration file. (Default: ~/.config/go-sendxmpp/config)</dd>
@@ -195,6 +197,9 @@
<dt><code>--ssdp-off</code></dt>
<dd>Disable XEP-0474: SASL SCRAM Downgrade Protection.</dd>
<dt>
+<code>-s</code>, <code>--subject</code>=[<var>value</var>]</dt>
+<dd>Set message subject.</dd>
+<dt>
<code>--timeout=</code>[<var>value</var>]</dt>
<dd>Connection timeout in seconds. (Default: 10)</dd>
<dt>
@@ -279,7 +284,7 @@
<ol class='man-decor man-foot man foot'>
<li class='tl'></li>
- <li class='tc'>April 2024</li>
+ <li class='tc'>May 2024</li>
<li class='tr'>go-sendxmpp(1)</li>
</ol>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/man/go-sendxmpp.1.ronn new/go-sendxmpp-0.11.0/man/go-sendxmpp.1.ronn
--- old/go-sendxmpp-0.10.0/man/go-sendxmpp.1.ronn 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/man/go-sendxmpp.1.ronn 2024-05-29 18:51:52.000000000 +0200
@@ -3,10 +3,10 @@
## SYNOPSIS
-`go-sendxmpp [-cdilnt] [-a value] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value]
+`go-sendxmpp [-cdilnt] [-a value] [--fast-off] [-f value] [--headline] [--help] [-h value] [-j value] [-m value] [--muc-password value]
[--oob-file value] [--ox] [--ox-delete-nodes] [--ox-genprivkey-rsa] [--ox-genprivkey-x25519] [--ox-import-privkey value]
-[--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [--timeout value] [--tls-version value] [-u value]
-[--version] [recipients…]`
+[--ox-passphrase value] [-p value] [--raw] [--scram-mech-pinning value] [--ssdp-off] [-s value] [--timeout value]
+[--tls-version value] [-u value] [--version] [recipients…]`
## DESCRIPTION
@@ -28,6 +28,9 @@
* `-d`, `--debug`:
Show debugging info.
+* `--fast-off`:
+Disable XEP-0484: Fast Authentication Streamlining Tokens.
+
* `-f`, `--file`=[<value>]:
Set configuration file. (Default: ~/.config/go-sendxmpp/config)
@@ -120,6 +123,9 @@
* `--ssdp-off`:
Disable XEP-0474: SASL SCRAM Downgrade Protection.
+* `-s`, `--subject`=[<value>]:
+Set message subject.
+
* `--timeout=`[<value>]:
Connection timeout in seconds. (Default: 10)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/ox.go new/go-sendxmpp-0.11.0/ox.go
--- old/go-sendxmpp-0.10.0/ox.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/ox.go 2024-05-29 18:51:52.000000000 +0200
@@ -6,7 +6,6 @@
import (
"encoding/base64"
- "errors"
"fmt"
"log"
"os"
@@ -39,11 +38,11 @@
}
query = nodeListReply.SelectElement("query")
if query == nil {
- return errors.New("error parsing iq reply")
+ return fmt.Errorf("error parsing iq reply")
}
items := query.SelectElements("item")
if items == nil {
- return errors.New("error parsing iq reply")
+ return fmt.Errorf("error parsing iq reply")
}
for _, item := range items {
node := item.SelectAttr("node")
@@ -106,26 +105,26 @@
}
signcrypt := doc.SelectElement("signcrypt")
if signcrypt == nil {
- return strError, time.Now(), errors.New("ox: no signcrypt element")
+ return strError, time.Now(), fmt.Errorf("ox: no signcrypt element")
}
to := signcrypt.SelectElement("to")
if to == nil {
- return strError, time.Now(), errors.New("ox: no to element")
+ return strError, time.Now(), fmt.Errorf("ox: no to element")
}
jid := to.SelectAttr("jid")
if jid == nil {
- return strError, time.Now(), errors.New("ox: no jid attribute")
+ return strError, time.Now(), fmt.Errorf("ox: no jid attribute")
}
if strings.Split(jid.Value, "/")[0] != user {
- return strError, time.Now(), errors.New("ox: encrypted for wrong user")
+ return strError, time.Now(), fmt.Errorf("ox: encrypted for wrong user")
}
timestamp := signcrypt.SelectElement("time")
if timestamp == nil {
- return strError, time.Now(), errors.New("ox: no time element")
+ return strError, time.Now(), fmt.Errorf("ox: no time element")
}
stamp := timestamp.SelectAttr("stamp")
if stamp == nil {
- return strError, time.Now(), errors.New("ox: no stamp attribute")
+ return strError, time.Now(), fmt.Errorf("ox: no stamp attribute")
}
msgStamp, err := time.Parse("2006-01-02T15:04:05Z0700", stamp.Value)
if err != nil {
@@ -133,7 +132,7 @@
}
payload := signcrypt.SelectElement("payload")
if payload == nil {
- return strError, time.Now(), errors.New("ox: no payload element")
+ return strError, time.Now(), fmt.Errorf("ox: no payload element")
}
body := payload.SelectElement("body")
if body == nil {
@@ -173,7 +172,7 @@
}
entity := key.GetEntity()
if entity.Identities[xmppURI] == nil {
- return errors.New("Key identity is not " + xmppURI)
+ return fmt.Errorf("Key identity is not %s", xmppURI)
}
pk, err := key.GetPublicKey()
if err != nil {
@@ -262,19 +261,19 @@
return fmt.Errorf("oxPublishPubKey: iq failure publishing public key: %w", err)
}
if iqReply.Type != strResult {
- return errors.New("error while publishing public key")
+ return fmt.Errorf("error while publishing public key")
}
ownPubKeyRingFromPubsub, err := oxRecvPublicKeys(client, iqc, jid, fingerprint)
if err != nil {
- return errors.New("couldn't successfully verify public key upload")
+ return fmt.Errorf("couldn't successfully verify public key upload")
}
ownPubKeyFromPubsub := ownPubKeyRingFromPubsub.GetKeys()[0]
ownPubKeyFromPubsubSerialized, err := ownPubKeyFromPubsub.Serialize()
if err != nil {
- return errors.New("couldn't successfully verify public key upload")
+ return fmt.Errorf("couldn't successfully verify public key upload")
}
if pubKeyBase64 != base64.StdEncoding.EncodeToString(ownPubKeyFromPubsubSerialized) {
- return errors.New("couldn't successfully verify public key upload")
+ return fmt.Errorf("couldn't successfully verify public key upload")
}
root = etree.NewDocument()
root.WriteSettings.AttrSingleQuote = true
@@ -310,21 +309,26 @@
return fmt.Errorf("oxPublishPubKey: iq failure publishing public key list: %w", err)
}
if iqReply.Type != strResult {
- return errors.New("couldn't publish public key list")
+ return fmt.Errorf("couldn't publish public key list")
}
return nil
}
func oxGetPrivKeyLoc(jid string) (string, error) {
- dataDir, err := getDataPath("oxprivkeys/")
+ dataDir, err := getDataPath(strings.Replace(strings.Replace(jid, "@", "_at_", -1), ".", "_", -1))
if err != nil {
- return strError, fmt.Errorf("oxGetPubKeyLoc: %w", err)
+ return strError, fmt.Errorf("oxGetPrivKeyLoc: %w", err)
+ }
+ oldDataDir, err := getDataPath("oxprivkeys/")
+ if err != nil {
+ return strError, fmt.Errorf("oxGetPrivKeyLoc: %w", err)
}
// TODO: Remove handling of oldDataFile in a later version when it's very likely that there are no
// more versions in use using the oldDataFile (<0.8.3).
- oldDataFile := dataDir + base64.StdEncoding.EncodeToString([]byte(jid))
- oldDataFile2 := dataDir + strings.Replace(jid, "@", "_at_", -1)
- dataFile := dataDir + strings.Replace(strings.Replace(jid, "@", "_at_", -1), ".", "_", -1)
+ oldDataFile := oldDataDir + base64.StdEncoding.EncodeToString([]byte(jid))
+ oldDataFile2 := oldDataDir + strings.Replace(jid, "@", "_at_", -1)
+ oldDataFile3 := oldDataDir + strings.Replace(strings.Replace(jid, "@", "_at_", -1), ".", "_", -1)
+ dataFile := dataDir + "oxprivkey"
if _, err := os.Stat(oldDataFile); err == nil {
err := os.Rename(oldDataFile, dataFile)
if err != nil {
@@ -337,6 +341,12 @@
return dataFile, err
}
}
+ if _, err := os.Stat(oldDataFile3); err == nil {
+ err := os.Rename(oldDataFile3, dataFile)
+ if err != nil {
+ return dataFile, err
+ }
+ }
return dataFile, nil
}
@@ -381,7 +391,7 @@
log.Fatal("Ox: private key is locked.")
}
if key.IsExpired() {
- return nil, errors.New("Ox: private key is expired: " + key.GetFingerprint())
+ return nil, fmt.Errorf("Ox: private key is expired: %s", key.GetFingerprint())
}
return key, nil
}
@@ -467,7 +477,7 @@
return nil, fmt.Errorf("oxRecvPublicKeys: iq error requesting public keys: %w", err)
}
if oxPublicKey.Type != strResult {
- return nil, errors.New("error while requesting public key for " +
+ return nil, fmt.Errorf("error while requesting public key for %s",
recipient)
}
oxPublicKeyXML := etree.NewDocument()
@@ -481,18 +491,15 @@
}
oxPublicKeyXMLPubsub := oxPublicKeyXML.SelectElement("pubsub")
if oxPublicKeyXMLPubsub == nil {
- return nil, errors.New("ox: no pubsub element in reply to public " +
- "key request")
+ return nil, fmt.Errorf("ox: no pubsub element in reply to public key request")
}
oxPublicKeyXMLItems := oxPublicKeyXMLPubsub.SelectElement("items")
if oxPublicKeyXMLItems == nil {
- return nil, errors.New("ox: no items element in reply to public " +
- "key request")
+ return nil, fmt.Errorf("ox: no items element in reply to public key request")
}
oxPublicKeyXMLItem := oxPublicKeyXMLItems.SelectElement("item")
if oxPublicKeyXMLItem == nil {
- return nil, errors.New("ox: no item element in reply to public " +
- "key request")
+ return nil, fmt.Errorf("ox: no item element in reply to public key request")
}
oxPublicKeyXMLPubkeys := oxPublicKeyXMLItem.SelectElements("pubkey")
for _, r := range oxPublicKeyXMLPubkeys {
@@ -509,7 +516,7 @@
return nil, fmt.Errorf("oxRecvPublicKeys: failed to decode public key: %w", err)
}
if key.IsExpired() {
- return nil, errors.New("Key is expired: " + fingerprint)
+ return nil, fmt.Errorf("Key is expired: %s", fingerprint)
}
err = keyring.AddKey(key)
if err != nil {
@@ -541,7 +548,7 @@
log.Fatal(err)
}
if oxPublicKeyList.Type != strResult {
- return nil, errors.New("error while requesting public openpgp keys for " +
+ return nil, fmt.Errorf("error while requesting public openpgp keys for %s",
recipient)
}
oxPubKeyListXML := etree.NewDocument()
@@ -558,19 +565,19 @@
oxPubKeyListXMLPubsub := oxPubKeyListXML.SelectElement("pubsub")
if oxPubKeyListXMLPubsub == nil {
- return nil, errors.New("ox: no pubsub element in public key list")
+ return nil, fmt.Errorf("ox: no pubsub element in public key list")
}
oxPubKeyListXMLPubsubItems := oxPubKeyListXMLPubsub.SelectElement("items")
if oxPubKeyListXMLPubsubItems == nil {
- return nil, errors.New("ox: no items element in public key list")
+ return nil, fmt.Errorf("ox: no items element in public key list")
}
oxPubKeyListXMLPubsubItemsItem := oxPubKeyListXMLPubsubItems.SelectElement("item")
if oxPubKeyListXMLPubsubItemsItem == nil {
- return nil, errors.New("ox: no item element in public key list")
+ return nil, fmt.Errorf("ox: no item element in public key list")
}
oxPubKeyListXMLPubsubItemsItemPkl := oxPubKeyListXMLPubsubItemsItem.SelectElement("public-keys-list")
if oxPubKeyListXMLPubsubItemsItemPkl == nil {
- return nil, errors.New("ox: no public-keys-list element")
+ return nil, fmt.Errorf("ox: no public-keys-list element")
}
oxPubKeyListXMLPubsubItemsItemPklPm := oxPubKeyListXMLPubsubItemsItemPkl.SelectElements("pubkey-metadata")
for _, r := range oxPubKeyListXMLPubsubItemsItemPklPm {
@@ -592,7 +599,7 @@
}
}
if pubKeyRingID == "none" {
- return nil, errors.New("server didn't provide public key fingerprints for " + recipient)
+ return nil, fmt.Errorf("server didn't provide public key fingerprints for %s", recipient)
}
pubKeyRingLocation, err := oxGetPubKeyLoc(pubKeyRingID)
@@ -612,7 +619,7 @@
if !savedKeysDate.Before(newestKey) {
pubKeys := pubKeyReadXML.SelectElements("pubkey")
if pubKeys == nil {
- return nil, errors.New("couldn't read public keys from cache")
+ return nil, fmt.Errorf("couldn't read public keys from cache")
}
for _, r := range pubKeys {
keyByte, err := base64.StdEncoding.DecodeString(r.Text())
@@ -658,7 +665,7 @@
return pubKeyRing, nil
}
-func oxEncrypt(client *xmpp.Client, oxPrivKey *crypto.Key, recipient string, keyRing *crypto.KeyRing, message string) (string, error) {
+func oxEncrypt(client *xmpp.Client, oxPrivKey *crypto.Key, recipient string, keyRing *crypto.KeyRing, message string, subject string) (string, error) {
if message == "" {
return "", nil
}
@@ -685,6 +692,10 @@
oxCryptMessageScRpad := oxCryptMessageSc.CreateElement("rpad")
oxCryptMessageScRpad.CreateText(getRpad(len(message)))
oxCryptMessageScPayload := oxCryptMessageSc.CreateElement("payload")
+ if subject != "" {
+ oxCryptMessageScPayloadSub := oxCryptMessageScPayload.CreateElement("subject")
+ oxCryptMessageScPayloadSub.CreateText(subject)
+ }
oxCryptMessageScPayloadBody := oxCryptMessageScPayload.CreateElement("body")
oxCryptMessageScPayloadBody.CreateAttr("xmlns", nsJabberClient)
oxCryptMessageScPayloadBody.CreateText(message)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/parseconfig.go new/go-sendxmpp-0.11.0/parseconfig.go
--- old/go-sendxmpp-0.10.0/parseconfig.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/parseconfig.go 2024-05-29 18:51:52.000000000 +0200
@@ -6,7 +6,6 @@
import (
"bufio"
- "errors"
"fmt"
"log"
"os"
@@ -26,7 +25,7 @@
// Get home directory.
home := curUser.HomeDir
if home == "" {
- return "", errors.New("no home directory found")
+ return "", fmt.Errorf("findConfig: no home directory found")
}
osConfigDir := os.Getenv("$XDG_CONFIG_HOME")
if osConfigDir == "" {
@@ -45,7 +44,7 @@
return r, nil
}
}
- return "", errors.New("no configuration file found")
+ return "", fmt.Errorf("findConfig: no configuration file found")
}
// Opens the config file and returns the specified values
@@ -77,8 +76,7 @@
perm := info.Mode().Perm()
permissions := strconv.FormatInt(int64(perm), 8)
if permissions != "600" && permissions != "640" && permissions != "440" && permissions != "400" {
- return output, errors.New("Wrong permissions for " + configPath + ": " +
- permissions + " instead of 400, 440, 600 or 640.")
+ return output, fmt.Errorf("parseConfig: wrong permissions for %s: %s instead of 400, 440, 600 or 640.", configPath, permissions)
}
}
@@ -87,6 +85,7 @@
if err != nil {
return output, fmt.Errorf("parseConfig: failed to open config file: %w", err)
}
+ defer file.Close()
scanner := bufio.NewScanner(file)
scanner.Split(bufio.ScanLines)
@@ -140,10 +139,6 @@
}
}
}
- err = file.Close()
- if err != nil {
- fmt.Println("error closing file:", err)
- }
// Check if the username is a valid JID
output.username, err = MarshalJID(output.username)
@@ -154,7 +149,7 @@
// Check if the username is a valid JID now
output.username, err = MarshalJID(output.username)
if err != nil {
- return output, errors.New("invalid username/JID: " + output.username)
+ return output, fmt.Errorf("parseConfig: invalid username/JID: %s", output.username)
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/go-sendxmpp-0.10.0/stanzahandling.go new/go-sendxmpp-0.11.0/stanzahandling.go
--- old/go-sendxmpp-0.10.0/stanzahandling.go 2024-04-13 12:17:18.000000000 +0200
+++ new/go-sendxmpp-0.11.0/stanzahandling.go 2024-05-29 18:51:52.000000000 +0200
@@ -6,7 +6,6 @@
import (
"context"
- "errors"
"fmt"
"io"
"log"
@@ -30,7 +29,7 @@
select {
case iq = <-c:
case <-time.After(60 * time.Second):
- return iq, errors.New("sendIQ: server didn't reply to IQ: " + content)
+ return iq, fmt.Errorf("sendIQ: server didn't reply to IQ: %s", content)
}
return iq, nil
}
++++++ vendor.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/beevik/etree/CONTRIBUTORS new/vendor/github.com/beevik/etree/CONTRIBUTORS
--- old/vendor/github.com/beevik/etree/CONTRIBUTORS 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/beevik/etree/CONTRIBUTORS 2024-05-31 06:53:06.000000000 +0200
@@ -11,3 +11,4 @@
Martin Dosch (mdosch)
Hugo Wetterberg (hugowetterberg)
Tobias Theel (nerzal)
+Daniel Potapov (dpotapov)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/beevik/etree/LICENSE new/vendor/github.com/beevik/etree/LICENSE
--- old/vendor/github.com/beevik/etree/LICENSE 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/beevik/etree/LICENSE 2024-05-31 06:53:06.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright 2015-2023 Brett Vickers. All rights reserved.
+Copyright 2015-2024 Brett Vickers. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/beevik/etree/RELEASE_NOTES.md new/vendor/github.com/beevik/etree/RELEASE_NOTES.md
--- old/vendor/github.com/beevik/etree/RELEASE_NOTES.md 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/beevik/etree/RELEASE_NOTES.md 2024-05-31 06:53:06.000000000 +0200
@@ -1,3 +1,13 @@
+Release v1.4.0
+==============
+
+**New Features**
+
+* Add `AutoClose` option to `ReadSettings`.
+* Add `ValidateInput` to `ReadSettings`.
+* Add `NotNil` function to `Element`.
+* Add `NextSibling` and `PrevSibling` functions to `Element`.
+
Release v1.3.0
==============
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/beevik/etree/etree.go new/vendor/github.com/beevik/etree/etree.go
--- old/vendor/github.com/beevik/etree/etree.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/beevik/etree/etree.go 2024-05-31 06:53:06.000000000 +0200
@@ -50,8 +50,21 @@
// preserve them instead of keeping only one. Default: false.
PreserveDuplicateAttrs bool
+ // ValidateInput forces all ReadFrom* methods to validate that the
+ // provided input is composed of well-formed XML before processing it. If
+ // invalid XML is detected, the ReadFrom* methods return an error. Because
+ // this option requires the input to be processed twice, it incurs a
+ // significant performance penalty. Default: false.
+ ValidateInput bool
+
// Entity to be passed to standard xml.Decoder. Default: nil.
Entity map[string]string
+
+ // When Permissive is true, AutoClose indicates a set of elements to
+ // consider closed immediately after they are opened, regardless of
+ // whether an end element is present. Commonly set to xml.HTMLAutoClose.
+ // Default: nil.
+ AutoClose []string
}
// newReadSettings creates a default ReadSettings record.
@@ -60,9 +73,6 @@
CharsetReader: func(label string, input io.Reader) (io.Reader, error) {
return input, nil
},
- Permissive: false,
- PreserveCData: false,
- Entity: nil,
}
}
@@ -347,6 +357,16 @@
// ReadFrom reads XML from the reader 'r' into this document. The function
// returns the number of bytes read and any error encountered.
func (d *Document) ReadFrom(r io.Reader) (n int64, err error) {
+ if d.ReadSettings.ValidateInput {
+ b, err := io.ReadAll(r)
+ if err != nil {
+ return 0, err
+ }
+ if err := validateXML(bytes.NewReader(b), d.ReadSettings); err != nil {
+ return 0, err
+ }
+ r = bytes.NewReader(b)
+ }
return d.Element.readFrom(r, d.ReadSettings)
}
@@ -358,22 +378,62 @@
return err
}
defer f.Close()
+
_, err = d.ReadFrom(f)
return err
}
// ReadFromBytes reads XML from the byte slice 'b' into the this document.
func (d *Document) ReadFromBytes(b []byte) error {
- _, err := d.ReadFrom(bytes.NewReader(b))
+ if d.ReadSettings.ValidateInput {
+ if err := validateXML(bytes.NewReader(b), d.ReadSettings); err != nil {
+ return err
+ }
+ }
+ _, err := d.Element.readFrom(bytes.NewReader(b), d.ReadSettings)
return err
}
// ReadFromString reads XML from the string 's' into this document.
func (d *Document) ReadFromString(s string) error {
- _, err := d.ReadFrom(strings.NewReader(s))
+ if d.ReadSettings.ValidateInput {
+ if err := validateXML(strings.NewReader(s), d.ReadSettings); err != nil {
+ return err
+ }
+ }
+ _, err := d.Element.readFrom(strings.NewReader(s), d.ReadSettings)
return err
}
+// validateXML determines if the data read from the reader 'r' contains
+// well-formed XML according to the rules set by the go xml package.
+func validateXML(r io.Reader, settings ReadSettings) error {
+ dec := newDecoder(r, settings)
+ err := dec.Decode(new(interface{}))
+ if err != nil {
+ return err
+ }
+
+ // If there are any trailing tokens after unmarshalling with Decode(),
+ // then the XML input didn't terminate properly.
+ _, err = dec.Token()
+ if err == io.EOF {
+ return nil
+ }
+ return ErrXML
+}
+
+// newDecoder creates an XML decoder for the reader 'r' configured using
+// the provided read settings.
+func newDecoder(r io.Reader, settings ReadSettings) *xml.Decoder {
+ d := xml.NewDecoder(r)
+ d.CharsetReader = settings.CharsetReader
+ d.Strict = !settings.Permissive
+ d.Entity = settings.Entity
+ d.AutoClose = settings.AutoClose
+ return d
+}
+
// WriteTo serializes the document out to the writer 'w'. The function returns
// the number of bytes written and any error encountered.
func (d *Document) WriteTo(w io.Writer) (n int64, err error) {
@@ -796,6 +856,27 @@
return t
}
+// autoClose analyzes the stack's top element and the current token to decide
+// whether the top element should be closed.
+func (e *Element) autoClose(stack *stack, t xml.Token, tags []string) {
+ if stack.empty() {
+ return
+ }
+
+ top := stack.peek().(*Element)
+
+ for _, tag := range tags {
+ if strings.EqualFold(tag, top.FullTag()) {
+ if e, ok := t.(xml.EndElement); !ok ||
+ !strings.EqualFold(e.Name.Space, top.Space) ||
+ !strings.EqualFold(e.Name.Local, top.Tag) {
+ stack.pop()
+ }
+ break
+ }
+ }
+}
+
// ReadFrom reads XML from the reader 'ri' and stores the result as a new
// child of this element.
func (e *Element) readFrom(ri io.Reader, settings ReadSettings) (n int64, err error) {
@@ -808,10 +889,7 @@
r = newXmlSimpleReader(ri)
}
- dec := xml.NewDecoder(r)
- dec.CharsetReader = settings.CharsetReader
- dec.Strict = !settings.Permissive
- dec.Entity = settings.Entity
+ dec := newDecoder(r, settings)
var stack stack
stack.push(e)
@@ -822,6 +900,10 @@
t, err := dec.RawToken()
+ if settings.Permissive && settings.AutoClose != nil {
+ e.autoClose(&stack, t, settings.AutoClose)
+ }
+
switch {
case err == io.EOF:
if len(stack.data) != 1 {
@@ -970,6 +1052,25 @@
return p.traverse(e, path)
}
+// NotNil returns the receiver element if it isn't nil; otherwise, it returns
+// an unparented element with an empty string tag. This function simplifies
+// the task of writing code to ignore not-found results from element queries.
+// For example, instead of writing this:
+//
+// if e := doc.SelectElement("enabled"); e != nil {
+// e.SetText("true")
+// }
+//
+// You could write this:
+//
+// doc.SelectElement("enabled").NotNil().SetText("true")
+func (e *Element) NotNil() *Element {
+ if e == nil {
+ return NewElement("")
+ }
+ return e
+}
+
// GetPath returns the absolute path of the element. The absolute path is the
// full path from the document's root.
func (e *Element) GetPath() string {
@@ -1173,6 +1274,34 @@
return ne
}
+// NextSibling returns this element's next sibling element. It returns nil if
+// there is no next sibling element.
+func (e *Element) NextSibling() *Element {
+ if e.parent == nil {
+ return nil
+ }
+ for i := e.index + 1; i < len(e.parent.Child); i++ {
+ if s, ok := e.parent.Child[i].(*Element); ok {
+ return s
+ }
+ }
+ return nil
+}
+
+// PrevSibling returns this element's preceding sibling element. It returns
+// nil if there is no preceding sibling element.
+func (e *Element) PrevSibling() *Element {
+ if e.parent == nil {
+ return nil
+ }
+ for i := e.index - 1; i >= 0; i-- {
+ if s, ok := e.parent.Child[i].(*Element); ok {
+ return s
+ }
+ }
+ return nil
+}
+
// Parent returns this element's parent element. It returns nil if this
// element has no parent.
func (e *Element) Parent() *Element {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/cloudflare/circl/dh/x25519/curve_amd64.s new/vendor/github.com/cloudflare/circl/dh/x25519/curve_amd64.s
--- old/vendor/github.com/cloudflare/circl/dh/x25519/curve_amd64.s 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/cloudflare/circl/dh/x25519/curve_amd64.s 2024-05-31 06:53:06.000000000 +0200
@@ -1,4 +1,5 @@
-// +build amd64
+//go:build amd64 && !purego
+// +build amd64,!purego
#include "textflag.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/cloudflare/circl/dh/x448/curve_amd64.s new/vendor/github.com/cloudflare/circl/dh/x448/curve_amd64.s
--- old/vendor/github.com/cloudflare/circl/dh/x448/curve_amd64.s 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/cloudflare/circl/dh/x448/curve_amd64.s 2024-05-31 06:53:06.000000000 +0200
@@ -1,4 +1,5 @@
-// +build amd64
+//go:build amd64 && !purego
+// +build amd64,!purego
#include "textflag.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/cloudflare/circl/math/fp25519/fp_amd64.s new/vendor/github.com/cloudflare/circl/math/fp25519/fp_amd64.s
--- old/vendor/github.com/cloudflare/circl/math/fp25519/fp_amd64.s 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/cloudflare/circl/math/fp25519/fp_amd64.s 2024-05-31 06:53:06.000000000 +0200
@@ -1,4 +1,5 @@
-// +build amd64
+//go:build amd64 && !purego
+// +build amd64,!purego
#include "textflag.h"
#include "fp_amd64.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/cloudflare/circl/math/fp448/fp_amd64.s new/vendor/github.com/cloudflare/circl/math/fp448/fp_amd64.s
--- old/vendor/github.com/cloudflare/circl/math/fp448/fp_amd64.s 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/cloudflare/circl/math/fp448/fp_amd64.s 2024-05-31 06:53:06.000000000 +0200
@@ -1,4 +1,5 @@
-// +build amd64
+//go:build amd64 && !purego
+// +build amd64,!purego
#include "textflag.h"
#include "fp_amd64.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/LICENSE new/vendor/github.com/gabriel-vasile/mimetype/LICENSE
--- old/vendor/github.com/gabriel-vasile/mimetype/LICENSE 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/LICENSE 2024-05-31 06:53:06.000000000 +0200
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2018-2020 Gabriel Vasile
+Copyright (c) 2018 Gabriel Vasile
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/README.md new/vendor/github.com/gabriel-vasile/mimetype/README.md
--- old/vendor/github.com/gabriel-vasile/mimetype/README.md 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/README.md 2024-05-31 06:53:06.000000000 +0200
@@ -16,9 +16,6 @@
<a href="https://goreportcard.com/report/github.com/gabriel-vasile/mimetype">
<img alt="Go report card" src="https://goreportcard.com/badge/github.com/gabriel-vasile/mimetype">
</a>
- <a href="https://codecov.io/gh/gabriel-vasile/mimetype">
- <img alt="Code coverage" src="https://codecov.io/gh/gabriel-vasile/mimetype/branch/master/graph/badge.svg…"/>
- </a>
<a href="LICENSE">
<img alt="License" src="https://img.shields.io/badge/License-MIT-green.svg">
</a>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go
--- old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go 2024-05-31 06:53:06.000000000 +0200
@@ -3,6 +3,7 @@
import (
"bytes"
"encoding/binary"
+ "strconv"
)
var (
@@ -74,51 +75,87 @@
}
// Tar matches a (t)ape (ar)chive file.
+// Tar files are divided into 512 bytes records. First record contains a 257
+// bytes header padded with NUL.
func Tar(raw []byte, _ uint32) bool {
- // The "magic" header field for files in in UStar (POSIX IEEE P1003.1) archives
- // has the prefix "ustar". The values of the remaining bytes in this field vary
- // by archiver implementation.
- if len(raw) >= 512 && bytes.HasPrefix(raw[257:], []byte{0x75, 0x73, 0x74, 0x61, 0x72}) {
- return true
+ const sizeRecord = 512
+
+ // The structure of a tar header:
+ // type TarHeader struct {
+ // Name [100]byte
+ // Mode [8]byte
+ // Uid [8]byte
+ // Gid [8]byte
+ // Size [12]byte
+ // Mtime [12]byte
+ // Chksum [8]byte
+ // Linkflag byte
+ // Linkname [100]byte
+ // Magic [8]byte
+ // Uname [32]byte
+ // Gname [32]byte
+ // Devmajor [8]byte
+ // Devminor [8]byte
+ // }
+
+ if len(raw) < sizeRecord {
+ return false
}
+ raw = raw[:sizeRecord]
- if len(raw) < 256 {
+ // First 100 bytes of the header represent the file name.
+ // Check if file looks like Gentoo GLEP binary package.
+ if bytes.Contains(raw[:100], []byte("/gpkg-1\x00")) {
return false
}
- // The older v7 format has no "magic" field, and therefore must be identified
- // with heuristics based on legal ranges of values for other header fields:
- // https://www.nationalarchives.gov.uk/PRONOM/Format/proFormatSearch.aspx?stat…
- rules := []struct {
- min, max uint8
- i int
- }{
- {0x21, 0xEF, 0},
- {0x30, 0x37, 105},
- {0x20, 0x37, 106},
- {0x00, 0x00, 107},
- {0x30, 0x37, 113},
- {0x20, 0x37, 114},
- {0x00, 0x00, 115},
- {0x30, 0x37, 121},
- {0x20, 0x37, 122},
- {0x00, 0x00, 123},
- {0x30, 0x37, 134},
- {0x30, 0x37, 146},
- {0x30, 0x37, 153},
- {0x00, 0x37, 154},
- }
- for _, r := range rules {
- if raw[r.i] < r.min || raw[r.i] > r.max {
- return false
- }
+ // Get the checksum recorded into the file.
+ recsum, err := tarParseOctal(raw[148:156])
+ if err != nil {
+ return false
}
+ sum1, sum2 := tarChksum(raw)
+ return recsum == sum1 || recsum == sum2
+}
- for _, i := range []uint8{135, 147, 155} {
- if raw[i] != 0x00 && raw[i] != 0x20 {
- return false
- }
+// tarParseOctal converts octal string to decimal int.
+func tarParseOctal(b []byte) (int64, error) {
+ // Because unused fields are filled with NULs, we need to skip leading NULs.
+ // Fields may also be padded with spaces or NULs.
+ // So we remove leading and trailing NULs and spaces to be sure.
+ b = bytes.Trim(b, " \x00")
+
+ if len(b) == 0 {
+ return 0, nil
+ }
+ x, err := strconv.ParseUint(tarParseString(b), 8, 64)
+ if err != nil {
+ return 0, err
}
+ return int64(x), nil
+}
+
+// tarParseString converts a NUL ended bytes slice to a string.
+func tarParseString(b []byte) string {
+ if i := bytes.IndexByte(b, 0); i >= 0 {
+ return string(b[:i])
+ }
+ return string(b)
+}
- return true
+// tarChksum computes the checksum for the header block b.
+// The actual checksum is written to same b block after it has been calculated.
+// Before calculation the bytes from b reserved for checksum have placeholder
+// value of ASCII space 0x20.
+// POSIX specifies a sum of the unsigned byte values, but the Sun tar used
+// signed byte values. We compute and return both.
+func tarChksum(b []byte) (unsigned, signed int64) {
+ for i, c := range b {
+ if 148 <= i && i < 156 {
+ c = ' ' // Treat the checksum field itself as all spaces.
+ }
+ unsigned += int64(c)
+ signed += int64(int8(c))
+ }
+ return unsigned, signed
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go
--- old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go 2024-05-31 06:53:06.000000000 +0200
@@ -153,8 +153,11 @@
if len(raw) < 12 {
return false
}
+ if !bytes.Equal(raw[4:8], []byte("ftyp")) {
+ return false
+ }
for _, s := range sigs {
- if bytes.Equal(raw[4:12], append([]byte("ftyp"), s...)) {
+ if bytes.Equal(raw[8:12], s) {
return true
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go
--- old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go 2024-05-31 06:53:06.000000000 +0200
@@ -1,7 +1,6 @@
package magic
import (
- "bufio"
"bytes"
"strings"
"time"
@@ -234,9 +233,10 @@
// types.
func NdJSON(raw []byte, limit uint32) bool {
lCount, hasObjOrArr := 0, false
- sc := bufio.NewScanner(dropLastLine(raw, limit))
- for sc.Scan() {
- l := sc.Bytes()
+ raw = dropLastLine(raw, limit)
+ var l []byte
+ for len(raw) != 0 {
+ l, raw = scanLine(raw)
// Empty lines are allowed in NDJSON.
if l = trimRWS(trimLWS(l)); len(l) == 0 {
continue
@@ -301,20 +301,15 @@
}
// Srt matches a SubRip file.
-func Srt(in []byte, _ uint32) bool {
- s := bufio.NewScanner(bytes.NewReader(in))
- if !s.Scan() {
- return false
- }
- // First line must be 1.
- if s.Text() != "1" {
- return false
- }
+func Srt(raw []byte, _ uint32) bool {
+ line, raw := scanLine(raw)
- if !s.Scan() {
+ // First line must be 1.
+ if string(line) != "1" {
return false
}
- secondLine := s.Text()
+ line, raw = scanLine(raw)
+ secondLine := string(line)
// Timestamp format (e.g: 00:02:16,612 --> 00:02:19,376) limits secondLine
// length to exactly 29 characters.
if len(secondLine) != 29 {
@@ -325,14 +320,12 @@
if strings.Contains(secondLine, ".") {
return false
}
- // For Go <1.17, comma is not recognised as a decimal separator by `time.Parse`.
- secondLine = strings.ReplaceAll(secondLine, ",", ".")
// Second line must be a time range.
ts := strings.Split(secondLine, " --> ")
if len(ts) != 2 {
return false
}
- const layout = "15:04:05.000"
+ const layout = "15:04:05,000"
t0, err := time.Parse(layout, ts[0])
if err != nil {
return false
@@ -345,8 +338,9 @@
return false
}
+ line, _ = scanLine(raw)
// A third line must exist and not be empty. This is the actual subtitle text.
- return s.Scan() && len(s.Bytes()) != 0
+ return len(line) != 0
}
// Vtt matches a Web Video Text Tracks (WebVTT) file. See
@@ -373,3 +367,15 @@
return bytes.Equal(raw, []byte{0xEF, 0xBB, 0xBF, 0x57, 0x45, 0x42, 0x56, 0x54, 0x54}) || // UTF-8 BOM and "WEBVTT"
bytes.Equal(raw, []byte{0x57, 0x45, 0x42, 0x56, 0x54, 0x54}) // "WEBVTT"
}
+
+// dropCR drops a terminal \r from the data.
+func dropCR(data []byte) []byte {
+ if len(data) > 0 && data[len(data)-1] == '\r' {
+ return data[0 : len(data)-1]
+ }
+ return data
+}
+func scanLine(b []byte) (line, remainder []byte) {
+ line, remainder, _ = bytes.Cut(b, []byte("\n"))
+ return dropCR(line), remainder
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go
--- old/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go 2024-05-31 06:53:06.000000000 +0200
@@ -18,7 +18,7 @@
}
func sv(in []byte, comma rune, limit uint32) bool {
- r := csv.NewReader(dropLastLine(in, limit))
+ r := csv.NewReader(bytes.NewReader(dropLastLine(in, limit)))
r.Comma = comma
r.ReuseRecord = true
r.LazyQuotes = true
@@ -44,20 +44,14 @@
// mimetype limits itself to ReadLimit bytes when performing a detection.
// This means, for file formats like CSV for NDJSON, the last line of the input
// can be an incomplete line.
-func dropLastLine(b []byte, cutAt uint32) io.Reader {
- if cutAt == 0 {
- return bytes.NewReader(b)
+func dropLastLine(b []byte, readLimit uint32) []byte {
+ if readLimit == 0 || uint32(len(b)) < readLimit {
+ return b
}
- if uint32(len(b)) >= cutAt {
- for i := cutAt - 1; i > 0; i-- {
- if b[i] == '\n' {
- return bytes.NewReader(b[:i])
- }
+ for i := len(b) - 1; i > 0; i-- {
+ if b[i] == '\n' {
+ return b[:i]
}
-
- // No newline was found between the 0 index and cutAt.
- return bytes.NewReader(b[:cutAt])
}
-
- return bytes.NewReader(b)
+ return b
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/gabriel-vasile/mimetype/mimetype.go new/vendor/github.com/gabriel-vasile/mimetype/mimetype.go
--- old/vendor/github.com/gabriel-vasile/mimetype/mimetype.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/gabriel-vasile/mimetype/mimetype.go 2024-05-31 06:53:06.000000000 +0200
@@ -7,14 +7,15 @@
import (
"io"
- "io/ioutil"
"mime"
"os"
"sync/atomic"
)
+var defaultLimit uint32 = 3072
+
// readLimit is the maximum number of bytes from the input used when detecting.
-var readLimit uint32 = 3072
+var readLimit uint32 = defaultLimit
// Detect returns the MIME type found from the provided byte slice.
//
@@ -48,7 +49,7 @@
// Using atomic because readLimit can be written at the same time in other goroutine.
l := atomic.LoadUint32(&readLimit)
if l == 0 {
- in, err = ioutil.ReadAll(r)
+ in, err = io.ReadAll(r)
if err != nil {
return errMIME, err
}
@@ -103,6 +104,7 @@
// SetLimit sets the maximum number of bytes read from input when detecting the MIME type.
// Increasing the limit provides better detection for file formats which store
// their magical numbers towards the end of the file: docx, pptx, xlsx, etc.
+// During detection data is read in a single block of size limit, i.e. it is not buffered.
// A limit of 0 means the whole input file will be used.
func SetLimit(limit uint32) {
// Using atomic because readLimit can be read at the same time in other goroutine.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/github.com/xmppo/go-xmpp/xmpp.go new/vendor/github.com/xmppo/go-xmpp/xmpp.go
--- old/vendor/github.com/xmppo/go-xmpp/xmpp.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/github.com/xmppo/go-xmpp/xmpp.go 2024-05-31 06:53:06.000000000 +0200
@@ -92,10 +92,10 @@
shutdown bool // Variable signalling that the stream will be closed
p *xml.Decoder
stanzaWriter io.Writer
- LimitMaxBytes int // Maximum stanza size (XEP-0478: Stream Limits Advertisement)
- LimitIdleSeconds int // Maximum idle seconds (XEP-0478: Stream Limits Advertisement)
- Mechanism string
- Fast Fast // XEP-0484 FAST Token, mechanism and expiry.
+ LimitMaxBytes int // Maximum stanza size (XEP-0478: Stream Limits Advertisement)
+ LimitIdleSeconds int // Maximum idle seconds (XEP-0478: Stream Limits Advertisement)
+ Mechanism string // SCRAM mechanism used.
+ Fast Fast // XEP-0484 FAST Token, mechanism and expiry.
}
func (c *Client) JID() string {
@@ -262,6 +262,9 @@
// MUST be a valid UUIDv4
UserAgentID string
+ // Enable XEP-0484: Fast Authentication Streamlining Tokens
+ Fast bool
+
// XEP-0484: Fast Authentication Streamlining Tokens
// Fast Token
FastToken string
@@ -625,7 +628,7 @@
if o.UserAgentID != "" {
userAgentID = fmt.Sprintf(" id='%s'", o.UserAgentID)
}
- if f.Authentication.Inline.Fast.Mechanism != nil && o.UserAgentID != "" && c.IsEncrypted() {
+ if o.Fast && f.Authentication.Inline.Fast.Mechanism != nil && o.UserAgentID != "" && c.IsEncrypted() {
var mech string
if o.FastToken == "" {
m := f.Authentication.Inline.Fast.Mechanism
@@ -1146,12 +1149,21 @@
c.stanzaWriter = c.conn
}
- _, err := fmt.Fprintf(c.stanzaWriter, "<?xml version='1.0'?>"+
- "<stream:stream from='%s' to='%s' xmlns='%s'"+
- " xmlns:stream='%s' version='1.0'>\n",
- xmlEscape(o.User), xmlEscape(domain), nsClient, nsStream)
- if err != nil {
- return nil, err
+ if c.IsEncrypted() {
+ _, err := fmt.Fprintf(c.stanzaWriter, "<?xml version='1.0'?>"+
+ "<stream:stream from='%s' to='%s' xmlns='%s'"+
+ " xmlns:stream='%s' version='1.0'>\n",
+ xmlEscape(o.User), xmlEscape(domain), nsClient, nsStream)
+ if err != nil {
+ return nil, err
+ }
+ } else {
+ _, err := fmt.Fprintf(c.stanzaWriter, "<?xml version='1.0'?>"+
+ "<stream:stream to='%s' xmlns='%s' xmlns:stream='%s' version='1.0'>\n",
+ xmlEscape(domain), nsClient, nsStream)
+ if err != nil {
+ return nil, err
+ }
}
// We expect the server to start a <stream>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/crypto/sha3/sha3_s390x.go new/vendor/golang.org/x/crypto/sha3/sha3_s390x.go
--- old/vendor/golang.org/x/crypto/sha3/sha3_s390x.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/crypto/sha3/sha3_s390x.go 2024-05-31 06:53:06.000000000 +0200
@@ -143,6 +143,12 @@
// Read squeezes an arbitrary number of bytes from the sponge.
func (s *asmState) Read(out []byte) (n int, err error) {
+ // The 'compute last message digest' instruction only stores the digest
+ // at the first operand (dst) for SHAKE functions.
+ if s.function != shake_128 && s.function != shake_256 {
+ panic("sha3: can only call Read for SHAKE functions")
+ }
+
n = len(out)
// need to pad if we were absorbing
@@ -202,8 +208,17 @@
// Hash the buffer. Note that we don't clear it because we
// aren't updating the state.
- klmd(s.function, &a, nil, s.buf)
- return append(b, a[:s.outputLen]...)
+ switch s.function {
+ case sha3_224, sha3_256, sha3_384, sha3_512:
+ klmd(s.function, &a, nil, s.buf)
+ return append(b, a[:s.outputLen]...)
+ case shake_128, shake_256:
+ d := make([]byte, s.outputLen, 64)
+ klmd(s.function, &a, d, s.buf)
+ return append(b, d[:s.outputLen]...)
+ default:
+ panic("sha3: unknown function")
+ }
}
// Reset resets the Hash to its initial state.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/net/html/doc.go new/vendor/golang.org/x/net/html/doc.go
--- old/vendor/golang.org/x/net/html/doc.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/net/html/doc.go 2024-05-31 06:53:06.000000000 +0200
@@ -104,7 +104,7 @@
parsing specification respectively. While the tokenizer parses and normalizes
individual HTML tokens, only the parser constructs the DOM tree from the
tokenized HTML, as described in the tree construction stage of the
-specification, dynamically modifying or extending the docuemnt's DOM tree.
+specification, dynamically modifying or extending the document's DOM tree.
If your use case requires semantically well-formed HTML documents, as defined by
the WHATWG specification, the parser should be used rather than the tokenizer.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/cpu/cpu.go new/vendor/golang.org/x/sys/cpu/cpu.go
--- old/vendor/golang.org/x/sys/cpu/cpu.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/sys/cpu/cpu.go 2024-05-31 06:53:06.000000000 +0200
@@ -103,6 +103,7 @@
HasASIMDDP bool // Advanced SIMD double precision instruction set
HasSHA512 bool // SHA512 hardware implementation
HasSVE bool // Scalable Vector Extensions
+ HasSVE2 bool // Scalable Vector Extensions 2
HasASIMDFHM bool // Advanced SIMD multiplication FP16 to FP32
_ CacheLinePad
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/cpu/cpu_arm64.go new/vendor/golang.org/x/sys/cpu/cpu_arm64.go
--- old/vendor/golang.org/x/sys/cpu/cpu_arm64.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/sys/cpu/cpu_arm64.go 2024-05-31 06:53:06.000000000 +0200
@@ -28,6 +28,7 @@
{Name: "sm3", Feature: &ARM64.HasSM3},
{Name: "sm4", Feature: &ARM64.HasSM4},
{Name: "sve", Feature: &ARM64.HasSVE},
+ {Name: "sve2", Feature: &ARM64.HasSVE2},
{Name: "crc32", Feature: &ARM64.HasCRC32},
{Name: "atomics", Feature: &ARM64.HasATOMICS},
{Name: "asimdhp", Feature: &ARM64.HasASIMDHP},
@@ -164,6 +165,15 @@
switch extractBits(pfr0, 32, 35) {
case 1:
ARM64.HasSVE = true
+
+ parseARM64SVERegister(getzfr0())
+ }
+}
+
+func parseARM64SVERegister(zfr0 uint64) {
+ switch extractBits(zfr0, 0, 3) {
+ case 1:
+ ARM64.HasSVE2 = true
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/cpu/cpu_arm64.s new/vendor/golang.org/x/sys/cpu/cpu_arm64.s
--- old/vendor/golang.org/x/sys/cpu/cpu_arm64.s 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/sys/cpu/cpu_arm64.s 2024-05-31 06:53:06.000000000 +0200
@@ -29,3 +29,11 @@
WORD $0xd5380400
MOVD R0, ret+0(FP)
RET
+
+// func getzfr0() uint64
+TEXT ·getzfr0(SB),NOSPLIT,$0-8
+ // get SVE Feature Register 0 into x0
+ // mrs x0, ID_AA64ZFR0_EL1 = d5380480
+ WORD $0xd5380480
+ MOVD R0, ret+0(FP)
+ RET
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go new/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
--- old/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go 2024-05-31 06:53:06.000000000 +0200
@@ -9,3 +9,4 @@
func getisar0() uint64
func getisar1() uint64
func getpfr0() uint64
+func getzfr0() uint64
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go new/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go
--- old/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go 2024-05-31 06:53:06.000000000 +0200
@@ -35,6 +35,8 @@
hwcap_SHA512 = 1 << 21
hwcap_SVE = 1 << 22
hwcap_ASIMDFHM = 1 << 23
+
+ hwcap2_SVE2 = 1 << 1
)
// linuxKernelCanEmulateCPUID reports whether we're running
@@ -104,6 +106,9 @@
ARM64.HasSHA512 = isSet(hwCap, hwcap_SHA512)
ARM64.HasSVE = isSet(hwCap, hwcap_SVE)
ARM64.HasASIMDFHM = isSet(hwCap, hwcap_ASIMDFHM)
+
+ // HWCAP2 feature bits
+ ARM64.HasSVE2 = isSet(hwCap2, hwcap2_SVE2)
}
func isSet(hwc uint, value uint) bool {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vendor/modules.txt new/vendor/modules.txt
--- old/vendor/modules.txt 2024-04-15 10:13:32.000000000 +0200
+++ new/vendor/modules.txt 2024-05-31 06:53:06.000000000 +0200
@@ -28,11 +28,11 @@
github.com/ProtonMail/gopenpgp/v2/constants
github.com/ProtonMail/gopenpgp/v2/crypto
github.com/ProtonMail/gopenpgp/v2/internal
-# github.com/beevik/etree v1.3.0
-## explicit; go 1.13
+# github.com/beevik/etree v1.4.0
+## explicit; go 1.16
github.com/beevik/etree
-# github.com/cloudflare/circl v1.3.7
-## explicit; go 1.19
+# github.com/cloudflare/circl v1.3.8
+## explicit; go 1.21
github.com/cloudflare/circl/dh/x25519
github.com/cloudflare/circl/dh/x448
github.com/cloudflare/circl/ecc/goldilocks
@@ -45,7 +45,7 @@
github.com/cloudflare/circl/sign
github.com/cloudflare/circl/sign/ed25519
github.com/cloudflare/circl/sign/ed448
-# github.com/gabriel-vasile/mimetype v1.4.3
+# github.com/gabriel-vasile/mimetype v1.4.4
## explicit; go 1.20
github.com/gabriel-vasile/mimetype
github.com/gabriel-vasile/mimetype/internal/charset
@@ -60,10 +60,10 @@
# github.com/pkg/errors v0.9.1
## explicit
github.com/pkg/errors
-# github.com/xmppo/go-xmpp v0.2.0
+# github.com/xmppo/go-xmpp v0.2.1
## explicit; go 1.21.5
github.com/xmppo/go-xmpp
-# golang.org/x/crypto v0.22.0
+# golang.org/x/crypto v0.23.0
## explicit; go 1.18
golang.org/x/crypto/argon2
golang.org/x/crypto/blake2b
@@ -72,16 +72,16 @@
golang.org/x/crypto/pbkdf2
golang.org/x/crypto/scrypt
golang.org/x/crypto/sha3
-# golang.org/x/net v0.24.0
+# golang.org/x/net v0.25.0
## explicit; go 1.18
golang.org/x/net/html
golang.org/x/net/html/atom
golang.org/x/net/internal/socks
golang.org/x/net/proxy
-# golang.org/x/sys v0.19.0
+# golang.org/x/sys v0.20.0
## explicit; go 1.18
golang.org/x/sys/cpu
-# golang.org/x/text v0.14.0
+# golang.org/x/text v0.15.0
## explicit; go 1.18
golang.org/x/text/encoding
golang.org/x/text/encoding/charmap
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openscad for openSUSE:Factory checked in at 2024-06-03 17:40:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openscad (Old)
and /work/SRC/openSUSE:Factory/.openscad.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openscad"
Mon Jun 3 17:40:47 2024 rev:13 rq:1177828 version:2021.01
Changes:
--------
--- /work/SRC/openSUSE:Factory/openscad/openscad.changes 2022-07-05 12:10:27.984641719 +0200
+++ /work/SRC/openSUSE:Factory/.openscad.new.24587/openscad.changes 2024-06-03 17:40:48.809151699 +0200
@@ -1,0 +2,6 @@
+Mon May 27 11:42:51 UTC 2024 - George <georgewoodall82(a)gmail.com>
+
+- Add patch to fix is_regular is not a member of fs
+ + fix_fs_error.patch
+
+-------------------------------------------------------------------
New:
----
fix_fs_error.patch
BETA DEBUG BEGIN:
New:- Add patch to fix is_regular is not a member of fs
+ fix_fs_error.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openscad.spec ++++++
--- /var/tmp/diff_new_pack.Hdy1yO/_old 2024-06-03 17:40:49.777187218 +0200
+++ /var/tmp/diff_new_pack.Hdy1yO/_new 2024-06-03 17:40:49.777187218 +0200
@@ -1,7 +1,7 @@
#
# spec file for package openscad
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -29,6 +29,7 @@
Patch2: CVE-2022-0497.patch
Patch3: fix_build_with_cgal-5.4.patch
Patch4: fix_build_issue_with_overloaded_join.patch
+Patch5: fix_fs_error.patch
BuildRequires: bison
BuildRequires: double-conversion-devel
BuildRequires: flex
++++++ fix_fs_error.patch ++++++
diff '--color=auto' -Naur openscad-2021.01.orig/src/FileModule.cc openscad-2021.01/src/FileModule.cc
--- openscad-2021.01.orig/src/FileModule.cc 2024-05-27 11:57:04.154249159 +0100
+++ openscad-2021.01/src/FileModule.cc 2024-05-27 11:52:36.324609857 +0100
@@ -65,7 +65,7 @@
auto ext = fs::path(path).extension().generic_string();
if (boost::iequals(ext, ".otf") || boost::iequals(ext, ".ttf")) {
- if (fs::is_regular(path)) {
+ if (fs::is_regular_file(path)) {
FontCache::instance()->register_font_file(path);
} else {
LOG(message_group::Error,Location::NONE,"","Can't read font with path '%1$s'",path);
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package sccache for openSUSE:Factory checked in at 2024-06-03 17:40:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sccache (Old)
and /work/SRC/openSUSE:Factory/.sccache.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sccache"
Mon Jun 3 17:40:44 2024 rev:39 rq:1177827 version:0.8.1~2
Changes:
--------
--- /work/SRC/openSUSE:Factory/sccache/sccache.changes 2024-05-14 13:39:26.100935223 +0200
+++ /work/SRC/openSUSE:Factory/.sccache.new.24587/sccache.changes 2024-06-03 17:40:46.201056006 +0200
@@ -1,0 +2,30 @@
+Fri May 31 02:41:29 UTC 2024 - william.brown(a)suse.com
+
+- Update to version 0.8.1~2:
+ * Add experimental concurrent cache support
+ * deps: bump libc from 0.2.153 to 0.2.155 (#2188)
+ * sccache: prepare new release (#2179)
+ * build(deps): bump bytes from 1.5.0 to 1.6.0 (#2176)
+ * build(deps): bump encoding_rs from 0.8.33 to 0.8.34 (#2178)
+ * build(deps): bump semver from 1.0.22 to 1.0.23 (#2177)
+ * build(deps): bump tempfile from 3.9.0 to 3.10.1 (#2175)
+ * build(deps): bump time from 0.3.31 to 0.3.36 (#2184)
+ * Make preprocessor cache methods async (#2182)
+ * Make recent versions of clippy happy (#2181)
+ * Allow SCCACHE_CACHE_SIZE values without a unit (#2183)
+ * Disable preprocessor cache when doing distributed compilation (#2173)
+ * build(deps): bump jobserver from 0.1.28 to 0.1.31 (#2166)
+ * build(deps): bump tokio from 1.35.1 to 1.37.0 (#2165)
+ * build(deps): bump http-body-util from 0.1.0 to 0.1.1 (#2167)
+ * build(deps): bump serde from 1.0.199 to 1.0.201 (#2171)
+ * build(deps): bump serde from 1.0.195 to 1.0.199 (#2162)
+ * build(deps): bump semver from 1.0.21 to 1.0.22 (#2109)
+ * build(deps): bump nix from 0.27.1 to 0.28.0 (#2108)
+ * build(deps): bump mio from 0.8.10 to 0.8.11 (#2128)
+ * build(deps): bump h2 from 0.3.24 to 0.3.26 (#2144)
+ * msvc: passthrough argument -Qpar- (#1834)
+ * build(deps): bump rustls from 0.21.10 to 0.21.11 (#2151)
+ * build(deps): bump serial_test from 2.0.0 to 3.1.0 (#2158)
+ * Add required winapi features (#2160)
+
+-------------------------------------------------------------------
Old:
----
sccache-0.8.0~3.tar.zst
New:
----
sccache-0.8.1~2.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sccache.spec ++++++
--- /var/tmp/diff_new_pack.2wpNn4/_old 2024-06-03 17:40:47.613107815 +0200
+++ /var/tmp/diff_new_pack.2wpNn4/_new 2024-06-03 17:40:47.613107815 +0200
@@ -19,7 +19,7 @@
%define configdir %{_sysconfdir}/%{name}
Name: sccache
-Version: 0.8.0~3
+Version: 0.8.1~2
Release: 0
Summary: A compiler caching tool for Rust, C and C++ with optional cloud storage
License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR CC0-1.0) AND ((Apache-2.0 AND BSD-2-Clause) OR MIT) AND (Apache-2.0 OR MIT OR BSD-2-Clause) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 OR MIT OR Zlib) AND (MIT OR Unlicense) AND (Apache-2.0 OR Zlib OR MIT) AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.2wpNn4/_old 2024-06-03 17:40:47.665109723 +0200
+++ /var/tmp/diff_new_pack.2wpNn4/_new 2024-06-03 17:40:47.669109870 +0200
@@ -5,7 +5,7 @@
<param name="versionformat">@PARENT_TAG@~@TAG_OFFSET@</param>
<param name="scm">git</param>
<!-- <param name="revision">v0.3.0</param> -->
- <param name="revision">20240423-suse-maint-v0.8.0</param>
+ <param name="revision">20240531-suse-maint-v0.8.1</param>
<param name="match-tag">*</param>
<param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
<param name="versionrewrite-replacement">\1</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.2wpNn4/_old 2024-06-03 17:40:47.685110457 +0200
+++ /var/tmp/diff_new_pack.2wpNn4/_new 2024-06-03 17:40:47.689110604 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/Firstyear/sccache.git</param>
- <param name="changesrevision">8f6063d862d3b04a0b58740f5565930fab0370f2</param></service></servicedata>
+ <param name="changesrevision">5700418e9f2eb4acfc8c1ed092f2f831890de392</param></service></servicedata>
(No newline at EOF)
++++++ sccache-0.8.0~3.tar.zst -> sccache-0.8.1~2.tar.zst ++++++
++++ 4628 lines of diff (skipped)
++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/sccache/vendor.tar.zst /work/SRC/openSUSE:Factory/.sccache.new.24587/vendor.tar.zst differ: char 7, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package plasma-branding-Kalpa for openSUSE:Factory checked in at 2024-06-03 17:40:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/plasma-branding-Kalpa (Old)
and /work/SRC/openSUSE:Factory/.plasma-branding-Kalpa.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "plasma-branding-Kalpa"
Mon Jun 3 17:40:41 2024 rev:5 rq:1177820 version:20240401
Changes:
--------
--- /work/SRC/openSUSE:Factory/plasma-branding-Kalpa/plasma-branding-Kalpa.changes 2024-04-02 16:46:31.153845067 +0200
+++ /work/SRC/openSUSE:Factory/.plasma-branding-Kalpa.new.24587/plasma-branding-Kalpa.changes 2024-06-03 17:40:44.817005224 +0200
@@ -1,0 +2,10 @@
+Thu May 30 22:22:26 UTC 2024 - Shawn Dunn <sfalken(a)opensuse.org>
+
+- Added Conflicts: plasma-branding-MicroOS
+
+-------------------------------------------------------------------
+Thu May 30 21:42:03 UTC 2024 - Gerardo Gomez Rodriguez <gerardo.gomez(a)tutanota.com>
+
+- Removed Obsolets from spec file to avoid collision with plasma-branding-MicroOS
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ plasma-branding-Kalpa.spec ++++++
--- /var/tmp/diff_new_pack.SamUKX/_old 2024-06-03 17:40:45.497030175 +0200
+++ /var/tmp/diff_new_pack.SamUKX/_new 2024-06-03 17:40:45.501030321 +0200
@@ -48,7 +48,9 @@
Conflicts: gnome-branding-MicroOS
Provides: plasma-branding = %{version}
Provides: plasma-branding-MicroOS = %{version}
-Obsoletes: plasma-branding-MicroOS < %{version}
+# Do not obsolete plasma-branding-MicroOS just yet
+# Obsoletes: plasma-branding-MicroOS
+Conflicts: plasma-branding-MicroOS = %{version}
BuildArch: noarch
%description
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package lvm2 for openSUSE:Factory checked in at 2024-06-03 17:40:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lvm2 (Old)
and /work/SRC/openSUSE:Factory/.lvm2.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lvm2"
Mon Jun 3 17:40:31 2024 rev:165 rq:1178006 version:2.03.24
Changes:
--------
--- /work/SRC/openSUSE:Factory/lvm2/lvm2.changes 2024-05-23 15:35:08.843369807 +0200
+++ /work/SRC/openSUSE:Factory/.lvm2.new.24587/lvm2.changes 2024-06-03 17:40:33.880603957 +0200
@@ -1,0 +2,136 @@
+Sat Jun 1 01:46:00 UTC 2024 - Heming Zhao <heming.zhao(a)suse.com>
+
+- add rpm dependency in spec file for aligning new DM udev rules (bsc#1225783)
+ * update lvm2.spec
+
+-------------------------------------------------------------------
+Sun May 26 13:14:00 UTC 2024 - Heming Zhao <heming.zhao(a)suse.com>
+
+- Update lvm2 from LVM2.2.03.22 to LVM2.2.03.24
+
+ *** WHATS_NEW from 2.03.22 to 2.03.24 ***
+
+ Version 2.03.24 - 16th May 2024
+ ===============================
+ Lvconvert supports VDO options for thin-pool with vdo conversion.
+ Improve placement to .data.rel.ro and .rodata sections.
+ Fix support for -y and -W when creating thinpool with vdo.
+ Bettter support for runtime valgrind detection.
+ Allow command interruption when communicating with dmeventd.
+ Fix resize of VDO volume used for thin pool data volume.
+ Use -Wl,-z,now and -Wl,--as-needed for compilation by default.
+ Require 3.7 as minimal version for sanlock.
+ Share code for closing opened desriptors on program startup.
+ Fix memleak in lvmcache.
+ Add configure --with-default-event-activation=ON setting.
+ Fix return value from reporter function when hitting internal error.
+ Skip checking of pools for lvremove and vgremove commands.
+ VDO modprobes dm-vdo for 6.9 kernel and kvdo for older kernel version.
+ Fix lvs reporting for VDO volumes with new upstream kernel driver.
+ Don't import DM_UDEV_DISABLE_OTHER_RULES_FLAG in LVM rules, DM rules cover it.
+ Fix table line generation for cache snapshots using cachevol.
+ Enhance lvconvert support for external origins stacking.
+ When swapping LV names also swap properties like hostname, time and data.
+ Fix removal of stacked external origins.
+ Lock filesystem when converting volume to read-only external origin.
+ Support external origin between different thin-pool.
+ Improve validation of acceptable volumes for external origins.
+ Reduce amount of preloaded devices for complex device trees.
+ Avoid logging problems from monitoring snapshots with inactive origins.
+ Check for cache policy module presence in kernel's builtin modules file.
+ Add configure --with-modulesdir to select kernel modules directory.
+ Support creation of thin-pool with VDO use for its data volume.
+
+ Version 2.03.23 - 21st November 2023
+ ====================================
+ Set the first lv_attr flag for raid integrity images to i or I.
+ Add -A option for pvs and pvscan to show PVs outside devices file.
+ Improve searched_devnames temp file usage to prevent redundant scanning.
+ Change default search_for_devnames from auto to all.
+ Add lvmdevices --refresh to search for missing PVIDs on all devices.
+ Add comparison between old and new entries in lvmdevices --check.
+ Fix device_id matching order - match non-devname first.
+ Fix "lvconvert -m 0" when there is other than first in-sync leg.
+ Use system.devices as default for dmeventd when dmeventd.devices is undefined.
+ Accept WWIDs containing QEMU HARDDISK for device_id.
+ Improve handling of non-standard WWID prefixes used for device_id.
+ Configure automatically enables cmdlib for dmeventd and notify-dbus for dbus.
+ Fix hint calculation for pools with zero or error segment.
+ Configure supports --disable-shared to build only static binaries.
+ Configure supports --without-{blkid|systemd|udev} for easier static build.
+ Refresh device ids if the system changes.
+ Fix pvmove when specifying raid components as moved LVs.
+ Enhance error detection for lvm_import_vdo.
+ Support PV lists with thin lvconvert.
+ Fix support for lvm_import_vdo with SCSI VDO volumes.
+ Fix locking issue leading to hanging concurrent vgchange --refresh.
+ Recognize lvm.conf report/headings=2 for full column names in report headings.
+ Add --headings none|abbrev|full cmd line option to set report headings type.
+ Fix conversion to thin pool using lvmlockd.
+ Fix conversion from thick into thin volume using lvmlockd.
+ Require writable LV for conversion to vdo pool.
+ Fix return value from lvconvert integrity remove.
+ Preserve UUID for pool metadata spare.
+ Preserve UUID for swapped pool metadata.
+ Rewrite validation of device name entries used as device_id.
+
+ *** WHATS_NEW_DM from 1.02.196 to 1.02.198 ***
+
+ Version 1.02.198 - 16th May 2024
+ ================================
+ Fix static only compilation of libdevmapper.a and dmsetup tool.
+ Use better code for closing opened descriptors when starting dmeventd.
+ Correct dmeventd -R for systemd environment.
+ Restart of dmeventd -R checks pid file to detect running dmeventd first.
+ Query with dmeventd -i quickly ends when there is no running dmeventd.
+ Enhance dm_get_status_raid to handle mismatching status or reported legs.
+ Create /dev/disk/by-label symlinks for DM devs that have crypto as next layer.
+ Persist udev db for DM devs on cleanup used in initrd to rootfs transition.
+ Process synthetic udev events other than 'add/change' as 'change' events.
+ Increase DM_UDEV_RULES_VSN to 3 to indicate changed udev rules.
+ Rename DM_NOSCAN to .DM_NOSCAN so it's not stored in udev db.
+ Rename DM_SUSPENDED to .DM_SUSPENDED so it's not stored in udev db.
+ Do not import DM_UDEV_DISABLE_OTHER_RULES_FLAG from db in 10-dm-disk.rules.
+ Test DISK_RO after importing properties from db in 10-dm.rules.
+ Also import ID_FS_TYPE in 13-dm-disk.rules from db if needed.
+
+ Version 1.02.197 - 21st November 2023
+ =====================================
+ Fix invalid JSON report if using DM_REPORT_OUTPUT_MULTIPLE_TIMES and selection.
+ Propagate ioctl errno from dm_task_run when creating new table line.
+ Add support for group aliases in dmstats.
+ Add support for exit-on file for dmeventd to reduce shutdown delays.
+ Add configure option --with-dmeventd-exit-on-path to specify default path.
+ Add dmsetup --headings none|abbrev|full to set report headings type.
+ Add DM_REPORT_OUTPUT_FIELD_IDS_IN_HEADINGS to provide alternative headings.
+
+- Drop patches that have been merged into upstream
+ - 0001-lvconvert-swapmetadata-fix-lvmlockd-locking.patch
+ - 0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
+ - 0003-lvconvert-fix-regresion-from-integrity-check.patch
+ - 0004-gcc-cleanup-warnings.patch
+ - 0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
+ - 0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
+ - 0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
+ - 0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
+ - 0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
+ - 0010-lvmlockd-client-mutex-ordering.patch
+ - 0011-filesystem-move-stat-after-open-check.patch
+ - 0012-tests-check-for-writecache.patch
+ - 0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
+ - 0014-gcc-fix-warnings-for-x32-architecture.patch
+ - 0015-gcc-warning-missing-braces-around-initializer.patch
+ - 0016-test-improve-aux-teardown.patch
+ - 0017-tests-aux-try-with-extra-sleep.patch
+ - 0018-tests-aux-using-singl-lvmconf-call.patch
+ - 0019-tests-missing-to-check-for-writecache-support.patch
+ - 0020-tests-pvmove-large-disk-area.patch
+ - 0021-tests-enforce-full-fs-check.patch
+ - 0022-tests-update-for-work-in-fake-dev-environment.patch
+ - 0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
+ - 0024-tests-better-slowdown.patch
+
+- Update patch
+ - bug-1184687_Add-nolvm-for-kernel-cmdline.patch
+
+-------------------------------------------------------------------
Old:
----
0001-lvconvert-swapmetadata-fix-lvmlockd-locking.patch
0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
0003-lvconvert-fix-regresion-from-integrity-check.patch
0004-gcc-cleanup-warnings.patch
0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
0010-lvmlockd-client-mutex-ordering.patch
0011-filesystem-move-stat-after-open-check.patch
0012-tests-check-for-writecache.patch
0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
0014-gcc-fix-warnings-for-x32-architecture.patch
0015-gcc-warning-missing-braces-around-initializer.patch
0016-test-improve-aux-teardown.patch
0017-tests-aux-try-with-extra-sleep.patch
0018-tests-aux-using-singl-lvmconf-call.patch
0019-tests-missing-to-check-for-writecache-support.patch
0020-tests-pvmove-large-disk-area.patch
0021-tests-enforce-full-fs-check.patch
0022-tests-update-for-work-in-fake-dev-environment.patch
0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
0024-tests-better-slowdown.patch
LVM2.2.03.22.tgz
LVM2.2.03.22.tgz.asc
New:
----
LVM2.2.03.24.tgz
LVM2.2.03.24.tgz.asc
BETA DEBUG BEGIN:
Old:- Drop patches that have been merged into upstream
- 0001-lvconvert-swapmetadata-fix-lvmlockd-locking.patch
- 0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
Old: - 0001-lvconvert-swapmetadata-fix-lvmlockd-locking.patch
- 0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
- 0003-lvconvert-fix-regresion-from-integrity-check.patch
Old: - 0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
- 0003-lvconvert-fix-regresion-from-integrity-check.patch
- 0004-gcc-cleanup-warnings.patch
Old: - 0003-lvconvert-fix-regresion-from-integrity-check.patch
- 0004-gcc-cleanup-warnings.patch
- 0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
Old: - 0004-gcc-cleanup-warnings.patch
- 0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
- 0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
Old: - 0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
- 0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
- 0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
Old: - 0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
- 0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
- 0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
Old: - 0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
- 0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
- 0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
Old: - 0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
- 0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
- 0010-lvmlockd-client-mutex-ordering.patch
Old: - 0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
- 0010-lvmlockd-client-mutex-ordering.patch
- 0011-filesystem-move-stat-after-open-check.patch
Old: - 0010-lvmlockd-client-mutex-ordering.patch
- 0011-filesystem-move-stat-after-open-check.patch
- 0012-tests-check-for-writecache.patch
Old: - 0011-filesystem-move-stat-after-open-check.patch
- 0012-tests-check-for-writecache.patch
- 0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
Old: - 0012-tests-check-for-writecache.patch
- 0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
- 0014-gcc-fix-warnings-for-x32-architecture.patch
Old: - 0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
- 0014-gcc-fix-warnings-for-x32-architecture.patch
- 0015-gcc-warning-missing-braces-around-initializer.patch
Old: - 0014-gcc-fix-warnings-for-x32-architecture.patch
- 0015-gcc-warning-missing-braces-around-initializer.patch
- 0016-test-improve-aux-teardown.patch
Old: - 0015-gcc-warning-missing-braces-around-initializer.patch
- 0016-test-improve-aux-teardown.patch
- 0017-tests-aux-try-with-extra-sleep.patch
Old: - 0016-test-improve-aux-teardown.patch
- 0017-tests-aux-try-with-extra-sleep.patch
- 0018-tests-aux-using-singl-lvmconf-call.patch
Old: - 0017-tests-aux-try-with-extra-sleep.patch
- 0018-tests-aux-using-singl-lvmconf-call.patch
- 0019-tests-missing-to-check-for-writecache-support.patch
Old: - 0018-tests-aux-using-singl-lvmconf-call.patch
- 0019-tests-missing-to-check-for-writecache-support.patch
- 0020-tests-pvmove-large-disk-area.patch
Old: - 0019-tests-missing-to-check-for-writecache-support.patch
- 0020-tests-pvmove-large-disk-area.patch
- 0021-tests-enforce-full-fs-check.patch
Old: - 0020-tests-pvmove-large-disk-area.patch
- 0021-tests-enforce-full-fs-check.patch
- 0022-tests-update-for-work-in-fake-dev-environment.patch
Old: - 0021-tests-enforce-full-fs-check.patch
- 0022-tests-update-for-work-in-fake-dev-environment.patch
- 0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
Old: - 0022-tests-update-for-work-in-fake-dev-environment.patch
- 0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
- 0024-tests-better-slowdown.patch
Old: - 0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
- 0024-tests-better-slowdown.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ lvm2.spec ++++++
--- /var/tmp/diff_new_pack.HkEs2e/_old 2024-06-03 17:40:38.268764962 +0200
+++ /var/tmp/diff_new_pack.HkEs2e/_new 2024-06-03 17:40:38.280765403 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package lvm2
+# spec file
#
# Copyright (c) 2024 SUSE LLC
#
@@ -21,11 +21,11 @@
%define libname_event libdevmapper-event1_03
%define _udevdir %(pkg-config --variable=udevdir udev)
%define cmdlib liblvm2cmd2_03
-%define lvm2_version 2.03.22
+%define lvm2_version 2.03.24
# For device_mapper_version, it's package version, see bsc#1199074.
# Also note there is another dm version on below "sed -ie ... VERSION_DM".
-%define upstream_device_mapper_version 1.02.196
-%define device_mapper_version %{lvm2_version}_1.02.196
+%define upstream_device_mapper_version 1.02.198
+%define device_mapper_version %{lvm2_version}_1.02.198
%define thin_provisioning_version 0.7.0
%define _supportsanlock 1
%define dlm_version 4.0.9
@@ -71,30 +71,7 @@
Source99: baselibs.conf
# Upstream patches
-Patch0001: 0001-lvconvert-swapmetadata-fix-lvmlockd-locking.patch
-Patch0002: 0002-lvconvert-fix-ret-values-fro-integrity-remove.patch
-Patch0003: 0003-lvconvert-fix-regresion-from-integrity-check.patch
-Patch0004: 0004-gcc-cleanup-warnings.patch
-Patch0005: 0005-lvmlockd-fix-thick-to-thin-lv-conversion.patch
-Patch0006: 0006-lvmlockd-let-lockd_init_lv_args-set-lock_args.patch
-Patch0007: 0007-lvmlockd-fix-lvconvert-to-thin-pool.patch
-Patch0008: 0008-lvconvert-run-error-path-code-only-for-shared-VG.patch
-Patch0009: 0009-vgchange-acquire-an-exclusive-VG-lock-for-refresh.patch
-Patch0010: 0010-lvmlockd-client-mutex-ordering.patch
-Patch0011: 0011-filesystem-move-stat-after-open-check.patch
-Patch0012: 0012-tests-check-for-writecache.patch
-Patch0013: 0013-lvresize-fix-32-bit-overflow-in-size-calculation.patch
-Patch0014: 0014-gcc-fix-warnings-for-x32-architecture.patch
-Patch0015: 0015-gcc-warning-missing-braces-around-initializer.patch
-Patch0016: 0016-test-improve-aux-teardown.patch
-Patch0017: 0017-tests-aux-try-with-extra-sleep.patch
-Patch0018: 0018-tests-aux-using-singl-lvmconf-call.patch
-Patch0019: 0019-tests-missing-to-check-for-writecache-support.patch
-Patch0020: 0020-tests-pvmove-large-disk-area.patch
-Patch0021: 0021-tests-enforce-full-fs-check.patch
-Patch0022: 0022-tests-update-for-work-in-fake-dev-environment.patch
-Patch0023: 0023-tests-skip-test-when-lvmdbusd-runs-on-the-system.patch
-Patch0024: 0024-tests-better-slowdown.patch
+#Patch0001: n/a
# SUSE patches: 1000+ for LVM
# Never upstream
Patch1001: cmirrord_remove_date_time_from_compilation.patch
@@ -122,8 +99,10 @@
BuildRequires: pkgconfig(libudev)
Requires: device-mapper >= %{device_mapper_version}
Requires: modutils
+#see bsc#1225783
+Requires: (udev >= 255.7 if udev)
Requires(post): coreutils
-Requires(postun): coreutils
+Requires(postun):coreutils
Provides: lvm = %{version}
Obsoletes: lvm2-cmirrord <= %{lvm2_cmirrord_version}
%{?systemd_requires}
@@ -155,30 +134,6 @@
%prep
%setup -q -n LVM2.%{version}
-%patch -P 0001 -p1
-%patch -P 0002 -p1
-%patch -P 0003 -p1
-%patch -P 0004 -p1
-%patch -P 0005 -p1
-%patch -P 0006 -p1
-%patch -P 0007 -p1
-%patch -P 0008 -p1
-%patch -P 0009 -p1
-%patch -P 0010 -p1
-%patch -P 0011 -p1
-%patch -P 0012 -p1
-%patch -P 0013 -p1
-%patch -P 0014 -p1
-%patch -P 0015 -p1
-%patch -P 0016 -p1
-%patch -P 0017 -p1
-%patch -P 0018 -p1
-%patch -P 0019 -p1
-%patch -P 0020 -p1
-%patch -P 0021 -p1
-%patch -P 0022 -p1
-%patch -P 0023 -p1
-%patch -P 0024 -p1
%patch -P 1001 -p1
%patch -P 1002 -p1
%patch -P 1003 -p1
++++++ LVM2.2.03.22.tgz -> LVM2.2.03.24.tgz ++++++
++++ 50912 lines of diff (skipped)
++++++ bug-1184687_Add-nolvm-for-kernel-cmdline.patch ++++++
--- /var/tmp/diff_new_pack.HkEs2e/_old 2024-06-03 17:40:39.548811929 +0200
+++ /var/tmp/diff_new_pack.HkEs2e/_new 2024-06-03 17:40:39.552812075 +0200
@@ -34,14 +34,15 @@
diff -Nupr a/udev/69-dm-lvm.rules.in b/udev/69-dm-lvm.rules.in
--- a/udev/69-dm-lvm.rules.in 2022-09-02 14:04:51.074880312 +0800
+++ b/udev/69-dm-lvm.rules.in 2022-09-02 14:07:19.978230990 +0800
-@@ -10,6 +10,9 @@ SUBSYSTEM!="block", GOTO="lvm_end"
+@@ -10,6 +10,9 @@ (LVM_EXEC_RULE)
ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", GOTO="lvm_end"
+IMPORT{cmdline}="nolvm"
+ENV{nolvm}=="?*", GOTO="lvm_end"
+
- # Only process devices already marked as a PV - this requires blkid to be called before.
- ENV{ID_FS_TYPE}!="LVM2_member", GOTO="lvm_end"
- ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="lvm_end"
+ # Ignore PVs on LVs.
+ # This is usually a case of an LV being used for a guest VM
+ # image, where the guest is using lvm. The host should
+ # ignore lvm data from the guest and not attempt to scan or
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xz for openSUSE:Factory checked in at 2024-06-03 17:40:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xz (Old)
and /work/SRC/openSUSE:Factory/.xz.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xz"
Mon Jun 3 17:40:26 2024 rev:91 rq:1177928 version:5.6.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/xz/xz.changes 2024-04-14 12:23:50.127839954 +0200
+++ /work/SRC/openSUSE:Factory/.xz.new.24587/xz.changes 2024-06-03 17:40:28.048389967 +0200
@@ -1,0 +2,40 @@
+Thu May 30 06:08:18 UTC 2024 - Paolo Stivanin <info(a)paolostivanin.com>
+
+- Update to 5.6.2:
+ * Remove the backdoor (CVE-2024-3094).
+ * Not changed: Memory sanitizer (MSAN) has a false positive
+ in the CRC CLMUL code which also makes OSS Fuzz unhappy.
+ Valgrind is smarter and doesn't complain.
+ A revision to the CLMUL code is coming anyway and this issue
+ will be cleaned up as part of it. It won't be backported to
+ 5.6.x or 5.4.x because the old code isn't wrong. There is
+ no reason to risk introducing regressions in old branches
+ just to silence a false positive.
+ * liblzma:
+ - lzma_index_decoder() and lzma_index_buffer_decode(): Fix
+ a missing output pointer initialization (*i = NULL) if the
+ functions are called with invalid arguments. The API docs
+ say that such an initialization is always done. In practice
+ this matters very little because the problem can only occur
+ if the calling application has a bug and these functions
+ return LZMA_PROG_ERROR.
+ - lzma_str_to_filters(): Fix a missing output pointer
+ initialization (*error_pos = 0). This is very similar
+ to the fix above.
+ - Fix C standard conformance with function pointer types.
+ - Remove GNU indirect function (IFUNC) support. This is *NOT*
+ done for security reasons even though the backdoor relied on
+ this code. The performance benefits of IFUNC are too tiny in
+ this project to make the extra complexity worth it.
+ - FreeBSD on ARM64: Add error checking to CRC32 instruction
+ support detection.
+ - Fix building with NVIDIA HPC SDK.
+ * xz:
+ - Fix a C standard conformance issue in --block-list parsing
+ (arithmetic on a null pointer).
+ - Fix a warning from GNU groff when processing the man page:
+ "warning: cannot select font 'CW'"
+ * xzdec: Add support for Linux Landlock ABI version 4. xz already
+ had the v3-to-v4 change but it had been forgotten from xzdec.
+
+-------------------------------------------------------------------
Old:
----
xz-5.4.2.tar.gz
xz-5.4.2.tar.gz.sig
New:
----
xz-5.6.2.tar.xz
xz-5.6.2.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xz.spec ++++++
--- /var/tmp/diff_new_pack.rSm4Cf/_old 2024-06-03 17:40:29.120429301 +0200
+++ /var/tmp/diff_new_pack.rSm4Cf/_new 2024-06-03 17:40:29.120429301 +0200
@@ -23,17 +23,15 @@
%bcond_with static
%endif
-%global real_ver 5.4.2
-
Name: xz
-Version: 5.6.1.revertto5.4
+Version: 5.6.2
Release: 0
Summary: A Program for Compressing Files with the Lempel–Ziv–Markov algorithm
License: 0BSD AND GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-2.1-or-later
Group: Productivity/Archiving/Compression
URL: https://tukaani.org/xz/
-Source0: https://github.com/tukaani-project/xz/releases/download/v%{real_ver}/xz-%{r…
-Source1: https://github.com/tukaani-project/xz/releases/download/v%{real_ver}/xz-%{r…
+Source0: https://github.com/tukaani-project/xz/releases/download/v%{version}/xz-%{ve…
+Source1: https://github.com/tukaani-project/xz/releases/download/v%{version}/xz-%{ve…
Source2: baselibs.conf
Source3: https://tukaani.org/misc/lasse_collin_pubkey.txt#/xz.keyring
Source4: xznew
@@ -93,7 +91,7 @@
%endif
%prep
-%autosetup -n xz-%{real_ver}
+%autosetup -p1
%build
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package opera for openSUSE:Factory:NonFree checked in at 2024-06-03 17:39:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory:NonFree/opera (Old)
and /work/SRC/openSUSE:Factory:NonFree/.opera.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "opera"
Mon Jun 3 17:39:46 2024 rev:223 rq:1178140 version:110.0.5130.49
Changes:
--------
--- /work/SRC/openSUSE:Factory:NonFree/opera/opera.changes 2024-05-27 11:39:57.458850663 +0200
+++ /work/SRC/openSUSE:Factory:NonFree/.opera.new.24587/opera.changes 2024-06-03 17:39:48.990963215 +0200
@@ -1,0 +2,8 @@
+Tue May 28 18:53:47 UTC 2024 - Carsten Ziepke <kieltux(a)gmail.com>
+
+- Update to 110.0.5130.49
+ * CHR-9416 Updating Chromium on desktop-stable-* branches
+ * DNA-116706 [gpu-crash] Crash at SkGpuShaderImageFilter::
+ onFilterImage(skif::Context const&)
+
+-------------------------------------------------------------------
Old:
----
opera-stable_110.0.5130.39_amd64.rpm
New:
----
opera-stable_110.0.5130.49_amd64.rpm
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ opera.spec ++++++
--- /var/tmp/diff_new_pack.Clq3Zq/_old 2024-06-03 17:39:50.891032617 +0200
+++ /var/tmp/diff_new_pack.Clq3Zq/_new 2024-06-03 17:39:50.895032764 +0200
@@ -20,7 +20,7 @@
# libffmpeg.so*, libfreetype.so* and libGLESv2.so* are currently bundled.
%global __requires_exclude ^lib(ffmpeg|freetype|GLESv2)\\.so.*$
Name: opera
-Version: 110.0.5130.39
+Version: 110.0.5130.49
Release: 0
Summary: Proprietary web browser
License: NonFree
++++++ opera-stable_110.0.5130.39_amd64.rpm -> opera-stable_110.0.5130.49_amd64.rpm ++++++
/work/SRC/openSUSE:Factory:NonFree/opera/opera-stable_110.0.5130.39_amd64.rpm /work/SRC/openSUSE:Factory:NonFree/.opera.new.24587/opera-stable_110.0.5130.49_amd64.rpm differ: char 35, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2024-06-01 11:14:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Sat Jun 1 11:14:11 2024 rev:4033 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.276152961 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.284153252 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20240530" schemaversion="4.1">
+<image name="OBS__MicroOS___20240531" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20240530</productvar>
+ <productvar name="VERSION">20240531</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20240530,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20240531,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20240530/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20240531/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.324154708 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.328154854 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20240530" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20240531" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20240530</productvar>
+ <productvar name="VERSION">20240531</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20240530,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20240531,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2024…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2024…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.352155728 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.356155874 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20240530" schemaversion="4.1">
+<image name="OBS__openSUSE___20240531" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20240530</productvar>
+ <productvar name="VERSION">20240531</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240530,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240531,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240530/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240531/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.388157039 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.392157184 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20240530" schemaversion="4.1">
+<image name="OBS__openSUSE___20240531" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20240530</productvar>
+ <productvar name="VERSION">20240531</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240530,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240531,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240530/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240531/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
@@ -1680,7 +1680,7 @@
<repopackage name="libgsasl18"/>
<repopackage name="libgsf-1-114"/>
<repopackage name="libgsf-lang"/>
- <repopackage name="libgsl27"/>
+ <repopackage name="libgsl28"/>
<repopackage name="libgslcblas0"/>
<repopackage name="libgsm1"/>
<repopackage name="libgsound0"/>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.420158204 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.424158350 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20240530" schemaversion="4.1">
+<image name="OBS__openSUSE___20240531" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20240530-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20240531-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20240530</productvar>
+ <productvar name="VERSION">20240531</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240530,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20240531,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240530/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20240531/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.480160389 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.484160534 +0200
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20240530</version>
+ <version>20240531</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ Kalpa.product ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.508161408 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.512161553 +0200
@@ -6,7 +6,7 @@
<name>Kalpa</name>
<releasepkgname>Kalpa-release</releasepkgname>
<endoflife/>
- <version>20240530</version>
+ <version>20240531</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Kalpa</productline>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.536162428 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.540162573 +0200
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20240530</version>
+ <version>20240531</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ dvd.group ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.652166651 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.656166796 +0200
@@ -2127,7 +2127,7 @@
<package name="libgsasl18" supportstatus="unsupported"/> <!-- reason: dvd:patterns-base-console -->
<package name="libgsf-1-114" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libgsf-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="libgsl27" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde_edutainment -->
+ <package name="libgsl28" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde_edutainment -->
<package name="libgslcblas0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde_edutainment -->
<package name="libgsm1" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libgsound0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.684167816 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.688167962 +0200
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20240530</version>
+ <version>20240531</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.716168981 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.720169126 +0200
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20240530</version>
+ <version>20240531</version>
<release>0</release>
<productline>openSUSE</productline>
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.wv4i6K/_old 2024-06-01 11:14:15.832173205 +0200
+++ /var/tmp/diff_new_pack.wv4i6K/_new 2024-06-01 11:14:15.844173641 +0200
@@ -2850,6 +2850,10 @@
- csync2
- ctdb
- ctdb-pcp-pmda
+ - ctl
+ - ctl-data
+ - ctl-devel
+ - ctl-doc
- ctop
- ctre-devel
- ctris
@@ -7878,11 +7882,11 @@
- gsl-gnu-hpc
- gsl-gnu-hpc-devel
- gsl-gnu-hpc-doc
- - gsl_2_7_1-gnu-hpc
- - gsl_2_7_1-gnu-hpc-devel
- - gsl_2_7_1-gnu-hpc-doc
- - gsl_2_7_1-gnu-hpc-examples
- - gsl_2_7_1-gnu-hpc-module
+ - gsl_2_8_0-gnu-hpc
+ - gsl_2_8_0-gnu-hpc-devel
+ - gsl_2_8_0-gnu-hpc-doc
+ - gsl_2_8_0-gnu-hpc-examples
+ - gsl_2_8_0-gnu-hpc-module
- gsmartcontrol
- gsoap-devel
- gsoap-doc
@@ -10241,6 +10245,7 @@
- kubectl-oomd
- kubectl-operator
- kubectl-tree
+ - kubectl-validate
- kubectl-view-allocations
- kubectl-view-secret
- kubectl-who-can
@@ -10709,6 +10714,7 @@
- leechcraft-xtazy
- leechcraft-zalil
- leftwm
+ - lego
- leiningen
- lekha
- lemon
@@ -10844,6 +10850,10 @@
- libIccXML-devel
- libIccXML2
- libIex-3_2-31-32bit
+ - libIlmCtl1_5_3
+ - libIlmCtlMath1_5_3
+ - libIlmCtlSimd1_5_3
+ - libIlmImfCtl1_5_3
- libIlmThread-3_2-31-32bit
- libImath-3_1-29-32bit
- libIrrlicht1_8
@@ -13305,9 +13315,9 @@
- libgsf-devel
- libgsf-tools
- libgsl-gnu-hpc
- - libgsl_2_7_1-gnu-hpc
+ - libgsl_2_8_0-gnu-hpc
- libgslcblas-gnu-hpc
- - libgslcblas_2_7_1-gnu-hpc
+ - libgslcblas_2_8_0-gnu-hpc
- libgsm-devel
- libgsm-devel-32bit
- libgsm-utils
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2024-06-01 11:14:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Sat Jun 1 11:14:09 2024 rev:2933 rq: version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/000release-packages/Aeon-release.changes 2024-05-31 22:41:39.854343563 +0200
+++ /work/SRC/openSUSE:Factory/.000release-packages.new.24587/Aeon-release.changes 2024-06-01 11:14:10.875992760 +0200
@@ -2 +2 @@
-Fri May 31 20:41:35 UTC 2024 - openSUSE <packaging(a)lists.opensuse.org>
+Sat Jun 01 09:14:07 UTC 2024 - openSUSE <packaging(a)lists.opensuse.org>
Kalpa-release.changes: same change
MicroOS-release.changes: same change
openSUSE-Addon-NonOss-release.changes: same change
openSUSE-release.changes: same change
stub.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
Kalpa-release.spec: same change
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.KxW9Nl/_old 2024-06-01 11:14:12.592055238 +0200
+++ /var/tmp/diff_new_pack.KxW9Nl/_new 2024-06-01 11:14:12.604055676 +0200
@@ -7282,6 +7282,11 @@
Provides: weakremover(gsl_2_6-gnu-hpc-doc)
Provides: weakremover(gsl_2_6-gnu-hpc-examples)
Provides: weakremover(gsl_2_6-gnu-hpc-module)
+Provides: weakremover(gsl_2_7_1-gnu-hpc)
+Provides: weakremover(gsl_2_7_1-gnu-hpc-devel)
+Provides: weakremover(gsl_2_7_1-gnu-hpc-doc)
+Provides: weakremover(gsl_2_7_1-gnu-hpc-examples)
+Provides: weakremover(gsl_2_7_1-gnu-hpc-module)
Provides: weakremover(gssdp-utils)
Provides: weakremover(gstreamer-1_0-plugins-buzztrax)
Provides: weakremover(gstreamer-fluendo-mp3)
@@ -13367,10 +13372,13 @@
Provides: weakremover(libgsignond-common1-32bit)
Provides: weakremover(libgsl23)
Provides: weakremover(libgsl25)
+Provides: weakremover(libgsl27)
Provides: weakremover(libgsl_2_5-gnu-hpc)
Provides: weakremover(libgsl_2_6-gnu-hpc)
+Provides: weakremover(libgsl_2_7_1-gnu-hpc)
Provides: weakremover(libgslcblas_2_5-gnu-hpc)
Provides: weakremover(libgslcblas_2_6-gnu-hpc)
+Provides: weakremover(libgslcblas_2_7_1-gnu-hpc)
Provides: weakremover(libgsoap-2_8_101)
Provides: weakremover(libgsoap-2_8_102)
Provides: weakremover(libgsoap-2_8_106)
1
0