Add QUnit 1.11.0 and 1.12.0 to compatibility test suite, then skip their tests on non-browser enviroments due to the qunitjs module loading problem.
Fix TAP plan line for compatibility suites.
Apply returnExports UMD pattern to support Node, AMD and browser globals. Also apply substack pattern to export single qunitTap function as module.exports.
Adjust indentation.
Extract small functions out from qunitTap function.
Extract extractDetailsFrom function out.
Create explain function as early as possible.
Fix examples since QUnit-TAP exports single qunitTap function as module.exports.
Use QUnit 1.10.0 for non-browser environments due to the qunit loading issue.
Reorganizing regression suite: move expected_output.js
Reorganizing regression suite: use same regression suite for all environments.
Reorganizing regression suite: integrate test_compat.js for Node.js
Rewrite examples in new QUnit assertion style.
Provide tap#unsubscribe method to unsubscribe specified logging events.
Update doc.
Apply jshint.
Prefer function declaration to function expression.
Refactoring: prefer small reentrant functions, prefer single var pattern.
Add TESTED ENVIRONMENTS chart.
Add BC BREAK caution for Node.js users.