Giter Club home page Giter Club logo

alkasir's Introduction

GoDoc Build Status gitter.im alkasir chat

Alkasir v2

Alkasir is a cross-platform, open-source and robust website censorship circumvention tool that also maps censorship patterns around the world.

See alkasir.com for general information about the software.

Hacking

Se hacking for information on how to set up an development environment.

alkasir's People

Contributors

mabras avatar thomasf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

alkasir's Issues

connection manager loop can deadlock

Log from a failed application shutdown

{
  "version": "0.4.1",
  "created_at": "2016-02-16T20:53:55.103595389+01:00",
  "id": "7bb2ca28049a8969a938a137",
  "os": "darwin",
  "arch": "amd64",
  "cmd": "alkasir-gui",
  "go_ver": "go1.5.3"
}
...
I0216 20:52:29.676207    5290 wm.go:80] quit clicked
I0216 20:52:29.676256    5290 client.go:281] alkasir is shutting down
I0216 20:52:29.676279    5290 client.go:284] called config write
I0216 20:52:29.676297    5290 config.go:61] Saving settings file
I0216 20:52:29.676726    5290 client.go:287] running atexit funcs
I0216 20:52:29.676734    5290 client.go:290] Running at exit func github.com/alkasir/alkasir/pkg/client/ui.Done
I0216 20:52:29.676738    5290 ui.go:60] entering ui.Done
I0216 20:52:29.779319    5290 ui.go:62] leaving ui.Done
I0216 20:52:29.779337    5290 client.go:292] Finished at exit func github.com/alkasir/alkasir/pkg/client/ui.Done
I0216 20:52:29.779344    5290 client.go:295] atexit funcs done
I0216 20:52:29.779363    5290 client.go:296] stopping connectionmanager
I0216 20:53:02.103245    5290 log.go:86] 404 26 s GET /debug-export HTTP/1.1
I0216 20:53:04.302369    5290 log.go:86] 404 20 s GET /debug-export/ HTTP/1.1
I0216 20:53:06.702629    5290 log.go:86] 404 18 s GET /debug/ HTTP/1.1
I0216 20:53:10.486544    5290 log.go:86] 404 19 s GET /debug/export HTTP/1.1
I0216 20:53:12.229892    5290 log.go:86] 404 18 s GET /debug/export/ HTTP/1.1
I0216 20:53:42.462290    5290 log.go:86] 404 65 s GET /export/debug HTTP/1.1
goroutine 6954 [running]:
runtime/pprof.writeGoroutineStacks(0x634b3e0, 0xc820056bd0, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:516 +0x84
runtime/pprof.writeGoroutine(0x634b3e0, 0xc820056bd0, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:505 +0x46
runtime/pprof.(*Profile).WriteTo(0x4b75ba0, 0x634b3e0, 0xc820056bd0, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:236 +0xd4
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne.func1(0x46fbcd0, 0x9, 0x0, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:136 +0x12e
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne(0x47f9168, 0x5, 0x466ef00, 0xc8202d8640, 0xc8202d8640)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:148 +0x316
github.com/alkasir/alkasir/pkg/client.GetDebug(0x634fee0, 0xc820510900, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:998 +0xa3
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc820510900, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820510900, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820510900, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205927c0, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205927c0, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205927c0, 0xc820592780)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc82038c0b0, 0xc820235340)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc82038c0b0, 0xc820235340)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc82038c0b0, 0xc820235340)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc82038c420)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 1 [syscall, 2 minutes, locked to thread]:
github.com/alkasir/alkasir/pkg/client/ui/systray._Cfunc_nativeLoop(0x0)
    github.com/alkasir/alkasir/pkg/client/ui/systray/_obj/_cgo_gotypes.go:70 +0x3d
