| ▲ | 12_throw_away 2 hours ago | |
> The root cause of some of the bugs seems to be the opaque nature of some of the Unix API. Some, maybe, but if you've decided to rewrite coreutils from scratch, understanding the POSIX APIs is literally your entire job. And in any case, their test for whether a path was pointing to the fs root was `file == Path::new("/")`. That's not an API problem, the problem is that whoever wrote that is uniquely unqualified to be working on this project. | ||
| ▲ | aw1621107 an hour ago | parent [-] | |
Interestingly, it looks like the `file == Path::new("/")` bit was basically unchanged from when it was introduced... 12 (!) years ago [0] (though back then it was `filename == "/"`). The change from comparing a filename to a path was part of a change made 8 months ago to handle non-UTF-8 filenames. > That's not an API problem, the problem is that whoever wrote that is uniquely unqualified to be working on this project. To be fair, uutils started out with far smaller ambitions. It was originally intended to be a way to learn Rust. [0]: https://github.com/uutils/coreutils/commit/7abc6c007af75504f... | ||