Skip to content

Releases: crim50n/tg-ws-proxy-android

1.6.0

Choose a tag to compare

@github-actions github-actions released this 31 Aug 21:55

TG WS Proxy 1.6.0

Highlights

  • Added a more efficient default power profile based on background CPU and radio-wakeup testing.
  • Device wake lock, prepared WebSocket connections, periodic route checks, and background Cloudflare-domain updates are now disabled by default.
  • The default idle WebSocket keepalive interval is now 180 seconds instead of 30 seconds.

Existing installations

  • Existing installations are migrated only when all five effective power settings still match the previous defaults.
  • If any power setting differs from the previous default, the complete profile is preserved without modification.
  • Users whose profile is migrated see a one-time explanation listing every changed setting and where to adjust it if their network requires a more persistent background connection.

Interface and guidance

  • Added scrollable English and Russian migration guidance suitable for smaller screens and larger accessibility font sizes.
  • Updated the Power usage help section to explain the new defaults, expected battery benefit, reliability tradeoffs, and exact migration rule.

1.5.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 21:35

TG WS Proxy 1.5.0

Highlights

  • Diagnostics now run continuously, so a privacy-safe report can be shared immediately after a problem without reproducing it under manual recording.
  • Added a bounded, queued, and batched diagnostic writer with severity levels, crash capture, seven-day event retention, and approximately 4 MB of rotating history.
  • Added Android themed-icon support and hardened configuration, backup, and update-installer integration.

Reliability

  • Made proxy runtime resources generation-owned so a delayed old runtime cannot stop or clear its replacement.
  • Bounded the complete runtime shutdown and prevented restart from launching a second runtime after a stop timeout.
  • Kept the CPU wake lock for the configured proxy runtime while ensuring it is released on normal stop, failure, timeout, and service destruction.
  • Cancelled obsolete Cloudflare-domain refresh requests and prevented stale responses from replacing a newer domain pool.
  • Improved service startup and shutdown ordering across network callbacks, route probes, notifications, and background refresh work.

Diagnostics and privacy

  • Moved diagnostic initialization, export, and clearing away from the main thread.
  • Added per-event retention, overflow accounting, immutable report snapshots, and deterministic ordering for export and clear actions.
  • Redacted proxy links, secrets, IP addresses, configured hostnames, and hostnames found in exception messages before display and export.
  • Preserved useful crash stack identifiers while applying privacy filtering to legacy and current diagnostic entries.
  • Removed manual start/finish recording controls and restored diagnostic-log scroll position across configuration changes.

1.4.0

Choose a tag to compare

@github-actions github-actions released this 17 Jul 18:36

TG WS Proxy 1.4.0

Highlights

  • Added secure in-app update downloads from GitHub releases with checksum, package, version, and signing-certificate verification.
  • Added independent power controls for CPU wake lock, prepared WebSocket connections, route probes, Cloudflare refresh, WebSocket keepalive, and notification traffic updates.
  • Redesigned Settings around Local proxy, Connection, Power usage, Interface, and Support and diagnostics.
  • Moved the connection log into Settings and added a visible recording indicator on the main screen.

Reliability

  • Fixed proxy shutdowns that could remain stuck while blocking socket reads occupied all IO workers.
  • Added deterministic closure of active client and upstream sockets, a dedicated lifecycle thread, and bounded runtime shutdown.
  • Added explicit Starting, Running, Restarting, Stopping, and Stopped service states across the app and Quick Settings tile.
  • Added direct-media stall detection with temporary per-datacenter Cloudflare fallback.
  • Added system-DNS fallback through bootstrapped DNS-over-HTTPS with caching, shared outage cooldown, and controlled recovery probes.
  • Added clear handling for a local proxy port already being in use.

Diagnostics and interface

  • Diagnostic recording now continues until manually finished and rotates approximately 4 MB of recent events.
  • Added a warning when many connections use obsolete proxy settings, including instructions and an explanation of their battery and connection impact.
  • Added event-driven restoration of a dismissed foreground notification without periodic polling.
  • Added optional traffic-free notifications and reduced periodic background work when power-related features are disabled.
  • Improved bilingual connection, diagnostics, update, and troubleshooting guidance.

1.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Jul 12:00

TG WS Proxy 1.3.0

Highlights

  • Added automatic per-network route selection, enabled by default.
  • Added lightweight direct WebSocket, Cloudflare, and TCP route probes after startup and network changes.
  • Automatic decisions are temporary and never overwrite the user's saved manual routing settings.
  • The active runtime route order is now shown on the main screen.
  • Route-aware performance defaults use a 256 KB buffer and disable direct WS pool warmup in Cloudflare-first mode.

