ResearchPocket 2.1.0
ResearchPocket 2.1.0
ResearchPocket 2.1.0 keeps large private libraries responsive by bounding
browser restore work, moving shared-domain processing off the main thread, and
making routine projection writes proportional to the items that changed.
Install
With Rust installed:
cargo install --locked --force researchOr download the verified archive for Linux, macOS, or Windows from the GitHub
release and check it against SHA256SUMS.
What changed
- Native and browser synchronization now create and validate immutable
protocol-v1 checkpoints after 100 newly covered batches or 2 MiB of decoded
update payload. A pristine client restores the best checkpoint and applies
only its uncovered tail. - Browser checkpoint validation and remote application run in a dedicated
worker and process direct operations in bounded chunks, keeping the page
responsive while a large library is restored. - Native installations keep one stable Loro peer identity. Causal frontiers now
grow with active replicas instead of growing once per native edit. - Local mutations and remote application return and persist only affected item
projections after bootstrap instead of rewriting the complete item table. - Enriched full-page Markdown is stored as an immutable SHA-256-addressed
private object. List projections exclude its bytes, and the Reader downloads
and validates it only when opened. - The shared domain includes the validated item-aggregate, catalogue, migration
barrier, and deterministic migration artifact primitives for the next sync
generation. This release does not activate a protocol-v2 cutover or rewrite
existing protocol-v1 history.
Upgrade and prime an existing private library
Upgrade the native client, verify the version, and run one normal sync:
cargo install --locked --force research
research --version
research sync runThe expected version is research 2.1.0. The first sync of an existing
repository may still replay its current protocol-v1 history once. It then
publishes the first checkpoint when the threshold is met. A fresh or reset
browser can use that checkpoint on its next connection instead of replaying the
covered history.
Protocol-v1 operation files remain immutable and are not pruned. ResearchPocket
2.0 clients ignore the optional checkpoint files, but upgrading every writer is
recommended before relying on the improved restore path.
GitHub release archives
| Platform | Release asset |
|---|---|
| Linux GNU/glibc x86-64 (glibc 2.35 or newer) | research-v2.1.0-linux-amd64.tar.gz |
| Windows x86-64 | research-v2.1.0-windows-amd64.zip |
| macOS Intel | research-v2.1.0-macos-amd64.tar.gz |
| macOS Apple Silicon | research-v2.1.0-macos-arm64.tar.gz |
The archives remain unsigned. Verify the selected file with SHA256SUMS, or
build the exact tag with the pinned toolchain:
git clone --branch v2.1.0 --depth 1 \
https://github.com/ResearchPocket/researchpocket.github.io.git
cd researchpocket.github.io
cargo build --locked --release