[devtools] qunit: update to 1.18.0 (closes #5533333)
* the logging API has changed (register callbacks instead of setting
attributes on the QUnit object)
* the logging callbacks all have a single "details" object argument
* the "main" div was renamed to "qunit-fixture" (this change is
responsible for all the churn in our own JS test files)
* QUnit can now build the DOM elements it needs for reporting from a
single "qunit" div
if not rql('CWConstraintType X WHERE X name "RQLUniqueConstraint"',
ask_confirm=False):
rql('INSERT CWConstraintType X: X name "RQLUniqueConstraint"',
ask_confirm=False)