| 20 Mar 2026 |
Qyriad | * Yeah, but parsing them into one value is likely to cause fewer problems than parsing them into a composite structure | 10:41:00 |
Qyriad | We should almost definitely at least warn on this though | 10:41:10 |
piegames | hm, as in, runtime warning? | 10:41:30 |
Qyriad | Yes | 10:41:37 |
piegames | fucking hell | 10:44:41 |
piegames | there is a rust crate called ijson | 10:44:45 |
piegames | which has nothing to do with I_JSON, and is just "an opinionated fork of serde_json by a person whose name starts with i" | 10:45:12 |
Qyriad | Of course | 10:45:32 |
Coca | All the rust json crates I already know of:
Input: {"name": "One", "name": "Two"}
serde_json (serde API): Err(Error("duplicate field `name`", line: 1, column: 22))
serde_json (Value API): Ok(Some(String("Two")))
nanoserde: Ok(Test { name: "Two" })
facet-json: Ok(Test { name: "Two" })
simd-json (serde API): Err(Error { index: 0, character: None, err_type: Serde("duplicate field `name`") })
simd-json (Value API): Ok(Some(Value([String("One")])))
| 10:46:07 |
piegames | "internet json" surely wins the prize for the least searchable name of the week | 10:46:08 |
Coca | * All the rust json crates I already know of:
Input: {"name": "One", "name": "Two"}
serde_json (serde API): Err(Error("duplicate field `name`", line: 1, column: 22))
serde_json (Value API): Ok(Some(String("Two")))
nanoserde: Ok(Test { name: "Two" })
facet-json: Ok(Test { name: "Two" })
simd-json (serde API): Err(Error { index: 0, character: None, err_type: Serde("duplicate field `name`") })
simd-json (Value API): Ok(Some(Value([String("One")])))
| 10:46:15 |
piegames | "cause fewer problems" as in "fail less loudly and prominently" | 10:47:01 |