diff --git a/.cargo/config.toml.example b/.cargo/config.toml.example new file mode 100644 index 00000000..25e2907c --- /dev/null +++ b/.cargo/config.toml.example @@ -0,0 +1,5 @@ +[patch.crates-io] +muxio-rpc-service-caller = { path = "../rust-muxio/extensions/muxio-rpc-service-caller" } +muxio-tokio-rpc-client = { path = "../rust-muxio/extensions/muxio-tokio-rpc-client" } +muxio-tokio-rpc-server = { path = "../rust-muxio/extensions/muxio-tokio-rpc-server" } +muxio-rpc-service = { path = "../rust-muxio/extensions/muxio-rpc-service" } diff --git a/experiments/bindings/python-ws-client/Cargo.lock b/experiments/bindings/python-ws-client/Cargo.lock index 1cbec572..a7e35662 100644 --- a/experiments/bindings/python-ws-client/Cargo.lock +++ b/experiments/bindings/python-ws-client/Cargo.lock @@ -646,9 +646,7 @@ dependencies = [ [[package]] name = "muxio" -version = "0.6.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da5d5841894f3ca7b3ee5d2c5f9004cd6b055a3b7f6d647cc7923af92f9a339c" +version = "0.7.0-alpha" dependencies = [ "chrono", "once_cell", @@ -657,9 +655,7 @@ dependencies = [ [[package]] name = "muxio-rpc-service" -version = "0.6.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595884d4529f695e2c1568c830efa64916407235e34ecb8835cb9a639bbe6dee" +version = "0.7.0-alpha" dependencies = [ "async-trait", "futures", @@ -670,9 +666,7 @@ dependencies = [ [[package]] name = "muxio-rpc-service-caller" -version = "0.6.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1acd71dc7bc4f302a7ff6058af418505bdc014211a95b3e5c9702d94861319b3" +version = "0.7.0-alpha" dependencies = [ "async-trait", "futures", @@ -683,9 +677,7 @@ dependencies = [ [[package]] name = "muxio-tokio-rpc-client" -version = "0.6.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3ea95719d4762efc20d5a8da3af13c12b4987a3cab18ba1356cb758fb94261" +version = "0.7.0-alpha" dependencies = [ "async-trait", "bytes", @@ -1662,3 +1654,7 @@ dependencies = [ "quote", "syn", ] + +[[patch.unused]] +name = "muxio-tokio-rpc-server" +version = "0.7.0-alpha" diff --git a/experiments/bindings/python-ws-client/tests/integraton/test_multithreaded_read_write.py b/experiments/bindings/python-ws-client/tests/integraton/test_multithreaded_read_write.py index f6551196..c467a648 100644 --- a/experiments/bindings/python-ws-client/tests/integraton/test_multithreaded_read_write.py +++ b/experiments/bindings/python-ws-client/tests/integraton/test_multithreaded_read_write.py @@ -26,7 +26,9 @@ def client(): f"Failed to connect to the WebSocket server at {SERVER_ADDR}. Is it running? Error: {e}" ) - +# FIXME: On older hardware this call can block indefinitely due to resource +# contention. Instrument both client and server to pinpoint where the +# stall originates. def test_concurrent_read_write_stress(client): """ Stress test with multiple threads performing concurrent reads and writes. @@ -107,6 +109,9 @@ def worker(thread_id): with lock: items_to_verify = list(written_data.items()) + # FIXME: On older hardware this call can block indefinitely due to resource + # contention. Instrument both client and server to pinpoint where the + # stall originates. for key, expected_value in items_to_verify: read_value = client.read(key) assert ( diff --git a/experiments/bindings/python-ws-client/uv.lock b/experiments/bindings/python-ws-client/uv.lock index 4f744b6b..467bc140 100644 --- a/experiments/bindings/python-ws-client/uv.lock +++ b/experiments/bindings/python-ws-client/uv.lock @@ -283,7 +283,7 @@ wheels = [ ] [[package]] -name = "simd-r-drive-ws-client-py" +name = "simd-r-drive-ws-client" version = "0.7.0a0" source = { editable = "." }