But yes, the async I/O space in Rust isn't amazing. But it's not as bad a picture as he paints.
But yes, the async I/O space in Rust isn't amazing. But it's not as bad a picture as he paints.
Pinning a version number is a hack. Not something you should rely on for long-term stability.
0.x can mean "Not stable" and it can also mean "buggy", it need not mean both. Regardless of how bug-free the authors consider it to be, they won't mark it 1.0 until they think that they're happy with the API. IIRC they're waiting for tokio to be finished and for it to sit for a while to ensure the API is the right one, so it should be relatively free from bugs.
> Pinning a version number is a hack. Not something you should rely on for long-term stability.
Agreed. I'm saying that this shouldn't be a dealbreaker. It's usually very little work to upgrade to the latest version of a library.
Basically, mio's stability is a problem. Totally agree with that. But it's not as bad a picture as the article paints.
Keeping a package at 0.x means (to paraphrase) "I don't take responsibility. The code may or may not work and if it doesn't, then don't complain." (a) Putting it at 1.x means (to paraphrase) "I (the author) will at least respond to bug reports. I might even try to fix them if I have the time." (b)
Free software authors have this choice.
> so it should be relatively free from bugs.
And if it isn't? For example, I looked at the tracker and found a number of open bugs which looked troublesome for the Windows backend. I think you are doing the mio project a disservice by promising more than the developers themselves have said that they are willing to deliver.
Fair point about the bugs :) I wasn't aware of them, and I've only heard really good things about mio.
That means 0.x software is in "initial development" implying no guarantee on how many bugs it can contain and no guarantees regarding maintainership. Other parts of the spec deals with backwards-incompatible api changes.
I know where your interpretation comes from. It comes from users of software who believe that a 0.x version can be relied upon. Because it works for them and they haven't found any bugs. Software publishers on the other hand, never makes that claim and users to whom stability is important should stay away from 0.x software.