Compare commits

...
Sign in to create a new pull request.

9 commits

Author SHA1 Message Date
Fabio Valentini
8f9a9fa6f4
Update to version 1.23.4; Fixes RHBZ#2184805 2023-04-12 16:46:25 +02:00
Fabio Valentini
38c2ab5ff4
Remove patch that no longer applies; disable tests on 32-bit instead 2023-03-12 19:03:27 +01:00
Fabio Valentini
d9a20e3ccd
Update to version 1.23.2; Fixes RHBZ#2167959 2023-03-12 18:41:38 +01:00
Fabio Valentini
58579d16cb
Update to version 1.23.1 2023-02-07 13:02:16 +01:00
Justin Koh
8c00f82842
Install desktop file icons to correct locations 2023-01-26 19:39:25 +01:00
Fabio Valentini
84ffc7be25
Update to version 1.23.0; Fixes RHBZ#2139321 2023-01-26 19:09:28 +01:00
Fabio Valentini
f4e47eaae6
Update to version 1.22.0; Fixes RHBZ#2132021 2022-10-14 14:54:28 +02:00
Fabio Valentini
12e8cd931c
Update to version 1.21.0; Fixes RHBZ#2124728 2022-09-08 22:13:04 +02:00
Fabio Valentini
00df5654d2
Update to version 1.20.4; Fixes RHBZ#2113971 2022-08-18 15:54:10 +02:00
4 changed files with 75 additions and 179 deletions

7
.gitignore vendored
View file

@ -67,3 +67,10 @@
/syncthing-source-v1.20.1.tar.gz
/syncthing-source-v1.20.2.tar.gz
/syncthing-source-v1.20.3.tar.gz
/syncthing-source-v1.20.4.tar.gz
/syncthing-source-v1.21.0.tar.gz
/syncthing-source-v1.22.0.tar.gz
/syncthing-source-v1.23.0.tar.gz
/syncthing-source-v1.23.1.tar.gz
/syncthing-source-v1.23.2.tar.gz
/syncthing-source-v1.23.4.tar.gz

View file

