chore: replace serde-yml with serde-saphyr #1151

Merged
Jade merged 1 commit from Aviac/continuwuity:replace-serde-yml into main 2025-11-09 10:56:34 +00:00

1 commit

Author SHA1 Message Date
866769c054
chore: replace serde-yml with serde-saphyr
All checks were successful
Documentation / Build and Deploy Documentation (pull_request) Has been skipped
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 2m41s
Release Docker Image / Build linux-arm64 (release) (pull_request) Successful in 2m30s
Update flake hashes / update-flake-hashes (pull_request) Successful in 11s
Release Docker Image / Build linux-amd64 (release) (pull_request) Successful in 6m31s
Release Docker Image / Create Multi-arch Release Manifest (pull_request) Successful in 5s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 15m54s
Release Docker Image / Build linux-amd64 (max-perf) (pull_request) Successful in 13m58s
Release Docker Image / Build linux-arm64 (max-perf) (pull_request) Successful in 13m58s
Release Docker Image / Create Max-Perf Manifest (pull_request) Successful in 4s
Documentation / Build and Deploy Documentation (push) Successful in 43s
Checks / Prek / Pre-commit & Formatting (push) Successful in 2m15s
Release Docker Image / Build linux-amd64 (release) (push) Successful in 4m38s
Release Docker Image / Build linux-arm64 (release) (push) Successful in 5m58s
Release Docker Image / Create Multi-arch Release Manifest (push) Successful in 16s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 16m4s
Release Docker Image / Build linux-amd64 (max-perf) (push) Successful in 12m42s
Release Docker Image / Build linux-arm64 (max-perf) (push) Successful in 12m49s
Release Docker Image / Create Max-Perf Manifest (push) Successful in 13s
- serde-yml has an un-addressed [security issue][sec-issue]
- [saphyr][saphyr] is a pretty recent and active crate that deals with YAML parsing
- based on that, someone recently created [serde-saphyr][serde-saphyr]

---

The change was pretty straightforward and mostly "just a search and replace". The new crate has it's `Error` type split
into serialization and derserialization errors. Hence I created one Continuwuity-Error variant for each instead of just
having a single `Yaml` variant. This was already done previously with the `Toml` errors so I thought this would be
rather acceptable.

[sec-issue]: https://github.com/advisories/GHSA-gfxp-f68g-8x78
[saphyr]: https://github.com/saphyr-rs/saphyr
[serde-saphyr]: https://github.com/saphyr-rs/saphyr/issues/66#issuecomment-3353212289
2025-11-09 11:23:32 +01:00