v1.15.4

Friedrich-M/UniMatev1.15.4Sep 30, 2026by sleep3r

Upgrading?

AI Summary

This release fixes unnecessary WEB relay restarts by refining health checks to properly respect listen addresses and handle 404 errors without interrupting sessions.

Key Highlights

  • Health checks now respect `[web].listen` and legacy `host` settings, including IPv6 and non-loopback listeners.
  • Expected 404 responses without `public_dir` no longer restart a healthy relay or interrupt WEB sessions.
  • Public HTTPS checks accept the expected 404 while reporting other errors without restarting the relay.

New Features

  • Improved health check logic for network bindings
  • Better handling of WEB sessions during 404 errors
  • Added regression tests for health checks

Full Release Notes

<details open>
<summary>🇷🇺 Что нового (RU)</summary>

`v1.15.4` — исправление ложных перезапусков WEB-релея ([#431](https://github.com/sleep3r/mtproto.zig/issues/431)).

- Проверка состояния теперь учитывает `[web].listen` и совместимый ключ `host`, включая IPv6 и привязку к отдельному сетевому интерфейсу.
- Штатный ответ 404 без `public_dir` больше не вызывает перезапуск исправного релея и обрыв WEB-сессий. Перезапуск происходит только после трёх неудачных локальных запросов из-за ошибок соединения или передачи данных.
- Публичная HTTPS-проверка принимает штатный 404, но продолжает сообщать об остальных HTTP-ошибках и сбоях TLS/сети без перезапуска релея. Добавлены регрессионные тесты.

Обновление: `sudo mtbuddy update`, затем `sudo mtbuddy update --force`. Первый запуск заменяет mtbuddy, но завершается со старой встроенной логикой; второй устанавливает исправленный health-скрипт. Если v1.15.4 уже установлена автоматически, достаточно `sudo mtbuddy update --force`.

Если systemd настроен на собственную копию health-скрипта, обновите её или уберите переопределение, чтобы использовать `/usr/local/bin/mtproto-web-health.sh`. Настраивать `public_dir` для обхода этой ошибки больше не требуется.

</details>

---

<details>
<summary>🇬🇧 Release notes (EN)</summary>

`v1.15.4` fixes unnecessary WEB relay restarts ([#431](https://github.com/sleep3r/mtproto.zig/issues/431)).

- Health checks now respect `[web].listen` and the legacy `host` alias, including IPv6 and non-loopback listeners.
- The expected 404 without `public_dir` no longer restarts a healthy relay or interrupts WEB sessions. Only three failed local transfers trigger a restart.
- The public HTTPS check accepts the expected 404 while still reporting other HTTP errors and TLS/network failures without restarting the relay. Added regression tests.

Update with `sudo mtbuddy update`, then `sudo mtbuddy update --force`. The first invocation replaces mtbuddy but finishes with the old embedded logic; the second installs the corrected health script. If v1.15.4 was already installed automatically, only `sudo mtbuddy update --force` is needed.

If a systemd override points to your own copy of the health script, update that copy or remove the override to use `/usr/local/bin/mtproto-web-health.sh`. Configuring `public_dir` is no longer required as a workaround.

</details>

Related Repositories