Review Board 3.0.16 introduced support for custom forms for SCMTools,
storing any saved fields in Repository.extra_data
. However, this data
was never passed to check_repository()
, meaning that validation could
not happen based on this data for plain SCMTools (though it was passed
to hosting services).
This change adds support for passing custom data to
check_repository()
. This requires that the implementation supports
**kwargs
(a deprecation warning will be emitted if not) and accepts
all arguments as keyword arguments in any order. This will be required
in Review Board 5. All custom form data will then be passed.
In the process, some of the RepositoryForm
code has been cleaned up.
There was a _build_repository_extra_data()
method that only worked for
hosting services, and was mostly made redundant when per-SCM subforms
were added. It's now been removed, utilizing the subform data instead.