In reality, they often work perfectly fine on a reasonably-modern stable, and simply haven't updated their documentation and READMEs to indicate "oh yeah, this nightly feature is now in stable, so just use a stable that's newer than version so-and-so".
Until they don't again because clearly the authors have no interest in being on a stable compiler release.
> Plus you can easily switch between versions with rustup!
I don't think people are complaining because switching versions is hard. Just unnecessary, risky, and yes kind of annoying.
This is false, most uses of nightly are because of macros, which will be stable in the next version of Rust.
Then use an older version of the package. Unless the package in question was relying on some "nightly" feature that never made it into stable, then you should be fine.
Very few projects require nightly features and of those that do, most of them will work on stable in just a couple of weeks!
Plus you can easily switch between versions with rustup!