github urnetwork/build v2026.8.22-1026185650

one hour ago

v2026.8.22-1026185650

"Charcoal Fibrous Diorite"

Asset SHA256 VirusTotal analysis
URnetworkSdk-2026.8.22-1026185650.aar 2384f9342f1cbfc4848b83541f7625b0bed916a05c850c58f058bd36f61287f3 ok
URnetworkSdk-sources-2026.8.22-1026185650.jar 8933e88901a63ee623a5d574a522b62ff8ee118b5e9a58ae198c13a0b4cfa973 ok
URnetworkSdk-2026.8.22-1026185650.xcframework.zip 7b31b50496da6e98e42752c6db4e2ee50b2fa4d4b3397473a81479312734cd46 ok
URnetworkSdkJs-2026.8.22-1026185650.zip 745fef7e21386155c3f9cc9f795d18eb119e7901ca8b30b9ca4d608ed5e72895 ok
urnetwork-provider-2026.8.22-1026185650.tar.gz d50d280c5255f97881b2fcafa942919860dc718204472c7f6fdbfebdfd3360a3 ok
urnetwork-validator-2026.8.22-1026185650.tar.gz d693b6233c2f285c091ba572c46ec241c4b45b739226b6b0980baabf4a67409c ok
urnetwork-snclaim-2026.8.22-1026185650.tar.gz c2b4b8c11dda77c27e5d50411d684cf5242befa9b0d64a1a33c0bd33c253dc16 ok
urnetwork-proxy-socks-2026.8.22-1026185650.tar.gz d274a8b0729ddf01ea73a6d91fda0104d039d0b55a76d0a43a6c0fd136cbfb08 ok
crx-@urnetwork-extension-2026.8.22.zip bead77b4eafc5a904357097f51f66a03a440dfd4400a86aa54db0ce55a08acd8 ok
crx-@urnetwork-extension-2026.8.22-firefox.zip 2507863a8d19cd82248ffb84544e0938058e317a46cfc50bc30a93662d412cb5 ok
URnetwork-2026.8.22-1026185650.ipa b2c0ddb8b74f2e36fc23ccb8c38ce3439b4c72abf25a66314b6792249a2e6df5 ok
URnetwork-2026.8.22-1026185650.pkg 645e6e99fdeff59c071e8b20227852af3a35c63458cd6513921adb271c64864a ok
URnetworkSdkWindows-2026.8.22-1026185650.zip a3947eefae6c311d9ecbcd9a9a1a4aff4e06b5ba1fa68f1405e077622b64451d ok
URnetwork-2026.8.22-1026185650-arm64.msi ac61a613e61edd9318e92682f6a5c264b360e9116c37322ef0cf6f988c591d9a ok
URnetwork-2026.8.22-1026185650-x64.msi 5495aeccf470e0893e4149045aba228f4225225dfed7184d2823de2bc1a88093 ok
URnetworkSdkLinux-2026.8.22-1026185650.zip f9383a2229b0941b9281c137025a8a4142c43a83ad82256285dd1c9f4fca6bd2 ok
urnetwork-daemon_2026.8.22-1026185650_amd64.deb 34bebcf9d22d95547829dbb762e4d91ae87c99e635a91c3eeb7957877cd0e62c ok
urnetwork-daemon_2026.8.22-1026185650_arm64.deb f4512263b6ae4e9b800781c1872a60cc80f5a9c8392375a50338e4eec462661a ok
urnetwork-daemon-2026.8.22-1026185650-amd64.install.tar.gz 5b27c565a9034f53a5b67e89aeab2f50c70f1a738bdda90deea98c9832bdb0cf ok
urnetwork-daemon-2026.8.22-1026185650-arm64.install.tar.gz b19e578920960d9f629d8a298bd176505754f34e63a278311e2841cb24a1019f ok
urnetwork-daemon-2026.8.22-1026185650.aarch64.rpm c6a7379f0ee1cb2caa4230b2e862244cf7de939d51a74e1a1132429d3cb1aef2 ok
urnetwork-daemon-2026.8.22-1026185650.x86_64.rpm 7bf57a9451d670a41a1cd0b93930b5f6235410a440adb4eb4b5f37259d5fde32 ok
urnetwork-daemon-2026.8.22-1026185650-aarch64.pkg.tar.zst 06cc1837d5084bbfacf65fbb3b5779dce45ecc862e262a86b792e8f21beb406b ok
urnetwork-daemon-2026.8.22-1026185650-x86_64.pkg.tar.zst 5d9f4e27b1bcbf1ddb22c7a9b4e44727eb1bfbc1b1ffbc93a4df6fc062e51212 ok
URnetwork-2026.8.22-1026185650-amd64.AppImage 8a8a254025f38fc5abba88783d2a2a5cd60623f8d2d9552275743ea6ed58580b ok
URnetwork-2026.8.22-1026185650-arm64.AppImage cc15e69a27c30698698fa0df142056c1f7a114ff270452e91813d5263e71b538 ok
URnetwork-2026.8.22-1026185650-amd64.AppImage.zsync 8a4030baa79548d0ab93a5e14903eaa91e2c96e602ba2352ef9334565f53728b ok
URnetwork-2026.8.22-1026185650-arm64.AppImage.zsync fe93a5dddb555b3d0909c1175f18559062f1adf24cadd7a8232bc5930b5f5c7c ok
com.bringyour.network-2026.8.22-1026185650-play-release.apk 44563e43ff82ef21355979a44a44162a8258845b38c7919c344c31737c1075db ok
com.bringyour.network-2026.8.22-1026185650-play-release.aab 1d3341f66783d3f062aa0d2d4f18f25c0d12eabeac9fadb8c8dbe39a8fac67e6 ok
com.bringyour.network-2026.8.22-1026185650-solana_dapp-release.apk 96330941d6fa1550b6eddd62e550543dc56cc416be467b7a039e9a9b0bb14199 ok
com.bringyour.network-2026.8.22-1026185650-ethos_dapp-release.apk 4a5edddc1c9db09eed07bf42187ff7a37d59193013ebd0ed0fe4e8d89d18e1a9 ok
com.bringyour.network-2026.8.22-1026185650.apk 816fcdc34415ebc25f6b09afce520011a417ae1390e9b53821e4f2cbcaa841d3 ok

