mirror of
https://github.com/logos-messaging/nim-sds.git
synced 2026-08-25 06:41:15 +00:00
3097dd5dddde6921fdccd9e7982d975aef8cb434
v0.3.1 carried the additive retrieval-hint submessage in field 7, but the v0.4/SDS-R line uses field 7 for the message-level senderId. Move the hints to field 8 so v0.3.x and v0.4.x agree on the wire (field 3 = message-ID strings, field 8 = per-entry HistoryEntry metadata). Purely a field-number change; pre-hint (v0.2.x) nodes still read field 3 and ignore field 8. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
nim-e2e-reliability
Nim implementation of the e2e reliability protocol
Building
Nix
nix build --print-out-paths '.?submodules=1#libsds'
nix build --print-out-paths '.?submodules=1#libsds-android-arm64'
Windows, Linux or MacOS
make libsds
Android
Download the latest Android NDK. For example, on Ubuntu with Intel:
cd ~
wget https://dl.google.com/android/repository/android-ndk-r27c-linux.zip
unzip android-ndk-r27c-linux.zip
Then, add the following to your ~/.bashrc file:
export ANDROID_NDK_ROOT=$HOME/android-ndk-r27c
export PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH
Then, use one of the following commands, according to the current architecture:
| Architecture | command |
|---|---|
| arm64 | make libsds-android ARCH=arm64 |
| amd64 | make libsds-android ARCH=amd64 |
| x86 | make libsds-android ARCH=x86 |
At the end of the process, the library will be created in build/libsds.so
Languages
Nim
91.9%
Nix
5.9%
Shell
1.5%
C
0.7%