When developing on the Module Build Service, we determined we want to have the ability to have key value pairs associated with a module in buildrequires. Particularly, when a modulemd is submitted to the Module Build Service, we'd like to add the version of the module used in buildrequires. This allows us to determine if a module dependency in buildrequires has changed since the last build (an important aspect when trying to reuse previously built components).
Additionally, I allowed for backwards compatibility in the sense that any modulemd that still uses the old format of strings instead of dictionaries, will have the buildrequires converted to a dictionary at import time. If you don't think this is useful, then I can remove this.
When developing on the Module Build Service, we determined we want to have the ability to have key value pairs associated with a module in buildrequires. Particularly, when a modulemd is submitted to the Module Build Service, we'd like to add the version of the module used in buildrequires. This allows us to determine if a module dependency in buildrequires has changed since the last build (an important aspect when trying to reuse previously built components).
For instance, before we would only have:
We want to be able to do something like:
Additionally, I allowed for backwards compatibility in the sense that any modulemd that still uses the old format of strings instead of dictionaries, will have the buildrequires converted to a dictionary at import time. If you don't think this is useful, then I can remove this.