Releases: ivbeg/newsworker
Releases · ivbeg/newsworker
Release list
v1.3.0
Extraction quality, spec analysis, and language detection improvements.
Highlights
- New
docs/SPEC.md— YAML parsing spec format andanalyzepipeline reference - HTML
<time datetime="...">support via thehtml:timepattern - Text-based feed language detection from item titles (Cyrillic, Ukrainian, French, …)
- Smarter spec analyzer: rejects form/select UI clusters and WordPress taxonomy classes
analyzeCLI now accepts the same fetch flags asextract- UTF-8/Cyrillic pages decode correctly with
<meta charset> - 175+ offline tests
See CHANGELOG.md for full details.
v1.2.0
Platform release closing the audit roadmap.
Highlights
- New output formats: JSON Feed 1.1, HTML, Markdown, YAML
- CLI:
--limit, date filters, fetch options,cache,batch,watch - Security: TLS verification and robots.txt on by default
- Feed enrichment: author, categories, optional full-text
- Plugins/bridges, async batch transport, Docker support
- 145+ tests, GitHub Actions CI, PEP 621 packaging
See CHANGELOG.md for full details.
Release v1.1.0
News feed server, reusable parsing specs, caching, and multiple output formats.
Added
serve— local HTTP feed server (standard-library only) that turns any page URL into a feed on demand over GET (GET /feed?url=<page>&format=atom), plus/healthand/endpoints. Feed URLs can be pasted straight into any RSS reader.analyze— runs the dynamic heuristics once and distills them into a reusable YAML parsing spec; new--spec/-soption forextractruns fast, deterministic extraction from a pre-built spec.- Reusable parsing specs via
newsworker.spec(FeedSpec,SpecAnalyzer,SpecExtractor) using deterministic CSS/XPath selectors. - Caching layer (
newsworker.cache) with a spec cache and a content cache (configurable TTL). New--no-cache,--refresh,--config/-coptions forextract, and--cache-dir/--content-ttlforserve. - Settings support (
newsworker.settings) backed by a YAML config file at~/.newsworker/config.yaml. - High-level
newsworker.service.FeedServiceshared byextractand the server. - Multiple output formats:
extractsupportsjson/rss/atom/csv;scansupportsjson/rss/atom/csv/opml. New--format/-fand--output/-ooptions, plus a newnewsworker.formatsmodule.
Changed
- Rewrote
README.mdwith a modern structure and full CLI/caching documentation. extractnow builds and caches a parsing spec (plus page content) on first use for faster subsequent runs.scannow emits structured, format-aware output.- Added
cssselect,pyyaml,requests,urllib3dependencies (and declaredfeedparserexplicitly).
Fixed
- Naive datetimes are normalized to UTC when rendering RSS/Atom feeds.
Full changelog: https://github.com/ivbeg/newsworker/blob/master/CHANGELOG.md