Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 29 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,33 @@ begin at `1.0.0`.

## [Unreleased]

## [0.2.1] — 2026-08-10

### Security
- All durable control-plane `ClientWrite` commands require `admin_proof`,
including stream ownership (not only token/stream admin mutations).
- Peer `AdminDrain` / `AdminResume` carry and verify `admin_proof`.
- Network `DrainStream` / `RevokeViewer` hints are ignored unless local durable
state already shows pending delete or a missing viewer.

### Fixed
- Dual-role RTMP connections release only the deleted publish or play role;
`pending_relay` is cleared; the TCP connection is kicked only when no
authorized role remains.
- Async stream delete drains are capped (300s). Stuck ConnState roles are
abandoned with ownership release, media unsubscribe, and force-close so
finalize cannot hang forever.
- `relay_key` is not pointed at a stream that is still in `deleted_streams`
when a role release fails mid-drain.
- `admin_proof` is computed only on `ForwardToLeader` so local-leader Raft
writes (e.g. health / ownership) work before session hooks are registered.
- Docker image builds again on Alpine/musl (builder + runtime) instead of a
glibc binary under Alpine/`gcompat` (container exit 127). Musl release
links with `openssl-libs-static`.

### Changed
- Package version `0.2.0` → `0.2.1`.

## [0.2.0] — 2026-08-09

### Added
Expand Down Expand Up @@ -432,7 +459,8 @@ plaintext RTMP and RTMPS.
### Planned
- REST API enhancements for server management

[Unreleased]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.2.0...HEAD
[Unreleased]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.2.1...HEAD
[0.2.1]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.2.0...v0.2.1
[0.2.0]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.1.9...v0.2.0
[0.1.9]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.1.8...v0.1.9
[0.1.8]: https://github.com/OpenRTMP/librtmp2-server/compare/v0.1.7...v0.1.8
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "librtmp2-server"
version = "0.2.0"
version = "0.2.1"
edition = "2024"
rust-version = "1.95"
license = "MIT"
Expand Down