Full changelog: changelogs/1026185650_Full.md -- every commit in every component since the previous release. Per-store notes for Play, App Store Connect, Partner Center and AppStream are in that same directory.

  • Replace the nine any casts and drop an unused listener param
  • Stop writing the SDK callback refs during render
  • Extension: bump the submodule past the lint fixes
  • Sdk: keep runtime/pprof out of the iOS builds
  • Bootstrap the egress prober's credential without a human
  • Detect providers that go dark, separately from egress health
  • Make the active bandwidth probe budget a deployment setting
  • Name the prober as the fault when the whole fleet fails identically
Full changelog

Changes in v2026.8.22-1026185650

v2026.8.21-1025763520 ... v2026.8.22-1026185650 -- 31 commits across 10 components.

apple

urnetwork/apple d2567e195...9a8a7b22d

  • tests: the selectable transport order is H1-first, matching the SDK (6a4080625)
    TransportStatsTests asserted [.h3, .h1, .dns, .dnsPump] in four places that read their value from the SDK. The SDK's order is H1-first, and it is explicit about it:
  • ci: build and test the apple app on every push (e5e66859b)
    This repo had no .github directory at all, so nothing verified that the iOS and macOS apps still compile or that the unit suite still passes. The release pipeline (build/all/run.sh) archives and signs; it never runs networkTests. This closes that gap.

extension

