The headless browser for AI agents and web scraping
languages detected by GitHub · % code
every merged PR, grouped by type, newest first
Adds a `"printToPDF"` arm to the `match` in `crates/obscura-cdp/src/domains/page.rs` returning a message explaining the missing layout engine and pointing callers to `Runtime.evaluate`.
Extends the tag guard in `extract_readable_text` (crates/obscura-cli/src/main.rs) via `matches!` to skip nav/header/footer/aside alongside script/style, returning empty for those semantic boilerplate tags.
Peeks `Command::Fetch { quiet: true }` before `tracing_subscriber` init in `crates/obscura-cli/src/main.rs` and switches `EnvFilter` to `off` via the `select_log_filter` helper.
Adds `start_with_full_options`/`new_with_full_options`/`with_full_options` threading `Option<String>` UA into `BrowserContext::user_agent` and the inner `ObscuraHttpClient::user_agent` `RwLock` via non-blocking `try_write`; old signatures stay as shims.
Adds `Audits` to the no-op domain list in CDP dispatcher `crates/obscura-cdp/src/dispatch.rs` so Puppeteer's `FrameManager.initialize` no longer aborts on `Audits.enable`.
Adds a `Document.prototype.elementFromPoint`/`elementsFromPoint` stub in `crates/obscura-js/js/bootstrap.js` returning `body`/`documentElement` or `null` when out-of-viewport, guarded by `!Document.prototype.elementFromPoint`, with `ShadowRoot` delegation.
In `crates/obscura-js/js/bootstrap.js`, dispatches `Document.prototype.createEvent` to the correct constructor via lowercased type with `'Events'` aliases, and adds `initCustomEvent` (type, bubbles, cancelable, detail) to `CustomEvent.prototype`.
Adds `attachToBrowserTarget` handler in `crates/obscura-cdp/src/domains/target.rs`, registers `browser-session→browser` mapping and emits `Target.attachedToTarget` so Playwright's `connect_over_cdp` handshake resolves.
Adds a `getLayoutMetrics` arm to the `Page` dispatcher in `crates/obscura-cdp/src/domains/page.rs`, returning 1280x720 viewports and `contentSize` derived from `document.documentElement.scrollHeight` with a 720 fallback.