Skip to content

WIP no_std - #477

Draft
Ygg01 wants to merge 2 commits into
simd-lite:mainfrom
Ygg01:no-std
Draft

WIP no_std#477
Ygg01 wants to merge 2 commits into
simd-lite:mainfrom
Ygg01:no-std

Conversation

@Ygg01

@Ygg01 Ygg01 commented Sep 2, 2026

Copy link
Copy Markdown

Motivation

We want to use simd_json in no_std environments. So we introduce no_std and refactor a bit.

What went wrong?

Just about everything.

value_trait crate is std only

It uses io: Write throughout to define bounds. Which is fine, but without it being no_std this crate has no chance to be std

Lots of println! macros

Yeah, those don't work if you don't have output.

Hard to separate no_std and std boundary.

I honestly prefer multiple crates per workspace and then deal with all crates in a single folder.

Next moves

Best way to approach IMO is:

  1. Convert this single repository to a workspace
  2. Move value_trait crate in.
    a. Add std feature (possibly breaking change) to value_trait
    b. In std feature use std::io, otherwise use embedded_io crate
    c. bump major version and publish.
  3. Move io components to a crate that imports the no_std version simd-lite-core crate is my goto, but i can settle for
  4. Bump major version.

Fix #92 when it actually lands.

@Ygg01 Ygg01 changed the title WIP WIP no_std Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

is a no_std version of simdjson-rs feasible/desirable?

1 participant