Skip to content

Releases: ghostlane-project/ghostlane

Ghostlane 1.0.444

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 29 Sep 14:14
6f83308

What's new in v1.0.444

Changes since v1.0.443:

  • feat(olcrtc): VK Calls rooms, and a Chrome-like DTLS handshake to try (ea8a34d)
  • docs(readme): what the app does as of 1.0.443 and #73 (1f49095)
  • docs(store): the Play graphic without overlaps; the privacy policy names every address the app contacts (6654096)
  • feat(desktop): olcRTC rooms route by the engine's rules in the Linux tunnel; macOS and Windows resolve on the system's DNS (a797f77)
  • docs(release-notes): retire the notes shipped in v1.0.443 (3eeb2b7)

Computers: Bypass in olcRTC rooms on Linux, and your network's own DNS on macOS and Windows

On Linux, Bypass Russia, Iran and China, and your own "always direct" rules, now work in olcRTC rooms: the country's sites and your local network connect directly, and everything else goes through the room. With other kinds of server, Linux still sends everything through the tunnel, and the routing screen says so. On macOS and Windows, olcRTC now looks names up on your network's own DNS servers first and on a public one after them, so it no longer waits on networks that block public DNS. In the Windows tunnel, routing still carries everything; the screen now says to switch to proxy mode for it.

olcRTC: VK Calls rooms

