Skip to main content

WPR runtime core

Shared Worker process lifecycle, named-pipe IPC, IOCP, shared-memory leases and versioned runtime resolution. This internal dependency is used by the standalone HTTP client and the unchanged WPR browser product. It contains no Page API, browser workflow or DOM interaction implementation.

Current native runtime support: Windows x86-64, Firefox 155, wpr-http-v1.

Persistent browser profile and official Widevine installation

Browser sessions use disposable profiles by default. For a persistent, version-bound profile, pass RuntimeConfig(persistent_profile_dir=...) (or set WPR_PERSISTENT_PROFILE_DIR). The directory is held by an exclusive lock for one Worker at a time and is rejected if its WPR application ID, version or build ID does not match. It is not deleted when the Worker exits. The profile contains site data, so treat it as sensitive and give each account/Worker its own directory. profile_root remains only a parent for disposable profiles.

RuntimeConfig(enable_widevine=True, persistent_profile_dir=...) enables Widevine installation through the Worker's Firefox GMPInstallManager. The browser client waits for download, verification and registration at startup. Firefox selects the platform component from official update metadata, verifies the downloaded archive, and stores the component and its preferences in the WPR profile. No Firefox installation or source Profile is required. The old widevine_source_profile / WPR_WIDEVINE_SOURCE_PROFILE import option now raises a migration error instead of copying components. Network-only Workers reject this browser capability. This requires the new runtime.widevine_* RPCs, available in Runtime 155.0.8 and later.

This is a capability boundary, not a promise of playback. Verify separately: requestMediaKeySystemAccess("com.widevine.alpha", ...), GMP/RDD/Utility subprocess launch, license response, media element readyState, video frames, and advancing currentTime. The source fix in source/gecko-net-worker/fixes/cdm-profile-lifecycle now links Firefox's sandbox broker through an isolated archive; a local release build passed both an open Widevine test and the target Shahid playback test. This source change is included in Runtime 155.0.8. Do not ship a diagnostic build that uses linker duplicate-symbol overrides or disables GMP/RDD/Utility sandboxing.

Opt-in media-output path probe

RuntimeConfig(media_capture=True) or WPR_MEDIA_CAPTURE=1 enables the Firefox 155 WPR metadata probe. The per-Worker log is read incrementally via WorkerSession.media_capture_snapshot(), AsyncWorkerSession.media_capture_snapshot(), or the browser client's AsyncGeckoRuntime.media_capture_snapshot(). It reports successful decrypt_sample and decode_frame output counts by track, timestamps and sizes, without saving media data or license/key material. buffer_bytes for decoded frames is allocated shared-memory capacity, not payload length. The option is browser-Worker-only and off by default. It requires a runtime built with media-capture-output.patch; existing published packages have not been updated with this feature.

For a short, bounded file capture, set RuntimeConfig(media_output_dir=Path(...)) or WPR_MEDIA_OUTPUT_DIR. The Worker writes per-session/per-CDM video.i420, audio.aac and JSONL timing sidecars. The default limit remains five seconds and 256 MiB of raw video; no output path is used by default. For an explicitly longer capture, configure media_output_max_seconds and media_output_max_bytes (or WPR_MEDIA_OUTPUT_MAX_SECONDS and WPR_MEDIA_OUTPUT_MAX_BYTES). The output is still raw I420, so callers must preflight free disk space and verify the final timeline before declaring a recording complete. The browser client's package_media_capture helper accepts max_seconds=None, expected_duration_seconds=..., and low_copy=True to encode the complete continuous capture directly from the source files without duplicating the raw video. Playback and site permissions remain the caller's responsibility.

Metadata

Release files for wpr-runtime-core 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wpr-runtime-core 0.2.2
File Size Uploaded
wpr_runtime_core-0.2.2.tar.gz 31.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wpr-runtime-core 0.2.2
File Interpreter ABI Platform
wpr_runtime_core-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 62.2 kB

Release files / wpr_runtime_core-0.2.2.tar.gz

Download URL wpr_runtime_core-0.2.2.tar.gz
Size 31.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4083ab30842a11b1a51dfabeafe115bdbef4f4a4535c2b45493a0f0559734606
BLAKE2b-256 checksum
How to use checksums
3ec857556c8202f3a2e3a805ebee5d3827a306eb21943dfd8aa0d0c4b0b996b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / wpr_runtime_core-0.2.2-py3-none-any.whl

Download URL wpr_runtime_core-0.2.2-py3-none-any.whl
Size 30.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
37163e9afe3e62b860e1d3e252611c35d72d3c902f43e56ec11741981b2012f7
BLAKE2b-256 checksum
How to use checksums
2dd274b5c24b37b02e0685f56d9630158e3c1d226a5d0d3b26c2b216480ef4b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page