- Add golang.org/x/time/rate dependency for token-bucket rate limiting - Replace custom channel-based rate limiter with rate.NewLimiter(1, 1) - Add context.Context support to doGet for cancellation - Add cached_at column to external_releases via migration 005 - Implement cache hit/miss queries with TTL-based filtering - Add CacheStats type for tracking cached RGIDs - Update ExternalRelease struct with CachedAt field - Add rate limiting tests (1 req/sec enforcement, burst behavior) - Add cache tests (hit, miss, expired, mixed, empty artist) - Update migration count test for new migration
12 lines
208 B
Modula-2
12 lines
208 B
Modula-2
module naviwatcher
|
|
|
|
go 1.25.1
|
|
|
|
require (
|
|
github.com/delucks/go-subsonic v0.0.0-20240806025900-2a743ec36238
|
|
github.com/mattn/go-sqlite3 v1.14.22
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
)
|
|
|
|
require golang.org/x/time v0.15.0
|