https://bugzilla.redhat.com/show_bug.cgi?id=1703026
--- Comment #2 from Mikolaj Izdebski mizdebsk@redhat.com --- Requires on chkconfig were replaced with requires on /usr/sbin/update-alternatives file by Peter Robinson. At the time of change I was the primary maintainer of maven package. Peter was not co-maintainer of the package. Yet, this change was not consulted with me and I was not informed abut it - I only found out about the change from fedmsg notifications. I reverted the change since it was unjustified and it was made in violation of Fedora policy [1]. Only after that I was contacted by Peter on IRC and asked why I reverted the change. I explained my reasons for preferring explicit dependencies on package names.
The reasons were:
1. I don't welcome changes for the sake of change. There was no technical reason to make the change - at the time chkconfig was the only package providing /usr/sbin/update-alternatives file. Any change poses a risk of regression, therefore changes must be justified.
2. With explicit depenencies spec file is shorter, easier to read and understand. Layers of indirection (rpm macros, file provides) make it harder to understand how the dependency is satisfied. Especially for new contributors.
3. Some tools that I use for automating package maintenance do not support file dependencies. I don't have such dependencies in any of my packages, so I don't have any need to implement support for file dependences. Adding file dependencies to maven package would require me to work on changing the tools I use.
[1] https://fedoraproject.org/wiki/Who_is_allowed_to_modify_which_packages