github.com/alkasir/alkasir/pkg/client/ui/systray.nativeLoop()
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/cgo.go:20 +0x18
github.com/alkasir/alkasir/pkg/client/ui/systray.Run(0xc8201b97d0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/systray.go:52 +0xa0
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Run(0xc8200b0780, 0x47f9740, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:45 +0x82
github.com/alkasir/alkasir/pkg/client/ui.Run(0x47f9740, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/ui.go:46 +0x142
github.com/alkasir/alkasir/pkg/client.Run()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:79 +0x419
main.main()
    /drone/src/github.com/alkasir/alkasir/cmd/alkasir-gui/alkasir-gui.go:60 +0x58c

goroutine 17 [syscall, 184 minutes, locked to thread]:
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1721 +0x1

goroutine 5 [syscall, 184 minutes]:
os/signal.loop()
    /usr/local/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /usr/local/go/src/os/signal/signal_unix.go:28 +0x37

goroutine 6 [chan receive]:
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).flushDaemon(0x4b83a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:980 +0x67
created by github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.init.1
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:379 +0x31f

goroutine 7 [select, 2 minutes]:
github.com/alkasir/alkasir/pkg/central/client.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:364 +0x762
created by github.com/alkasir/alkasir/pkg/central/client.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:396 +0x2b

goroutine 19 [select, 184 minutes, locked to thread]:
runtime.gopark(0x47fad40, 0xc820029728, 0x46ea988, 0x6, 0x4030218, 0x2)
    /usr/local/go/src/runtime/proc.go:185 +0x163
runtime.selectgoImpl(0xc820029728, 0x0, 0x18)
    /usr/local/go/src/runtime/select.go:392 +0xa64
runtime.selectgo(0xc820029728)
    /usr/local/go/src/runtime/select.go:212 +0x12
runtime.ensureSigM.func1()
    /usr/local/go/src/runtime/signal1_unix.go:227 +0x323
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1721 +0x1

goroutine 34 [chan receive, 2 minutes]:
github.com/alkasir/alkasir/pkg/pac.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:57 +0xde
created by github.com/alkasir/alkasir/pkg/pac.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:72 +0x513

goroutine 9 [chan send, 2 minutes]:
github.com/alkasir/alkasir/pkg/service.StartConnectionManager(0xc8201b79b0, 0x30)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:212 +0x11c8
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:221 +0x171f

goroutine 42 [select, 39 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc820148fc0, 0xc8200fee80)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:58 +0x5b1
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35a

goroutine 38 [chan receive, 2 minutes]:
github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1.1(0xc820109130)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:101 +0xb7c
created by github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:105 +0x12a

goroutine 6879 [IO wait, 2 minutes]:
net.runtime_pollWait(0x6308028, 0x72, 0xc82000a160)
    /usr/local/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0xc820056450, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820056450, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200563f0, 0xc8200eb000, 0x1000, 0x1000, 0x0, 0x62c7050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:232 +0x23a
net.(*conn).Read(0xc820476060, 0xc8200eb000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*liveSwitchReader).Read(0xc8202ee048, 0xc8200eb000, 0x1000, 0x1000, 0xc82041c068, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:219 +0xa4
io.(*LimitedReader).Read(0xc8205f2240, 0xc8200eb000, 0x1000, 0x1000, 0x46e1dd0, 0x0, 0x0)
    /usr/local/go/src/io/io.go:427 +0xbd
bufio.(*Reader).fill(0xc82041c000)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc82041c000, 0xc81ffd190a, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc82041c000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc8205be0f0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc8205be0f0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.ReadRequest(0xc82041c000, 0xc8205ccee0, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:653 +0xb6
net/http.(*conn).readRequest(0xc8202ee000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:633 +0x32f
net/http.(*conn).serve(0xc8202ee000)
    /usr/local/go/src/net/http/server.go:1319 +0x727
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 22 [select, 2 minutes]:
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language.func1(0xc8200b0780)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:78 +0x2cc
created by github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:101 +0x325

goroutine 23 [chan send, 2 minutes]:
github.com/alkasir/alkasir/pkg/client.exit()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:297 +0x9d6
github.com/alkasir/alkasir/pkg/client.Run.func1.4()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:198 +0xc4
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:200 +0x11fe

goroutine 41 [select, 39 minutes]:
github.com/alkasir/alkasir/pkg/client.StartBinaryUpgradeChecker(0x47fca00, 0x1b)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradebin.go:36 +0x4c6
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:231 +0x1a29

goroutine 25 [select, 184 minutes]:
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func1(0xc8201b79b0, 0x30, 0x634fa78, 0xc8200b20b8, 0xc820434100, 0xe)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:52 +0x637
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:73 +0x817

goroutine 26 [IO wait]:
net.runtime_pollWait(0x6308268, 0x72, 0xc82000a160)
    /usr/local/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0xc820408ca0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820408ca0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc820408c40, 0x0, 0x634fad8, 0xc820593200)
    /usr/local/go/src/net/fd_unix.go:408 +0x27c
net.(*TCPListener).AcceptTCP(0xc8200b20b8, 0xc820208de8, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:254 +0x4d
net.(*TCPListener).Accept(0xc8200b20b8, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:264 +0x3d
net/http.(*Server).Serve(0xc820422d20, 0x634fa78, 0xc8200b20b8, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:1887 +0xb3
net/http.Serve(0x634fa78, 0xc8200b20b8, 0x634fab0, 0xc8204360a0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:1765 +0x85
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func2(0x634fa78, 0xc8200b20b8, 0xc8203faff0, 0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0xc820408cb0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:78 +0xf3
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:82 +0x8b5

goroutine 10 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.NewTransportHTTPClient(0x0, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:389 +0x3c
github.com/alkasir/alkasir/pkg/client.NewRestClient(0x5, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/util.go:42 +0x397
github.com/alkasir/alkasir/pkg/client.upgradeBlockList(0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:70 +0x6d
github.com/alkasir/alkasir/pkg/client.StartBlocklistUpgrader()
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:55 +0x801
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:228 +0x186f

goroutine 50 [select, 2 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc8200e7f10, 0xc82044e000)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:58 +0x5b1
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35a

goroutine 51 [chan receive, 184 minutes]:
github.com/alkasir/alkasir/pkg/service.(*Service).initDone.func1(0xc820416000)
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:275 +0x15d
created by github.com/alkasir/alkasir/pkg/service.(*Service).initDone
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:299 +0x1eb

goroutine 6880 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc820424f00, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc820424f00, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820424f00, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820424f00, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820586340, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820586340, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820586340, 0xc8205862e0)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc820284fd0, 0xc8204781c0)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc8202ee210)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 6829 [chan send, 2 minutes]:
github.com/alkasir/alkasir/pkg/service.ConnectionEvent.newState(0x4, 0xece554a2f, 0x35ea4e03, 0x4b83680, 0xc8201b9c50, 0x5, 0xc8200ac600, 0x58, 0xc8200aeae0, 0x13, ...)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:64 +0x145
github.com/alkasir/alkasir/pkg/service.testConn(0xc8201ca000, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:276 +0x337
github.com/alkasir/alkasir/pkg/service.StartConnectionManager.func3(0xc8201ca000)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:221 +0x31
created by github.com/alkasir/alkasir/pkg/service.StartConnectionManager
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:227 +0x1adf

goroutine 6945 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc8203ffec0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc8203ffec0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203ffec0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203ffec0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205933a0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205933a0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc8205933a0, 0xc820593380)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc8200b4f20, 0xc820280fc0)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc82011b6b0)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 6900 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc8203fe750, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc8203fe750, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203fe750, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203fe750, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82059f980, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82059f980, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82059f980, 0xc82059f960)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc82011b080, 0xc820280620)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc82011b080, 0xc820280620)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc82011b080, 0xc820280620)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc82011b080, 0xc820280620)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc82011b080, 0xc820280620)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc82011b080, 0xc820280620)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc82011b080, 0xc820280620)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc82011b080, 0xc820280620)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc8204da2c0)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 6899 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc8205f06f0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc8205f06f0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8205f06f0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8205f06f0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82060c4e0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82060c4e0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc82060c4e0, 0xc82060c4a0)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc8204da210, 0xc820562a80)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc8204da210, 0xc820562a80)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc8204da210, 0xc820562a80)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc8204da210, 0xc820562a80)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc8204da210, 0xc820562a80)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc8204da210, 0xc820562a80)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc8204da210, 0xc820562a80)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc8204da210, 0xc820562a80)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc8204da000)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 6948 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc8203ff590, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc8203ff590, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203ff590, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc8203ff590, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820592aa0, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820592aa0, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820592aa0, 0xc820592a60)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc82011be40, 0xc820280d20)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc82011be40, 0xc820280d20)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc82011be40, 0xc820280d20)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc82011be40, 0xc820280d20)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc82011be40, 0xc820280d20)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc82011be40, 0xc820280d20)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc82011be40, 0xc820280d20)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc82011be40, 0xc820280d20)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc82011bd90)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6

goroutine 6950 [semacquire, 2 minutes]:
sync.runtime_Semacquire(0x4ba824c)
    /usr/local/go/src/runtime/sema.go:43 +0x26
sync.(*Mutex).Lock(0x4ba8248)
    /usr/local/go/src/sync/mutex.go:82 +0x1c4
