mirror of
https://github.com/J3vb/OwnCord.git
synced 2026-09-03 03:50:00 +03:00
FetchTextAssetCached served the unauthenticated, unrate-limited client-update endpoint. On TTL expiry every concurrent caller missed the cache and issued its own outbound fetch: a measured 25 requests for 25 callers. Failures were not cached at all, so an upstream outage produced one outbound request per caller for as long as it lasted. Guards the refresh with singleflight so a burst issues one fetch, caches failures for errorCacheTTL (mirroring the release cache's existing cachedErr idiom), and evicts expired keys so the map no longer grows by one entry per release for the process lifetime. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
149 lines
6.7 KiB
AMPL
149 lines
6.7 KiB
AMPL
module github.com/owncord/server
|
|
|
|
go 1.25.0
|
|
|
|
require (
|
|
aead.dev/minisign v0.3.0
|
|
github.com/BurntSushi/toml v1.6.0
|
|
github.com/coder/websocket v1.8.15
|
|
github.com/corazawaf/coraza/v3 v3.6.0
|
|
github.com/go-chi/chi/v5 v5.2.5
|
|
github.com/google/uuid v1.6.0
|
|
github.com/knadh/koanf/parsers/yaml v1.1.0
|
|
github.com/knadh/koanf/providers/env v1.1.0
|
|
github.com/knadh/koanf/providers/file v1.2.1
|
|
github.com/knadh/koanf/providers/structs v1.0.0
|
|
github.com/knadh/koanf/v2 v2.3.3
|
|
github.com/livekit/protocol v1.45.1
|
|
github.com/livekit/server-sdk-go/v2 v2.16.0
|
|
github.com/microcosm-cc/bluemonday v1.0.27
|
|
github.com/prometheus/client_golang v1.23.2
|
|
github.com/sasha-s/go-deadlock v0.3.9
|
|
github.com/tetratelabs/wazero v1.11.0
|
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.67.0
|
|
go.opentelemetry.io/otel v1.43.0
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.43.0
|
|
go.opentelemetry.io/otel/exporters/prometheus v0.65.0
|
|
go.opentelemetry.io/otel/metric v1.43.0
|
|
go.opentelemetry.io/otel/sdk v1.43.0
|
|
go.opentelemetry.io/otel/sdk/metric v1.43.0
|
|
go.opentelemetry.io/otel/trace v1.43.0
|
|
go.uber.org/goleak v1.3.0
|
|
go.yaml.in/yaml/v3 v3.0.4
|
|
golang.org/x/crypto v0.51.0
|
|
golang.org/x/mod v0.35.0
|
|
golang.org/x/sync v0.20.0
|
|
modernc.org/sqlite v1.48.0
|
|
)
|
|
|
|
require (
|
|
buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.11-20260209202127-80ab13bee0bf.1 // indirect
|
|
buf.build/go/protovalidate v1.1.2 // indirect
|
|
buf.build/go/protoyaml v0.6.0 // indirect
|
|
cel.dev/expr v0.25.1 // indirect
|
|
github.com/antlr4-go/antlr/v4 v4.13.1 // indirect
|
|
github.com/aymerick/douceur v0.2.0 // indirect
|
|
github.com/benbjohnson/clock v1.3.5 // indirect
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
|
github.com/bep/debounce v1.2.1 // indirect
|
|
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
|
github.com/corazawaf/libinjection-go v0.3.2 // indirect
|
|
github.com/dennwc/iters v1.2.2 // indirect
|
|
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
|
github.com/dustin/go-humanize v1.0.1 // indirect
|
|
github.com/fatih/structs v1.1.0 // indirect
|
|
github.com/felixge/httpsnoop v1.0.4 // indirect
|
|
github.com/frostbyte73/core v0.1.1 // indirect
|
|
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
|
github.com/gammazero/deque v1.2.1 // indirect
|
|
github.com/go-jose/go-jose/v3 v3.0.5 // indirect
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
|
github.com/goccy/go-json v0.10.5 // indirect
|
|
github.com/goccy/go-yaml v1.18.0 // indirect
|
|
github.com/google/cel-go v0.27.0 // indirect
|
|
github.com/gorilla/css v1.0.1 // indirect
|
|
github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect
|
|
github.com/gotnospirit/makeplural v0.0.0-20180622080156-a5f48d94d976 // indirect
|
|
github.com/gotnospirit/messageformat v0.0.0-20221001023931-dfe49f1eb092 // indirect
|
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.28.0 // indirect
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
|
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
|
|
github.com/jxskiss/base62 v1.1.0 // indirect
|
|
github.com/kaptinlin/go-i18n v0.1.4 // indirect
|
|
github.com/kaptinlin/jsonschema v0.4.6 // indirect
|
|
github.com/klauspost/compress v1.18.4 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
|
|
github.com/knadh/koanf/maps v0.1.2 // indirect
|
|
github.com/lithammer/shortuuid/v4 v4.2.0 // indirect
|
|
github.com/livekit/mageutil v0.0.0-20250511045019-0f1ff63f7731 // indirect
|
|
github.com/livekit/mediatransportutil v0.0.0-20251128105421-19c7a7b81c22 // indirect
|
|
github.com/livekit/psrpc v0.7.1 // indirect
|
|
github.com/magefile/mage v1.15.1-0.20250615140142-78acbaf2e3ae // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
|
github.com/moby/sys/user v0.4.0 // indirect
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
github.com/nats-io/nats.go v1.48.0 // indirect
|
|
github.com/nats-io/nkeys v0.4.15 // indirect
|
|
github.com/nats-io/nuid v1.0.1 // indirect
|
|
github.com/ncruces/go-strftime v1.0.0 // indirect
|
|
github.com/petar-dambovaliev/aho-corasick v0.0.0-20250424160509-463d218d4745 // indirect
|
|
github.com/petermattis/goid v0.0.0-20250813065127-a731cc31b4fe // indirect
|
|
github.com/pion/datachannel v1.6.0 // indirect
|
|
github.com/pion/dtls/v3 v3.1.2 // indirect
|
|
github.com/pion/ice/v4 v4.2.1 // indirect
|
|
github.com/pion/interceptor v0.1.44 // indirect
|
|
github.com/pion/logging v0.2.4 // indirect
|
|
github.com/pion/mdns/v2 v2.1.0 // indirect
|
|
github.com/pion/randutil v0.1.0 // indirect
|
|
github.com/pion/rtcp v1.2.16 // indirect
|
|
github.com/pion/rtp v1.10.1 // indirect
|
|
github.com/pion/sctp v1.9.2 // indirect
|
|
github.com/pion/sdp/v3 v3.0.18 // indirect
|
|
github.com/pion/srtp/v3 v3.0.10 // indirect
|
|
github.com/pion/stun/v3 v3.1.1 // indirect
|
|
github.com/pion/transport/v4 v4.0.1 // indirect
|
|
github.com/pion/turn/v4 v4.1.4 // indirect
|
|
github.com/pion/webrtc/v4 v4.2.9 // indirect
|
|
github.com/prometheus/client_model v0.6.2 // indirect
|
|
github.com/prometheus/common v0.67.5 // indirect
|
|
github.com/prometheus/otlptranslator v1.0.0 // indirect
|
|
github.com/prometheus/procfs v0.20.1 // indirect
|
|
github.com/puzpuzpuz/xsync/v3 v3.5.1 // indirect
|
|
github.com/redis/go-redis/v9 v9.17.2 // indirect
|
|
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
|
|
github.com/tidwall/gjson v1.18.0 // indirect
|
|
github.com/tidwall/match v1.1.1 // indirect
|
|
github.com/tidwall/pretty v1.2.1 // indirect
|
|
github.com/twitchtv/twirp v8.1.3+incompatible // indirect
|
|
github.com/valllabh/ocsf-schema-golang v1.0.3 // indirect
|
|
github.com/wlynxg/anet v0.0.5 // indirect
|
|
github.com/zeebo/xxh3 v1.1.0 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 // indirect
|
|
go.opentelemetry.io/proto/otlp v1.10.0 // indirect
|
|
go.uber.org/atomic v1.11.0 // indirect
|
|
go.uber.org/multierr v1.11.0 // indirect
|
|
go.uber.org/zap v1.27.1 // indirect
|
|
go.uber.org/zap/exp v0.3.0 // indirect
|
|
go.yaml.in/yaml/v2 v2.4.4 // indirect
|
|
golang.org/x/exp v0.0.0-20260212183809-81e46e3db34a // indirect
|
|
golang.org/x/net v0.55.0 // indirect
|
|
golang.org/x/sys v0.45.0 // indirect
|
|
golang.org/x/text v0.37.0 // indirect
|
|
golang.org/x/time v0.14.0 // indirect
|
|
google.golang.org/genproto/googleapis/api v0.0.0-20260401024825-9d38bb4040a9 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20260401024825-9d38bb4040a9 // indirect
|
|
google.golang.org/grpc v1.80.0 // indirect
|
|
google.golang.org/protobuf v1.36.11 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
modernc.org/libc v1.70.0 // indirect
|
|
modernc.org/mathutil v1.7.1 // indirect
|
|
modernc.org/memory v1.11.0 // indirect
|
|
rsc.io/binaryregexp v0.2.0 // indirect
|
|
)
|