Interface

  • Redesigned Settings with automatic saving and no Save/Cancel buttons.
  • Manual routing, server, buffer, and pool controls are shown only when Automatic connection mode is disabled.
  • Added System, Light, Dark, and Material You appearance options.
  • Added dedicated Help, Connection log, and About screens.
  • Removed the compact traffic card; detailed statistics remain optional.

Diagnostics

  • Added an always-available in-memory live connection log.
  • Added explicit five-minute diagnostic report recording and export.
  • Diagnostic deletion now removes saved reports without clearing visible in-memory events.
  • Expanded redaction for proxy links, secrets, IPv4, and IPv6 addresses.

Reliability

  • Improved network handover detection for Wi-Fi, cellular, VPN, and Ethernet.
  • Added runtime isolation for delayed route-probe results.
  • Added conservative route-switch criteria that preserve a route when successful connections are observed.
  • Settings now restart a running proxy only after effective connection changes.
  • Added outbound WebSocket ping, TCP keepalive, Cloudflare retry parallelism, and HTTP 429 cooldown handling.

1.2.1

Choose a tag to compare

@github-actions github-actions released this 14 Jul 19:27

TG WS Proxy 1.2.1

This patch release improves connection stability and diagnostic privacy.

Changed

  • Keep active WebSocket and direct TCP connections alive during idle periods.
  • Try Cloudflare fallback domains with limited parallelism.
  • Back off Cloudflare domains that return HTTP 429, from 45 seconds up to
    5 minutes.
  • Stop Cloudflare domain refresh when the proxy runtime exits.
  • Avoid recording normal coroutine cancellation as a client-session failure.

Diagnostics

  • Redact IPv4 and IPv6 addresses from exported diagnostic logs.
  • Preserve packet counters while continuing to redact sensitive packet data.

1.2.0

Choose a tag to compare

@github-actions github-actions released this 14 Jul 16:31

TG WS Proxy 1.2.0

This release simplifies the main screen and improves runtime control.

Changed

  • Simplify proxy control to a single Connect/Stop action.
  • Show the connection link in a compact read-only field with a copy action.
  • Keep restart in the service notification instead of the main screen.
  • Show uptime with proxy status and use a compact error-statistics row.
  • Show only total traffic by default, with detailed runtime counters controlled
    by an Interface setting.
  • Reset connection and traffic statistics on every proxy start or restart.
  • Generate a replacement secret as a settings draft until Save is pressed.
  • Keep Save and Cancel visible above the software keyboard.

Added

  • Restart action in the foreground-service notification.
  • Live traffic in the service notification.
  • Optional 30-minute local diagnostic recording with redaction, size limits,
    explicit export, and automatic retention cleanup.
  • Automatic daily and manual update checks through the latest GitHub Release,
    with the repository's static update.json manifest as a fallback.
  • Complete English and Russian strings for the updated controls.

Notification restart closes all client and upstream connections, rebuilds the
WebSocket pool, reloads saved settings, and starts a fresh proxy session.

1.1.0

Choose a tag to compare

@github-actions github-actions released this 13 Jul 21:14

TG WS Proxy 1.1.0

This release focuses on transport reliability, bounded resource usage, and
Android service lifecycle correctness.

Changed

  • Rebuild the direct WebSocket pool after Wi-Fi or mobile network changes.
  • Use validated Cloudflare domains with independent sticky selection per DC.
  • Expand the bundled Cloudflare fallback domain pool.
  • Apply a cooldown to direct WebSocket IPs that time out.
  • Validate listener, DC redirect, Cloudflare, buffer, pool, and secret settings.
  • Report the proxy as running only after the local listener is bound.

Fixed

  • Remove unsafe mid-session retry behavior that could desynchronize MTProto AES-CTR streams.
  • Bound TLS handshakes, HTTP upgrade responses, WebSocket frames, and MTProto packets.
  • Validate WebSocket upgrade headers and support fragmented frames.
  • Close active client sockets during service shutdown.
  • Prevent stale pool refill tasks from restoring connections from an old network.
  • Stop logging the MTProto secret and full proxy link.
  • Prevent the persisted proxy secret from being included in Android backups.

Verification

  • Added unit coverage for MTProto splitting, packet limits, secret parsing,
    DC redirect parsing, and Cloudflare domain validation.
  • Release builds run unit tests and Android lint before APK publication.