Fix setting prefixed standard fields on the repository form.
Review Request #11005 — Created April 28, 2020 and submitted
A recent change fixed performing HTTP PUT operations on the repository
resource without providing entire payloads for the form. It computed the
initial data based on a repository and populated the form, trying to
create a solid starting point.
This had a bug, though, that prevented actually submitting the
repository form via the administration page. It no longer considered
that some standard fields, like
might be submitted with an SCMTool prefix (e.g.,
this caused it to override these provided values with the initial data,
preventing these fields from being changed again.
This bug did not make it into a release, or into production on
This change fixes the new logic on the repository form to check whether
the prefixed form of a key was posted on the form data before trying to
figure out a fallback value for it. If it's explicitly posted, we use
the existing value. Otherwise, we now normalize a prefixed form, if one
was provided, and then fall back on the initial value.
Unit tests passed.
I was able to successfully modify the formerly-broken fields for
several existing repositories.