From f04c23da285b3b3d3cf10c8f9d282e7adc1d52ce Mon Sep 17 00:00:00 2001 From: CloakHQ Date: Sun, 30 Aug 2026 05:53:19 +0200 Subject: [PATCH] =?UTF-8?q?release:=20v0.5.10=20=E2=80=94=20Windows=20cons?= =?UTF-8?q?ole=20banner=20+=20geoip/license=20launch-abort=20fixes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 4 +++- README.md | 6 +++--- cloakbrowser/_version.py | 2 +- dotnet/src/CloakBrowser/CloakBrowser.csproj | 2 +- dotnet/src/CloakBrowser/CloakVersion.cs | 2 +- js/package-lock.json | 4 ++-- js/package.json | 2 +- 7 files changed, 12 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b1aa1ee..71a8074 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,8 +6,10 @@ Changes are tagged: **[wrapper]** for Python/JS wrapper, **[binary]** for Chromi --- -## [Unreleased] +## [0.5.10] — 2026-08-30 +- **[wrapper]** The first-launch welcome banner no longer aborts a launch on a legacy Windows console. On a non-UTF-8 (cp1252) console its arrow and dash characters raised `UnicodeEncodeError` on the binary-download path, which blocked license apply and profile launch (notably in CloakBrowser Manager). The banner is now ASCII and every write is guarded, so a cosmetic message can never stop a launch. Python, JavaScript, and .NET. +- **[wrapper]** A requested GeoIP resolution that fails now aborts the launch instead of silently continuing on the container clock. Failure means the lookup times out, the database cannot be loaded, the lookup cannot complete, or timezone or locale stay unresolved; the default resolution timeout is raised from 5 to 20 seconds. Explicit timezone and locale overrides remain valid without an egress-IP result. Python, JavaScript, and .NET. - **[wrapper]** A license key the server rejects (invalid or expired), or one that cannot be validated at all (license server unreachable with no cached result), now raises a clear error instead of silently downloading the older free binary. Passing no key still uses the free binary as before. Python, JavaScript, and .NET. --- diff --git a/README.md b/README.md index 8ed68b8..b53aead 100644 --- a/README.md +++ b/README.md @@ -150,10 +150,10 @@ page.goto("https://example.com") --- -## Latest: v0.5.9 — 73 source-level stealth patches (Chromium 151.0.7922.108.2 — Linux + Windows) +## Latest: v0.5.10 — 73 source-level stealth patches (Chromium 151.0.7922.108.3) -- **CloakBrowser Pro Stable** — Chromium `151.0.7922.108.2` on Linux x64, Linux ARM64, and Windows x64; macOS remains on `150.0.7871.114.3`. Set a `license_key` (`licenseKey` in JS) or the `CLOAKBROWSER_LICENSE_KEY` env var and the wrapper fetches the latest Stable build for your platform automatically. See [CloakBrowser Pro](#cloakbrowser-pro) -- **CloakBrowser Pro Preview** — Chromium `151.0.7922.108.3` on Linux x64, Linux ARM64, Windows x64, and macOS. Opt in with `release_channel="preview"` or `CLOAKBROWSER_RELEASE_CHANNEL=preview`. +- **CloakBrowser Pro Stable** — Chromium `151.0.7922.108.3` on Linux x64, Linux ARM64, Windows x64, and macOS. Set a `license_key` (`licenseKey` in JS) or the `CLOAKBROWSER_LICENSE_KEY` env var and the wrapper fetches the latest Stable build for your platform automatically. See [CloakBrowser Pro](#cloakbrowser-pro) +- **CloakBrowser Pro Preview** — Chromium `151.0.7922.108.4` on Linux x64 and Linux ARM64; Windows x64 and macOS track `151.0.7922.108.3`. Opt in with `release_channel="preview"` or `CLOAKBROWSER_RELEASE_CHANNEL=preview`. - **.NET 8 / C# client** — CloakBrowser now ships as a NuGet package (`CloakBrowser`), mirroring the Python and JS wrappers. - **Chromium 151 upgrade** — rebased the full patch set onto Chromium 151 (Linux + Windows), re-validated against reference data; macOS remains on the Chromium 150 Stable line - **73 fingerprint patches** — rendering consistency improvements across Linux and Windows, corrected GPU/display/graphics parameters to match stock Chrome profiles diff --git a/cloakbrowser/_version.py b/cloakbrowser/_version.py index 40e294f..db55ef1 100644 --- a/cloakbrowser/_version.py +++ b/cloakbrowser/_version.py @@ -1 +1 @@ -__version__ = "0.5.9" +__version__ = "0.5.10" diff --git a/dotnet/src/CloakBrowser/CloakBrowser.csproj b/dotnet/src/CloakBrowser/CloakBrowser.csproj index 90d4dc4..52b7f56 100644 --- a/dotnet/src/CloakBrowser/CloakBrowser.csproj +++ b/dotnet/src/CloakBrowser/CloakBrowser.csproj @@ -10,7 +10,7 @@ CloakBrowser - 0.5.9 + 0.5.10 CloakHQ Stealth Chromium that passes every bot detection test. Drop-in Playwright (.NET) replacement with source-level fingerprint patches. MIT diff --git a/dotnet/src/CloakBrowser/CloakVersion.cs b/dotnet/src/CloakBrowser/CloakVersion.cs index 5fb76bd..5966c84 100644 --- a/dotnet/src/CloakBrowser/CloakVersion.cs +++ b/dotnet/src/CloakBrowser/CloakVersion.cs @@ -4,5 +4,5 @@ namespace CloakBrowser; public static class CloakVersion { /// The CloakBrowser .NET wrapper version. - public const string Version = "0.5.9"; + public const string Version = "0.5.10"; } diff --git a/js/package-lock.json b/js/package-lock.json index 1a1603d..7fdac91 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1,12 +1,12 @@ { "name": "cloakbrowser", - "version": "0.5.9", + "version": "0.5.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "cloakbrowser", - "version": "0.5.9", + "version": "0.5.10", "license": "MIT", "dependencies": { "tar": "^7.0.0" diff --git a/js/package.json b/js/package.json index 7f81f56..2a3635f 100644 --- a/js/package.json +++ b/js/package.json @@ -1,6 +1,6 @@ { "name": "cloakbrowser", - "version": "0.5.9", + "version": "0.5.10", "description": "Stealth Chromium that passes every bot detection test. Drop-in Playwright/Puppeteer replacement with source-level fingerprint patches.", "type": "module", "main": "dist/index.js",