Repository navigation
Changes
Chrome recovery, steadier Google results, structure-preserving extraction, and a container that reaps its own processes.
Highlights
- Browser recovery: if Chrome dies (killed, crashed, or replaced by a package upgrade), the next request relaunches it instead of failing until restart (#70). Concurrent failures share one reconnect, canceled requests stop waiting, and the temp profile is removed before exit.
- Google: waits for result titles, not just their wrappers, which fixes false timeouts on slow pages. A no-results card is confirmed by page text, so a notice above results no longer returns an empty list.
- Extraction:
preserve_structure=trueon/extractand/extract/batchconverts the page's content container as-is instead of running article detection. Headings, code blocks and API signatures stay with their descriptions on<main>pages, DocBook, Texinfo, Apache httpd docs and man pages. Falls back to article detection when the page has no such structure; ignored withclean=false(#76). - Docker: the image runs under
tini, so orphaned Chrome processes are reaped even withoutdocker run --init.--initand composeinit: truekeep working. - Startup:
serveexits non-zero on invalid proxy config, all engines disabled, or a listen error. Proxies are validated before Chrome starts. - API schema:
meta.partialandmeta.total_resultsare documented as optional fields.
Upgrade notes
- Process supervisors and scripts now see a non-zero exit code for startup errors that used to log and exit 0.
--initindocker runis no longer required.- Google no longer logs the "Found N total results" line.
Thanks to @krustfurt for #70 and @ramgalin for #76.
Full Changelog: v0.8.17...v0.8.19