app
Chip Fetcher (cf)
Public Made by Adomby adom
Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool. Say "cf" to your AI.
← Commit history
1.3.14: Cache-Control no-store on the dashboard HTML (WebView2 heuristic caching kept dock tabs on stale UI through refreshes)
3 files changed
+7−3
Cargo.lock+1−1@@ -4,7 +4,7 @@ version = 4 [[package]] name = "adom-chip-fetcher"-version = "1.3.13"+version = "1.3.14" dependencies = [ "anyhow", "clap",
Cargo.toml+1−1@@ -1,6 +1,6 @@ [package] name = "adom-chip-fetcher"-version = "1.3.13"+version = "1.3.14" edition = "2021" description = "Crawls the web on your behalf to gather everything about the chips you care about (datasheet, symbol, footprint, 3D, stock) into one library, by driving Chrome via pup."
src/serve.rs+5−1@@ -1134,7 +1134,11 @@ fn error_response(code: u16, body: String) -> Response<std::io::Cursor<Vec<u8>>> fn html_response(body: &str) -> Response<std::io::Cursor<Vec<u8>>> { let h = Header::from_bytes(&b"Content-Type"[..], &b"text/html; charset=utf-8"[..]).unwrap();- Response::from_string(body.to_string()).with_header(h)+ // no-store: WebView2 and Chrome heuristically cache pages with no+ // Cache-Control, so a dock tab kept serving a WEEK-old UI through real+ // refreshes. The HTML must always be the running binary's HTML.+ let cc = Header::from_bytes(&b"Cache-Control"[..], &b"no-store"[..]).unwrap();+ Response::from_string(body.to_string()).with_header(h).with_header(cc) } fn json_response(body: String) -> Response<std::io::Cursor<Vec<u8>>> {