tursodatabase / tursodatabase/libsql

Replace unmaintained "bincode" serialization/deserialization dependency with "wincode"

Open
#2,207 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
17.2k
Forks
531
Avg merge
1h 12m
Merged PRs (30d)
1

Description

The bincode library used for serializing and deserializing has been marked as unmaintained (RUSTSEC-2025-0141).

The maintainer makes several replacement recommendations as do RUSTSEC:

  • wincode - this is quite recent

  • postcard - maintainer has many Rust libraries they maintain, lots of activity, appears stable, drop-in replacement, 60+ contributors, used by 7,000+ other repos

  • bitcode - seems fine, but lower activity and not many maintainers

  • rkyv - looks good, but would require many more changes across the codebase to implement

I've done up a PR to replace bincode with postcard, enjoy! 😁

https://github.com/tursodatabase/libsql/pull/2208

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the current bincode usage and PR 2208, which proposes postcard despite the issue title naming wincode. Confirm which replacement is intended and that serialization/deserialization coverage remains valid; done means the unmaintained dependency and its uses are replaced and the relevant checks pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
databases
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.