urnetwork/extension 8f75f07d8...660e05e39

  • fix(types): replace the nine any casts and drop an unused listener param (fbc4ec63f)
    Pure typing/style debt, no behaviour change -- as any erases at compile time and the one runtime edit (dropping a trailing listener parameter) is invisible to the caller.
  • fix(connect): stop writing the SDK callback refs during render (4e1c494c7)
    useConnectionManager kept the latest authNetworkClient/removeNetworkClient in refs with bare assignments in the hook body:
  • ci: add timeout and concurrency; correct the lint comment (c793894d5)
    Two things the workflow was missing and two the comment got wrong.
  • ci: report lint without gating build and test (0f912dec0)
    eslint . fails on a fresh checkout of main with 12 pre-existing errors (10 no-explicit-any, one unused binding, two react-hooks ref-during-render in elements/src), which stopped the run before the tests or either build ran at all.
  • ci: build and test the extension on push (9f4d6fdf6)
    Adds the repo's first CI. Runs the checks the repo already defines -- eslint, the tsconfig.test.json type-check, and the vitest suite -- then builds both store targets the way the Makefile does (npm run build, npm run build:firefox) and asserts each produced a real zip.

build

urnetwork/build 4de28e9dd...8c422231f

  • changelog: one directory, one file per audience, per release (7ee456401)
    The previous commit gave apple, windows and linux a note of their own but scattered them into fastlane-shaped paths that each release overwrote, and left the full changelog inlined in the release body. This puts all six files in one place and keeps every release's set.
  • changelog: one release note per storefront, app changes first (785a706fe)
    There is no such thing as "the store note". Four storefronts serve four different artifacts and not one of the three numbers that matter -- the limit, the format, the field -- is shared between them:
  • extension: bump the submodule past the lint fixes (57ed7d8c2)
    The extension leg of the CI has been red since it was added, and it is not the workflow's fault: this repo pinned extension at 8f75f07d8b, which predates urnetwork/extension#36. npm run lint fails there with 12 errors -- 9 no-explicit-any, an unused parameter, and two react-hooks/refs violations, one of which was a real correctness bug (refs assigned during render, feeding a ConnectionManager built once with [] deps that invokes the auth thunk from timers).
  • changelog: say so when running anonymously degrades the store note (25f5f0d8e)
    The store note holds CI/test/docs-only commits back by looking up which files each candidate commit touched. That is one extra API call per candidate, and anonymous callers get 60 requests/hour -- so on any real span the lookups start returning 403. commit_files() then fails OPEN by design, because a missed lookup must never delete somebody's work from the release notes, which means the commit is KEPT.
  • changelog: generate release notes from the commits instead of copying a placeholder (1e816e157)
    Every changelog this repo has published says the same thing. all/run.sh copied metadata/en-US/changelogs/pending.txt verbatim into metadata/en-US/changelogs/<version code>.txt on every release, pending.txt is a static one-liner, and so 1025763520, 1025613560, 1025339670 and 1025223880 are byte-identical: "- Bug and performance fixes."

sdk

urnetwork/sdk e3c36a9ba...3739dcfac

  • Raise iOS extension SDK size limit to 60 MiB (3739dcfac)
  • sdk: keep runtime/pprof out of the iOS builds (497d82552)
    The iOS extension SDK is over its size budget and cannot simply be raised past it:

warp

urnetwork/warp 678b25a8b...e13673c63

  • ci: bound the job, cross-compile the shipped platforms, race the suite (682388b50)
    Follow-up on the same workflow. Five additions, all verified against a clean ubuntu:24.04 before pushing:
  • ci: quarantine TestNginxLogsOmitClientAddr, which fails on ubuntu-latest (a2b0a0503)
    The first run of this workflow went red, and the cause was an assumption in the previous commit that CI just disproved: that warp's nginx tests would skip on a runner. One of them does not.
  • ci: build and test warp on every push (afb3f80ef)
    warp had no CI. This adds the same build-and-test job the other urnetwork Go repos run, so a push or PR compiles every package and runs the real test suite rather than nothing.

server

