How to deal with unmaintained crates? (eg. yaml-rust)

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • rustsec

    RustSec API & Tooling

  • The RustSec Security Advisory Database includes "informational advisories" about unmaintained crates, and when possible, includes recommendations for maintained alternatives.

  • yaml-cpp

    A YAML parser and emitter in C++

  • Some context, In my day job, I'm working on a custom format that is based on yaml but extends it. We're still using C++, so we the used yaml-cpp as a base for our parser and it was great for that purpose. laying with rust on Advent of Code lately I also got sent back to reality... Not having rust enums, match, great string handling, iterators when working with my AST was hard. So I wanted to try to implement the same parser in Rust as an example to my teammates of how great rust can be.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • yaml-rust

    A pure rust YAML implementation.

  • The first thing I did was to find the crate yaml-rust and it seems it isn't really maintained anymore. It has not been updated in a year and there's a lot of PR's and unresolved issues, the CI is broken... So here is my open ended question.

  • crates.io

    The Rust package registry

  • But there seems to be already a lot of forks, and I'm not convinced it is the best solution, there still would be dozens of repos using yaml-cpp and not would not benefit the dozens of repos that depends on it. Imagine someone creates a great fork, would it be possible to move ownership of the crate on crates.io to this new fork? (to me it seems really difficult without some sort of comity ruling this).

  • syscall.rs

    Discontinued Raw system calls for Rust

  • An example https://github.com/kmcallister/syscall.rs/network/members

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts