|
1418 | 1418 | </span> |
1419 | 1419 | </a> |
1420 | 1420 |
|
| 1421 | +</li> |
| 1422 | + |
| 1423 | + <li class="md-nav__item"> |
| 1424 | + <a href="#4100" class="md-nav__link"> |
| 1425 | + <span class="md-ellipsis"> |
| 1426 | + |
| 1427 | + 4.10.0 |
| 1428 | + |
| 1429 | + </span> |
| 1430 | + </a> |
| 1431 | + |
1421 | 1432 | </li> |
1422 | 1433 |
|
1423 | 1434 | <li class="md-nav__item"> |
|
1611 | 1622 | </span> |
1612 | 1623 | </a> |
1613 | 1624 |
|
| 1625 | +</li> |
| 1626 | + |
| 1627 | + <li class="md-nav__item"> |
| 1628 | + <a href="#4100" class="md-nav__link"> |
| 1629 | + <span class="md-ellipsis"> |
| 1630 | + |
| 1631 | + 4.10.0 |
| 1632 | + |
| 1633 | + </span> |
| 1634 | + </a> |
| 1635 | + |
1614 | 1636 | </li> |
1615 | 1637 |
|
1616 | 1638 | <li class="md-nav__item"> |
|
1756 | 1778 |
|
1757 | 1779 | <h1 id="changelog">Changelog<a class="headerlink" href="#changelog" title="Permanent link">¶</a></h1> |
1758 | 1780 | <h2 id="unreleased">Unreleased<a class="headerlink" href="#unreleased" title="Permanent link">¶</a></h2> |
1759 | | -<p>Graceful connection draining on secret removal (<a href="https://github.com/teleproxy/teleproxy/issues/45">#45</a>).</p> |
| 1781 | +<h2 id="4100">4.10.0<a class="headerlink" href="#4100" title="Permanent link">¶</a></h2> |
| 1782 | +<p>Graceful connection draining on secret removal (<a href="https://github.com/teleproxy/teleproxy/issues/45">#45</a>) and a brand-new signed RPM repository (<a href="https://github.com/teleproxy/teleproxy/issues/21">#21</a>).</p> |
1760 | 1783 | <ul> |
1761 | 1784 | <li><strong>Zero-downtime secret rotation</strong> — removing a secret from <code>config.toml</code> and sending SIGHUP no longer drops the in-flight connections that were authenticated under it. The slot enters a "draining" state: new connections matching that secret are rejected, but existing ones keep working until they close on their own or <code>drain_timeout_secs</code> (default 300, <code>0</code> = infinite) elapses. Re-adding a draining secret revives the same slot — counters and IP tracking carry over.</li> |
1762 | 1785 | <li>New TOML option <code>drain_timeout_secs</code> (reloadable). Pinned <code>-S</code> CLI secrets are immutable across SIGHUP and never drain.</li> |
1763 | 1786 | <li>New stats: <code>secret_<lbl>_draining</code>, <code>secret_<lbl>_drain_age_seconds</code>, <code>secret_<lbl>_rejected_draining</code>, <code>secret_<lbl>_drain_forced</code>. Same fields exposed in Prometheus as <code>teleproxy_secret_draining</code>, <code>teleproxy_secret_drain_age_seconds</code>, <code>teleproxy_secret_rejected_draining_total</code>, <code>teleproxy_secret_drain_forced_total</code>.</li> |
1764 | 1787 | <li>Slot capacity expanded internally: 16 active secrets at a time as before, plus up to 16 additional draining slots.</li> |
1765 | 1788 | <li>Fixes a latent bug where the per-secret connection counter could go negative if a TLS connection was closed between the TLS handshake and the obfs2 init.</li> |
| 1789 | +<li><strong>Signed dnf repository</strong> at <a href="https://teleproxy.github.io/repo/">https://teleproxy.github.io/repo/</a> serving RHEL 9, RHEL 10, AlmaLinux, Rocky Linux, and Fedora 41/42 on x86_64 and aarch64. Install on any of these distros with <code>dnf install https://teleproxy.github.io/repo/teleproxy-release-latest.noarch.rpm && dnf install teleproxy && systemctl enable --now teleproxy</code>. Packages are signed with an RSA 4096 / SHA-512 key (RHEL 9 rpm-sequoia compatible). The first install generates a random secret in <code>/etc/teleproxy/config.toml</code>; subsequent <code>dnf upgrade</code> runs swap the binary and never touch user-edited config; <code>dnf remove</code> leaves the config file in place. Built automatically on each tag from the existing static linux binaries via <a href="https://nfpm.goreleaser.com/">nfpm</a>, driven by <code>repository_dispatch</code> from the release workflow into the new <a href="https://github.com/teleproxy/repo">teleproxy/repo</a> repository.</li> |
1766 | 1790 | </ul> |
1767 | 1791 | <h2 id="490">4.9.0<a class="headerlink" href="#490" title="Permanent link">¶</a></h2> |
1768 | 1792 | <p>PROXY protocol v1/v2 listener support (<a href="https://github.com/teleproxy/teleproxy/issues/50">#50</a>) and per-IP top-N Prometheus metrics (<a href="https://github.com/teleproxy/teleproxy/issues/46">#46</a>).</p> |
|
0 commit comments