In python, if the default value is a mutable object
its shared over all instances, so that one instance being changed
would affect others to be changed as well.
This was likely the source of various intermittent bugs in the
functional tests.
This is a backport of core#30552