cubicweb #4959402 make tests pass under python -R [validation pending]

We shouldn't rely on a particular ordering for iteration over sets or dicts, either in the code or in tests. Can be tested with PYTHONHASHSEED=random or the -R command line argument.

This will also help with the port to python 3, since that has randomized hashing by default.

prioritynormal
typeenhancement
done in3.21.0
load1.000
load left0.000
closed by<not specified>
patch[utils] use the "predictable" argument to js_dumps [applied][server/test] don't rely on a sorted output from .object_relations() [applied][req] make rebuild_url predictable [applied][web/test] don't depend on iteration order on a set [applied][test] Don't depend on dict iteration ordering [applied][hooks/syncschema] use a list instead of a set for UpdateFTIndexOp [applied][rqlrewrite] sort possible types when turning is_instance_of into is [applied][web/views] Use predictable ordering for attributes in entity xml view [applied][web/views] set explicit order for ManageSourcesAction [applied][web/test] don't depend on dict iteration ordering [applied][sobjects/test] Fix dependency on predictable hashing [applied][test] don't rely on a stable ordering for appobject_path [applied]