github.com/alkasir/alkasir/pkg/service.TransportOk(0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:381 +0x28
github.com/alkasir/alkasir/pkg/client.GetStatusSummary(0x634fee0, 0xc820596270, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:469 +0x3c
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0x634fee0, 0xc820596270, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820596270, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0x634fee0, 0xc820596270, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820593940, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820593940, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0x634fea0, 0xc820593940, 0xc820593920)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc820434080, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.StripPrefix.func1(0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /usr/local/go/src/net/http/server.go:1455 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc820432540, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /usr/local/go/src/net/http/server.go:1422 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ffb00, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /usr/local/go/src/net/http/server.go:1699 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b79b0, 0x30, 0x634fa50, 0xc8203ffb00, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x5f2
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8204360a0, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc820422d20, 0x634fe68, 0xc8200b5ce0, 0xc820281180)
    /usr/local/go/src/net/http/server.go:1862 +0x19e
net/http.(*conn).serve(0xc8200b5c30)
    /usr/local/go/src/net/http/server.go:1361 +0xbee
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:1910 +0x3f6


Break up make.go

The intention of make.go is specified in the top comment:

// The rules for modifying this file is to only depend on standard go packages
// so that a build process can ge bootstrapped even if other things are not
// installed yet.

However, since go has been having the vendoring support for a while now make.go can depend on any other package as longs as all it's dependencies are contained in the vendor/ directory..

There are probably things being done in make.go like executing builds inside docker containers which drone now can do both locally and as a CI server.

Client release procedure

Manual test of the gui client in:

  • windows 10
  • windows 7
  • latest ubuntu
  • latest osx

Then

  • ensure CHANGELOG is correct
  • create release tag and upload pre prelase to github and upgrade bindiffs to our server
  • ask other people to test it as well (maybe)
  • make release public on github
  • set the new version as the upgrade target in the binary upgrade system
  • update web page with the latest version

GUI client does not terminate correctly when quitting in osx

I exited it from the menu, causing it to disappear. but I still see it on the task manager and when I select it, it comes to the foreground but doesn't allow me to quick normally using Apple-Q. I then have to resort to forcing it to quit using the Finder app.

This has been an issue before, there were some changes in the shutdown procedure done during the last weeks, it's probably related.

In app end user documentation needed

These pages needs to be created (and probably a few more):

  • General network error - a "check that the internet connection works" kind of info
  • Cannot connect to transport - Some info that our transports might be activley blocked
  • Cannot connect to client page - Explain that the client must be running for the chrome extension to work.

e-mail links inside in app documents does not work

... I noticed a minor bug in the link to the [email protected] mailto:[email protected] in the help section under (Debug Information), which seems to not redirect to the mail client. It now throws: "
document not found
Cannot find ./en/mailto:[email protected] mailto:[email protected]"

Check that external links also works, iirc I have implemented checks so that http(s) protocol urls are not caught by the docs system but let's verify that as well.

Central server crashes eachother day or so because of invalid postgres connection

(An old repository branch is being reintegrated in this code right now so the
problem should disappear with it..)

It's this error, the program should not crash if this happens. It restarts again very fast so it should not be noticeable to users at all but nevertheless it should be fixed.

results, err := clients.DB.GetSamples(uint64(lastID), "")
            if err != nil {
                lg.Fatal(err)
            }
Log file created at: 2016/02/12 09:05:15
Running on machine: alkasir
Binary: Built with gc go1.5.3 for linux/amd64
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
F0212 09:05:15.852840   26564 analysis.go:26] driver: bad connection
goroutine 593 [running]:
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.stacks(0xc820070001, 0x0, 0x0, 0x0)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:801 +0xb8
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).output(0xe90be0, 0xc800000003, 0xc820116540, 0xe69d95, 0xb, 0x1a, 0x0)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:746 +0x329
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).printDepth(0xe90be0, 0x3, 0x1, 0xc8204f3d30, 0x1, 0x1)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:622 +0x1b8
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).print(0xe90be0, 0x3, 0xc8204f3d30, 0x1, 0x1)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:613 +0x50
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.Fatal(0xc8204f3d30, 0x1, 0x1)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:1239 +0x49
github.com/alkasir/alkasir/pkg/central.startAnalysis.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/analysis.go:26 +0x409
created by github.com/alkasir/alkasir/pkg/central.startAnalysis
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/analysis.go:59 +0x67

goroutine 1 [semacquire, 1758 minutes]:
sync.runtime_Semacquire(0xc82018186c)
    /home/thomasf/.opt/go/src/runtime/sema.go:43 +0x26
sync.(*WaitGroup).Wait(0xc820181860)
    /home/thomasf/.opt/go/src/sync/waitgroup.go:126 +0xb4
github.com/alkasir/alkasir/pkg/central.Run()
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:225 +0x4e1
main.main()
    /home/thomasf/src/github.com/alkasir/alkasir/cmd/alkasir-central/alkasir-central.go:19 +0xa3

goroutine 17 [syscall, 1761 minutes, locked to thread]:
runtime.goexit()
    /home/thomasf/.opt/go/src/runtime/asm_amd64.s:1721 +0x1

goroutine 20 [chan receive]:
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).flushDaemon(0xe90be0)
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:980 +0x67
created by github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.init.1
    /home/thomasf/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:379 +0x31f

goroutine 7 [chan receive]:
github.com/alkasir/alkasir/pkg/central/db.init.1.func1()
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/db/sessionstoken.go:102 +0x49
created by github.com/alkasir/alkasir/pkg/central/db.init.1
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/db/sessionstoken.go:105 +0xb3

goroutine 9 [IO wait]:
net.runtime_pollWait(0x7f715c7df690, 0x72, 0xc8200660a0)
    /home/thomasf/.opt/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0xc82005e840, 0x72, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82005e840, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc82005e7e0, 0x0, 0x7f715c7e4070, 0xc8200c80a0)
    /home/thomasf/.opt/go/src/net/fd_unix.go:408 +0x27c
