Lasa is a stateless proxy that generates a RSS or an Atom feed from a Standard.site publication. lasa.anhgelus.world
rss atom atprotocol standard-site atproto
2
fork

Configure Feed

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

fix(sync): deadlock if error in request

+7 -4
+1 -1
cmd/lasad/run.go
··· 131 131 slog.Debug("request", "path", r.URL.Path) 132 132 defer func() { 133 133 if err := recover(); err != nil { 134 - slog.Error("panic!", "err", err) 135 134 w.WriteHeader(http.StatusInternalServerError) 135 + panic(err) 136 136 } 137 137 }() 138 138 h.ServeHTTP(w, r.WithContext(ctx))
+6 -3
sync.go
··· 48 48 lm.content[key] = l 49 49 lm.mu.Unlock() 50 50 51 + defer func() { 52 + lm.mu.Lock() 53 + delete(lm.content, key) 54 + lm.mu.Unlock() 55 + }() 56 + 51 57 v, err := fn() 52 58 if err != nil { 53 59 return v, err 54 60 } 55 61 l.Send(v) 56 - lm.mu.Lock() 57 - delete(lm.content, key) 58 - lm.mu.Unlock() 59 62 return v, nil 60 63 }