Description
In many of languages (rust, python, golang) BuildRequires are normal Requires + Test deps. It's always (in many of cases) possible to get names of packages in advance, before building.
Since Requires are dynamic, BuildRequires also, but nowadays you still have to specify it manually and check those after each update of package. Would be nice to implement support for generating BuildRequires.
Usually such generator will require some additional package to be installed (cargo, python), so we will need to introduce someting like BuildRequires(pre) or BuildRequires(source) which should be installed for building SRPM. Having this is also beneficial for normal process since you don't need to modify buildroot all the time in order to have some macro.