@ -1,104 +0,0 @@
From 0d6442721aecadf685a16cca0ef874df468b2009 Mon Sep 17 00:00:00 2001
From: Simon Frei <freisim93@gmail.com>
Date: Tue, 3 Dec 2019 15:11:39 +0100
Subject: [PATCH] lib/protocol: Decrease runtime/mem usage of bufferpool
stresstest (ref #6209)
---
lib/protocol/bufferpool_test.go | 58 +++++++++++++++++++++------------
1 file changed, 38 insertions(+), 20 deletions(-)
diff --git a/lib/protocol/bufferpool_test.go b/lib/protocol/bufferpool_test.go
index ab889ba88f..f7c6f67ce3 100644
--- a/lib/protocol/bufferpool_test.go
+++ b/lib/protocol/bufferpool_test.go
@@ -3,7 +3,6 @@
package protocol
import (
- "sync"
"testing"
"time"
@@ -70,18 +69,47 @@ func TestStressBufferPool(t *testing.T) {
}
const routines = 10
- const runtime = 2 * time.Second
bp := newBufferPool()
- t0 := time.Now()
- var wg sync.WaitGroup
+ timeout := time.After(2 * time.Second)
+ done := make(chan struct{})
+ checkDone := func() bool {
+ if bp.puts == 0 || bp.skips == 0 || bp.misses == 0 {
+ return false
+ }
+ var hits int64
+ for _, h := range bp.hits {
+ hits += h
+ }
+ return hits > 0
+ }
+
+ go func() {
+ for {
+ select {
+ case <-time.After(50 * time.Millisecond):
+ if checkDone() {
+ close(done)
+ return
+ }
+ case <-timeout:
+ return
+ }
+ }
+ }()
+
fail := make(chan struct{}, routines)
for i := 0; i < routines; i++ {
- wg.Add(1)
go func() {
- defer wg.Done()
- for time.Since(t0) < runtime {
+ for {
+ select {
+ case <-done:
+ return
+ case <-timeout:
+ return
+ default:
+ }
blocks := make([][]byte, 10)
for i := range blocks {
// Request a block of random size with the range
@@ -101,24 +129,14 @@ func TestStressBufferPool(t *testing.T) {
}()
}
- wg.Wait()
select {
case <-fail:
t.Fatal("a block was bad size")
+ case <-done:
+ case <-timeout:
+ t.Fatal("timed out before exercising all paths")
default:
}
-
- t.Log(bp.puts, bp.skips, bp.misses, bp.hits)
- if bp.puts == 0 || bp.skips == 0 || bp.misses == 0 {
- t.Error("didn't exercise some paths")
- }
- var hits int64
- for _, h := range bp.hits {
- hits += h
- }
- if hits == 0 {
- t.Error("didn't exercise some paths")
- }
}
func shouldPanic(t *testing.T, fn func()) {

View file

@ -1 +1 @@
SHA512 (syncthing-source-v1.20.3.tar.gz) = 153420546ee35ed504e56d23167d803c28c2d3ba97f3f8d4a361489f1fc293e802998a8762fcf9f6986d2aebd9b7c04335f0fb8aa476cfeed41255d6bd7cd857
SHA512 (syncthing-source-v1.23.4.tar.gz) = cf86b61af000e2b9555f1dee0dfc6c340254859b753d3af2d88ea7de8f49137e7dea2bc98a6d8e526b35707918761f010a93ff8ee243f49945364f2e7f928ae3

View file

@ -1,6 +1,6 @@
%bcond_with devel
%global basever 1.20.3
%global basever 1.23.4
#%%global rcnum 0
Name: syncthing
@ -23,10 +23,6 @@ URL: https://syncthing.net
# use official release tarball (contains vendored dependencies)
Source0: %{gourl}/releases/download/%{tag}/%{name}-source-%{tag}.tar.gz
# rejected patch to fix tests running out of memory on 32 bit arches
# See: https://github.com/syncthing/syncthing/issues/6209
Patch0: https://github.com/imsodin/syncthing/commit/0d64427.patch
BuildRequires: desktop-file-utils
BuildRequires: systemd-rpm-macros
@ -51,41 +47,39 @@ Provides: bundled(moment) = 2.19.4
# generate with "./vendor2provides.py path/to/vendor/modules.txt"
# github.com/AudriusButkevicius/pfilter : MIT
Provides: bundled(golang(github.com/AudriusButkevicius/pfilter)) = 0.0.10
Provides: bundled(golang(github.com/AudriusButkevicius/pfilter)) = 0.0.11
# github.com/AudriusButkevicius/recli : MPLv2.0
Provides: bundled(golang(github.com/AudriusButkevicius/recli)) = 0.0.6
# github.com/Azure/go-ntlmssp : MIT
Provides: bundled(golang(github.com/Azure/go-ntlmssp)) = 6637195
Provides: bundled(golang(github.com/Azure/go-ntlmssp)) = 754e693
# github.com/alecthomas/kong : MIT
Provides: bundled(golang(github.com/alecthomas/kong)) = 0.6.1
Provides: bundled(golang(github.com/alecthomas/kong)) = 0.7.1
# github.com/beorn7/perks : MIT
Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1
# github.com/calmh/incontainer : MIT
Provides: bundled(golang(github.com/calmh/incontainer)) = b3e71b1
# github.com/calmh/xdr : MIT
Provides: bundled(golang(github.com/calmh/xdr)) = 1.1.0
# github.com/ccding/go-stun : ASL 2.0
Provides: bundled(golang(github.com/ccding/go-stun)) = 0.1.3
Provides: bundled(golang(github.com/ccding/go-stun)) = 0.1.4
# github.com/certifi/gocertifi : MPLv2.0
Provides: bundled(golang(github.com/certifi/gocertifi)) = 431795d
# github.com/cespare/xxhash : MIT
Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.1.2
# github.com/cheekybits/genny : MIT
Provides: bundled(golang(github.com/cheekybits/genny)) = 1.0.0
Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.2.0
# github.com/chmduquesne/rollinghash : MIT
Provides: bundled(golang(github.com/chmduquesne/rollinghash)) = a60f8e7
Provides: bundled(golang(github.com/chmduquesne/rollinghash)) = 4.0.0+incompatible
# github.com/cpuguy83/go-md2man : MIT
Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.1
Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.2
# github.com/d4l3k/messagediff : MIT
Provides: bundled(golang(github.com/d4l3k/messagediff)) = 1.2.1
# github.com/flynn-archive/go-shlex : ASL 2.0
Provides: bundled(golang(github.com/flynn-archive/go-shlex)) = 3f9db97
# github.com/fsnotify/fsnotify : BSD
Provides: bundled(golang(github.com/fsnotify/fsnotify)) = 1.5.1
# github.com/getsentry/raven-go : BSD
Provides: bundled(golang(github.com/getsentry/raven-go)) = 0.2.0
# github.com/go-asn1-ber/asn1-ber : MIT
Provides: bundled(golang(github.com/go-asn1-ber/asn1-ber)) = 1.5.3
Provides: bundled(golang(github.com/go-asn1-ber/asn1-ber)) = 1.5.4
# github.com/go-ldap/ldap : MIT
Provides: bundled(golang(github.com/go-ldap/ldap/v3)) = 3.4.1
Provides: bundled(golang(github.com/go-ldap/ldap/v3)) = 3.4.4
# github.com/go-ole/go-ole : MIT
Provides: bundled(golang(github.com/go-ole/go-ole)) = 1.2.6
# github.com/go-task/slim-sprig : MIT
@ -94,16 +88,18 @@ Provides: bundled(golang(github.com/go-task/slim-sprig)) = 348f09d
Provides: bundled(golang(github.com/gobwas/glob)) = 0.2.3
# github.com/gogo/protobuf : BSD
Provides: bundled(golang(github.com/gogo/protobuf)) = 1.3.2
# github.com/golang/groupcache : ASL 2.0
Provides: bundled(golang(github.com/golang/groupcache)) = 41bb18b
# github.com/golang/mock : ASL 2.0
Provides: bundled(golang(github.com/golang/mock)) = 1.6.0
# github.com/golang/protobuf : BSD
Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.2
Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.3
# github.com/golang/snappy : BSD
Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4
# github.com/google/pprof : ASL 2.0
Provides: bundled(golang(github.com/google/pprof)) = d61513b
# github.com/greatroar/blobloom : ASL 2.0
Provides: bundled(golang(github.com/greatroar/blobloom)) = 0.7.0
Provides: bundled(golang(github.com/greatroar/blobloom)) = 0.7.2
# github.com/hashicorp/golang-lru : MPLv2.0
Provides: bundled(golang(github.com/hashicorp/golang-lru)) = 0.5.4
Provides: bundled(golang(github.com/hashicorp/golang-lru/v2)) = 2.0.2
# github.com/jackpal/gateway : BSD
Provides: bundled(golang(github.com/jackpal/gateway)) = 1.0.7
# github.com/jackpal/go-nat-pmp : ASL 2.0
@ -113,51 +109,47 @@ Provides: bundled(golang(github.com/julienschmidt/httprouter)) = 1.3.0
# github.com/kballard/go-shellquote : MIT
Provides: bundled(golang(github.com/kballard/go-shellquote)) = 95032a8
# github.com/klauspost/cpuid : MIT
Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.0.9
Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.4
# github.com/lib/pq : MIT
Provides: bundled(golang(github.com/lib/pq)) = 1.10.3
# github.com/lucas-clemente/quic-go : MIT
Provides: bundled(golang(github.com/lucas-clemente/quic-go)) = 0.27.0
# github.com/marten-seemann/qtls-go1-16 : BSD
Provides: bundled(golang(github.com/marten-seemann/qtls-go1-16)) = 0.1.5
# github.com/marten-seemann/qtls-go1-17 : BSD
Provides: bundled(golang(github.com/marten-seemann/qtls-go1-17)) = 0.1.1
# github.com/marten-seemann/qtls-go1-18 : BSD
Provides: bundled(golang(github.com/marten-seemann/qtls-go1-18)) = 0.1.1
Provides: bundled(golang(github.com/lib/pq)) = 1.10.7
# github.com/maruel/panicparse : ASL 2.0
Provides: bundled(golang(github.com/maruel/panicparse)) = 1.6.1
Provides: bundled(golang(github.com/maruel/panicparse/v2)) = 2.3.1
# github.com/matttproud/golang_protobuf_extensions : ASL 2.0
Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.1
Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.4
# github.com/maxbrunsfeld/counterfeiter : MIT
Provides: bundled(golang(github.com/maxbrunsfeld/counterfeiter/v6)) = 6.3.0
Provides: bundled(golang(github.com/maxbrunsfeld/counterfeiter/v6)) = 6.5.0
# github.com/minio/sha256-simd : ASL 2.0
Provides: bundled(golang(github.com/minio/sha256-simd)) = 1.0.0
# github.com/miscreant/miscreant.go : MIT
Provides: bundled(golang(github.com/miscreant/miscreant.go)) = 26d3763
# github.com/nxadm/tail : MIT
Provides: bundled(golang(github.com/nxadm/tail)) = 1.4.8
# github.com/onsi/ginkgo : MIT
Provides: bundled(golang(github.com/onsi/ginkgo)) = 1.16.4
Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.9.0
# github.com/oschwald/geoip2-golang : ISC
Provides: bundled(golang(github.com/oschwald/geoip2-golang)) = 1.5.0
Provides: bundled(golang(github.com/oschwald/geoip2-golang)) = 1.8.0
# github.com/oschwald/maxminddb-golang : ISC
Provides: bundled(golang(github.com/oschwald/maxminddb-golang)) = 1.8.0
Provides: bundled(golang(github.com/oschwald/maxminddb-golang)) = 1.10.0
# github.com/petermattis/goid : ASL 2.0
Provides: bundled(golang(github.com/petermattis/goid)) = b0b1615
Provides: bundled(golang(github.com/petermattis/goid)) = 8ff7bb2
# github.com/pierrec/lz4 : BSD
Provides: bundled(golang(github.com/pierrec/lz4/v4)) = 4.1.15
Provides: bundled(golang(github.com/pierrec/lz4/v4)) = 4.1.17
# github.com/pkg/errors : BSD
Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1
# github.com/power-devops/perfstat : MIT
Provides: bundled(golang(github.com/power-devops/perfstat)) = 5aafc22
Provides: bundled(golang(github.com/power-devops/perfstat)) = 62379fc
# github.com/prometheus/client_golang : ASL 2.0
Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.12.2
Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.14.0
# github.com/prometheus/client_model : ASL 2.0
Provides: bundled(golang(github.com/prometheus/client_model)) = 0.2.0
Provides: bundled(golang(github.com/prometheus/client_model)) = 0.3.0
# github.com/prometheus/common : ASL 2.0
Provides: bundled(golang(github.com/prometheus/common)) = 0.32.1
Provides: bundled(golang(github.com/prometheus/common)) = 0.42.0
# github.com/prometheus/procfs : ASL 2.0
Provides: bundled(golang(github.com/prometheus/procfs)) = 0.7.3
Provides: bundled(golang(github.com/prometheus/procfs)) = 0.9.0
# github.com/quic-go/qtls-go1-19 : BSD-3-Clause
Provides: bundled(golang(github.com/quic-go/qtls-go1-19)) = 0.2.1
# github.com/quic-go/qtls-go1-20 : BSD-3-Clause
Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.1.1
# github.com/quic-go/quic-go : MIT
Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.33.0
# github.com/rcrowley/go-metrics : BSD
Provides: bundled(golang(github.com/rcrowley/go-metrics)) = cf1acfc
# github.com/russross/blackfriday : BSD
@ -165,47 +157,37 @@ Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0
# github.com/sasha-s/go-deadlock : ASL 2.0
Provides: bundled(golang(github.com/sasha-s/go-deadlock)) = 0.3.1
# github.com/shirou/gopsutil : BSD
Provides: bundled(golang(github.com/shirou/gopsutil/v3)) = 3.21.12
Provides: bundled(golang(github.com/shirou/gopsutil/v3)) = 3.23.2
# github.com/syncthing/notify : MIT
Provides: bundled(golang(github.com/syncthing/notify)) = c6b7342
# github.com/syndtr/goleveldb : BSD
Provides: bundled(golang(github.com/syndtr/goleveldb)) = d9e9293
Provides: bundled(golang(github.com/syndtr/goleveldb)) = 126854a
# github.com/thejerf/suture : MIT
Provides: bundled(golang(github.com/thejerf/suture/v4)) = 4.0.2
# github.com/urfave/cli : MIT
Provides: bundled(golang(github.com/urfave/cli)) = 1.22.5
Provides: bundled(golang(github.com/urfave/cli)) = 1.22.12
# github.com/vitrun/qart : ASL 2.0 and BSD
Provides: bundled(golang(github.com/vitrun/qart)) = bf64b92
# github.com/yusufpapurcu/wmi : MIT
Provides: bundled(golang(github.com/yusufpapurcu/wmi)) = 1.2.2
# golang.org/x/crypto : BSD
Provides: bundled(golang(golang.org/x/crypto)) = 089bfa5
Provides: bundled(golang(golang.org/x/crypto)) = 0.7.0
# golang.org/x/exp : BSD
Provides: bundled(golang(golang.org/x/exp)) = 24139be
# golang.org/x/mod : BSD
Provides: bundled(golang(golang.org/x/mod)) = 0.5.1
Provides: bundled(golang(golang.org/x/mod)) = 0.9.0
# golang.org/x/net : BSD
Provides: bundled(golang(golang.org/x/net)) = 3ad01bb
Provides: bundled(golang(golang.org/x/net)) = 0.8.0
# golang.org/x/sys : BSD
Provides: bundled(golang(golang.org/x/sys)) = da31bd3
Provides: bundled(golang(golang.org/x/sys)) = 0.6.0
# golang.org/x/text: BSD
Provides: bundled(golang(golang.org/x/text)) = 0.3.7
Provides: bundled(golang(golang.org/x/text)) = 0.8.0
# golang.org/x/time : BSD
Provides: bundled(golang(golang.org/x/time)) = 1f47c86
Provides: bundled(golang(golang.org/x/time)) = 0.3.0
# golang.org/x/tools : BSD
Provides: bundled(golang(golang.org/x/tools)) = 0.1.7
# golang.org/x/xerrors : BSD
Provides: bundled(golang(golang.org/x/xerrors)) = 5ec99f8
Provides: bundled(golang(golang.org/x/tools)) = 0.7.0
# google.golang.org/protobuf : BSD
Provides: bundled(golang(google.golang.org/protobuf)) = 1.27.1
# gopkg.in/tomb.v1 : BSD
Provides: bundled(golang(gopkg.in/tomb.v1)) = dd63297
# an inotify filesystem watcher is integrated with syncthing now
Provides: syncthing-inotify = 0.8.7-5
Obsoletes: syncthing-inotify < 0.8.7-5
# command line interface for syncthing was merged into main binary
Obsoletes: syncthing-cli < 1.15.1-1
Provides: bundled(golang(google.golang.org/protobuf)) = 1.29.0
%description
Syncthing replaces other file synchronization services with something
@ -324,10 +306,11 @@ mkdir -p %{buildroot}/%{_datadir}/applications
cp -pav etc/linux-desktop/syncthing-start.desktop %{buildroot}/%{_datadir}/applications/
cp -pav etc/linux-desktop/syncthing-ui.desktop %{buildroot}/%{_datadir}/applications/
mkdir -p %{buildroot}/%{_datadir}/icons/hicolor/{32,64,128,256,512,scalable}/apps
for size in 32 64 128 256 512; do
cp -pav assets/logo-$size.png %{buildroot}/%{_datadir}/icons/hicolor/$size/apps/syncthing.png
mkdir -p %{buildroot}/%{_datadir}/icons/hicolor/${size}x${size}/apps
cp -pav assets/logo-${size}.png %{buildroot}/%{_datadir}/icons/hicolor/${size}x${size}/apps/syncthing.png
done
mkdir -p %{buildroot}/%{_datadir}/icons/hicolor/scalable/apps
cp -pav assets/logo-only.svg %{buildroot}/%{_datadir}/icons/hicolor/scalable/apps/syncthing.svg
# install systemd units
@ -367,7 +350,11 @@ export GO111MODULE=off
%gotest %{goipath}/lib/dialer
%gotest %{goipath}/lib/discover
%gotest %{goipath}/lib/events
%gotest %{goipath}/lib/fs
# This test fails on SELinux-enabled systems:
# https://github.com/syncthing/syncthing/issues/8601
%gotest %{goipath}/lib/fs || :
%gotest %{goipath}/lib/ignore
%gotest %{goipath}/lib/logger
@ -378,7 +365,13 @@ export GO111MODULE=off
%gotest %{goipath}/lib/nat
%gotest %{goipath}/lib/osutil
%gotest %{goipath}/lib/pmp
# lib/protocol tests run out of memory on 32 bit arches:
# https://github.com/syncthing/syncthing/issues/6209
%ifnarch %{arm} %{ix86}
%gotest %{goipath}/lib/protocol
%endif
%gotest %{goipath}/lib/rand
%gotest %{goipath}/lib/relay/client
%gotest %{goipath}/lib/relay/protocol