I think we should encourage packagers to name *all* their depends and makedepends, even if they're in base{,-devel}. Not require (yet) but encourage. My problem with this whole discussion is there's no hard data. There's no clear empirical process for deciding what should be in base{,-devel}. We only have a circular process: packages shouldn't be removed because that might break some PKGBUILDs, and PKGBUILDs continue to omit dependencies because they're implied. And meanwhile the conversation devolves into bikeshedding about the virtues of nano, etc. The only way to break out of this cycle is for packages to start explicitly naming dependencies. If you have shell scripts, depend on sh. If you need bash-isms, depend on bash. If you're a daemon with systemd units, depend on systemd. If you build with git or glibc, makedepend on those. Once this happens we can inform our arguments with actual numbers.