mirror of https://github.com/usememos/memos.git
Major performance and standards compliance improvements to RSS feed generation: Performance optimizations: - Fix N+1 query problem by batch loading attachments (101 queries → 2-3) - Add in-memory caching with 1-hour TTL and LRU eviction - Implement ETag-based conditional requests (304 Not Modified) - Add database-level pagination with LIMIT clause - Clean up expired cache entries to prevent memory leaks RSS 2.0 compliance: - Add item titles extracted from memo content - Include both description and content:encoded fields - Add author information (name and email) - Set proper Last-Modified headers - Use specific application/rss+xml content type Code quality: - Fix potential index out of bounds panic in title generation - Improve markdown heading stripping with regex (handles # to ######) - Add proper HTTP caching headers (Cache-Control, ETag, Last-Modified) - Thread-safe cache implementation with RWMutex - Better error handling and edge case coverage The RSS backend now follows industry best practices with optimal performance, full standards compliance, and production-ready reliability. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| router | ||
| runner | ||
| server.go | ||