Hide Forgot
Running various tasks (such the modules file, copy, template, selinux and so on) depends on importing the selinux python module to work properly on the host where Ansible is running on. Yes, you need libselinux-python on manage remote hosts but if you're doing operations locally, you will need it as well.
We have resisted going down this road in the past and I am not sure I want to now. ;) If we add deps on all ansible modules it would make the package very very heavy (and in fact not all deps could even be met). As you note also those things are usually needed on the remote machines that are managed by the control host anyhow, so dependencies on the package don't help at all there. Finally in this case (libselinux-python) it would mean someone who (foolishly IMHO) disables selinux on their control host would have to pull in a useless package. I'll leave this open for further comment, but my first reaction is to not add this.
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle. Changing version to '26'.
I have to agree that this shouldn't be a hard dependency; ansible can be used in a great many configurations, and personally I'm fine if the dependency set is sufficiently minimal to allow you to run a playbook that as its first task brings in the packages it needs. Even a full set of weak deps might be too heavy given that they're all installed by default anyway, but perhaps a limited set of dependencies for the most common deps wouldn't be too bad. The other ones could be in really-weak deps (Suggests:).
Going to close this now. Feel free to re-open to revisit.