Commit Graph

27 Commits

Author SHA1 Message Date
SGavrl
3aba28e3d1 ci: recover incomplete V8 native-library caches 2026-10-12 22:56:17 +00:00
SGavrl
8912562762 fix(ci): require all obstacle stages before release 2026-10-04 01:00:30 +00:00
SGavrl
43399c2576 ci: populate trusted dependency caches for PR checks 2026-10-01 13:35:55 +00:00
SGavrl
d6c9ef537c fix(release): shrink binaries and expose plugin interfaces 2026-09-12 21:04:47 +00:00
SGavrl
8acd973d62 ci: keep candidate artifact stable across reruns 2026-08-14 12:27:11 +00:00
SGavrl
ea84c60ed9 ci: compare obstacle failures against base 2026-08-14 11:51:44 +00:00
SGavrl
0caa646f04 ci: run checks only for pull requests 2026-08-14 10:53:36 +00:00
SGavrl
afa95ab6e1 ci: scope pull request checks 2026-08-14 10:38:21 +00:00
SGavrl
24306be4f3 ci: harden pull request validation 2026-08-14 00:00:39 +00:00
SGavrl
cd661982df fix(build): preserve non-render compatibility 2026-08-07 20:15:28 +00:00
SGavrl
af93379ba0 build: publish no-render release variants 2026-08-07 19:35:59 +00:00
SGavrl
084789a2d7 feat(render): ship capture surfaces
Enable rendering in release archives and Docker builds. Expose bounded PNG screenshots and raster PDF resources through render-enabled MCP servers.
2026-08-07 18:33:38 +00:00
SGavrl
0670e738a0 ci(release): use active macOS SDK for stealth builds 2026-07-26 11:47:15 +00:00
SGavrl
78a3e997e7 ci(release): publish explicit stealth artifacts 2026-07-26 11:05:13 +00:00
SGavrl
c3c0a6a814 release: build x86_64-macos on a native Intel runner
The x86_64-apple-darwin release crashed at V8 isolate init with SIGSEGV in
ReadOnly snapshot deserialization (issue #290). obscura-js bakes a V8 startup
snapshot at build time via a build script, which runs on the host arch. The
job built x86_64 on macos-latest (Apple Silicon), so an arm64 snapshot got
embedded into the Intel binary and V8 crashed deserializing it. Build on
macos-15-intel so the snapshot matches the target.

Drop the aarch64-linux-cross artifact: it has the same defect (x86_64-host
snapshot in an arm64 binary) and the native ARM runner already covers it.

Add a post-build smoke test that runs the V8 path on a data: URL so a release
can never ship a binary that crashes at isolate init again.
2026-06-12 20:56:37 +00:00
Paul Eipper
9e63557f63 ci: build and push multi-arch images (amd64 + arm64) (#223)
Add QEMU setup and multi-platform build to the Docker workflow so
the image is published with both linux/amd64 and linux/arm64
support, enabling native execution on Apple Silicon and other
ARM64 hosts.
2026-06-02 21:50:26 +02:00
Paul Eipper
048d72dc18 ci: derive release binary version from tag (#224)
Set the CLI build version from OBSCURA_VERSION, GitHub tag refs, or Cargo.toml fallback. Use that same build version for both --version and the startup banner, and pass the Docker tag version into Docker builds.
2026-06-02 21:50:05 +02:00
SGavrl
e0af9fc44f fix(cdp): emit canAccessOpener in all TargetInfo payloads, add aarch64 cross-compile CI
Merges PR #165 and PR #172.

PR #165: The CDP spec marks canAccessOpener as a required boolean on
TargetInfo but Obscura was omitting it. Strict Rust clients like
chromiumoxide reject the event entirely and panic with "Created target
not present" when the field is absent. Added canAccessOpener: false
to every TargetInfo emitted by setDiscoverTargets, getTargets,
createTarget, attachToBrowserTarget, attachToTarget, and getTargetInfo.

PR #172: Added a cross-compile matrix entry for aarch64-unknown-linux-gnu
running on ubuntu-22.04 x86_64, producing obscura-aarch64-linux-cross.
This is a fallback for when GitHub ARM runners are unavailable without
removing the native ARM build.
2026-05-24 15:22:30 +00:00
SGavrl
b2b41529c4 ci: add aarch64-linux release binary (#127)
Uses GitHub's native ubuntu-22.04-arm runner so it's a native build
matching the same glibc 2.35 floor as the x86_64 target. README gets
the matching install snippet.
2026-05-15 21:10:29 +00:00
SGavrl
56260822b9 ci: auto-build and push Docker image on release tag
Adds a workflow that triggers on v* tag pushes and:
- Logs into Docker Hub using DOCKERHUB_USERNAME + DOCKERHUB_TOKEN secrets
- Builds the image from the existing Dockerfile
- Tags it with both the version (e.g. 0.1.4) and 'latest'
- Pushes both tags

GitHub Actions cache is used for layers to speed up subsequent builds.
2026-05-13 22:22:31 +00:00
h4ckf0r0day
7be84b0fb7 ci: cross-compile x86_64-apple-darwin from macos-latest 2026-05-13 23:02:59 +02:00
F0Rextasy
34205e50d1 Build Linux release on Ubuntu 22.04 (#87)
The current ubuntu-latest Linux release can require a newer glibc than common LTS servers provide. Pinning the x86_64 Linux release job to Ubuntu 22.04 keeps the prebuilt binary compatible with glibc 2.35+ environments while leaving macOS and Windows release jobs unchanged.

Also document the Linux LTS compatibility target in the install section so users understand why the release runner is pinned.
2026-05-03 17:14:54 +02:00
F0Rextasy
9e1f1aa044 Package scrape worker in releases (#94) 2026-05-03 17:13:54 +02:00
Abdul Qabiz
6b80f3d28d Add macOS target for x86_64 architecture 2026-04-25 16:55:04 +05:30
h4ckf0r0day
bd42160477 Update release.yml 2026-04-13 12:46:30 +02:00
h4ckf0r0day
575a2b4c55 Update release.yml 2026-04-13 12:41:50 +02:00
h4ckf0r0day
8749725b45 Initial Release 2026-04-13 12:30:28 +02:00