## matrix-construct/tuwunel — v1.8.1…v1.8.2

_119 commits._

### Features
- **add a delete-backups admin command** (ab96a83)
- **add a SELinux policy module and selinux subpackage for the RPM (closes #412)** (24c8d5f)
- **add COPR repo build status to README** (91c9638)
- **add COPR build submission workflow for tagged releases (#251)** (121c2a7)
- **add conduwuit conflict and adduser dependency to the debian package** (272c6df)
- **add RPM specfile and COPR make-srpm packaging (fixes #251)** (571f3bf)
- **add online backup restoration via --restore-backup and a verify-backup command** (c2ced2a)
- **add a container HEALTHCHECK via a new --health-check liveness probe** (2f269c2)
- **add dns_servers config option to make the /etc/resolv.conf dependency optional** (ed93437)
- **add funding and enterprise initiative page with independent /sync benchmark results** (600e10c)
- **macros: Add the #[async_noinline] attribute macro.** (e3cd0c8)
- **config: Add admin_output_max_events and admin_output_threads options.** (8fc76fc)
- **admin: Add a room command to list forward extremities.** (a6447c2)
- **admin: Add a room command to prune forward extremities to a target.** (94cffcf)
- **state: Add a scored forward-extremity prune engine.** (ffda050)
- **admin: Add a debug command to prune a room's forward extremities.** (53dac1f)
- **service/client: Add url_preview_media_user_agent config option.** (8cd281b)
- **admin: Add a debug command reporting local state derivation for an event.** (1d57f3d)
- **service/client: Add url_preview_user_agent config option.** (29a22e8)
- **service/media: Relay URL preview media; support og:video and og:audio.** (c4251bc)
- **Declare support for Matrix v1.18 and v1.19.** (d163035)

### Fixes
- **fix clippy's option_if_let_else in the non-linux builder_interface** (64a11f8)
- **federation: Classify non-JSON responses as transient and fix override eviction.** (b33415d)
- **fix systemd unit stuck in deactivating state after in-place admin restart** (68e034d)
- **Merge remote-tracking branch 'obodnikov/fix/usage-nix-fallback'** (87c7eb5)
- **Merge remote-tracking branch 'obodnikov/fix/nonunix-ctrlc-shutdown'** (8210456)
- **Merge remote-tracking branch 'obodnikov/fix/admin-macro-cfg-propagation'** (363b93c)
- **sys/usage: fix Usage on non-unix and macOS thread_usage** (5f77b10)
- **oidc: Fix the native login redirect completion. (fixes #504)(fixes #505)** (ee64278)
- **federation: Fix the incoherent peer-status backoff gate.** (da0c3f6)

### Backend
- **Bump 1.8.2.** (9099def)
- **service/media: Treat an empty delete-range as zero deletions.** (06a7b7c)
- **service: Box knock, leave, and incoming-pdu to contain their codegen.** (502db57)
- **mark complement test TestACLsForEDUs as passing** (9cb95bd)
- **bump ruma to always emit the room ephemeral section in /sync** (79bb4af)
- **prefer clippy's large_enum_variant over variant_size_differences** (830256b)
- **re-enable the unused_braces and cognitive_complexity lints** (2412ef6)
- **remove lint names the compiler no longer recognizes** (1b3f61a)
- **oidc: Show the login interstitial for native https redirects. (fixes #514)** (5eca254)
- **core/config: Default resolve_state_locally_shadow to true.** (139e848)
- **client/admin: Propagate purge_media_cache scan errors.** (0dd57e3)
- **service/media: Recover a URL preview whose promotion failed.** (652cb31)
- **service/admin: Post a notice when attaching command output fails.** (5b9bd86)
- **client/admin: Reject a user redaction the redactor cannot apply.** (99b1ad5)
- **service/migrations: Clear the peer-status reachability rows once.** (ec049f6)
- **service/timeline: Keep the forward-extremity band on a soft-failed event.** (e0f1034)
- **clippy: Eliminate renamed and removed lints and renamed_and_removed_lints.** (6e9c727)
- **clippy: Enable significant_drop_in_scrutinee.** (b180a27)
- **clippy: Enable option_if_let_else.** (3720d5b)
- **test that the documented config defaults match the code** (1c6ba31)
- **correct the documented config defaults that disagree with the code** (bb9dfb2)
- **use the imported sd_notify names instead of inline paths in run.rs** (d718600)
- **instrument the database backup span at debug level** (7aa734c)
- **error on backup requests that cannot create a backup (#131)** (f6de800)
- **propagate backup engine errors instead of reporting success (#131)** (9b54209)
- **make the doc job use the test profile instead of release** (c72a9e1)
- **make nix cargo test use debug profile instead of release** (adb95af)
- **document the SELinux policy in the rpm readme (#412)** (09bd77c)
- **check the apt repository on debian and ubuntu** (128f63b)
- **test the apt repository installation in the package checks** (eddf945)
- **tolerate the dnf install failing for non-root local SRPM builds (#251)** (5d39e9e)
- **build-require clang for its bindgen resource headers on openEuler (#251)** (ec3a8dd)
- **build-require systemd macros via boolean dependency for openEuler (#251)** (0787607)
- **build-require ca-certificates for chroots that omit the trust bundle (#251)** (6f79a31)
- **mention the apt repository in the readme and deployment docs** (8889515)
- **document the COPR repository for rpm-based distributions (#251)** (4a3f872)
- **exclude prerelease tags from COPR build submission (#251)** (33dec06)
- **publish releases to the apt repository from CI** (f01d962)
- **unset inherited rpm build flags breaking aws-lc-sys feature test (#251)** (37da758)
- **document the apt repository and homeserver migration in the debian readme** (9c0f7a0)
- **adopt conduwuit and conduit databases and preserve data in the debian scripts** (9e64c56)
- **remove autocopr workflow superseded by .copr/Makefile versioning (#251)** (9dee8cd)
- **client/admin: Serve the Synapse server notice endpoints. (#38)** (231201d)
- **client/admin: Serve the Synapse user redaction and login-as endpoints. (#38)** (5c352c9)
- **client/admin: Serve the Synapse federation destination endpoints. (#38)** (04a274c)
- **client/admin: Serve the Synapse media info, purge, and statistics endpoints. (#38)** (83d5568)
- **service/media: Store url previews as CBOR and cache relay media. (closes #394)** (92bef7a)
- **service/users: Treat an empty device_id as unspecified.** (cfe73cb)
- **Merge remote-tracking branch 'az4521/url-preview-mediaproxy'** (af159d1)
- **service/membership: Apply #[async_noinline] to the room join.** (528d056)
- **Merge remote-tracking branch 'mindroom-ai/caveman/upstream-zero-otk-counts'** (b7c539c)
- **service/membership: Box the join entry to contain its codegen.** (60a3c05)
- **api/router: Type-erase handler closures passed to axum.** (311aaea)
- **core/config: Raise max_fetch_prev_events default to 1024.** (f1afa3b)
- **client/admin: Emit a creation_ts sentinel instead of null for Synapse users.** (43af93b)
- **admin: Split long command output across reply or thread events. (closes #471)** (117138f)
- **admin: Attach oversized command output as a file. (fixes #73)** (79b9a50)
- **admin: Accumulate command output in a size-capped String buffer.** (9d62bf1)
- **admin: Build command response events at the respond layer, not the processor.** (933d843)
- **users: Match Synapse one-time-key count shape.** (007033c)
- **admin: Split response path and notices out of the service root.** (58305d6)
- **tests: Prove push-gateway conformance and document UnifiedPush. (closes #20)** (7d7abd0)
- **service/pusher: Remove pushers rejected by the push gateway. (#20)** (0237736)
- **docker: Enable realtime test scheduling and tune bench priorities.** (005fb94)
- **Merge remote-tracking branch 'mindroom-ai/caveman/upstream-rtc-transport-discovery'** (ca314dd)
- **users: Preserve zero one-time-key counts.** (164b8da)
- **api/client: Allow MatrixRTC transport discovery without a token.** (a1776c3)
- **api/server: Return 404 for an unknown user on the profile query.** (76ea07f)
- **database: Reborrow the writer field to avoid a double mutable reference.** (d98d653)
- **service/timeline: Refuse a detached non-create local event.** (1f1dea6)
- **service/event_handler: Cap forward extremities on the receive path.** (5d466e8)
- **service/event_handler: Abort the local state build task on caller cancellation.** (37bfb62)
- **database: Refuse to initialize over remnants without a manifest. (fixes #510)** (64d8612)
- **appservice: Fan device-list changes out to MSC3202 appservices. (closes #502)** (e8973d6)
- **appservice: Send MSC3202 key counts and fallback types in transactions. (#502)** (b561c91)
- **appservice: Send to-device events in transactions (MSC4203). (closes #501)** (7071c75)
- **sending: Tag appservice queue values for typed event variants.** (ad72833)
- **service/event_handler: Derive incoming event state from local ancestry. (#419)** (ab14356)
- **signals: actually shut down on Ctrl+C on non-unix targets** (e18defd)
- **macros: forward cfg attributes onto generated admin dispatch arms** (8870908)
- **service/event_handler: Extract the fork branch state and auth chain gather.** (2ff5ed4)
- **typos: ignore the mis- hyphenated prefix.** (a7ac4fa)
- **Bump dependencies.** (21ffb7d)

### Docs
- **docs: Refinements for the EDP page.** (b2f805e)
- **docs: Correct the notification_push_path description.** (e16a3ae)
- **docs: Move the status glyph to the leftmost column.** (1567ff2)
- **docs: Mark the served Synapse media, federation, and moderation endpoints.** (4d68990)

### Chore
- **ci: Reap idle build cache and bound the per-actor builder footprint.** (5947c69)
- **ci: Place the summary delta glyph left of its value.** (d584134)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/matrix-construct/tuwunel?utm_source=github-action)._