aboutsummaryrefslogtreecommitdiffstats
path: root/models
Commit message (Collapse)AuthorAgeFilesLines
* Exclude full_content from stream list API responsesClaude9 days1-14/+29
| | | | | | | | | | | The /stream endpoint now skips selecting full_content and header_image from the database, reducing memory allocation and response payload size for list views. Full content remains available via /item/:id endpoint. Adds omitempty to JSON tags so empty fields are omitted from responses, and a test verifying full_content is excluded from stream responses. https://claude.ai/code/session_019Z4VJxzY7tcAuNkPAkvry9
* Add performance benchmarks, stress tests, and frontend perf testsClaude9 days1-0/+219
| | | | | | | | | | | | Go benchmarks cover item CRUD/filter/sanitization, API endpoints (stream, item update, feed list), middleware stack (gzip, security headers, CSRF), and crawler pipeline (feed parsing, mocked crawl). Stress tests verify concurrent reads/writes and large dataset handling. Frontend perf tests measure template generation, DOM insertion, and store event throughput. New Makefile targets: bench, bench-short, stress, test-perf. https://claude.ai/code/session_01ChDVWFDrQoFjMYHpaLGr9s
* Backend: Support multi-feed filtering in stream APIAdam Mathes10 days2-20/+24
|
* Backend: Fix linting issues, improve error handling, and replace magic numbersAdam Mathes10 days2-5/+5
|
* Implement --purge and --purge-unread flags to delete old itemsAdam Mathes10 days2-6/+100
|
* Commit ticket updates and remaining backend lint fixesAdam Mathes10 days2-4/+6
|
* Create 'make check' unified workflow and fix various lint issuesAdam Mathes10 days2-9/+15
|
* security: add HTTP security headers (fixing NK-7xuajb)Adam Mathes11 days1-0/+5
|
* security: mitigate SSRF in image proxy and feed fetcher (fixing NK-0ca7nq)Adam Mathes11 days1-6/+2
|
* Refactor: project structure, implement dependency injection, and align v2 UI ↵Adam Mathes11 days2-4/+5
| | | | with v1
* chore: cleanup ignored filesAdam Mathes12 days2-65/+0
|
* refactor(backend): improve testability and add tests (NK-6q9nyg)Adam Mathes12 days3-0/+137
|
* fix(scraper): correctly save full content and header imageAdam Mathes12 days1-17/+37
|
* fix(crawler): prevent panic on missing Content-Type and use custom UA ↵Adam Mathes12 days1-10/+26
| | | | (NK-uywybr)
* wip: tui updates (buggy)Adam Mathes13 days5-11/+113
|
* Add comprehensive test suite — 81% cross-package coverageAdam Mathes13 days4-5/+994
| | | | | | | | | | | | | | | | | | | | | | Bug fixes: - config: remove unused log import - item: fix Printf format %d->%t for boolean ReadState - util: update stale config.Read -> config.Init, remove config.Config.DBServer Test files added: - config/config_test.go: Init, readConfig, addDefaults (100%) - vlog/vlog_test.go: Printf, Println verbose/silent (100%) - models/db_test.go: InitDB tests - models/feed/feed_test.go: CRUD, filter, Categories, NewFeed, ResolveFeedURL (87%) - models/item/item_test.go: CRUD, Filter with category/search/starred, rewriteImages (71%) - exporter/exporter_test.go: all export formats (91%) - importer/importer_test.go: InsertIItem, ImportJSON (90%) - crawler/crawler_test.go: GetFeedContent, CrawlFeed, CrawlWorker, Crawl (89%) - web/web_test.go: auth, login/logout, stream, item, feed, category, export, crawl, imageProxy handlers (77%) Remaining 0% functions require HTTP/rice.MustFindBox/main entry and can't be unit tested without refactoring (see tickets NK-gqkh96, NK-6q9nyg).
* upgrade to blackfriday v2 dependencyAdam Mathes2019-06-091-1/+1
|
* fix mem leak (maybe) in feed crawler, re-enable bg crawlAdam Mathes2018-12-161-1/+1
|
* wip, simplificationsAdam Mathes2018-07-041-2/+53
|
* add back in search support, requires sqliteAdam Mathes2018-06-161-4/+13
|
* sqlite3 supportAdam Mathes2018-06-121-11/+14
|
* set limit to number of simultaneous crawl jobsAdam Mathes2018-04-301-1/+1
|
* debug cleanupAdam Mathes2018-04-291-8/+9
|
* change to feed,itemAdam Mathes2018-04-281-1/+1
|
* mariadb huhAdam Mathes2018-04-281-1/+1
|
* switch to less dumb item filter query i guessAdam Mathes2018-04-281-3/+3
|
* separator for scrapeAdam Mathes2018-04-271-6/+18
|
* img proxy as config optionAdam Mathes2018-04-271-1/+5
|
* wip img proxyAdam Mathes2018-04-241-0/+24
|
* remove commentsAdam Mathes2018-04-221-9/+0
|
* switch to straight / inner joins for speed, maybeAdam Mathes2018-04-221-2/+12
|
* fix some performance issues because mysql is weird?Adam Mathes2018-04-221-2/+3
|
* wip category stuffAdam Mathes2018-04-221-1/+0
|
* wip single category on feedAdam Mathes2018-04-222-19/+57
|
* opml exportAdam Mathes2018-04-071-8/+13
|
* add pre,code tags. css tweaksAdam Mathes2018-02-101-1/+1
|
* factor out filter policyAdam Mathes2018-01-291-8/+11
|
* deal with relative urls in feed resolution, sortaAdam Mathes2018-01-291-0/+5
|
* cleanHeaderImage stubAdam Mathes2017-12-021-0/+7
|
* sanitize header, vlog instead of log some bits in item.goAdam Mathes2017-11-241-2/+5
|
* add basic feed discovery for new feedsAdam Mathes2017-11-231-0/+56
|
* sort feeds by lc(title)Adam Mathes2017-11-221-1/+1
|
* add full view toggle kb shortcutAdam Mathes2017-11-211-4/+21
|
* enable full_text and header_imageAdam Mathes2017-11-191-14/+41
|
* gofmtAdam Mathes2017-10-211-1/+1
|
* order all feeds by urlAdam Mathes2017-10-211-1/+1
|
* silent by default, verbose option added. -feeds cmd line option addedAdam Mathes2017-02-251-1/+8
|
* change to personal namespaceAdam Mathes2017-02-072-2/+2
|
* fix includesAdam Mathes2017-02-022-3/+2
|
* slightly better handling of datesAdam Mathes2017-02-021-5/+8
|