feat: log in with soulseek-rs's own client major version (176) (#13)

The Login message hardcoded SoulseekQt's major version 157, so the
server could not tell soulseek-rs apart from the official client. The
protocol document now reserves a unique major version per project, so
claim 176 and send it via a new ClientVersion on ClientSettings.

Clients and bots built on the library keep major 176 and pick their own
minor version (default 1); the reference CLI/TUI logs in with minor 100.

Refs #12
This commit is contained in:
Michel de Graaf
2026-07-25 21:51:58 +02:00
committed by GitHub
parent e2c2b5063a
commit d2f3dd13d7
9 changed files with 93 additions and 39 deletions
+6 -5
View File
@@ -15,9 +15,9 @@ pub mod utils;
pub mod prelude {
pub use crate::actor::server_actor::PeerAddress;
pub use crate::types::{
DownloadStatus, File, RoomEvent, RoomInfo, Search, SearchResult,
Transfer, UploadInfo, UploadStatus, UserInfo, UserPresence, UserStats,
UserStatus,
ClientVersion, DownloadStatus, File, RoomEvent, RoomInfo, Search,
SearchResult, Transfer, UploadInfo, UploadStatus, UserInfo,
UserPresence, UserStats, UserStatus,
};
pub use crate::{debug, error, info, trace, warn};
}
@@ -28,6 +28,7 @@ pub use client::{Client, ClientSettings};
pub use error::{Result, SoulseekRs};
pub use message::peer::SharedDirectory;
pub use types::{
DownloadStatus, File, RoomEvent, RoomInfo, Search, SearchResult, Transfer,
UploadInfo, UploadStatus, UserInfo, UserPresence, UserStats, UserStatus,
ClientVersion, DownloadStatus, File, RoomEvent, RoomInfo, Search,
SearchResult, Transfer, UploadInfo, UploadStatus, UserInfo, UserPresence,
UserStats, UserStatus,
};