Release notes
0.3.7 (2026-04-13)
- Säkerhet: DNS rebinding-skydd — `_resolve_and_validate_host()` resolvar och validerar alla IP:n mot SSRF-blocklistan *innan* varje HTTP-anrop i OG-bild- och image-proxy-hämtning
- Säkerhet: rate limiting på `/entries/read`, `/entries/save` och `/entries/mute` (120 req / 60 s per användare, returnerar HTTP 429)
- UX: toast-notiser vid nätverksfel, serverfel (5xx) och rate limit (429) — fade-in/fade-out, svenska texter
- Tester: 28 nya pytest-tester i `tests/test_ssrf.py` för SSRF-skyddsfunktionerna
0.3.6 (2026-04-12)
- Säkerhet: SSRF-skydd för image proxy och OG-bild-hämtning — blockerar RFC 1918, länk-lokal (169.254.x.x), loopback och IPv6 ULA/link-local
- Säkerhet: OG-bild-hämtning begränsad till 5 MB och 5 s timeout
- Säkerhet: `security_widget_sections`-whitelist i admin för att förhindra obehörig åtkomst
- Säkerhet: `load_user` skyddad med try/except för robustare sessionshantering
- UX: focus trap i modaler — Tab-navigering stänns inne i öppna dialoger
- UX: `:focus-visible`-CSS för tydligare tangentbordsfokus
- Drift: service worker uppdaterad till v2 med förbättrad cache-strategi
0.3.5 (2026-03-02)
- Admin: ny knapp `Skanning cleanup` som rensar kända scanner-artefakter (Qualys/ZAP) i både konton och kontaktmeddelanden
- Admin: `Radera alla gömda` använder nu samma DB-lock-retry som övriga tunga delete-operationer
- Tester: utökad regression för `scan-cleanup` i admin
0.3.4 (2026-03-02)
- Admin: fix för `Radera testmeddelanden` så databaslås inte längre ger 500; operationen retry:as och visar tydligt felmeddelande vid upptagen DB
- Admin: bulk-radering av e-post/domän stödjer nu flera värden samtidigt (kommaseparerat eller mellanslag), t.ex. `qualys.com, example.com`
- Tester: ny regression för admin bulk cleanup av användare/kontaktmeddelanden
0.3.3 (2026-03-02)
- Adminpanel: omarbetad responsiv layout för mobil/surfplatta/desktop med förbättrad navigering och bättre section-hantering
- Adminpanel: ny topprad med snabbåtgärder (status.json, release notes, exportlänkar)
- Adminpanel: nya summary-kort för väntande konton, öppna backlogpunkter, olösta kontaktärenden och senaste refresh-tid
- Adminpanel: ny funktion för CSV-export (`users`, `contacts`, `backlog`, `views`) via `/admin/export.csv`
- Adminpanel: inbyggd snabbsökning som filtrerar sektioner i realtid
0.3.2 (2026-03-02)
- UI: story-modal i Trending visas nu ovanpå header/filterpanel och klipps inte
- UX: förbättrad viewport-hantering i modal (`dvh`/`vh`) så hela storyn blir nåbar via scroll
- Mobil: mjukare scroll i modal via `-webkit-overflow-scrolling: touch`
0.3.1 (2026-02-09)
- UI: stabilare fallback för källikoner (favicon först, Clearbit som fallback)
- Media: image-proxy hanterar HTML-escapade URL:er för färre 404:or
- Stabilitet: minskad risk för SQLite "database is locked" via WAL/busy-timeout
- Säkerhet: security headers även för statiska assets
- Drift: dokumenterad snabb ZAP-baseline fallback
0.3.0 (2026-02-08)
- UI: export och sekundära länkar samlade i menyer
- UX: filter-knapp visar aktivt antal filter
- UI: tydligare segmenterade toggles för Magasin/Kompakt och Story-läge
- UX: sticky kategoribar för snabb navigering
- UI: tydligare hierarki i trending-actions (primär/sekundär)
- UI: progressive bildbakgrunder för mjukare laddning
0.2.9 (2026-02-08)
- Prestanda: pagination/ladda fler för nyhetslistan (lägre DOM och snabbare render)
- UX: refresh-status visar "Uppdaterar…" tills första uppdatering finns
- UI: delning samlad i en meny per artikel (mindre visuell brus)
0.2.8 (2026-01-31)
- Prestanda: caching av feeds, parallell hämtning och extern refresh-worker (valbart)
- Arkiv & sök: 30-dagars historik, fulltextsökning och tidsfilter
- Export: CSV/JSON/RSS för vyer + SOC-CSV
- Profiler: sparar tidsfilter, visningsläge och dubblett-val
- Sparat: förbättrad tom-state och export av sparade artiklar
- Social delning på kort (X/LinkedIn/Facebook/Kopiera)
- SOC: CVE-highlight, snabbfilter (inkl. CVE) och risk-badge
- Admin: status.json, refresh-logg, per-källa statuspanel
- Säkerhet: CSP report-to + rotation, same-origin-skydd, sanitizing av innehåll
- Stabilitet: endpoint-aliaser + normaliserade url_for-länkar
- UX: fler snabbfilter, top stories-polish, release notes-sida
- Feed-fix: tolererar trailing junk i RSS (ScienceDaily)
- Tester: utökad pytest-täckning + UI-tester
0.2.7 (2026-01-29)
- SOC-vy: CVE-case cards med expanderbar tidslinje och källor
- Server-side enrichment för security (CVE/type/vendor/risk) + riskbadges
- Nya tidsfilter (1h/6h/24h/7d/custom) med persistering
- Avancerade SOC-filter: vendor, risknivå, typ
0.2.6 (2026-01-25)
- Bytte ut blockerad MyFitnessPal-feed mot Harvard Nutrition Source
0.2.5 (2026-01-25)
- Uppdaterade Hälsa & träning-källor med fungerande RSS-länkar
- Lade till nya källor: BBC Health, NYTimes Well, The Guardian Health, NPR Health
0.2.4 (2026-01-25)
- Fixade brutna RSS-länkar för Hälsa & träning-kategorin
0.2.3 (2026-01-25)
- Ny kategori Hälsa & träning med subkategorier och fler RSS-källor
- Filter för delkategorier i snabbchips och Drawer
0.2.2 (2026-01-25)
- Snabbfilter och dedupe i listflödet (visa dubbletter vid behov)
- Scroll-återgång och retry-knapp vid fel
- Story-vy visar bild och extra polish i metadata
- CSP report-only-stöd + extra säkerhetsheaders
0.2.1 (2026-01-25)
- Ny vyväljare för Magasin/Kompakt (sparar valet lokalt)
- Trending-kort med thumbnail, sammanfattning och källbadges
- Story-vy som modal eller egen sida (växlas i Drawer)
0.2.0 (2026-01-24)
- Ny tvånivå-header med filter-drawer och refresh-status
- Magasinlayout med hero + top stories och förbättrad trending
- Coverage-kluster med expanderbara källor
- Thumbnail-pipeline med OG-fallback + image proxy/cache
- Kontaktformulär uppgraderat och uppladdningar hårdare validerade
0.1.0 (2026-01-23)
- Added admin stats drilldown for unique IPs and new accounts
- Added admin announcements with one-to-one and broadcast messaging
- Added release notes page and version badge in the UI
- Security feeds panel is collapsed by default in admin