Ghostlane now connects to olcRTC rooms on VK Calls, the fifth meeting service after Yandex Telemost, WB Stream, Sber SaluteJazz and Jitsi. Import a link that names vkcalls, or choose VK Calls as the service in a location's settings and paste the call's join link (https://vk.ru/call/join/…). VK Calls rooms run over the VP8 channel.

olcRTC: a Chrome-like handshake to try (experimental)

Connection settings have a new switch, off by default. With it on, olcRTC rooms open their encrypted connection the way Chrome does, not the way their WebRTC library does. Try it if rooms fail to connect on your network; changing it reconnects an active tunnel, and room checks use the same handshake.

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 6f83308bde98948b9a88a4ccc010fd326792e3bd
  • Source branch: main
  • olcrtc revision: f9edaa7f1ab5b00238eaf72b6dac7540dd344037 (v0.0.0-20260929121845-f9edaa7f1ab5), what every platform here was built from
  • App version: 1.0.444
  • Android versionCode: 444
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/36575996684

Gate

Release gate · mode release · app 1.0.444 · engine f9edaa7f1ab5 (v0.0.0-20260929121845-f9edaa7f1ab5; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 6 1 (1 known)
vkcalls/cli default 1 present 1 0
vkcalls/mobile lean 7 present 7 0

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine f9edaa7f1ab5, app 1.0.444

1 of 48 cells failed · Linux/ubuntu24 · 872 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 11421 ms 25 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 14827 ms (bridge 3 s late), ready 18218 ms (bridge 8 s late) 41 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 10322 ms 25 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 749 ms 15 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.3 Mbit/s, on-top p95 3653 ms 96 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.5 Mbit/s, on-top p95 2200 ms 31 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 14323 ms (bridge 3 s late), ready 18095 ms (bridge 8 s late) 40 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.3 MiB, RSS peak 44.0 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 9466 ms 20 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 10577 ms 30 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 10824 ms 12 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 9166 ms 21 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 10037 ms 29 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 8946 ms 108 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 797 ms 16 s
engine-linux/salutejazz/datachannel/mobile/S2 ❌ fail (known: #49): throughput_down_bps 870995.1134968506 < 1400000; on_top_p95_ms 7393 > 5000 ↓ 0.9 Mbit/s, on-top p95 7393 ms 578 s
engine-linux/salutejazz/datachannel/mobile/S3 ✅ pass (known: #49) ↑ 5.0 Mbit/s, on-top p95 1087 ms 34 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.6 MiB, RSS peak 46.6 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 3756 ms 10 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 3963 ms 30 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1243 ms 22 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 10.5 Mbit/s, on-top p95 3272 ms 48 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 9.1 Mbit/s, on-top p95 2008 ms 19 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 3 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 11.9 MiB, RSS peak 50.5 MiB 0 s
engine-linux/vkcalls/vp8channel/cli/S0 ✅ handshake 7201 ms 8 s
engine-linux/vkcalls/vp8channel/mobile/S0 ✅ handshake 6790 ms 18 s
engine-linux/vkcalls/vp8channel/mobile/S1 ✅ connect p95 740 ms 18 s
engine-linux/vkcalls/vp8channel/mobile/S2 ✅ ↓ 14.2 Mbit/s, on-top p95 1919 ms 36 s
engine-linux/vkcalls/vp8channel/mobile/S3 ✅ ↑ 13.8 Mbit/s, on-top p95 1119 ms 12 s
engine-linux/vkcalls/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/vkcalls/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/vkcalls/vp8channel/mobile/S7 ✅ heap peak 12.1 MiB, RSS peak 49.1 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 3829 ms 39 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 3276 ms 40 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 3569 ms 22 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 3253 ms 22 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 604 ms 15 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.3 Mbit/s, on-top p95 3416 ms 80 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 6.2 Mbit/s, on-top p95 3283 ms 27 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 14.0 MiB, RSS peak 52.4 MiB 0 s

1 known failure is tracked by an issue and does not fail the gate.

Compared with v1.0.443 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.51 Mbit/s 5.30 Mbit/s -4%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.68 Mbit/s 5.51 Mbit/s -3%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 8.3 MiB 8.3 MiB +0%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 43.8 MiB 44.0 MiB +1%
engine-linux/salutejazz/datachannel/mobile/S2 throughput_down_bps 0.25 Mbit/s 0.87 Mbit/s +247%
engine-linux/salutejazz/datachannel/mobile/S3 throughput_up_bps 1.97 Mbit/s 4.98 Mbit/s +152%
engine-linux/salutejazz/datachannel/mobile/S7 heap_peak_bytes 9.7 MiB 9.6 MiB -1%
engine-linux/salutejazz/datachannel/mobile/S7 rss_peak_bytes 48.8 MiB 46.6 MiB -4%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 9.53 Mbit/s 10.46 Mbit/s +10%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 7.89 Mbit/s 9.05 Mbit/s +15%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 11.4 MiB 11.9 MiB +4%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 48.8 MiB 50.5 MiB +4%
`engine-linux...
Read more

Nightly Ghostlane builds

Pre-release

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 29 Sep 14:15
6f83308

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 6f83308bde98948b9a88a4ccc010fd326792e3bd
  • Source branch: main
  • olcrtc revision: f9edaa7f1ab5b00238eaf72b6dac7540dd344037 (v0.0.0-20260929121845-f9edaa7f1ab5), what every platform here was built from
  • App version: 1.0.444
  • Android versionCode: 444
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/36575996684

Gate

Release gate · mode release · app 1.0.444 · engine f9edaa7f1ab5 (v0.0.0-20260929121845-f9edaa7f1ab5; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 6 1 (1 known)
vkcalls/cli default 1 present 1 0
vkcalls/mobile lean 7 present 7 0

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine f9edaa7f1ab5, app 1.0.444

1 of 48 cells failed · Linux/ubuntu24 · 872 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 11421 ms 25 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 14827 ms (bridge 3 s late), ready 18218 ms (bridge 8 s late) 41 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 10322 ms 25 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 749 ms 15 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.3 Mbit/s, on-top p95 3653 ms 96 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.5 Mbit/s, on-top p95 2200 ms 31 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 14323 ms (bridge 3 s late), ready 18095 ms (bridge 8 s late) 40 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.3 MiB, RSS peak 44.0 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 9466 ms 20 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 10577 ms 30 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 10824 ms 12 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 9166 ms 21 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 10037 ms 29 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 8946 ms 108 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 797 ms 16 s
engine-linux/salutejazz/datachannel/mobile/S2 ❌ fail (known: #49): throughput_down_bps 870995.1134968506 < 1400000; on_top_p95_ms 7393 > 5000 ↓ 0.9 Mbit/s, on-top p95 7393 ms 578 s
engine-linux/salutejazz/datachannel/mobile/S3 ✅ pass (known: #49) ↑ 5.0 Mbit/s, on-top p95 1087 ms 34 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.6 MiB, RSS peak 46.6 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 3756 ms 10 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 3963 ms 30 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1243 ms 22 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 10.5 Mbit/s, on-top p95 3272 ms 48 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 9.1 Mbit/s, on-top p95 2008 ms 19 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 3 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 11.9 MiB, RSS peak 50.5 MiB 0 s
engine-linux/vkcalls/vp8channel/cli/S0 ✅ handshake 7201 ms 8 s
engine-linux/vkcalls/vp8channel/mobile/S0 ✅ handshake 6790 ms 18 s
engine-linux/vkcalls/vp8channel/mobile/S1 ✅ connect p95 740 ms 18 s
engine-linux/vkcalls/vp8channel/mobile/S2 ✅ ↓ 14.2 Mbit/s, on-top p95 1919 ms 36 s
engine-linux/vkcalls/vp8channel/mobile/S3 ✅ ↑ 13.8 Mbit/s, on-top p95 1119 ms 12 s
engine-linux/vkcalls/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/vkcalls/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/vkcalls/vp8channel/mobile/S7 ✅ heap peak 12.1 MiB, RSS peak 49.1 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 3829 ms 39 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 3276 ms 40 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 3569 ms 22 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 3253 ms 22 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 604 ms 15 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.3 Mbit/s, on-top p95 3416 ms 80 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 6.2 Mbit/s, on-top p95 3283 ms 27 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 14.0 MiB, RSS peak 52.4 MiB 0 s

1 known failure is tracked by an issue and does not fail the gate.

Compared with v1.0.443 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.51 Mbit/s 5.30 Mbit/s -4%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.68 Mbit/s 5.51 Mbit/s -3%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 8.3 MiB 8.3 MiB +0%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 43.8 MiB 44.0 MiB +1%
engine-linux/salutejazz/datachannel/mobile/S2 throughput_down_bps 0.25 Mbit/s 0.87 Mbit/s +247%
engine-linux/salutejazz/datachannel/mobile/S3 throughput_up_bps 1.97 Mbit/s 4.98 Mbit/s +152%
engine-linux/salutejazz/datachannel/mobile/S7 heap_peak_bytes 9.7 MiB 9.6 MiB -1%
engine-linux/salutejazz/datachannel/mobile/S7 rss_peak_bytes 48.8 MiB 46.6 MiB -4%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 9.53 Mbit/s 10.46 Mbit/s +10%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 7.89 Mbit/s 9.05 Mbit/s +15%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 11.4 MiB 11.9 MiB +4%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 48.8 MiB 50.5 MiB +4%
engine-linux/wbstream/vp8channel/mobile/S2 throughput_down_bps 6.32 Mbit/s 6.30 Mbit/s -0%
engine-linux/wbstream/vp8channel/mobile/S3 throughput_up_bps 6.12 Mbit/s 6.21 Mbit/s +1%
engine-linux/wbstream/vp8channel/mobile/S7 heap_peak_bytes 14.0 MiB 14.0 MiB -0%
engine-linux/wbstream/vp8channel/mobile/S7 rss_peak_bytes 50.7 MiB 52.4 MiB +3%

SHA256

Asset SHA256
Ghostlane-1.0.444-android-armeabi-v7a-release.apk 4e810fced9ad481ee7910011570333177908fcacc7232b45cb0e06450f630987
Ghostlane-1.0.444-android-play.aab 8ee7e1c826bb7ae0545a5fe4f22b3d1db2776195374ac73a1499a32419c45e9c
Ghostlane-1.0.444-android-release.apk 15d269c24e9b00fffb4c7b7431faa78bb3626ee81137103e3ffab4dedd16ef08
gate-report.json 2c4df14922cd39d1168bf1420d8c2663b1547b1eb295d2a914a629b42e118835
gate-report.md 1160c1e0a92d8aecc9dda32f932d7ccda3afa68434ee1555a9706257af7f7c5e
Ghostlane-1.0.444-linux-amd64.AppImage 1b61adc25cc8b88a2b5fc57cce8f754f5cb2c6b807abc720def55ceb2da9130c
Ghostlane-1.0.444-macos-amd64.dmg ca5bd1c906ed825cb5ddeff846fdf7c6fe23f3038cf79687971f766c373e0bfe
Ghostlane-1.0.444-macos-arm64.dmg 7799db4a245506f7b6cd6b20907136a0f0a6a80ac50bac027aa8dcbe59f66c2d
Ghostlane-1.0.444-windows-amd64-portable.zip 6f8112f0a8552ac7df28602ddde49e7be68a5758f3f41c3c69473ad662edbdf5
Ghostlane-1.0.444-windows-amd64.exe 9c86a1ea2892c3417a91d880185e6e83fab383fda10c34c95c0717a7dd23b715
Ghostlane-1.0.444-windows-amd64.msi 4984c3cee6920131dafd5d20cb87699130003720b7daa2a6596b765d628f8528

Ghostlane 1.0.443

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 25 Sep 13:42
3b0c0f3

What's new in v1.0.443

Changes since v1.0.442:

  • fix(export): Hysteria2 through Xray needs 26.3 — say so, and check it apart (135f807)
  • feat(export): servers in the forms a router takes — Podkop and XKeen (3da4778)
  • feat(android): Android TV — launcher, focus you can see, a server list from your phone (3a96728)
  • feat(i18n): the app in Chinese and Persian, laid out right to left on Android (edf8e25)
  • feat(routing): your own rules, and only blocked sites through the tunnel (cc45491)
  • feat(i18n): the app in Russian (e844be2)
  • docs(release-notes): Trojan, Shadowsocks and VMess (c5cb3d9)
  • feat(import): Trojan, Shadowsocks and VMess links, and WebSocket transports (8a6b528)
  • docs(release-notes): always-on, the Russian-apps preset and smart connect (9aff35f)
  • feat(connect): smart connect — another transport when one is blocked, olcRTC of the same country last (494c00c)
  • fix(android): the Russian-apps preset finds T-Bank, Avito, Wildberries and VK (1b723b6)
  • fix(android): Android's always-on VPN starts the tunnel instead of stopping it (b72e8b7)
  • docs(release-notes): the local proxy login and the provider links (61cadb4)
  • feat(import): ghostlane:// links, and a list that survives its provider's blocked domain (2716868)
  • chore(release): 1.0.442 shipped, the pending note goes (2050a58)
  • fix(vpn): the cores' local SOCKS ports demand the app's login (87e6ecd)

Android and iPhone: the app's local proxy asks for a password

Between the VPN and the engine that carries it, the app runs a small proxy on the phone itself. On Android it sat on a fixed, well-known port with no password for most kinds of connection (and on the iPhone for XHTTP), so any other app could use it to reach the internet through the tunnel or to learn the VPN's address, which is exactly what some apps look for. It now asks for a login only Ghostlane knows, and on Android it moves to a new port every time you connect.

Server lists: provider links, and lists that outlive a blocked domain

A provider's subscription page can now open the app with a ghostlane:// link, including the ghostlane://add/… form such pages use for other apps. A provider can also keep its users when its domain is blocked: when a list's usual address does not answer, the app asks the spare address the provider named in advance, and when the provider says the list has moved, the app follows it. Both are accepted only over a secure connection. On Android and computers, a provider's short note now appears under its server list.

Android: always-on VPN

With Android's own "Always-on VPN" turned on for Ghostlane, the connection now comes up by itself after a restart and whenever Android brings it back; before, the app stopped the moment Android started it. Connection settings has a row that opens Android's VPN screen, where always-on and "Block connections without VPN" are set. The "Russian apps" preset for apps that bypass the VPN now also finds T-Bank, Avito, Wildberries and VK.

Android and computers: smart connect

When a server is published over several kinds of connection, the app now checks them before connecting and uses the first one through which a real download gets through, not just a first handshake. If none does, it ends on olcRTC in the same country, and when only domestic sites answer (a mobile "whitelist" shutdown) it goes to olcRTC straight away. It never changes the country by itself, remembers what worked for each server, and can be turned off in the server list settings.

Server lists: Trojan, Shadowsocks and VMess

Links and subscriptions with Trojan, Shadowsocks (including Shadowsocks 2022) and VMess servers now import and connect, as do VLESS servers that use WebSocket or HTTP upgrade, which used to import but never connect. A link that asks for something the app cannot carry, such as a Shadowsocks plugin, is left out instead of being added as a server that cannot work.

The app in Russian, Chinese and Persian

On a phone or computer set to Russian, Chinese or Persian, the app is now in that language: every screen, message and notification, and the notice shown before the first connection. On Android, Persian is laid out right to left. Other languages still see English.

Android and computers: your own routing rules, and only blocked sites through the tunnel

Routing has a new mode, "Only blocked sites through the tunnel": sites blocked in Russia, and services that shut Russian users out, go through the tunnel, and everything else connects directly. The list is Re:filter's, bundled with the app, so it works offline; it includes whole address ranges of some large services, so other sites hosted there go through the tunnel too. In any mode you can now add rules of your own: domains or IP addresses that always connect directly, or always go through the tunnel. On Android, olcRTC rooms still carry everything in the new mode.

Android TV

Ghostlane now installs on Android TV and appears in its launcher. Every control can be reached with the remote, with a clear mark on the one in focus. A TV has no camera to scan with, so a server list comes from your phone: the TV shows a code, the phone opens a page on the same home network, and the link pasted there lands on the TV. The same option appears on any Android device without a camera.

Android and computers: servers for your router

Server lists now have a Router button in "Server lists & sharing". It gives each server of the list in the form a router takes: the link or a sing-box outbound for Podkop on OpenWrt, an Xray outbound for XKeen on Keenetic. Encrypted server lists do not offer it: their provider chose that their servers are not read out of them.

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 3b0c0f3b561293b2b831bc9c153c3ecded6fe234
  • Source branch: main
  • olcrtc revision: 8d97e32e0b1af0a727d6e785c4c467f37543aa4d (v0.0.0-20260924233529-8d97e32e0b1a), what every platform here was built from
  • App version: 1.0.443
  • Android versionCode: 443
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/36138060287

Gate

Release gate · mode release · app 1.0.443 · engine 8d97e32e0b1a (v0.0.0-20260924233529-8d97e32e0b1a; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 5 2 (2 known)

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine 8d97e32e0b1a, app 1.0.443

2 of 40 cells failed · Linux/ubuntu24 · 733 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 10170 ms 27 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 12992 ms (bridge 3 s late), ready 18471 ms (bridge 8 s late) 39 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 8964 ms 26 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 723 ms 14 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.5 Mbit/s, on-top p95 3060 ms 92 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.7 Mbit/s, on-top p95 2087 ms 30 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 12962 ms (bridge 3 s late), ready 17218 ms (bridge 8 s late) 38 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.3 MiB, RSS peak 43.8 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 9403 ms 20 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 9451 ms 69 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 10383 ms 11 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 13051 ms 15 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 13282 ms 33 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 11504 ms 270 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 2384 ms 20 s
engine-linux/salutejazz/datachannel/mobile/S2 ❌ fail (known: #49): pull_ok 0 of pull_total 6; throughput_down_bps 251054.17311750763 < 1400000; on_top_ok 12 of on_top_total 14; on_top_p95_ms 39157 > 5000 ↓ 0.3 Mbit/s, on-top p95 39157 ms 208 s
engine-linux/salutejazz/datachannel/mobile/S3 ❌ fail (known: #49): on_top_p95_ms 12558 > 5000 ↑ 2.0 Mbit/s, on-top p95 12558 ms 86 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.7 MiB, RSS peak 48.8 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 5291 ms 12 s
`engine-linux/telemost/vp8channel...
Read more

Ghostlane 1.0.442

Ghostlane 1.0.442 Pre-release
Pre-release

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 25 Sep 00:42
84385b8

What's new in v1.0.442

Changes since v1.0.441:

  • chore(pin): the engine with the relay window sized for its leg (olcrtc#49) (13738c2)
  • fix(ios): pin sockets to the interface the system routes through (#58) (13a0189)
  • chore(release): 1.0.441 shipped, the pending note goes (3ba1db7)

iPhone: connecting over mobile data on more carriers

A phone on mobile data often has several cellular connections open at once: the one to the internet, and others the carrier keeps for calls and messages. On some carriers the app sent its own traffic through one of the carrier's service connections, so on mobile data every location failed to connect ("no route to host") while Wi-Fi worked. The app now uses the connection iOS itself uses for the internet.

olcRTC on SaluteJazz: holds on a slow connection

On a slow SaluteJazz connection the app now keeps only as much data in flight as the connection has recently carried, instead of a fixed amount. A long upload no longer holds up the small messages that keep the connection alive, so it stays up instead of dropping and reconnecting. Servers running the updated engine do the same for downloads.

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 84385b86f2191b832d331fd37393dd66fdca20f1
  • Source branch: main
  • olcrtc revision: 8d97e32e0b1af0a727d6e785c4c467f37543aa4d (v0.0.0-20260924233529-8d97e32e0b1a), what every platform here was built from
  • App version: 1.0.442
  • Android versionCode: 442
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/36076358644

Gate

Release gate · mode release · app 1.0.442 · engine 8d97e32e0b1a (v0.0.0-20260924233529-8d97e32e0b1a; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 7 0

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine 8d97e32e0b1a, app 1.0.442

all 40 cells passed · Linux/ubuntu24 · 504 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 9241 ms 25 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 11918 ms (bridge 3 s late), ready 16905 ms (bridge 8 s late) 35 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 9336 ms 25 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 656 ms 13 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.8 Mbit/s, on-top p95 2224 ms 86 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.7 Mbit/s, on-top p95 2250 ms 29 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 12276 ms (bridge 3 s late), ready 17279 ms (bridge 8 s late) 36 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.4 MiB, RSS peak 44.5 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 9316 ms 64 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 9109 ms 23 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 9301 ms 12 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 9691 ms 14 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 10059 ms 128 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 9078 ms 28 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 598 ms 15 s
engine-linux/salutejazz/datachannel/mobile/S2 ✅ pass (known: #49) ↓ 5.3 Mbit/s, on-top p95 1116 ms 96 s
engine-linux/salutejazz/datachannel/mobile/S3 ✅ pass (known: #49) ↑ 5.2 Mbit/s, on-top p95 1136 ms 32 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.9 MiB, RSS peak 48.4 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 4086 ms 10 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 4231 ms 30 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1458 ms 23 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 10.3 Mbit/s, on-top p95 2748 ms 49 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 9.0 Mbit/s, on-top p95 2229 ms 19 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 3 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 11.6 MiB, RSS peak 48.1 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 3776 ms 24 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 3949 ms 89 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 3880 ms 21 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 4447 ms 23 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 932 ms 16 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.4 Mbit/s, on-top p95 3249 ms 78 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 6.3 Mbit/s, on-top p95 3362 ms 27 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 13.7 MiB, RSS peak 51.0 MiB 0 s

Compared with v1.0.441 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.69 Mbit/s 5.83 Mbit/s +2%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.70 Mbit/s 5.70 Mbit/s +0%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 8.5 MiB 8.4 MiB -2%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 46.6 MiB 44.5 MiB -5%
engine-linux/salutejazz/datachannel/mobile/S2 throughput_down_bps 5.33 Mbit/s 5.26 Mbit/s -1%
engine-linux/salutejazz/datachannel/mobile/S3 throughput_up_bps 5.79 Mbit/s 5.19 Mbit/s -10%
engine-linux/salutejazz/datachannel/mobile/S7 heap_peak_bytes 9.7 MiB 9.9 MiB +3%
engine-linux/salutejazz/datachannel/mobile/S7 rss_peak_bytes 48.5 MiB 48.4 MiB -0%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 9.33 Mbit/s 10.26 Mbit/s +10%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 8.27 Mbit/s 9.02 Mbit/s +9%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 12.2 MiB 11.6 MiB -5%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 49.6 MiB 48.1 MiB -3%
engine-linux/wbstream/vp8channel/mobile/S2 throughput_down_bps 6.19 Mbit/s 6.43 Mbit/s +4%
engine-linux/wbstream/vp8channel/mobile/S3 throughput_up_bps 6.24 Mbit/s 6.29 Mbit/s +1%
engine-linux/wbstream/vp8channel/mobile/S7 heap_peak_bytes 14.1 MiB 13.7 MiB -3%
engine-linux/wbstream/vp8channel/mobile/S7 rss_peak_bytes 53.0 MiB 51.0 MiB -4%

SHA256

Asset SHA256
Ghostlane-1.0.442-android-armeabi-v7a-release.apk fd8a55b755349dadcc75ae2e0d3740071fc8eeaf97f8d540e48ec7a7554fabdd
Ghostlane-1.0.442-android-play.aab f4079e11a3f87af210d6f17a3804b0a0de9fecfc5c8a1768ad49a17f8f5ae1aa
Ghostlane-1.0.442-android-release.apk 2df941f9a337a8afa1a207b557c74b005cc2c00cbca8773dc253fe1b683e224c
gate-report.json 2787fa02c21ea28e1482522cf70e0d5f6e9730da8b778548f9de344f95a29e3b
gate-report.md 1f33442f32038382922b26fcffa79b5fb5efd796c304fe2f6a68590fe6beea11
Ghostlane-1.0.442-linux-amd64.AppImage 95ce41383823db834c434dc5f9e613a3a3046f6787aca9202f76f6d34ff5f6ff
Ghostlane-1.0.442-macos-amd64.dmg 458df37153b15a613d69388a2e1814aa80fcb705b207c28269e2c4ca1211c2f3
Ghostlane-1.0.442-macos-arm64.dmg bc5df543eaf096d1f0d2564acaed539f19ef0ddb8af7e300d7aa63789918a0d9
Ghostlane-1.0.442-windows-amd64-portable.zip 1fe970f11a410016c04cafe84bb84369c2c77971af8f612213123faf22997ae6
Ghostlane-1.0.442-windows-amd64.exe f50e413c2e595ab423126a1c777596b3a561788bd9015e45d2cd647437923356
Ghostlane-1.0.442-windows-amd64.msi 4c61ec4e34941504a29e4a9a33be002bf5dffeb35105d32236df7047802ebb21

ios-cores-sb1.13.14-lxv1.260711.0-rtcf9edaa7f1ab5-b34: Merge #75: the README says what the app does as of 1.0.443

Choose a tag to compare

@github-actions github-actions released this 29 Sep 13:10
d10bcd4

sing-box 1.13.14 + libXray v1.260711.0 + olcrtc v0.0.0-20260929121845-f9edaa7f1ab5 bound into one framework, iOS and macOS slices, for the NetworkExtension on both.

Ghostlane 1.0.441

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 24 Sep 19:41

What's new in v1.0.441

Changes since v1.0.440:

  • docs(release-notes): Iran and China bypass, and the desktop window and tray icon (54f4347)
  • refactor(routing): XrayGeodata sorts a region's files by their name prefix (654cfd9)
  • docs(release-notes): Android bypass modes on olcRTC run in the connection itself (d839de5)
  • feat(android): olcRTC routes by itself under a bypass; the sing-box front goes (#33) (41a6142)
  • feat(android): olcRTC keeps its UDP relay under a bypass, for direct flows (581b5a3)
  • feat(routing): the olcRTC engine's direct rules for every bypass region (f3633e1)
  • feat(routing): Iranian and Chinese lists in the olcRTC engine's text form (b78e9cc)
  • docs(plan): olcRTC on Android without the sing-box front (#33) (d75ce57)
  • docs(spec): olcRTC on Android without the sing-box front (#33) (afb92b6)
  • feat(routing): add Iran and China bypass without changing existing modes (7cdaeea)
  • feat(desktop): a monochrome menu bar icon and a title bar in the app's colour (04b74e5)
  • chore(release): retire the notes the release read (6902711)

Android and desktop: Bypass Iran and Bypass China

Next to Bypass Russia, the routing setting now offers Bypass Iran and Bypass China. Sites and addresses in the chosen country, and your local network, connect directly; everything else goes through the tunnel. The lists ship with the app, so they work offline. On a computer they apply in system proxy mode and in the macOS tunnel; the Windows and Linux tunnels still send everything through the tunnel. The iPhone app is unchanged.

Android: bypass modes on olcRTC, from one process

With a bypass mode on (Russia, Iran or China), an olcRTC connection no longer starts a second routing process in front of itself: the connection sends the chosen country's sites and your local network straight out by itself, as the iPhone app does. One process less to start and keep alive, and the bypass now also works in proxy mode, where olcRTC used to send everything through the tunnel.

macOS and Windows: a window and a tray icon that fit the system

On a Mac the menu bar icon is now monochrome, white or black like the icons next to it, and the window's title bar is the app's own dark colour with the traffic lights on it; the tray menu and file dialogs follow dark mode. On Windows the tray icon is white or black to match the taskbar, and the title bar is dark (exactly the app's colour on Windows 11).

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 54f4347f8e2e3fe2eef97725f5722c7164f2b058
  • Source branch: main
  • olcrtc revision: 7b78fd4a753c0c4b84a60c854a98d0002fc37442 (v0.0.0-20260923124229-7b78fd4a753c), what every platform here was built from
  • olcrtc: proofkit is 3 commit(s) ahead of this revision
  • App version: 1.0.441
  • Android versionCode: 441
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/36010238963

Gate

Release gate · mode release · app 1.0.441 · engine 7b78fd4a753c (v0.0.0-20260923124229-7b78fd4a753c; the pin, on proofkit, which is 3 commit(s) ahead)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 7 0

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine 7b78fd4a753c, app 1.0.441

all 40 cells passed · Linux/ubuntu24 · 458 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 8648 ms 25 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 14500 ms (bridge 3 s late), ready 17264 ms (bridge 8 s late) 38 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 7487 ms 24 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 558 ms 11 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.7 Mbit/s, on-top p95 2203 ms 88 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.7 Mbit/s, on-top p95 2035 ms 29 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 60 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 14648 ms (bridge 3 s late), ready 15412 ms (bridge 8 s late) 36 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.5 MiB, RSS peak 46.6 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 8838 ms 20 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 10759 ms 23 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 10876 ms 12 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 7812 ms 12 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 8589 ms 33 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 8230 ms 23 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 542 ms 13 s
engine-linux/salutejazz/datachannel/mobile/S2 ✅ pass (known: #49) ↓ 5.3 Mbit/s, on-top p95 4407 ms 94 s
engine-linux/salutejazz/datachannel/mobile/S3 ✅ pass (known: #49) ↑ 5.8 Mbit/s, on-top p95 825 ms 29 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.7 MiB, RSS peak 48.5 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 5197 ms 11 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 4954 ms 33 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1205 ms 27 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 9.3 Mbit/s, on-top p95 4133 ms 54 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 8.3 Mbit/s, on-top p95 2234 ms 21 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 4 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 12.2 MiB, RSS peak 49.6 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 3924 ms 58 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 4632 ms 37 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 3802 ms 21 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 3861 ms 23 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 929 ms 19 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.2 Mbit/s, on-top p95 3475 ms 82 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 6.2 Mbit/s, on-top p95 2703 ms 27 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 14.1 MiB, RSS peak 53.0 MiB 0 s

Compared with v1.0.440 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.75 Mbit/s 5.69 Mbit/s -1%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.39 Mbit/s 5.70 Mbit/s +6%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 9.0 MiB 8.5 MiB -5%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 46.1 MiB 46.6 MiB +1%
engine-linux/salutejazz/datachannel/mobile/S2 throughput_down_bps 3.85 Mbit/s 5.33 Mbit/s +39%
engine-linux/salutejazz/datachannel/mobile/S3 throughput_up_bps 4.11 Mbit/s 5.79 Mbit/s +41%
engine-linux/salutejazz/datachannel/mobile/S7 heap_peak_bytes 9.7 MiB 9.7 MiB +0%
engine-linux/salutejazz/datachannel/mobile/S7 rss_peak_bytes 46.8 MiB 48.5 MiB +4%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 8.46 Mbit/s 9.33 Mbit/s +10%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 7.06 Mbit/s 8.27 Mbit/s +17%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 12.4 MiB 12.2 MiB -2%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 47.9 MiB 49.6 MiB +4%
engine-linux/wbstream/vp8channel/mobile/S2 throughput_down_bps 6.25 Mbit/s 6.19 Mbit/s -1%
engine-linux/wbstream/vp8channel/mobile/S3 throughput_up_bps 5.43 Mbit/s 6.24 Mbit/s +15%
engine-linux/wbstream/vp8channel/mobile/S7 heap_peak_bytes 14.1 MiB 14.1 MiB +0%
engine-linux/wbstream/vp8channel/mobile/S7 rss_peak_bytes 51.0 MiB 53.0 MiB +4%

SHA256

| Ass...

Read more

ios-cores-sb1.13.14-lxv1.260711.0-rtc8d97e32e0b1a-b33: Merge #60: pin sockets to the interface the system routes through (#58)

Choose a tag to compare

@github-actions github-actions released this 24 Sep 23:53
50bbdb6

sing-box 1.13.14 + libXray v1.260711.0 + olcrtc v0.0.0-20260924233529-8d97e32e0b1a bound into one framework, iOS and macOS slices, for the NetworkExtension on both.

Ghostlane 1.0.440

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 23 Sep 14:11

What's new in v1.0.440

Changes since v1.0.439:

  • test(ci): the Scope tests' git repo runs no background gc or maintenance (6320997)
  • fix(subscriptions): a refresh no longer drops a new line named like an old one (b33aeec)
  • chore(pin): the engine with the SaluteJazz relay window (olcrtc#49) (0d42fff)
  • fix(desktop): the Linux TUN relays UDP by UDP ASSOCIATE, as Android now does (e099521)
  • docs(release-notes): SaluteJazz under load, Android UDP, rooms per carrier on iOS (a7fb31a)
  • fix(android): olcRTC's UDP relay is off on Jitsi, which has no datagram lane (e1b304f)
  • fix(ci): compare a new branch's first push with where it leaves main (820bcf9)
  • fix(ios): the app's room push and the saved room list are per carrier too (54f8055)
  • fix(android): a quote in the SOCKS login no longer breaks hev's config (37f3427)
  • fix(android): hev relays UDP by UDP ASSOCIATE, which every server speaks (277f782)
  • refactor(android): hev's config as a pure function, tested on the JVM (6e369fc)
  • fix(ios): a location's room list is its own carrier's, not every line with its key (9ceff5b)
  • fix(ci): compare a push with the tip before it, not with its last commit (c191863)
  • docs(release-notes): 1.0.439 shipped, the pending note goes (1bd9f93)

SaluteJazz holds up under heavy downloads

On a slow network a long download over SaluteJazz could stall the whole connection until it dropped: Sber's service queues everything one side sends, and the connection's own keep-alive waited at the back of that queue. The app and the servers now pace what they send through it, so the keep-alive always gets through. The servers made the switch on 23 September; this release is the app's half.

Android and Linux: calls and games through the tunnel

On Android, and on Linux in system-wide (TUN) mode, the tunnel carried no UDP at all, on every protocol: voice and video calls in Telegram, WhatsApp and Discord, games and anything else on UDP failed while web pages worked. The tunnel now hands UDP to the connection the standard way, as the iPhone app always has.

iPhone and iPad: each carrier keeps its own rooms

A location that offers Telemost, WB Stream and SaluteJazz lists one room per carrier. After a network change the app could hand a WB Stream or SaluteJazz connection a Telemost room, which it cannot join, and reconnect slowly or not at all. Each carrier's line now keeps to its own rooms.

Every server a list offers stays in the app

When a server list named two servers alike, as some providers name one location's Telemost and WB Stream lines, a refresh of the list could keep one and silently drop the other. Every line now stays.

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 6320997dcf75afb82b2fec7961362e4ad862be4b
  • Source branch: main
  • olcrtc revision: 7b78fd4a753c0c4b84a60c854a98d0002fc37442 (v0.0.0-20260923124229-7b78fd4a753c), what every platform here was built from
  • App version: 1.0.440
  • Android versionCode: 440
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/35865615434

Gate

Release gate · mode release · app 1.0.440 · engine 7b78fd4a753c (v0.0.0-20260923124229-7b78fd4a753c; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 1 0
salutejazz/mobile lean 7 present 6 1 (1 known)

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine 7b78fd4a753c, app 1.0.440

1 of 40 cells failed · Linux/ubuntu24 · 606 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 14941 ms 25 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 14526 ms (bridge 3 s late), ready 16603 ms (bridge 8 s late) 39 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 14363 ms 26 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 823 ms 16 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.8 Mbit/s, on-top p95 2121 ms 88 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.4 Mbit/s, on-top p95 2369 ms 31 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 15751 ms (bridge 3 s late), ready 16779 ms (bridge 8 s late) 41 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 9.0 MiB, RSS peak 46.1 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 8785 ms 24 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 14546 ms 85 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 13590 ms 22 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 10069 ms 26 s
engine-linux/salutejazz/datachannel/cli/S0 ✅ handshake 10828 ms 280 s
engine-linux/salutejazz/datachannel/mobile/S0 ✅ handshake 9017 ms 30 s
engine-linux/salutejazz/datachannel/mobile/S1 ✅ connect p95 678 ms 17 s
engine-linux/salutejazz/datachannel/mobile/S2 ❌ fail (known: #49): on_top_p95_ms 5685 > 5000 ↓ 3.8 Mbit/s, on-top p95 5685 ms 131 s
engine-linux/salutejazz/datachannel/mobile/S3 ✅ pass (known: #49) ↑ 4.1 Mbit/s, on-top p95 3880 ms 41 s
engine-linux/salutejazz/datachannel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/salutejazz/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/salutejazz/datachannel/mobile/S7 ✅ heap peak 9.7 MiB, RSS peak 46.8 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 4990 ms 12 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 5547 ms 36 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1898 ms 31 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 8.5 Mbit/s, on-top p95 4828 ms 60 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 7.1 Mbit/s, on-top p95 2703 ms 24 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 4 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 12.4 MiB, RSS peak 47.9 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 4172 ms 52 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 3969 ms 50 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 3863 ms 21 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 3874 ms 23 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 849 ms 17 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.2 Mbit/s, on-top p95 3713 ms 81 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 5.4 Mbit/s, on-top p95 3408 ms 31 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 14.1 MiB, RSS peak 51.0 MiB 0 s

1 known failure is tracked by an issue and does not fail the gate.

Compared with v1.0.439 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.78 Mbit/s 5.75 Mbit/s -0%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.74 Mbit/s 5.39 Mbit/s -6%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 8.6 MiB 9.0 MiB +4%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 46.0 MiB 46.1 MiB +0%
engine-linux/salutejazz/datachannel/mobile/S2 throughput_down_bps 1.13 Mbit/s 3.85 Mbit/s +242%
engine-linux/salutejazz/datachannel/mobile/S7 heap_peak_bytes 17.9 MiB 9.7 MiB -46%
engine-linux/salutejazz/datachannel/mobile/S7 rss_peak_bytes 56.9 MiB 46.8 MiB -18%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 9.56 Mbit/s 8.46 Mbit/s -12%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 9.02 Mbit/s 7.06 Mbit/s -22%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 11.2 MiB 12.4 MiB +11%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 51.9 MiB 47.9 MiB -8%
engine-linux/wbstream/vp8channel/mobile/S2 throughput_down_bps 6.32 Mbit/s 6.25 Mbit/s -1%
engine-linux/wbstream/vp8channel/mobile/S3 throughput_up_bps 6.17 Mbit/s 5.43 Mbit/s -12%
engine-linux/wbstream/vp8channel/mobile/S7 he...
Read more

Ghostlane 1.0.439

Ghostlane 1.0.439 Pre-release
Pre-release

Choose a tag to compare

@romanpodpriatov romanpodpriatov released this 22 Sep 21:24

What's new in v1.0.439

Changes since v1.0.438:

  • chore(pin): the engine that gates salutejazz (3cf5f20df43d), Cores b31 (9bf88ca)
  • docs(release-notes): SaluteJazz as support, and the detailed debug logs (80aed73)
  • docs(readme): the four meeting services olcRTC rides (aa53c97)
  • fix(client): jazz is SaluteJazz under its old name (7d07709)
  • feat(gate): a salutejazz leg, with no secret to hold (b8aacca)
  • chore(android): drop the stale olcrtc-sources.jar (2682c38)
  • feat(client): salutejazz is a datachannel-only carrier, with its room hint and release note (175cd36)
  • test(client): say what the salutejazz direct-rule guard proves (cfe0e87)
  • feat(client): salutejazz hosts dial direct under Bypass Russia (732ccdb)
  • docs: old-client tolerance of the salutejazz line (runbook note) (bc2e831)
  • feat(client): the salutejazz carrier through the new engine pin (6f97175)
  • fix(diagnostics): find a crash past the first 512 KB, keep local URLs readable, export the cores' warnings again (f1f47a3)
  • Add opt-in detailed core diagnostics (636e529)
  • docs: point iOS users at TestFlight, where a release lands before the App Store (7fb5ea9)
  • docs(play): regenerate the store screenshots from the new set (08bbbb6)
  • docs: replace the README screenshots with the Ghostlane build (049af05)
  • chore: finish the org rename and drop the personal Sponsors link (55cbdea)
  • chore: point the repository links at the ghostlane-project org (f9b6b86)
  • build(deps): bump the gradle-dependencies group with 8 updates (#52) (01087ff)

SaluteJazz, a third olcRTC carrier

The app now understands SaluteJazz lines: when your provider's server list includes them, they appear as · SJ servers beside Telemost and WB, and need no account.

Locations saved under the old "Jazz" provider now connect through SaluteJazz, the same service under its current name; the separate "Jazz" entry is gone from the picker.

Detailed debug logs

Logs has a "Detailed debug logs" switch that records DNS, routing and connection decisions, for a report to your provider or to us. It is off by default, and the export scrubs addresses and credentials.

Latest desktop, Android, and iOS builds from public GitHub Actions CI.

  • Source commit: 9bf88ca028efb1055fffed58512bd426234e81bb
  • Source branch: main
  • olcrtc revision: 3cf5f20df43d962a047054b8287844f61018b63c (v0.0.0-20260922185727-3cf5f20df43d), what every platform here was built from
  • App version: 1.0.439
  • Android versionCode: 439
  • Android APKs: universal and armeabi-v7a
  • Android App Bundle: the play flavor, as uploaded to Google Play (no self-updater)
  • iOS: this build goes to TestFlight, https://testflight.apple.com/join/sU7aTHQv - days before the App Store, which waits on App Review
  • Workflow: .github/workflows/release.yml
  • Workflow run: https://github.com/ghostlane-project/ghostlane/actions/runs/35776514745

Gate

Release gate · mode release · app 1.0.439 · engine 3cf5f20df43d (v0.0.0-20260922185727-3cf5f20df43d; the pin, on proofkit)

Leg Build Planned Report Passed Failed
jitsi/cli default 4 present 4 0
jitsi/mobile lean 10 present 10 0
telemost/cli default 1 present 1 0
telemost/mobile lean 7 present 7 0
wbstream/cli default 2 present 2 0
wbstream/mobile lean 8 present 8 0
salutejazz/cli default 1 present 0 1 (1 known)
salutejazz/mobile lean 7 present 0 7 (7 known)

Engine unit tests (default and lean builds): success · suite legs: success · run

Gate: local target, engine 3cf5f20df43d, app 1.0.439

8 of 40 cells failed · Linux/ubuntu24 · 646 s

Cell Verdict Key metrics Took
engine-linux/jitsi/datachannel/cli/S0 ✅ handshake 9112 ms 24 s
engine-linux/jitsi/datachannel/cli/S6 ✅ ready 13250 ms (bridge 3 s late), ready 19178 ms (bridge 8 s late) 38 s
engine-linux/jitsi/datachannel/mobile/S0 ✅ handshake 9105 ms 23 s
engine-linux/jitsi/datachannel/mobile/S1 ✅ connect p95 515 ms 10 s
engine-linux/jitsi/datachannel/mobile/S2 ✅ ↓ 5.8 Mbit/s, on-top p95 2032 ms 87 s
engine-linux/jitsi/datachannel/mobile/S3 ✅ ↑ 5.7 Mbit/s, on-top p95 2267 ms 29 s
engine-linux/jitsi/datachannel/mobile/S4 ✅ missed pongs 0 60 s
engine-linux/jitsi/datachannel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 1 s
engine-linux/jitsi/datachannel/mobile/S6 ✅ ready 13013 ms (bridge 3 s late), ready 17305 ms (bridge 8 s late) 36 s
engine-linux/jitsi/datachannel/mobile/S7 ✅ heap peak 8.6 MiB, RSS peak 46.0 MiB 0 s
engine-linux/jitsi/seichannel/cli/S0 ✅ handshake 9893 ms 20 s
engine-linux/jitsi/seichannel/mobile/S0 ✅ handshake 9937 ms 22 s
engine-linux/jitsi/vp8channel/cli/S0 ✅ handshake 9141 ms 11 s
engine-linux/jitsi/vp8channel/mobile/S0 ✅ handshake 8997 ms 17 s
engine-linux/salutejazz/datachannel/cli/S0 ❌ fail (known: #49): push_ok 0 != 1 handshake 11134 ms 130 s
engine-linux/salutejazz/datachannel/mobile/S0 ❌ fail (known: #49): push_ok 0 != 1 handshake 12238 ms 100 s
engine-linux/salutejazz/datachannel/mobile/S1 ❌ fail (known: #49): connect_ok 24 of connect_total 48; connect_p95_ms 60002 > 5000 connect p95 60002 ms 88 s
engine-linux/salutejazz/datachannel/mobile/S2 ❌ fail (known: #49): pull_ok 0 of pull_total 6; throughput_down_bps 1125681.4051711257 < 1400000; on_top_ok 3 of on_top_total 4; on_top_p95_ms 24146 > 5000 ↓ 1.1 Mbit/s, on-top p95 24146 ms 34 s
engine-linux/salutejazz/datachannel/mobile/S3 ❌ fail (known: #49): push_ok 0 of push_total 4; throughput_up_bps 0 < 1600000; on_top_ok 1 of on_top_total 2; on_top_p95_ms 48087 > 5000 ↑ 0.0 Mbit/s, on-top p95 48087 ms 59 s
engine-linux/salutejazz/datachannel/mobile/S4 ❌ fail (known: #49): reconnects 1 > 0; final_pull_ok 0 != 1 missed pongs 0 120 s
engine-linux/salutejazz/datachannel/mobile/S5 ❌ fail (known: #49): scenario error: S5 burst 1: udp associate: udp associate answered [5 4 0 1]: unexpected SOCKS5 reply; answered_1 0 < 63; answered_2 0 < 63 60 s
engine-linux/salutejazz/datachannel/mobile/S7 ❌ fail (known: #49): heap grew by 14180352 > 13107200 (heap_baseline_bytes 4628480, heap_peak_bytes 18808832); goroutines grew by 69 > 20 (goroutines_idle 25, goroutines_after 94) heap peak 17.9 MiB, RSS peak 56.9 MiB 0 s
engine-linux/telemost/vp8channel/cli/S0 ✅ handshake 4944 ms 11 s
engine-linux/telemost/vp8channel/mobile/S0 ✅ handshake 4938 ms 33 s
engine-linux/telemost/vp8channel/mobile/S1 ✅ connect p95 1202 ms 28 s
engine-linux/telemost/vp8channel/mobile/S2 ✅ ↓ 9.6 Mbit/s, on-top p95 3780 ms 53 s
engine-linux/telemost/vp8channel/mobile/S3 ✅ ↑ 9.0 Mbit/s, on-top p95 1966 ms 19 s
engine-linux/telemost/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/telemost/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 4 s
engine-linux/telemost/vp8channel/mobile/S7 ✅ heap peak 11.2 MiB, RSS peak 51.9 MiB 0 s
engine-linux/wbstream/seichannel/cli/S0 ✅ handshake 5401 ms 57 s
engine-linux/wbstream/seichannel/mobile/S0 ✅ handshake 4506 ms 46 s
engine-linux/wbstream/vp8channel/cli/S0 ✅ handshake 4164 ms 21 s
engine-linux/wbstream/vp8channel/mobile/S0 ✅ handshake 4162 ms 25 s
engine-linux/wbstream/vp8channel/mobile/S1 ✅ connect p95 830 ms 20 s
engine-linux/wbstream/vp8channel/mobile/S2 ✅ ↓ 6.3 Mbit/s, on-top p95 3049 ms 80 s
engine-linux/wbstream/vp8channel/mobile/S3 ✅ ↑ 6.2 Mbit/s, on-top p95 2898 ms 27 s
engine-linux/wbstream/vp8channel/mobile/S4 ✅ missed pongs 0 61 s
engine-linux/wbstream/vp8channel/mobile/S5 ✅ burst 1 answered 64/64, burst 2 answered 64/64 2 s
engine-linux/wbstream/vp8channel/mobile/S7 ✅ heap peak 14.1 MiB, RSS peak 55.1 MiB 0 s

8 known failures are tracked by issues and do not fail the gate.

Compared with v1.0.438 at severity warn (warn reports a regression, fail also fails the gate).

Against the previous release

Severity warn: a regression is reported and does not fail the run.

Cell Metric Before Now Change
engine-linux/jitsi/datachannel/mobile/S2 throughput_down_bps 5.83 Mbit/s 5.78 Mbit/s -1%
engine-linux/jitsi/datachannel/mobile/S3 throughput_up_bps 5.78 Mbit/s 5.74 Mbit/s -1%
engine-linux/jitsi/datachannel/mobile/S7 heap_peak_bytes 8.6 MiB 8.6 MiB -0%
engine-linux/jitsi/datachannel/mobile/S7 rss_peak_bytes 46.3 MiB 46.0 MiB -1%
engine-linux/telemost/vp8channel/mobile/S2 throughput_down_bps 10.02 Mbit/s 9.56 Mbit/s -5%
engine-linux/telemost/vp8channel/mobile/S3 throughput_up_bps 9.36 Mbit/s 9.02 Mbit/s -4%
engine-linux/telemost/vp8channel/mobile/S7 heap_peak_bytes 12.3 MiB 11.2 MiB -9%
engine-linux/telemost/vp8channel/mobile/S7 rss_peak_bytes 51.7 MiB 51.9 MiB +0%
engine-linux/wbstream/vp8channel/mobile/S2 throughput_down_bps 6.25 Mbit/s 6.32 Mbit/s +1%
`engine-linux/wbstream/vp8channel/mo...
Read more

ios-cores-sb1.13.14-lxv1.260711.0-rtc7b78fd4a753c-b32: docs(release-notes): 1.0.439 shipped, the pending note goes

Choose a tag to compare

sing-box 1.13.14 + libXray v1.260711.0 + olcrtc v0.0.0-20260923124229-7b78fd4a753c bound into one framework, iOS and macOS slices, for the NetworkExtension on both.