mirror of
https://github.com/syncthing/syncthing.git
synced 2024-11-16 02:18:44 -07:00
all, vendor: Switch back to non-forked thejerf/suture (#5171)
This commit is contained in:
parent
8aa2d8d92c
commit
9e00b619ab
@ -19,11 +19,11 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/prometheus/client_golang/prometheus/promhttp"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/tlsutil"
|
||||
"github.com/syndtr/goleveldb/leveldb/opt"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -165,7 +165,7 @@ func main() {
|
||||
|
||||
// Root of the service tree.
|
||||
main := suture.New("main", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
})
|
||||
|
||||
// Start the database.
|
||||
|
@ -23,13 +23,13 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/d4l3k/messagediff"
|
||||
"github.com/syncthing/syncthing/lib/config"
|
||||
"github.com/syncthing/syncthing/lib/events"
|
||||
"github.com/syncthing/syncthing/lib/fs"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
func TestCSRFToken(t *testing.T) {
|
||||
@ -78,7 +78,7 @@ func TestStopAfterBrokenConfig(t *testing.T) {
|
||||
srv.started = make(chan string)
|
||||
|
||||
sup := suture.New("test", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
})
|
||||
sup.Add(srv)
|
||||
sup.ServeBackground()
|
||||
@ -490,7 +490,7 @@ func startHTTP(cfg *mockedConfig) (string, error) {
|
||||
|
||||
// Actually start the API service
|
||||
supervisor := suture.New("API test", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
})
|
||||
supervisor.Add(svc)
|
||||
supervisor.ServeBackground()
|
||||
|
@ -47,7 +47,7 @@ import (
|
||||
"github.com/syncthing/syncthing/lib/tlsutil"
|
||||
"github.com/syncthing/syncthing/lib/upgrade"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/thejerf/suture"
|
||||
|
||||
_ "net/http/pprof" // Need to import this to support STPROFILER.
|
||||
)
|
||||
@ -594,7 +594,7 @@ func syncthingMain(runtimeOptions RuntimeOptions) {
|
||||
Log: func(line string) {
|
||||
l.Debugln(line)
|
||||
},
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
})
|
||||
mainService.ServeBackground()
|
||||
|
||||
|
@ -9,10 +9,10 @@ package main
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/events"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
// The folderSummaryService adds summary information events (FolderSummary and
|
||||
@ -37,7 +37,7 @@ type folderSummaryService struct {
|
||||
func newFolderSummaryService(cfg configIntf, m modelIntf) *folderSummaryService {
|
||||
service := &folderSummaryService{
|
||||
Supervisor: suture.New("folderSummaryService", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
cfg: cfg,
|
||||
model: m,
|
||||
|
@ -10,7 +10,7 @@ import (
|
||||
"net"
|
||||
stdsync "sync"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
type recv struct {
|
||||
|
@ -11,8 +11,8 @@ import (
|
||||
"net"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
type Broadcast struct {
|
||||
@ -36,7 +36,7 @@ func NewBroadcast(port int) *Broadcast {
|
||||
Log: func(line string) {
|
||||
l.Debugln(line)
|
||||
},
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
port: port,
|
||||
inbox: make(chan []byte),
|
||||
|
@ -12,7 +12,7 @@ import (
|
||||
"net"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/thejerf/suture"
|
||||
"golang.org/x/net/ipv6"
|
||||
)
|
||||
|
||||
@ -36,7 +36,7 @@ func NewMulticast(addr string) *Multicast {
|
||||
Log: func(line string) {
|
||||
l.Debugln(line)
|
||||
},
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
inbox: make(chan []byte),
|
||||
outbox: make(chan recv, 16),
|
||||
|
@ -30,7 +30,7 @@ import (
|
||||
_ "github.com/syncthing/syncthing/lib/pmp"
|
||||
_ "github.com/syncthing/syncthing/lib/upnp"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/thejerf/suture"
|
||||
"golang.org/x/time/rate"
|
||||
)
|
||||
|
||||
@ -105,7 +105,7 @@ func NewService(cfg *config.Wrapper, myID protocol.DeviceID, mdl Model, tlsCfg *
|
||||
Log: func(line string) {
|
||||
l.Infoln(line)
|
||||
},
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
cfg: cfg,
|
||||
myID: myID,
|
||||
@ -130,9 +130,9 @@ func NewService(cfg *config.Wrapper, myID protocol.DeviceID, mdl Model, tlsCfg *
|
||||
Log: func(line string) {
|
||||
l.Infoln(line)
|
||||
},
|
||||
FailureThreshold: 2,
|
||||
FailureBackoff: 600 * time.Second,
|
||||
PanicPanics: true,
|
||||
FailureThreshold: 2,
|
||||
FailureBackoff: 600 * time.Second,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
}
|
||||
cfg.Subscribe(service)
|
||||
|
@ -10,10 +10,10 @@ import (
|
||||
stdsync "sync"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
"github.com/syncthing/syncthing/lib/util"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
// The CachingMux aggregates results from multiple Finders. Each Finder has
|
||||
@ -52,7 +52,7 @@ type cachedError interface {
|
||||
func NewCachingMux() CachingMux {
|
||||
return &cachingMux{
|
||||
Supervisor: suture.New("discover.cachingMux", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
mut: sync.NewRWMutex(),
|
||||
}
|
||||
|
@ -9,8 +9,8 @@ package discover
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
// A Finder provides lookup services of some kind.
|
||||
|
@ -18,11 +18,11 @@ import (
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/beacon"
|
||||
"github.com/syncthing/syncthing/lib/events"
|
||||
"github.com/syncthing/syncthing/lib/protocol"
|
||||
"github.com/syncthing/syncthing/lib/rand"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
type localClient struct {
|
||||
@ -49,7 +49,7 @@ const (
|
||||
func NewLocal(id protocol.DeviceID, addr string, addrList AddressLister) (FinderService, error) {
|
||||
c := &localClient{
|
||||
Supervisor: suture.New("local", suture.Spec{
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
myID: id,
|
||||
addrList: addrList,
|
||||
|
@ -22,7 +22,6 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/calmh/suture"
|
||||
"github.com/syncthing/syncthing/lib/config"
|
||||
"github.com/syncthing/syncthing/lib/connections"
|
||||
"github.com/syncthing/syncthing/lib/db"
|
||||
@ -36,6 +35,7 @@ import (
|
||||
"github.com/syncthing/syncthing/lib/sync"
|
||||
"github.com/syncthing/syncthing/lib/upgrade"
|
||||
"github.com/syncthing/syncthing/lib/versioner"
|
||||
"github.com/thejerf/suture"
|
||||
)
|
||||
|
||||
var locationLocal *time.Location
|
||||
@ -136,7 +136,7 @@ func NewModel(cfg *config.Wrapper, id protocol.DeviceID, clientName, clientVersi
|
||||
Log: func(line string) {
|
||||
l.Debugln(line)
|
||||
},
|
||||
PanicPanics: true,
|
||||
PassThroughPanics: true,
|
||||
}),
|
||||
cfg: cfg,
|
||||
db: ldb,
|
||||
|
0
vendor/github.com/calmh/suture/LICENSE → vendor/github.com/thejerf/suture/LICENSE
generated
vendored
0
vendor/github.com/calmh/suture/LICENSE → vendor/github.com/thejerf/suture/LICENSE
generated
vendored
0
vendor/github.com/calmh/suture/doc.go → vendor/github.com/thejerf/suture/doc.go
generated
vendored
0
vendor/github.com/calmh/suture/doc.go → vendor/github.com/thejerf/suture/doc.go
generated
vendored
@ -126,15 +126,15 @@ type Supervisor struct {
|
||||
// Spec is used to pass arguments to the New function to create a
|
||||
// supervisor. See the New function for full documentation.
|
||||
type Spec struct {
|
||||
Log func(string)
|
||||
FailureDecay float64
|
||||
FailureThreshold float64
|
||||
FailureBackoff time.Duration
|
||||
Timeout time.Duration
|
||||
LogBadStop BadStopLogger
|
||||
LogFailure FailureLogger
|
||||
LogBackoff BackoffLogger
|
||||
PanicPanics bool
|
||||
Log func(string)
|
||||
FailureDecay float64
|
||||
FailureThreshold float64
|
||||
FailureBackoff time.Duration
|
||||
Timeout time.Duration
|
||||
LogBadStop BadStopLogger
|
||||
LogFailure FailureLogger
|
||||
LogBackoff BackoffLogger
|
||||
PassThroughPanics bool
|
||||
}
|
||||
|
||||
/*
|
||||
@ -178,6 +178,9 @@ failure count to zero.
|
||||
|
||||
Timeout is how long Suture will wait for a service to properly terminate.
|
||||
|
||||
The PassThroughPanics options can be set to let panics in services propagate
|
||||
and crash the program, should this be desirable.
|
||||
|
||||
*/
|
||||
func New(name string, spec Spec) (s *Supervisor) {
|
||||
s = new(Supervisor)
|
||||
@ -216,7 +219,7 @@ func New(name string, spec Spec) (s *Supervisor) {
|
||||
} else {
|
||||
s.timeout = spec.Timeout
|
||||
}
|
||||
s.recoverPanics = !spec.PanicPanics
|
||||
s.recoverPanics = !spec.PassThroughPanics
|
||||
|
||||
// overriding these allows for testing the threshold behavior
|
||||
s.getNow = time.Now
|
16
vendor/manifest
vendored
16
vendor/manifest
vendored
@ -74,14 +74,6 @@
|
||||
"branch": "master",
|
||||
"notests": true
|
||||
},
|
||||
{
|
||||
"importpath": "github.com/calmh/suture",
|
||||
"repository": "https://github.com/calmh/suture",
|
||||
"vcs": "git",
|
||||
"revision": "2741a6bb8fdeba8f30c948c83756edc4dd21b9c6",
|
||||
"branch": "master",
|
||||
"notests": true
|
||||
},
|
||||
{
|
||||
"importpath": "github.com/calmh/xdr",
|
||||
"repository": "https://github.com/calmh/xdr",
|
||||
@ -440,6 +432,14 @@
|
||||
"branch": "master",
|
||||
"notests": true
|
||||
},
|
||||
{
|
||||
"importpath": "github.com/thejerf/suture",
|
||||
"repository": "https://github.com/thejerf/suture",
|
||||
"vcs": "git",
|
||||
"revision": "bf6ee6a0b047ebbe9ae07d847f750dd18c6a9276",
|
||||
"branch": "master",
|
||||
"notests": true
|
||||
},
|
||||
{
|
||||
"importpath": "github.com/tjfoc/gmsm/sm4",
|
||||
"repository": "https://github.com/tjfoc/gmsm",
|
||||
|
Loading…
Reference in New Issue
Block a user