net.(*TCPListener).AcceptTCP(0xc8200700f8, 0x452e10, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/tcpsock_posix.go:254 +0x4d
net/http.tcpKeepAliveListener.Accept(0xc8200700f8, 0x0, 0x0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:2135 +0x41
net/http.(*Server).Serve(0xc820064ae0, 0x7f715c7e4038, 0xc8200700f8, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1887 +0xb3
net/http.(*Server).ListenAndServe(0xc820064ae0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1877 +0x136
net/http.ListenAndServe(0xc820010104, 0xe, 0x0, 0x0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1967 +0x8f
github.com/alkasir/alkasir/pkg/central.startMonitoring(0xc820010104, 0xe)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:283 +0x22f
created by github.com/alkasir/alkasir/pkg/central.Run
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:110 +0x6e

goroutine 22 [syscall, 1761 minutes]:
os/signal.loop()
    /home/thomasf/.opt/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /home/thomasf/.opt/go/src/os/signal/signal_unix.go:28 +0x37

goroutine 23 [chan receive, 1761 minutes]:
database/sql.(*DB).connectionOpener(0xc8201c41e0)
    /home/thomasf/.opt/go/src/database/sql/sql.go:634 +0x45
created by database/sql.Open
    /home/thomasf/.opt/go/src/database/sql/sql.go:481 +0x336

goroutine 590 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.Run.func5(0xc820181860)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:172 +0x162
created by github.com/alkasir/alkasir/pkg/central.Run
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:174 +0x193

goroutine 24 [chan receive, 1 minutes]:
github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1.1(0xc820246180)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:101 +0xb7c
created by github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:105 +0x12a

goroutine 604 [select, 1758 minutes, locked to thread]:
runtime.gopark(0xc3e458, 0xc82004af28, 0xb1be88, 0x6, 0x4cd618, 0x2)
    /home/thomasf/.opt/go/src/runtime/proc.go:185 +0x163
runtime.selectgoImpl(0xc82004af28, 0x0, 0x18)
    /home/thomasf/.opt/go/src/runtime/select.go:392 +0xa64
runtime.selectgo(0xc82004af28)
    /home/thomasf/.opt/go/src/runtime/select.go:212 +0x12
runtime.ensureSigM.func1()
    /home/thomasf/.opt/go/src/runtime/signal1_unix.go:227 +0x353
runtime.goexit()
    /home/thomasf/.opt/go/src/runtime/asm_amd64.s:1721 +0x1

goroutine 35 [chan receive]:
github.com/alkasir/alkasir/pkg/central.startMonitoring.func1(0x7f715d81c6e0, 0xc820063000)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:275 +0x65
created by github.com/alkasir/alkasir/pkg/central.startMonitoring
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:282 +0x205

goroutine 592 [IO wait, 1758 minutes]:
net.runtime_pollWait(0x7f715c7df090, 0x72, 0xc8200660a0)
    /home/thomasf/.opt/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0xc820168a00, 0x72, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820168a00, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc8201689a0, 0x0, 0x7f715c7e4070, 0xc8200de800)
    /home/thomasf/.opt/go/src/net/fd_unix.go:408 +0x27c
net.(*TCPListener).AcceptTCP(0xc820070050, 0xc8202fbc40, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/tcpsock_posix.go:254 +0x4d
net/http.tcpKeepAliveListener.Accept(0xc820070050, 0x0, 0x0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:2135 +0x41
net/http.(*Server).Serve(0xc820349380, 0x7f715c7e4038, 0xc820070050, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1887 +0xb3
net/http.(*Server).ListenAndServe(0xc820349380, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1877 +0x136
net/http.ListenAndServe(0xc8200100a6, 0xe, 0x7f715d8291f8, 0xc8206f8270, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1967 +0x8f
github.com/alkasir/alkasir/pkg/central.Run.func7(0xc8200100a6, 0xe, 0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:216 +0x7ae
created by github.com/alkasir/alkasir/pkg/central.Run
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:220 +0x42c

goroutine 601 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 602 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 596 [chan receive, 411 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 605 [chan receive, 8 minutes]:
github.com/alkasir/alkasir/pkg/central.GetHosts.func1(0xc8203c4140)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/api.go:110 +0x67
created by github.com/alkasir/alkasir/pkg/central.GetHosts
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/api.go:113 +0xf5

goroutine 600 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 599 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 603 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 591 [IO wait, 366 minutes]:
net.runtime_pollWait(0x7f715c7defd0, 0x72, 0xc8200660a0)
    /home/thomasf/.opt/go/src/runtime/netpoll.go:157 +0x60
net.(*pollDesc).Wait(0xc8202d8bc0, 0x72, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8202d8bc0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc8202d8b60, 0x0, 0x7f715c7e4070, 0xc8202da700)
    /home/thomasf/.opt/go/src/net/fd_unix.go:408 +0x27c
net.(*TCPListener).AcceptTCP(0xc82002a0d0, 0x452e10, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/tcpsock_posix.go:254 +0x4d
net/http.tcpKeepAliveListener.Accept(0xc82002a0d0, 0x0, 0x0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:2135 +0x41
net/http.(*Server).Serve(0xc8200655c0, 0x7f715c7e4038, 0xc82002a0d0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1887 +0xb3
net/http.(*Server).ListenAndServe(0xc8200655c0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1877 +0x136
net/http.ListenAndServe(0xc82000a0b0, 0xe, 0x7f715d8291f8, 0xc8200d69f0, 0x0, 0x0)
    /home/thomasf/.opt/go/src/net/http/server.go:1967 +0x8f
github.com/alkasir/alkasir/pkg/central.Run.func6(0xc82000a0b0, 0xe, 0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:189 +0x258
created by github.com/alkasir/alkasir/pkg/central.Run
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/central.go:193 +0x3ac

goroutine 595 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 594 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 597 [chan receive, 1758 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:114 +0x74

goroutine 598 [chan receive, 1010 minutes]:
github.com/alkasir/alkasir/pkg/central.startMeasurer.func1(0x7f715d831170, 0xc82002a008, 0x7f715d8310c8, 0xc8200728c0, 0x7f715d831198, 0xc82050afb0)
    /home/thomasf/src/github.com/alkasir/alkasir/pkg/central/measurements.go:71 +0x37b
created by github.com/alkasir/alkasir/pkg/central.startMeasurer
    /home/thomasf/src/github.com /alkasir/alkasir/pkg/central/measurements.go:114 +0x74

Add pre release client upgrades

  • Add a command line flag which enables requests for a pre release
  • Add prerelese support in central server api.
  • add pre-release column in upgrades table

IPV6 addresses are sometimes associated with client->server communication

from a debug log:

I0308 17:53:44.842953   10812 publicip.go:94] Public ip address change: x.x.x.x -> 2001:XXXX:XXXX:XXXX:XXXX:XXXX via http://www.trackip.net/ip

I've also noticed some 400 errors in the central api server which might be
caused by clients sending in ipv6-addresses. Since we don't log content of the
client payloads I don't know for sure. It's a low number relative to the total
amount of requests so it's hopefully not a big issue.

(We should really get the TOR Extended orport stuff going to be more certain of
the client origins)

Generalize release management repository handling

Right now it's mostly geared towards sonatype nexus for fetching binaries and creating binary upgrades.

This could quite easily be generalized..

It would become testable and easier to maintain

Providers that would be directly useful to us:

  • github releases (since we will have releases here anyways)
  • local file system (testing and development)

Publish additional non core repositores

There is a super simple django admin based UI for the central server database and another repository for building the docker based build/test environment. It's main features is just looking at the tables so for the most part it's replaceable by using use some postgres gui..

The django repository will be published after #1 and #3 is resolved.

The docker buildenv repo will be published after some files have been removed which we do not have a licence to redistribute.

  • build/test env repository
  • web/dbadmin repository
  • 2.0 website repository (after it is public)
  • 2.0 blog repository (after it is public)

Chrome desktop notifications are emtpy in windows in some situations

  • Windows 10
  • Alkasir 0.4.2
  • Alkasir browser extension 0.0.12 (0.4.0 pending publishing)
  • Chrome 48.0.2564.109 m

image

There was an issue in the old issue tracker with the title "Chrome desktop notifications are sometimes empty in windows".. IIRC I have debugged this and the chrome extension was sending the correct information to chromes pop up system..
We should look into if there is some work around for this problem.

Some missing HTTPHeader measurements

A bunch of HTTPHeader measurements missing for reported URLS, specifically from one country where the other measurements are received. Maybe timeouts should be tuned somewhat.

The client local web server does not render in firefox

We currently don't support firefox since we dont have a browser extension for it..
My linux desktop os had firefox as it's default browser and it just looks like this:

This will be a problem for the first run configuration if a user has firefox set as the default browser:

image

Improve local chrome extension end user experience

  • A new in app document should be added explaning how to install an local extension
  • The setup guide should link to the above document and some short "if the chrome store isnt accessible read about how to "
  • The "save" button of the "export chrome extension" UI function should give feedback that it has saved the extension and where it is saved to or if it failed.
  • The client can also check if the chrome store is blocked and in that case hide the link to it in the setup guide. (if development time allows, postpone otherwise)

documentation

This is a good base for a a text explaing how to install a local extension:

https://developer.chrome.com/extensions/getstarted#unpacked

The case might be that a user also have successfully installed from the chrome
store earlier and if the user then installs a local version.. Our text should
mention how to identify which is which and disable one of them.

Add missing source code attributions..

Some parts of the go code is copied and then modified to fit Alkasir needs.

I've just left preexisting attributing information in readmes/code comments for the cases where such things exists.

I'll make an effort to attribute the original authors were it isn't already clear, let's hope I haven't forgot anything important.

Don't hardcode tray icon on Linux

The Tray icon name is hardcoded on Linux

global_temp_icon_file_names = g_array_new(TRUE, FALSE, sizeof(char*));
will generate a unique icon name.
While you can use https://developer.ubuntu.com/api/devel/ubuntu-12.04/c/appindicator/libappindicator-app-indicator.html#app-indicator-set-icon-full
app_indicator_set_icon_full("alkasir-indicator"....
Could this be fixed ?
This way the icon can be themed by theme designers!

Set up public CI service

Investigate using drone.io.. We have been using a private drone 0.4 instace to run tests with a custom base image so the aim is to continue using drone publically.

It seems like browser resources doenst build correctly (again)

after upgrading the build env and adding go-bindata-asset to vendor the client web server doesnt seem to serve correctly.. historically this has happened when something has changed in either go-bindata or go-bindata-assetfs so just need to check those .

Open in webbrowser should open Chrome

When I choose Open in webbrowser, it opens the default webbrowser (firefox) but I would like it to open Chrome (as that's the only supported browser for now anyway.

Connection manager deadlocks

This problem surfaced when another locking problem was fixed.

This should be enough info to fix the problem:

debug report #1

{
  "version": "0.4.5",
  "created_at": "2016-03-07T12:11:21.359543468+01:00",
  "id": "f271515e212ea9fd40896e7b",
  "os": "darwin",
  "arch": "amd64",
  "cmd": "alkasir-gui",
  "go_ver": "go1.6"
}
goroutine 164887 [running]:
runtime/pprof.writeGoroutineStacks(0x4cb7940, 0xc820052070, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:516 +0x84
runtime/pprof.writeGoroutine(0x4cb7940, 0xc820052070, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:505 +0x46
runtime/pprof.(*Profile).WriteTo(0x4bbb600, 0x4cb7940, 0xc820052070, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:236 +0xd4
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne.func1(0x471afd0, 0x9, 0x0, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:70 +0x12f
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne(0x481f170, 0x5, 0x468bae0, 0xc8202a7180, 0xc8202a7180)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:82 +0x32d
github.com/alkasir/alkasir/pkg/client.GetDebug(0xc7fd120, 0xc8203a2480, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:1008 +0x9e
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0xc7fd120, 0xc8203a2480, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0xc7fd120, 0xc8203a2480, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0xc7fd120, 0xc8203a2480, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0xc7fd0e0, 0xc820517bc0, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0xc7fd0e0, 0xc820517bc0, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0xc7fd0e0, 0xc820517bc0, 0xc820517ba0)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc8203d40b0, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /usr/local/go/src/net/http/server.go:1618 +0x3a
net/http.StripPrefix.func1(0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /usr/local/go/src/net/http/server.go:1651 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc8203d6150, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /usr/local/go/src/net/http/server.go:1618 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203a3710, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /usr/local/go/src/net/http/server.go:1910 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc820011590, 0x30, 0x4cbbe38, 0xc8203a3710, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x607
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8203a9b60, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc82008bf80, 0xc7fd0a8, 0xc8203c1860, 0xc8202e6460)
    /usr/local/go/src/net/http/server.go:2081 +0x19e
net/http.(*conn).serve(0xc82060d000)
    /usr/local/go/src/net/http/server.go:1472 +0xf2e
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 1 [syscall, 6815 minutes, locked to thread]:
github.com/alkasir/alkasir/pkg/client/ui/systray._Cfunc_nativeLoop(0x0)
    github.com/alkasir/alkasir/pkg/client/ui/systray/_obj/_cgo_gotypes.go:76 +0x45
github.com/alkasir/alkasir/pkg/client/ui/systray.nativeLoop()
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/cgo.go:20 +0x18
github.com/alkasir/alkasir/pkg/client/ui/systray.Run(0xc820194db0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/systray.go:52 +0xa0
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Run(0xc8200ff480, 0x481f760, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:45 +0x82
github.com/alkasir/alkasir/pkg/client/ui.Run(0x481f760, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/ui.go:46 +0x142
github.com/alkasir/alkasir/pkg/client.Run()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:79 +0x41a
main.main()
    /drone/src/github.com/alkasir/alkasir/cmd/alkasir-gui/alkasir-gui.go:60 +0x58c

goroutine 17 [syscall, 6815 minutes, locked to thread]:
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1998 +0x1

goroutine 5 [syscall, 6815 minutes]:
os/signal.signal_recv(0x0)
    /usr/local/go/src/runtime/sigqueue.go:116 +0x132
os/signal.loop()
    /usr/local/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /usr/local/go/src/os/signal/signal_unix.go:28 +0x37

goroutine 6 [chan receive]:
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).flushDaemon(0x4bc8f20)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:980 +0x67
created by github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.init.1
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:379 +0x31f

goroutine 18 [select]:
github.com/alkasir/alkasir/pkg/central/client.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:364 +0x767
created by github.com/alkasir/alkasir/pkg/central/client.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:396 +0x2b

goroutine 9 [chan receive, 5 minutes]:
github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1.1(0xc82000b120)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:100 +0xb80
created by github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:104 +0x12a

goroutine 20 [chan receive, 6675 minutes]:
github.com/alkasir/alkasir/pkg/pac.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:57 +0xd7
created by github.com/alkasir/alkasir/pkg/pac.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:72 +0x511

goroutine 22 [select, 6815 minutes, locked to thread]:
runtime.gopark(0x4820b20, 0xc820020728, 0x4709cc0, 0x6, 0x18, 0x2)
    /usr/local/go/src/runtime/proc.go:262 +0x163
runtime.selectgoImpl(0xc820020728, 0x0, 0x18)
    /usr/local/go/src/runtime/select.go:392 +0xa67
runtime.selectgo(0xc820020728)
    /usr/local/go/src/runtime/select.go:215 +0x12
runtime.ensureSigM.func1()
    /usr/local/go/src/runtime/signal1_unix.go:279 +0x32c
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1998 +0x1

goroutine 41 [chan send, 6745 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc8203ab5e0, 0xc82034cf80)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:65 +0x123
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35b

goroutine 37 [chan send, 6675 minutes]:
github.com/alkasir/alkasir/pkg/service.StartConnectionManager(0xc820011590, 0x30)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:213 +0x11f9
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:221 +0x1737

goroutine 13 [select, 6815 minutes]:
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language.func1(0xc8200ff480)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:78 +0x2c9
created by github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:101 +0x325

goroutine 14 [select, 6815 minutes]:
github.com/alkasir/alkasir/pkg/client.Run.func1.4()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:194 +0xd5
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:200 +0x1216

goroutine 16 [select, 6815 minutes]:
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func1(0xc820011590, 0x30, 0x4cbbe90, 0xc8200260b8, 0xc8203d40f0, 0xe)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:52 +0x634
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:73 +0x812

goroutine 34 [IO wait]:
net.runtime_pollWait(0x4cbce38, 0x72, 0x4cb3050)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8203ab330, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8203ab330, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc8203ab2d0, 0x0, 0x4cbcf20, 0xc820517300)
    /usr/local/go/src/net/fd_unix.go:426 +0x27c
net.(*TCPListener).AcceptTCP(0xc8200260b8, 0xc8203dcde8, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:254 +0x4d
net.(*TCPListener).Accept(0xc8200260b8, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:264 +0x3d
net/http.(*Server).Serve(0xc82008bf80, 0x4cbbe90, 0xc8200260b8, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:2117 +0x129
net/http.Serve(0x4cbbe90, 0xc8200260b8, 0x4cbcef8, 0xc8203a9b60, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:1976 +0x8e
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func2(0x4cbbe90, 0xc8200260b8, 0xc82036d7c0, 0xc820011590, 0x30, 0x4cbbe38, 0xc8203a3710, 0xc8203ab340)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:78 +0xf3
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:82 +0x8b0

goroutine 167683 [runnable]:
net.runtime_pollWait(0x4cbcbf8, 0x72, 0xc82032f000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8200fc4c0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8200fc4c0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200fc460, 0xc82032f000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203f68d8, 0xc82032f000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc820517360, 0xc82032f000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc8203bd8c0)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc8203bd8c0, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc8203bd8c0, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc8204b40c0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc8204b40c0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc8203bd8c0, 0x0, 0xc8202c8620, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820230380, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820230380)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 38 [chan receive, 6675 minutes]:
github.com/alkasir/alkasir/pkg/service.updateTransportOkLoop()
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:394 +0x4e
created by github.com/alkasir/alkasir/pkg/service.StartConnectionManager
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:114 +0x8a

goroutine 39 [semacquire, 6669 minutes]:
sync.runtime_Semacquire(0x4be5634)
    /usr/local/go/src/runtime/sema.go:47 +0x26
sync.(*Mutex).Lock(0x4be5630)
    /usr/local/go/src/sync/mutex.go:83 +0x1c4
github.com/alkasir/alkasir/pkg/service.NewTransportHTTPClient(0xdf8475800, 0x10, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:404 +0x33
github.com/alkasir/alkasir/pkg/client.NewRestClient(0x5, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/util.go:43 +0x3a7
github.com/alkasir/alkasir/pkg/client.upgradeBlockList(0xc82000b3c8, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:71 +0x68
github.com/alkasir/alkasir/pkg/client.StartBlocklistUpgrader()
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:55 +0x811
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:228 +0x1887

goroutine 40 [chan send, 6745 minutes]:
github.com/alkasir/alkasir/pkg/client.StartBinaryUpgradeChecker(0x4822930, 0x1b)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradebin.go:67 +0x8a2
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:231 +0x1a41

goroutine 24 [chan send, 6481 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc820151c00, 0xc8200ff640)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:72 +0x1bf
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35b

goroutine 13468 [chan receive, 6745 minutes]:
github.com/alkasir/alkasir/pkg/service.(*Service).initDone.func1(0xc8200e8480)
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:275 +0x15e
created by github.com/alkasir/alkasir/pkg/service.(*Service).initDone
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:299 +0x1eb

goroutine 167685 [IO wait]:
net.runtime_pollWait(0x4cbca78, 0x72, 0xc82012c000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8200fc7d0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8200fc7d0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200fc770, 0xc82012c000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203f68e8, 0xc82012c000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc820517320, 0xc82012c000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc8203bd860)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc8203bd860, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc8203bd860, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc8203b1680, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc8203b1680, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc8203bd860, 0xc81ffe5900, 0xc820697ea0, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820230480, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820230480)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 164888 [IO wait]:
net.runtime_pollWait(0x4cbccb8, 0x72, 0xc820671000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8200fc370, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8200fc370, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200fc310, 0xc820671000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc820026270, 0xc820671000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc820546480, 0xc820671000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc82018bf20)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc82018bf20, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc82018bf20, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc820617da0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc820617da0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc82018bf20, 0x0, 0xc8205fc0e0, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc82060d080, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc82060d080)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 165816 [IO wait]:
net.runtime_pollWait(0x4cbc478, 0x72, 0xc8204cb000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8200fc060, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8200fc060, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200fc000, 0xc8204cb000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc82047e000, 0xc8204cb000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc8202a00c0, 0xc8204cb000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc820622000)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc820622000, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc820622000, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc82068a0c0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc82068a0c0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc820622000, 0x100, 0xc8206967e0, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc8204ae000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc8204ae000)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 18973 [chan send, 6675 minutes]:
github.com/alkasir/alkasir/pkg/service.ConnectionEvent.newState(0x4, 0xece692bf2, 0x39052e0f, 0x4bc8b60, 0xc82000b478, 0x5, 0xc820068780, 0x58, 0xc8200c6aa0, 0x11, ...)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:64 +0x151
github.com/alkasir/alkasir/pkg/service.testConn(0xc8205e1680, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:278 +0x39e
github.com/alkasir/alkasir/pkg/service.StartConnectionManager.func3(0xc8205e1680)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:222 +0x2d
created by github.com/alkasir/alkasir/pkg/service.StartConnectionManager
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:228 +0x1b10

goroutine 167684 [IO wait]:
net.runtime_pollWait(0x4cbc5f8, 0x72, 0xc8202e5000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8200fc610, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8200fc610, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc8200fc5b0, 0xc8202e5000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203f68e0, 0xc8202e5000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc820517380, 0xc8202e5000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc8203bd920)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc8203bd920, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc8203bd920, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc8203b16e0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc8203b16e0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc8203bd920, 0x0, 0xc8202c8540, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820230400, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820230400)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

report #2

{
  "version": "0.4.5",
  "created_at": "2016-03-08T18:06:39.007763971+01:00",
  "id": "642788a703a45ca0972aecce",
  "os": "darwin",
  "arch": "amd64",
  "cmd": "alkasir-gui",
  "go_ver": "go1.6"
}
goroutine 39245 [running]:
runtime/pprof.writeGoroutineStacks(0xb30e0d8, 0xc8201060e0, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:516 +0x84
runtime/pprof.writeGoroutine(0xb30e0d8, 0xc8201060e0, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:505 +0x46
runtime/pprof.(*Profile).WriteTo(0x4bbb600, 0xb30e0d8, 0xc8201060e0, 0x2, 0x0, 0x0)
    /usr/local/go/src/runtime/pprof/pprof.go:236 +0xd4
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne.func1(0x471afd0, 0x9, 0x0, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:70 +0x12f
github.com/alkasir/alkasir/pkg/debugexport.NewDebugResposne(0x481f170, 0x5, 0x468bae0, 0xc82029e640, 0xc82029e640)
    /drone/src/github.com/alkasir/alkasir/pkg/debugexport/debug.go:82 +0x32d
github.com/alkasir/alkasir/pkg/client.GetDebug(0xb31bbe0, 0xc820367350, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/api.go:1008 +0x9e
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*router).AppFunc.func1(0xb31bbe0, 0xc820367350, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/router.go:56 +0xf1
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecoverMiddleware).MiddlewareFunc.func1(0xb31bbe0, 0xc820367350, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recover.go:57 +0x81
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*PoweredByMiddleware).MiddlewareFunc.func1(0xb31bbe0, 0xc820367350, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/powered_by.go:26 +0xa7
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*RecorderMiddleware).MiddlewareFunc.func1(0xb31bba0, 0xc820343fe0, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/recorder.go:22 +0xbc
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.(*TimerMiddleware).MiddlewareFunc.func1(0xb31bba0, 0xc820343fe0, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/timer.go:20 +0x117
github.com/alkasir/alkasir/pkg/shared/middlewares.(*AccessLogApacheErrorMiddleware).MiddlewareFunc.func1(0xb31bba0, 0xc820343fe0, 0xc820343fc0)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/middlewares/log_addons.go:18 +0x49
github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest.adapterFunc.func1(0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/ant0ine/go-json-rest/rest/middleware.go:70 +0x132
net/http.HandlerFunc.ServeHTTP(0xc8203b4f20, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /usr/local/go/src/net/http/server.go:1618 +0x3a
net/http.StripPrefix.func1(0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /usr/local/go/src/net/http/server.go:1651 +0x1a5
net/http.HandlerFunc.ServeHTTP(0xc8203dee40, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /usr/local/go/src/net/http/server.go:1618 +0x3a
net/http.(*ServeMux).ServeHTTP(0xc8203ba420, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /usr/local/go/src/net/http/server.go:1910 +0x17d
github.com/alkasir/alkasir/pkg/client.Auth.ServeHTTP(0xc8201b62d0, 0x30, 0xb31a870, 0xc8203ba420, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:252 +0x607
github.com/alkasir/alkasir/pkg/client.(*Auth).ServeHTTP(0xc8203b7380, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    <autogenerated>:1 +0xb4
net/http.serverHandler.ServeHTTP(0xc8201ede00, 0xb31bb68, 0xc82006b110, 0xc82060e0e0)
    /usr/local/go/src/net/http/server.go:2081 +0x19e
net/http.(*conn).serve(0xc82056e000)
    /usr/local/go/src/net/http/server.go:1472 +0xf2e
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 1 [syscall, 483 minutes, locked to thread]:
github.com/alkasir/alkasir/pkg/client/ui/systray._Cfunc_nativeLoop(0x0)
    github.com/alkasir/alkasir/pkg/client/ui/systray/_obj/_cgo_gotypes.go:76 +0x45
github.com/alkasir/alkasir/pkg/client/ui/systray.nativeLoop()
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/cgo.go:20 +0x18
github.com/alkasir/alkasir/pkg/client/ui/systray.Run(0xc82010fe80)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/systray/systray.go:52 +0xa0
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Run(0xc82000fb00, 0x481f760, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:45 +0x82
github.com/alkasir/alkasir/pkg/client/ui.Run(0x481f760, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/ui.go:46 +0x142
github.com/alkasir/alkasir/pkg/client.Run()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:79 +0x41a
main.main()
    /drone/src/github.com/alkasir/alkasir/cmd/alkasir-gui/alkasir-gui.go:60 +0x58c

goroutine 17 [syscall, 483 minutes, locked to thread]:
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1998 +0x1

goroutine 5 [syscall, 483 minutes]:
os/signal.signal_recv(0x0)
    /usr/local/go/src/runtime/sigqueue.go:116 +0x132
os/signal.loop()
    /usr/local/go/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
    /usr/local/go/src/os/signal/signal_unix.go:28 +0x37

goroutine 6 [chan receive]:
github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.(*loggingT).flushDaemon(0x4bc8f20)
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:980 +0x67
created by github.com/alkasir/alkasir/vendor/github.com/thomasf/lg.init.1
    /drone/src/github.com/alkasir/alkasir/vendor/github.com/thomasf/lg/glog.go:379 +0x31f

goroutine 7 [select]:
github.com/alkasir/alkasir/pkg/central/client.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:364 +0x767
created by github.com/alkasir/alkasir/pkg/central/client.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/central/client/client.go:396 +0x2b

goroutine 9 [chan receive, 352 minutes]:
github.com/alkasir/alkasir/pkg/pac.init.1.func1()
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:57 +0xd7
created by github.com/alkasir/alkasir/pkg/pac.init.1
    /drone/src/github.com/alkasir/alkasir/pkg/pac/pac.go:72 +0x511

goroutine 11 [select, 483 minutes, locked to thread]:
runtime.gopark(0x4820b20, 0xc82016cf28, 0x4709cc0, 0x6, 0x18, 0x2)
    /usr/local/go/src/runtime/proc.go:262 +0x163
runtime.selectgoImpl(0xc82016cf28, 0x0, 0x18)
    /usr/local/go/src/runtime/select.go:392 +0xa67
runtime.selectgo(0xc82016cf28)
    /usr/local/go/src/runtime/select.go:215 +0x12
runtime.ensureSigM.func1()
    /usr/local/go/src/runtime/signal1_unix.go:279 +0x32c
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1998 +0x1

goroutine 51 [chan send, 146 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc82041e150, 0xc8202dc540)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:72 +0x1bf
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35b

goroutine 13 [chan receive, 3 minutes]:
github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1.1(0xc82010fea0)
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:100 +0xb80
created by github.com/alkasir/alkasir/pkg/shared.GetPublicIPAddr.func1
    /drone/src/github.com/alkasir/alkasir/pkg/shared/publicip.go:104 +0x12a

goroutine 50 [semacquire, 321 minutes]:
sync.runtime_Semacquire(0x4be5634)
    /usr/local/go/src/runtime/sema.go:47 +0x26
sync.(*Mutex).Lock(0x4be5630)
    /usr/local/go/src/sync/mutex.go:83 +0x1c4
github.com/alkasir/alkasir/pkg/service.NewTransportHTTPClient(0xdf8475800, 0x10, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:404 +0x33
github.com/alkasir/alkasir/pkg/client.NewRestClient(0x4be5608, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/util.go:43 +0x3a7
github.com/alkasir/alkasir/pkg/client.upgradeBinaryCheck(0x4822930, 0x1b, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradebin.go:78 +0x77
github.com/alkasir/alkasir/pkg/client.StartBinaryUpgradeChecker(0x4822930, 0x1b)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradebin.go:62 +0x74f
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:231 +0x1a41

goroutine 46 [chan send, 352 minutes]:
github.com/alkasir/alkasir/pkg/service.StartConnectionManager(0xc8201b62d0, 0x30)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:213 +0x11f9
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:221 +0x1737

goroutine 66 [chan send, 274 minutes]:
github.com/alkasir/alkasir/pkg/client.NewUpdateChecker.func1(0xc8203b9570, 0xc82000fe80)
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:72 +0x1bf
created by github.com/alkasir/alkasir/pkg/client.NewUpdateChecker
    /drone/src/github.com/alkasir/alkasir/pkg/client/updatechecker.go:91 +0x35b

goroutine 35 [select, 483 minutes]:
github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language.func1(0xc82000fb00)
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:78 +0x2c9
created by github.com/alkasir/alkasir/pkg/client/ui/wm.(*WMGUI).Language
    /drone/src/github.com/alkasir/alkasir/pkg/client/ui/wm/wm.go:101 +0x325

goroutine 36 [select, 483 minutes]:
github.com/alkasir/alkasir/pkg/client.Run.func1.4()
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:194 +0xd5
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:200 +0x1216

goroutine 38 [select, 483 minutes]:
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func1(0xc8201b62d0, 0x30, 0xb31a8c8, 0xc8201be070, 0xc8203b4f60, 0xe)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:52 +0x634
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:73 +0x812

goroutine 39 [IO wait]:
net.runtime_pollWait(0xb31b870, 0x72, 0x4cb3050)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc8203b91e0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc8203b91e0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).accept(0xc8203b9180, 0x0, 0xb31b958, 0xc820343ee0)
    /usr/local/go/src/net/fd_unix.go:426 +0x27c
net.(*TCPListener).AcceptTCP(0xc8201be070, 0xc820033de8, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:254 +0x4d
net.(*TCPListener).Accept(0xc8201be070, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/tcpsock_posix.go:264 +0x3d
net/http.(*Server).Serve(0xc8201ede00, 0xb31a8c8, 0xc8201be070, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:2117 +0x129
net/http.Serve(0xb31a8c8, 0xc8201be070, 0xb31b930, 0xc8203b7380, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:1976 +0x8e
github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer.func2(0xb31a8c8, 0xc8201be070, 0xc8203b4620, 0xc8201b62d0, 0x30, 0xb31a870, 0xc8203ba420, 0xc8203b91f0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:78 +0xf3
created by github.com/alkasir/alkasir/pkg/client.startInternalHTTPServer
    /drone/src/github.com/alkasir/alkasir/pkg/client/http.go:82 +0x8b0

goroutine 47 [semacquire, 352 minutes]:
sync.runtime_Semacquire(0x4be5634)
    /usr/local/go/src/runtime/sema.go:47 +0x26
sync.(*Mutex).Lock(0x4be5630)
    /usr/local/go/src/sync/mutex.go:83 +0x1c4
github.com/alkasir/alkasir/pkg/service.NewTransportHTTPClient(0xdf8475800, 0x10, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:404 +0x33
github.com/alkasir/alkasir/pkg/client.NewRestClient(0x5, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/util.go:43 +0x3a7
github.com/alkasir/alkasir/pkg/client.upgradeBlockList(0xc8201a2228, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:71 +0x68
github.com/alkasir/alkasir/pkg/client.StartBlocklistUpgrader()
    /drone/src/github.com/alkasir/alkasir/pkg/client/upgradeblocklist.go:55 +0x811
created by github.com/alkasir/alkasir/pkg/client.Run.func1
    /drone/src/github.com/alkasir/alkasir/pkg/client/client.go:228 +0x1887

goroutine 48 [chan receive, 352 minutes]:
github.com/alkasir/alkasir/pkg/service.updateTransportOkLoop()
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:394 +0x4e
created by github.com/alkasir/alkasir/pkg/service.StartConnectionManager
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:114 +0x8a

goroutine 41098 [IO wait]:
net.runtime_pollWait(0xb31b3f0, 0x72, 0xc820496000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82019f410, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82019f410, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82019f3b0, 0xc820496000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203fe3f0, 0xc820496000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc820343f00, 0xc820496000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc820573800)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc820573800, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc820573800, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc820367170, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc820367170, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc820573800, 0xc81ffe9200, 0xc82063e8c0, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820592200, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820592200)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 40721 [IO wait, 3 minutes]:
net.runtime_pollWait(0xb31b6f0, 0x72, 0xc820539400)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82019f250, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82019f250, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82019f1f0, 0xc820539400, 0x400, 0x400, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203fe1f0, 0xc820539400, 0x400, 0x400, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
crypto/tls.(*block).readFromUntil(0xc8205d1a40, 0xb31b9e0, 0xc8203fe1f0, 0x5, 0x0, 0x0)
    /usr/local/go/src/crypto/tls/conn.go:460 +0xcc
crypto/tls.(*Conn).readRecord(0xc820332000, 0x4820c17, 0x0, 0x0)
    /usr/local/go/src/crypto/tls/conn.go:562 +0x2d1
crypto/tls.(*Conn).Read(0xc820332000, 0xc8205ed000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/crypto/tls/conn.go:939 +0x167
bufio.(*Reader).fill(0xc8203d6f00)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).Read(0xc8203d6f00, 0xc820338c98, 0x9, 0x9, 0x11, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:207 +0x260
io.ReadAtLeast(0xc95d028, 0xc8203d6f00, 0xc820338c98, 0x9, 0x9, 0x9, 0x0, 0x0, 0x0)
    /usr/local/go/src/io/io.go:297 +0xe6
io.ReadFull(0xc95d028, 0xc8203d6f00, 0xc820338c98, 0x9, 0x9, 0xc820332000, 0x0, 0x0)
    /usr/local/go/src/io/io.go:315 +0x62
net/http.http2readFrameHeader(0xc820338c98, 0x9, 0x9, 0xc95d028, 0xc8203d6f00, 0x20000000, 0xc800000000, 0x0, 0x0)
    /usr/local/go/src/net/http/h2_bundle.go:715 +0xa5
net/http.(*http2Framer).ReadFrame(0xc820338c60, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/h2_bundle.go:906 +0xe9
net/http.(*http2clientConnReadLoop).run(0xc820268730, 0x0, 0x0)
    /usr/local/go/src/net/http/h2_bundle.go:5583 +0xa6
net/http.(*http2ClientConn).readLoop(0xc8203bd8c0)
    /usr/local/go/src/net/http/h2_bundle.go:5544 +0x162
created by net/http.(*http2Transport).NewClientConn
    /usr/local/go/src/net/http/h2_bundle.go:4975 +0xd7d

goroutine 39540 [IO wait]:
net.runtime_pollWait(0xb31b630, 0x72, 0xc820458000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82019e060, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82019e060, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82019e000, 0xc820458000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8201bee08, 0xc820458000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc8203aa000, 0xc820458000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc8200cc360)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc8200cc360, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc8200cc360, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc82062ca80, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc82062ca80, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc8200cc360, 0x0, 0xc820534540, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc8205efc00, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc8205efc00)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 41097 [IO wait]:
net.runtime_pollWait(0xb31b4b0, 0x72, 0xc820498000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82019e680, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82019e680, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82019e620, 0xc820498000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8203fe3e8, 0xc820498000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc82012d560, 0xc820498000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc8203cf740)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc8203cf740, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc8203cf740, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc8203509f0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc8203509f0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc8203cf740, 0x100, 0xc820534380, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820592180, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820592180)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 39391 [IO wait]:
net.runtime_pollWait(0xb31b270, 0x72, 0xc82059e000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc820052ae0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820052ae0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc820052a80, 0xc82059e000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8205f69a0, 0xc82059e000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc8204638c0, 0xc82059e000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc82066ad20)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc82066ad20, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc82066ad20, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc820283dd0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc820283dd0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc82066ad20, 0x0, 0xc820534620, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc820590080, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc820590080)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

goroutine 13114 [chan receive, 422 minutes]:
github.com/alkasir/alkasir/pkg/service.(*Service).initDone.func1(0xc82000ca80)
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:275 +0x15e
created by github.com/alkasir/alkasir/pkg/service.(*Service).initDone
    /drone/src/github.com/alkasir/alkasir/pkg/service/service.go:299 +0x1eb

goroutine 18580 [chan send, 352 minutes]:
github.com/alkasir/alkasir/pkg/service.ConnectionEvent.newState(0x4, 0xece709a9d, 0x6c91c65, 0x4bc8b60, 0xc8201a22d8, 0x5, 0xc820124060, 0x58, 0xc8201c02c0, 0x11, ...)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:64 +0x151
github.com/alkasir/alkasir/pkg/service.testConn(0xc820583f00, 0x0, 0x0)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:278 +0x39e
github.com/alkasir/alkasir/pkg/service.StartConnectionManager.func3(0xc820583f00)
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:222 +0x2d
created by github.com/alkasir/alkasir/pkg/service.StartConnectionManager
    /drone/src/github.com/alkasir/alkasir/pkg/service/connectionmanager.go:228 +0x1b10

goroutine 39394 [runnable]:
net.runtime_pollWait(0xb31b7b0, 0x72, 0xc8203e9000)
    /usr/local/go/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82019f4f0, 0x72, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82019f4f0, 0x0, 0x0)
    /usr/local/go/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82019f490, 0xc8203e9000, 0x1000, 0x1000, 0x0, 0x4cb3050, 0xc82000a160)
    /usr/local/go/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc8200269c0, 0xc8203e9000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/net.go:172 +0xe4
net/http.(*connReader).Read(0xc8203c3720, 0xc8203e9000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:526 +0x196
bufio.(*Reader).fill(0xc820408480)
    /usr/local/go/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).ReadSlice(0xc820408480, 0xa, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:328 +0x21a
bufio.(*Reader).ReadLine(0xc820408480, 0x0, 0x0, 0x0, 0x46dda00, 0x0, 0x0)
    /usr/local/go/src/bufio/bufio.go:357 +0x53
net/textproto.(*Reader).readLineSlice(0xc820487500, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:55 +0x81
net/textproto.(*Reader).ReadLine(0xc820487500, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/textproto/reader.go:36 +0x40
net/http.readRequest(0xc820408480, 0x0, 0xc820534460, 0x0, 0x0)
    /usr/local/go/src/net/http/request.go:721 +0xb6
net/http.(*conn).readRequest(0xc82058c100, 0x0, 0x0, 0x0)
    /usr/local/go/src/net/http/server.go:705 +0x359
net/http.(*conn).serve(0xc82058c100)
    /usr/local/go/src/net/http/server.go:1425 +0x947
created by net/http.(*Server).Serve
    /usr/local/go/src/net/http/server.go:2137 +0x44e

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.