Skip to content

Commit 78b176b

Browse files
docs: fix README usage example that crashed at runtime
The example encoded a LeaderRequest (type 0) then decoded it in response mode where type 0 is FailureResponse, causing DecodeError. Replaced with working encode_message/decode_message example and removed unused import. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 7d8fc1a commit 78b176b

2 files changed

Lines changed: 17 additions & 7 deletions

File tree

README.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,14 @@ pip install dqlite-wire
1111
## Usage
1212

1313
```python
14-
from dqlitewire import MessageEncoder, MessageDecoder
15-
from dqlitewire.messages import LeaderRequest, ClientRequest
14+
from dqlitewire import encode_message, decode_message
15+
from dqlitewire.messages import LeaderRequest
1616

1717
# Encode a message
18-
encoder = MessageEncoder()
19-
data = encoder.encode(LeaderRequest())
18+
data = encode_message(LeaderRequest())
2019

2120
# Decode a message
22-
decoder = MessageDecoder()
23-
decoder.feed(data)
24-
message = decoder.decode()
21+
message = decode_message(data, is_request=True)
2522
```
2623

2724
## Thread-safety

tests/test_codec.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1895,3 +1895,16 @@ def test_partial_feed_chunked(self) -> None:
18951895
assert isinstance(decoded, ResultResponse)
18961896
assert decoded.last_insert_id == 42
18971897
assert decoded.rows_affected == 7
1898+
1899+
1900+
class TestReadmeExample:
1901+
"""Verify the README usage example actually works."""
1902+
1903+
def test_readme_example_runs_without_error(self) -> None:
1904+
"""The README shows encode_message / decode_message with a LeaderRequest."""
1905+
from dqlitewire import decode_message, encode_message
1906+
from dqlitewire.messages import LeaderRequest
1907+
1908+
data = encode_message(LeaderRequest())
1909+
message = decode_message(data, is_request=True)
1910+
assert isinstance(message, LeaderRequest)

0 commit comments

Comments
 (0)