diff --git a/.forgejo/workflows/release-image.yml b/.forgejo/workflows/release-image.yml index 55b303b2..92a5b7c4 100644 --- a/.forgejo/workflows/release-image.yml +++ b/.forgejo/workflows/release-image.yml @@ -180,7 +180,7 @@ jobs: file: "docker/Dockerfile" build-args: | GIT_COMMIT_HASH=${{ github.sha }}) - GIT_COMMIT_HASH_SHORT=${{ env.COMMIT_SHORT_SHA }} + GIT_COMMIT_HASH_SHORT=${{ env.COMMIT_SHORT_SHA }}) GIT_REMOTE_URL=${{github.event.repository.html_url }} GIT_REMOTE_COMMIT_URL=${{github.event.head_commit.url }} platforms: ${{ matrix.platform }} diff --git a/Cargo.lock b/Cargo.lock index ec6e848d..160be0c7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -771,7 +771,7 @@ dependencies = [ [[package]] name = "conduwuit" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "clap", "conduwuit_admin", @@ -800,7 +800,7 @@ dependencies = [ [[package]] name = "conduwuit_admin" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "clap", "conduwuit_api", @@ -821,7 +821,7 @@ dependencies = [ [[package]] name = "conduwuit_api" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "async-trait", "axum", @@ -853,14 +853,14 @@ dependencies = [ [[package]] name = "conduwuit_build_metadata" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "built 0.8.0", ] [[package]] name = "conduwuit_core" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "argon2", "arrayvec", @@ -919,7 +919,7 @@ dependencies = [ [[package]] name = "conduwuit_database" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "async-channel", "conduwuit_core", @@ -937,7 +937,7 @@ dependencies = [ [[package]] name = "conduwuit_macros" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "itertools 0.14.0", "proc-macro2", @@ -947,7 +947,7 @@ dependencies = [ [[package]] name = "conduwuit_router" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "axum", "axum-client-ip", @@ -981,7 +981,7 @@ dependencies = [ [[package]] name = "conduwuit_service" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "async-trait", "base64 0.22.1", @@ -1018,7 +1018,7 @@ dependencies = [ [[package]] name = "conduwuit_web" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" dependencies = [ "askama", "axum", diff --git a/Cargo.toml b/Cargo.toml index af904447..1abff107 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ license = "Apache-2.0" readme = "README.md" repository = "https://forgejo.ellis.link/continuwuation/continuwuity" rust-version = "1.86.0" -version = "0.5.0-rc.6" +version = "0.5.0-rc.5" [workspace.metadata.crane] name = "conduwuit" diff --git a/SECURITY.md b/SECURITY.md index 2869ce58..a9aa183e 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -20,10 +20,10 @@ We may backport fixes to the previous release at our discretion, but we don't gu We appreciate the efforts of security researchers and the community in identifying and reporting vulnerabilities. To ensure that potential vulnerabilities are addressed properly, please follow these guidelines: -1. **Contact members of the team directly** over E2EE private message. +1. Contact members of the team over E2EE private message. - [@jade:ellis.link](https://matrix.to/#/@jade:ellis.link) - [@nex:nexy7574.co.uk](https://matrix.to/#/@nex:nexy7574.co.uk) -2. **Email the security team** at [security@continuwuity.org](mailto:security@continuwuity.org). This is not E2EE, so don't include sensitive details. +2. **Email the security team** directly at [security@continuwuity.org](mailto:security@continuwuity.org). This is not E2EE, so don't include sensitive details. 3. **Do not disclose the vulnerability publicly** until it has been addressed 4. **Provide detailed information** about the vulnerability, including: - A clear description of the issue @@ -48,7 +48,7 @@ When you report a security vulnerability: When security vulnerabilities are identified: -1. We will develop and test fixes in a private fork +1. We will develop and test fixes in a private branch 2. Security updates will be released as soon as possible 3. Release notes will include information about the vulnerabilities, avoiding details that could facilitate exploitation where possible 4. Critical security updates may be backported to the previous stable release diff --git a/docs/static/announcements.json b/docs/static/announcements.json index 7dd2fb72..9b97d091 100644 --- a/docs/static/announcements.json +++ b/docs/static/announcements.json @@ -4,10 +4,6 @@ { "id": 1, "message": "Welcome to Continuwuity! Important announcements about the project will appear here." - }, - { - "id": 2, - "message": "🎉 Continuwuity v0.5.0-rc.6 is now available! This release includes improved knock-restricted room handling, automatic support contact configuration, and a new HTML landing page. Check [the release notes for full details](https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v0.5.0-rc.6) and upgrade instructions." } ] -} +} \ No newline at end of file diff --git a/docs/static/announcements.schema.json b/docs/static/announcements.schema.json index cacd10c9..95b1d153 100644 --- a/docs/static/announcements.schema.json +++ b/docs/static/announcements.schema.json @@ -3,7 +3,7 @@ "$id": "https://continwuity.org/schema/announcements.schema.json", "type": "object", "properties": { - "announcements": { + "updates": { "type": "array", "items": { "type": "object", @@ -16,10 +16,6 @@ }, "date": { "type": "string" - }, - "mention_room": { - "type": "boolean", - "description": "Whether to mention the room (@room) when posting this announcement" } }, "required": [ @@ -30,6 +26,6 @@ } }, "required": [ - "announcements" + "updates" ] } \ No newline at end of file diff --git a/src/admin/debug/mod.rs b/src/admin/debug/mod.rs index 1fd4e263..9b86f18c 100644 --- a/src/admin/debug/mod.rs +++ b/src/admin/debug/mod.rs @@ -125,13 +125,13 @@ pub(super) enum DebugCommand { reset: bool, }, - /// - Sign JSON blob + /// - Verify json signatures /// /// This command needs a JSON blob provided in a Markdown code block below /// the command. SignJson, - /// - Verify JSON signatures + /// - Verify json signatures /// /// This command needs a JSON blob provided in a Markdown code block below /// the command. diff --git a/src/core/config/check.rs b/src/core/config/check.rs index 3dc45e2f..ded9533d 100644 --- a/src/core/config/check.rs +++ b/src/core/config/check.rs @@ -219,15 +219,6 @@ pub fn check(config: &Config) -> Result { )); } - // Check if support contact information is configured - if config.well_known.support_email.is_none() && config.well_known.support_mxid.is_none() { - warn!( - "No support contact information (support_email or support_mxid) is configured in \ - the well_known section. Users in the admin room will be automatically listed as \ - support contacts in the /.well-known/matrix/support endpoint." - ); - } - if config .url_preview_domain_contains_allowlist .contains(&"*".to_owned()) diff --git a/src/service/announcements/mod.rs b/src/service/announcements/mod.rs index 2a70344d..4df8971b 100644 --- a/src/service/announcements/mod.rs +++ b/src/service/announcements/mod.rs @@ -20,7 +20,7 @@ use std::{sync::Arc, time::Duration}; use async_trait::async_trait; use conduwuit::{Result, Server, debug, info, warn}; use database::{Deserialized, Map}; -use ruma::events::{Mentions, room::message::RoomMessageEventContent}; +use ruma::events::room::message::RoomMessageEventContent; use serde::Deserialize; use tokio::{ sync::Notify, @@ -53,8 +53,6 @@ struct CheckForAnnouncementsResponseEntry { id: u64, date: Option, message: String, - #[serde(default, skip_serializing_if = "bool::not")] - mention_room: bool, } const CHECK_FOR_ANNOUNCEMENTS_URL: &str = @@ -141,20 +139,19 @@ impl Service { } else { info!("[announcements] {:#}", announcement.message); } - let mut message = RoomMessageEventContent::text_markdown(format!( - "### New announcement{}\n\n{}", - announcement - .date - .as_ref() - .map_or_else(String::new, |date| format!(" - `{date}`")), - announcement.message - )); - if announcement.mention_room { - message = message.add_mentions(Mentions::with_room_mention()); - } - - self.services.admin.send_message(message).await.ok(); + self.services + .admin + .send_message(RoomMessageEventContent::text_markdown(format!( + "### New announcement{}\n\n{}", + announcement + .date + .as_ref() + .map_or_else(String::new, |date| format!(" - `{date}`")), + announcement.message + ))) + .await + .ok(); } #[inline]