Somewhat fortuitous that someone already forked yaml-rust and rewrote it in pure Rust to create yaml-rust2 (https://github.com/Ethiraric/yaml-rust2/blob/master/document...). Pretty cool that the fork fully passes the YAML test suite as well and is more performant on benchmarks. The migration appears straightforward too.
Ultimately, the problem remains - we're dependent on the work of others who are happy to provide us with free labour for now, but may not be in perpetuity. I don't know that there's a way around that other than compensating them for their time and effort and hope they continue their good work.
> I don't know that there's a way around that other than compensating them for their time and effort and hope they continue their good work.
Any project with a bus factor of 1 is inherently dangerous and risky. On a long enough timescale, the probability that an open source maintainer will quit their project is 1. The only way around that is to make solo-maintained projects taboo.
> I don't know that there's a way around that other than compensating them for their time and effort and hope they continue their good work.
For me, the go-to solution for this problem is to avoid third-party dependencies as much as possible. This is probably not an option for rust project given how anemic the authors of Rust's standard library want their library to be, but it is definitely an option when using other languages with fully featured libraries.
I rarely use external libraries (other that database drivers) because I deliberately work with languages that have all the things I need built in.
Ultimately, the problem remains - we're dependent on the work of others who are happy to provide us with free labour for now, but may not be in perpetuity. I don't know that there's a way around that other than compensating them for their time and effort and hope they continue their good work.