Prevent the GitLab default branch to be a topic
It seems that the GitLab default branch is initialized as one of the branches of first received Git push. If that happens to be a topic, this leads to various problems down the line, unless of course someone manually changes it to the sensible choice: a named branch.
Especially with our current inner push in three steps (topics, then named branches, then pruning of topic GitLab branches), this has led me to rewrite some tests to avoid pushing with a topic right away.
It would be much better if we changed this so that topic GitLab branches are replaced by the GitLab branch of their Mercurial branch, if possible, i.e, unless we have topics only. In the latter case, I think that unfortunately, we'll still have to choose a topic for the GitLab default branch. If that happens, subsequent pushes should have the option to overwrite the default branch setting.
One more caveat: I don't think the sanity checks in our inner push that avoid attemps to prune the default GitLab branch would resist a change of default GitLab branch between the three steps.