this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

several golangci-lint fixes

+43 -25
+1 -2
cmd/relay/handlers.go
··· 36 36 if strings.HasPrefix(hostname, "localhost:") { 37 37 if !admin { 38 38 return c.JSON(http.StatusBadRequest, xrpc.XRPCError{ErrStr: "BadRequest", Message: "can not configure localhost via public endpoint"}) 39 - } else { 40 - // allowed 41 39 } 40 + // else, allowed 42 41 } else { 43 42 banned, err := s.relay.DomainIsBanned(ctx, hostname) 44 43 if err != nil {
+3 -1
cmd/relay/main.go
··· 223 223 dir := identity.NewCacheDirectory(&baseDir, cctx.Int("ident-cache-size"), time.Hour*24, time.Minute*2, time.Minute*5) 224 224 225 225 persistDir := cctx.String("persist-dir") 226 - os.MkdirAll(persistDir, os.ModePerm) 226 + if err := os.MkdirAll(persistDir, os.ModePerm); err != nil { 227 + return err 228 + } 227 229 persitConfig := diskpersist.DefaultDiskPersistOptions() 228 230 persitConfig.Retention = cctx.Duration("replay-window") 229 231 logger.Info("setting up disk persister", "dir", persistDir, "replayWindow", persitConfig.Retention)
+3 -1
cmd/relay/relay/broadcast.go
··· 65 65 return fmt.Errorf("upgrading websocket: %w", err) 66 66 } 67 67 68 - defer conn.Close() 68 + defer func() { 69 + _ = conn.Close() 70 + }() 69 71 70 72 lastWriteLk := sync.Mutex{} 71 73 lastWrite := time.Now()
+4
cmd/relay/relay/host.go
··· 120 120 } 121 121 122 122 u, err := url.Parse(raw) 123 + if err != nil { 124 + return "", false, fmt.Errorf("not a valid host URL: %w", err) 125 + } 123 126 noSSL = false 127 + 124 128 switch u.Scheme { 125 129 case "https", "wss": 126 130 // pass
+1 -1
cmd/relay/relay/host_checker.go
··· 66 66 if err != nil { 67 67 return "", err 68 68 } 69 - if info.Active == true { 69 + if info.Active { 70 70 return "active", nil 71 71 } else if info.Status != nil { 72 72 return *info.Status, nil
+1
cmd/relay/relay/host_checker_test.go
··· 44 44 assert.Error(hc.CheckHost(ctx, "https://dummy.example.com")) 45 45 46 46 ident, err := dir.LookupHandle(ctx, syntax.Handle("atproto.com")) 47 + assert.NoError(err) 47 48 48 49 s1, err := hc.FetchAccountStatus(ctx, ident) 49 50 assert.NoError(err)
+1 -1
cmd/relay/relay/ingest.go
··· 216 216 did := syntax.DID(acc.DID) 217 217 218 218 // Flush any cached DID/identity info for this user 219 - r.Dir.Purge(ctx, did.AtIdentifier()) 219 + err = r.Dir.Purge(ctx, did.AtIdentifier()) 220 220 if err != nil { 221 221 logger.Error("problem purging identity directory cache", "err", err) 222 222 }
+2 -2
cmd/relay/service.go
··· 117 117 svc.logger.Error("API handler error", "path", c.Path(), "err", err) 118 118 119 119 if strings.HasPrefix(c.Path(), "/admin/") { 120 - c.JSON(http.StatusInternalServerError, map[string]any{ 120 + _ = c.JSON(http.StatusInternalServerError, map[string]any{ 121 121 "error": err.Error(), 122 122 }) 123 123 return ··· 166 166 // Host-related Admin API 167 167 admin.GET("/pds/list", svc.handleListHosts) 168 168 admin.POST("/pds/requestCrawl", svc.handleAdminRequestCrawl) 169 - // TODO: admin.POST("/pds/changeLimits", svc.handleAdminChangeHostRateLimits) 169 + admin.POST("/pds/changeLimits", svc.handleAdminChangeHostRateLimits) 170 170 admin.POST("/pds/block", svc.handleBlockHost) 171 171 admin.POST("/pds/unblock", svc.handleUnblockHost) 172 172 // removed: admin.POST("/pds/addTrustedDomain", svc.handleAdminAddTrustedDomain)
+2 -2
cmd/relay/stream/consumer.go
··· 140 140 failcount++ 141 141 if failcount >= 4 { 142 142 logger.Error("too many ping fails", "count", failcount) 143 - con.Close() 143 + _ = con.Close() 144 144 return 145 145 } 146 146 } else { 147 147 failcount = 0 // ok ping 148 148 } 149 149 case <-ctx.Done(): 150 - con.Close() 150 + _ = con.Close() 151 151 return 152 152 } 153 153 }
+8 -5
cmd/relay/stream/persist/diskpersist/diskpersist.go
··· 115 115 return nil, fmt.Errorf("failed to create did cache: %w", err) 116 116 } 117 117 118 - db.AutoMigrate(&LogFileRef{}) 118 + if err := db.AutoMigrate(&LogFileRef{}); err != nil { 119 + return nil, fmt.Errorf("failed to set up database: %w", err) 120 + } 119 121 120 122 bufpool := &sync.Pool{ 121 123 New: func() any { ··· 925 927 if err != nil { 926 928 return fmt.Errorf("failed to open log file: %w", err) 927 929 } 928 - defer fi.Close() 929 - defer fi.Sync() 930 + defer func() { 931 + _ = fi.Close() 932 + _ = fi.Sync() 933 + }() 930 934 931 935 scratch := make([]byte, headerSize) 932 936 var offset int64 ··· 989 993 return err 990 994 } 991 995 992 - dp.logfi.Close() 993 - return nil 996 + return dp.logfi.Close() 994 997 } 995 998 996 999 func (dp *DiskPersistence) SetEventBroadcaster(f func(*stream.XRPCStreamEvent)) {
+2 -5
cmd/relay/testing/consumer.go
··· 96 96 97 97 go func() { 98 98 <-ctx.Done() 99 - conn.Close() 99 + _ = conn.Close() 100 100 }() 101 101 102 102 seqScheduler := sequential.NewScheduler("test", c.eventCallbacks().EventHandler) ··· 134 134 func (c *Consumer) ConsumeEvents(count int) ([]*stream.XRPCStreamEvent, error) { 135 135 // poll until we have enough events 136 136 start := time.Now() 137 - for { 138 - if c.Count() >= count { 139 - break 140 - } 137 + for c.Count() < count { 141 138 if time.Since(start) > c.Timeout { 142 139 return nil, fmt.Errorf("test stream consumer timeout: %s", c.Timeout) 143 140 }
+3 -1
cmd/relay/testing/framework_test.go
··· 39 39 Time: syntax.DatetimeNow().String(), 40 40 }, 41 41 } 42 - p.Emit(&e1) 42 + if err := p.Emit(&e1); err != nil { 43 + t.Fatal(err) 44 + } 43 45 44 46 evts, err := c.ConsumeEvents(1) 45 47 if err != nil {
+3 -1
cmd/relay/testing/producer.go
··· 108 108 port := listener.Addr().(*net.TCPAddr).Port 109 109 slog.Info("starting test producer", "port", port) 110 110 go func() { 111 - defer listener.Close() 111 + defer func() { 112 + _ = listener.Close() 113 + }() 112 114 err := http.Serve(listener, p.mux) 113 115 if err != nil { 114 116 slog.Warn("test producer shutting down", "err", err)
+9 -3
cmd/relay/testing/runner.go
··· 70 70 71 71 slog.Info("starting test relay", "port", port) 72 72 go func() { 73 - defer listener.Close() 73 + defer func() { 74 + _ = listener.Close() 75 + }() 74 76 err := http.Serve(listener, mux) 75 77 if err != nil { 76 78 slog.Warn("test relay shutting down", "err", err) ··· 120 122 if err != nil { 121 123 return err 122 124 } 123 - defer os.RemoveAll(tmpd) 125 + defer func() { 126 + _ = os.RemoveAll(tmpd) 127 + }() 124 128 125 129 p := NewProducer() 126 130 hostPort := p.ListenRandom() ··· 147 151 if err != nil { 148 152 return err 149 153 } 150 - p.Emit(evt) 154 + if err := p.Emit(evt); err != nil { 155 + return err 156 + } 151 157 if !msg.Drop { 152 158 evts, err := c.ConsumeEvents(1) 153 159 if err != nil {