mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
chore: update changelog for v0.2.5 release with new features and fixes
This commit is contained in:
@@ -4,7 +4,7 @@ Release history for EchoHub.
|
||||
|
||||
## Releases
|
||||
|
||||
- [v0.2.5](v0.2.5.md) - IRC Gateway Fixes & Test Coverage
|
||||
- [v0.2.5](v0.2.5.md) - Audio Playback, File Downloads & IRC Fixes
|
||||
- [v0.2.4](v0.2.4.md) - E2E Message Encryption
|
||||
- [v0.2.3](v0.2.3.md) - Moderation, Embeds & UI Overhaul
|
||||
- [v0.2.2](v0.2.2.md) - Startup & Shutdown Fixes
|
||||
|
||||
@@ -1,4 +1,33 @@
|
||||
# v0.2.5 - IRC Gateway Fixes & Test Coverage
|
||||
# v0.2.5 - Audio Playback, File Downloads & IRC Fixes
|
||||
|
||||
## Features
|
||||
|
||||
### Audio Message Support
|
||||
|
||||
- New `Audio` message type — uploaded audio files (`.mp3`, `.wav`, `.ogg`, `.flac`, `.aac`, `.m4a`, `.wma`) are automatically detected and categorized
|
||||
- TUI client renders audio messages with `♪ [Audio: filename] (Enter to play)` indicator
|
||||
- Press Enter on an audio message to play it locally via `AudioPlaybackService` (NetCoreAudio)
|
||||
- IRC gateway formats audio messages as `♪ [Audio: filename] url`
|
||||
- Server detects audio files by extension via `FileValidationHelper.IsAudioFile()`
|
||||
|
||||
### File Downloads
|
||||
|
||||
- Press Enter on a file message in the TUI client to download it to the local machine
|
||||
- `ApiClient.DownloadFileAsync()` streams file downloads from the server
|
||||
- File and audio messages in the chat list now show colored indicators with interaction hints
|
||||
|
||||
### File Cleanup Service
|
||||
|
||||
- `FileCleanupService` (BackgroundService) periodically removes old uploaded files
|
||||
- Configurable via `Storage:CleanupIntervalHours` (default 1h) and `Storage:RetentionDays` (default 30d)
|
||||
|
||||
### Data Migration Service
|
||||
|
||||
- `DataMigrationService` runs at startup to handle schema/data evolution
|
||||
- Ensures `#general` channel and pre-existing channels are marked public
|
||||
- Migrates legacy ANSI escape codes in image messages to printable color tags (`{F:RRGGBB}`, `{B:RRGGBB}`, `{X}`)
|
||||
- Migrates legacy single-object `EmbedJson` to array format
|
||||
- Promotes usernames listed in `Server:Admins` config to Admin role
|
||||
|
||||
## Fixes
|
||||
|
||||
@@ -10,5 +39,8 @@
|
||||
|
||||
## Infrastructure
|
||||
|
||||
- IRC abstraction layer test suite: IrcMessage parsing, IrcMessageFormatter, IrcClientConnection, IrcCommandHandler, IrcBroadcaster (214 total tests)
|
||||
- Audio MIME types in `FilesController` (mp3, wav, ogg, flac, aac, m4a, wma)
|
||||
- Test suites: ChatLine, CommandHandler, DataMigrationService, FileValidationHelper, ImageToAsciiService, IrcMessageFormatter, JwtTokenService, LinkEmbedService
|
||||
- IRC abstraction layer test suite: IrcMessage parsing, IrcMessageFormatter, IrcClientConnection, IrcCommandHandler, IrcBroadcaster
|
||||
- Test helpers: `TestDuplexStream`, `TestIrcConnectionFactory`, `FakeChatService`, `FakeEncryptionService` for IRC unit testing without network I/O
|
||||
- 214 total tests
|
||||
|
||||
Reference in New Issue
Block a user