diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index eca25df..8275029 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,18 +20,30 @@ jobs: # newer glibc shipped by ubuntu-latest. os: ubuntu-22.04 name: obscura-x86_64-linux + cross: false - target: aarch64-unknown-linux-gnu + # Native build on GitHub's ARM runner. os: ubuntu-22.04-arm name: obscura-aarch64-linux + cross: false + - target: aarch64-unknown-linux-gnu + # Cross-compile fallback from x86_64 Ubuntu 22.04. Same glibc + # 2.35 floor, useful when ARM runners are unavailable. + os: ubuntu-22.04 + name: obscura-aarch64-linux-cross + cross: true - target: aarch64-apple-darwin os: macos-latest name: obscura-aarch64-macos + cross: false - target: x86_64-apple-darwin os: macos-latest name: obscura-x86_64-macos + cross: false - target: x86_64-pc-windows-msvc os: windows-latest name: obscura-x86_64-windows + cross: false runs-on: ${{ matrix.os }} @@ -42,6 +54,17 @@ jobs: with: targets: ${{ matrix.target }} + - name: Install cross-compilation toolchain (aarch64-linux) + if: matrix.cross == true + run: | + sudo apt-get update + sudo apt-get install -y gcc-aarch64-linux-gnu + mkdir -p .cargo + cat >> .cargo/config.toml << 'CARGO_EOF' + [target.aarch64-unknown-linux-gnu] + linker = "aarch64-linux-gnu-gcc" + CARGO_EOF + - name: Build run: cargo build --release --target ${{ matrix.target }} diff --git a/crates/obscura-cdp/src/domains/target.rs b/crates/obscura-cdp/src/domains/target.rs index 3d38e25..120f676 100644 --- a/crates/obscura-cdp/src/domains/target.rs +++ b/crates/obscura-cdp/src/domains/target.rs @@ -16,6 +16,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": "", "url": "", "attached": true, + "canAccessOpener": false, "browserContextId": "", } }), @@ -30,6 +31,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": false, + "canAccessOpener": false, "browserContextId": page.context.id, } }), @@ -48,6 +50,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": true, + "canAccessOpener": false, "browserContextId": page.context.id, }) }) @@ -90,6 +93,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": false, + "canAccessOpener": false, "browserContextId": page.context.id, } }), @@ -107,6 +111,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": true, + "canAccessOpener": false, "browserContextId": page.context.id, }, "waitingForDebugger": false, @@ -133,6 +138,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": "", "url": "", "attached": true, + "canAccessOpener": false, "browserContextId": "", }, "waitingForDebugger": false, @@ -158,6 +164,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": true, + "canAccessOpener": false, "browserContextId": page.context.id, }, "waitingForDebugger": false, @@ -211,6 +218,7 @@ pub async fn handle(method: &str, params: &Value, ctx: &mut CdpContext) -> Resul "title": page.title, "url": page.url_string(), "attached": true, + "canAccessOpener": false, "browserContextId": page.context.id, } }))