urnetwork/server 66af1304a...2c9e92b45

  • feat(model,api,taskworker): bootstrap the egress prober's credential without a human (a2731f132)
    A deployment that had never had an operator hand-mint a prober credential had no egress probing at all, and said nothing about it. The steps were: create a network, POST /network/auth-client, paste the by_client_jwt into the prober's environment. Miss them and every provider goes unprobed, which is indistinguishable from a fleet that is simply healthy -- the failure is silent in exactly the way that matters.
  • feat(model,api): detect providers that go dark, separately from egress health (ed51f6d60)
    Egress health is the wrong instrument for this question. It samples ~131 destinations across several classes and takes minutes per provider, so it can only sweep the fleet slowly -- measured on beta, a provider went days between measurements. For that whole window a provider that has stopped carrying traffic is invisible: it stays connected, keeps accepting clients, keeps being advertised, and answers nothing. Making health cheaper is not the fix; the sampling breadth is what makes it worth ...
  • test(model): pin the egress-health age bound that stopped advertising blackholes (8debc157b)
    The bound landed with the fix; nothing pinned it. That is the gap worth closing, because the behaviour it enforces is a NEGATIVE one -- a provider disappearing from the map -- and a bound that silently stops applying looks exactly like a fleet that happens to be healthy.
  • feat(model): make the active bandwidth probe budget a deployment setting (d3e5a95c2)
    The hourly probe budget is CAPACITY, and capacity is a property of the deployment rather than of this code. A 40-provider fleet on a 4-core box and a production network carrying ~100k providers cannot share one compiled-in number: each has to measure its own limits and set its own. That is the opposite of a behavioural knob like the sampling rate, which stays one value everywhere precisely so every deployment exercises the same path.
  • feat(model): name the prober as the fault when the whole fleet fails identically (b6aee48a2)
    A prober whose platform jwt had been rejected reported EVERY provider as no_consensus for eight hours. Every individual record was well-formed, every endpoint returned 200, the due queue kept handing out work and the prober kept taking it. Per provider the data was indistinguishable from a genuinely unreachable fleet, and nothing anywhere said "credential".

proxy

urnetwork/proxy bb5794710...3e94ca0f2

  • ci: add a concurrency group and a vet step (52910aebc)
    Two house conventions the first commit left out.
  • ci: build and test proxy on every push (f76ff29f4)
    proxy had no CI. This adds the same build-and-test job the other urnetwork Go repos run, so a push or PR compiles every package and runs the real test suite rather than nothing.

localizations

urnetwork/localizations e4715b9f2...d64c666e2

  • ci: build and test the localization store on every push (bd3fb6fd5)
    This repo had no CI. Nothing validated keys/*.yaml until the release build ran npm run gen and wrote into the app repos, so a malformed key -- the common failure when a translation lands -- surfaced far from where it was introduced.

glog

urnetwork/glog 45662c0f2...93fe11b3e

  • ci: record the TestRollover flake this workflow surfaced (ed159a35e)
    The first CI run on this branch went red on TestRollover, then a re-run of the same commit went green. Root cause, reproduced locally 50k+ times and independent of CI:
  • ci: add concurrency group and timeout to the glog workflow (36e3f1128)
    The previous commit renamed test.yml to build-and-test.yml but landed only the rename; this carries the content change that was meant to go with it.
  • ci: build and test glog on every push (1ee639974)
    glog had no CI of its own. This adds a build-and-test workflow so a push to master, a PR against master, or a manual dispatch compiles the package and runs the real test suite.
  • ci: build and test glog on every push (ec233ad58)
    glog had no CI. This adds the same build-and-test job the other urnetwork Go repos run, so a push or PR compiles the package and runs the real test suite rather than nothing.

goidenticons

urnetwork/goidenticons 408ab24fc...325750b38

  • ci: bound the run and vet, and name the file for what it does (4a65af535)
    Follow-up on the same branch, aligning this workflow with the newest house convention (server/test.yml, linux/build.yml) rather than the oldest (connect/test.yml, sdk/test.yml, which predate all three of these habits):
  • ci: build and test goidenticons on every push (9293c1409)
    goidenticons had no CI. This adds the same build-and-test job the other urnetwork Go repos run, so a push or PR compiles the package and runs the real test suite rather than nothing.

Filtered out of this changelog: 18 merge commits (both sides are already listed), 1 version-stamp commit written by all/run.sh on every release. Re-run all/changelog.py --from v2026.8.21-1025763520 --to v2026.8.22-1026185650 --filters= to include them.

Don't miss a new build release

NewReleases is sending notifications on new releases.