Misc: + PreReq: -> Requires(pre): (user might want to check if Requires(post/preun/...) is not a better choice + global changes should be done before local changes - (i.e. rewrite the code so RpmSection.add code is called before e.g. RpmBuild.add) - should fix make-params unit test + ban %{_bindir}/*, %{_sbindir}/* (?) + shouldn't check .spec suffix (?) + s/%doc %{(_mandir|_infodir)}/%{$1}/ + use license abbreviatons from http://spdx.org/licenses/ + do not break %(rpm ...) -- often used in BuildRequires/Requires Python stuff: + replace %py_ver with %python_version + replace %py_sitedir with %python_sitearch (user might want to change this to %python_sitelib if the package is noarch) + print a warning if %py_libdir is found + 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. Things changed with rpm 4.7: + change Source: to Source0: (or vice versa?) Things changed with rpm 4.7 that we can do only if not caring about < 11.2: + remove %clean section if it's just removing the build root + remove BuildRoot Bugs: %attr, %ghost, etc. are not handled correctly $RPM_BUILD_ROOT_REPLACEMENT is changed to %{buildroot}_REPLACEMENT