Ivan FBandClaude Opus 4.8 3097dd5ddd fix: move retrieval-hint field 7 -> 8 to align with the v0.4/SDS-R wire
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>
2026-07-08 23:43:57 +02:00
2025-12-22 18:10:45 +00:00

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

S
Description
Nim implementation of the e2e reliability protocol
Readme
2.6 MiB
Languages
Nim 91.9%
Nix 5.9%
Shell 1.5%
C 0.7%