2 + PreReq: -> Requires(pre): (user might want to check if Requires(post/preun/...) is not a better choice
3 + global changes should be done before local changes
4 - (i.e. rewrite the code so RpmSection.add code is called before e.g. RpmBuild.add)
5 - should fix make-params unit test
6 + ban %{_bindir}/*, %{_sbindir}/* (?)
7 + shouldn't check .spec suffix (?)
8 + s/%doc %{(_mandir|_infodir)}/%{$1}/
9 + use license abbreviatons from http://spdx.org/licenses/
10 + do not break %(rpm ...) -- often used in BuildRequires/Requires
13 + replace %py_ver with %python_version
14 + replace %py_sitedir with %python_sitearch (user might want to change this to %python_sitelib if the package is noarch)
15 + print a warning if %py_libdir is found
16 + kill (or just print a warning?) if %py_requires is found: if it's a python module, nothing is needed. If it's not, plain python Requires is what we want.
18 Things changed with rpm 4.7:
19 + change Source: to Source0: (or vice versa?)
21 Things changed with rpm 4.7 that we can do only if not caring about < 11.2:
22 + remove %clean section if it's just removing the build root
26 %attr, %ghost, etc. are not handled correctly
27 $RPM_BUILD_ROOT_REPLACEMENT is changed to %{buildroot}_REPLACEMENT