Implement native login and session initialization (#56)
All checks were successful
Native code generation / deterministic (push) Successful in 11m53s
Imaging and meshing gate / native (push) Successful in 4m3s
JPEG 2000 feature / linux (push) Successful in 2m33s
Native Rust workspace compile / compile (push) Successful in 4m3s
Skia feature / linux (push) Successful in 31m24s

This commit is contained in:
2026-08-09 18:18:28 +00:00
parent aa269f1785
commit 3951bdb809
15 changed files with 3992 additions and 1355 deletions

View File

@@ -7,14 +7,6 @@ use libremetaverse::{
};
use libremetaverse_types::compat::{CancellationToken, EventHandler, IProgress, Subscription, Uri};
fn member_id<T>(result: Result<T, libremetaverse::Error>) -> &'static str {
result
.err()
.expect("failure-only shim unexpectedly returned a value")
.csharp_member()
.expect("failure-only shim error")
}
async fn compile_login_shutdown_flows(
network: &NetworkManager,
limiter: &CapsRateLimiter,
@@ -102,10 +94,7 @@ fn client_and_settings_construct_without_starting_runtime_work() {
libremetaverse::ClientLifecycleState::Disposed
);
assert_eq!(
member_id(CapsRateLimiter::new_with_constructor()),
"M:LibreMetaverse.CapsRateLimiter.#ctor"
);
let _limiter = CapsRateLimiter::new_with_constructor().expect("CAPS rate limiter");
let udp_buffer = UDPPacketBuffer::new_with_constructor().expect("UDP packet buffer");
assert_eq!(udp_buffer.data.len(), 4096);
assert_eq!(udp_buffer.data_length, 0);