Skip to content

Latest commit

 

History

History
970 lines (633 loc) · 43.1 KB

CHANGELOG.md

File metadata and controls

970 lines (633 loc) · 43.1 KB

v0.12.16 (2014-05-10)

Bug Fixes

  • launcher: cancel kill timeout when process exits cleanly (bd662744, closes #946)

v0.12.15 (2014-05-08)

Bug Fixes

  • server: don't wait for socket.io store expiration timeout (cd30a422)

v0.12.14 (2014-04-27)

Bug Fixes

  • debug.html: Added whitespace after 'SKIPPED' (218ee859)

v0.12.13 (2014-04-27)

Bug Fixes

  • preprocessor: serve NaCl binaries (1cc6a1e3)

v0.12.12 (2014-04-25)

Bug Fixes

  • server: properly close flash transport (de89cd33)

v0.12.11 (2014-04-25)

Bug Fixes

  • preprocessor: remove ts from binary extensions (82698523)

v0.12.10 (2014-04-23)

Bug Fixes

  • server: clear web server close timeout on clean close (34123fed)

v0.12.9 (2014-04-14)

Bug Fixes

  • web-server: strip scheme, host and port (06a0da09)

v0.12.8 (2014-04-14)

Bug Fixes

  • web-server: inline the config, when serving debug.html (1eb36430)

v0.12.7 (2014-04-14)

Bug Fixes

  • don't crash/terminate upon errors within chokidar (2c389311)
  • preprocessor: consider SVG files as text files, not binary files (ff288036, closes #1026)

v0.12.6 (2014-04-09)

v0.12.5 (2014-04-08)

Bug Fixes

  • reporters: format fix for console log (d2d1377d, closes #934)

v0.12.4 (2014-04-06)

Bug Fixes

v0.12.3 (2014-04-01)

Bug Fixes

  • web-server: implement a timeout on webServer.close() (fe3dca78, closes #952)

Features

  • web-server: run karma using multiple emulation modes, #631 (b9a2930a, closes #936)

v0.12.2 (2014-03-30)

v0.12.1 (2014-03-16)

Features

  • preprocessor: Adding the dat file extension as a recognised binary. (be923571)

v0.12.0 (2014-03-10)

Bug Fixes

  • serving binary files (8a30cf55, closes #864, #885)
  • config:
    • fail if client.args is set to a non array (fe4eaec0)
    • allow CoffeeScript 1.7 to be used (a1583dec)
  • runner: Karma hangs when file paths have \u in them #924 (1199fc4d, closes #924)
  • web-server:
    • detach listeners after running (3baa8e19)
    • close webserver after running (f9dee468)

Features

  • remove dependency on coffee-script (af2d0e72)
  • config: better error when Coffee/Live Script not installed (aca84dc9)
  • init: generate test-main.(js/coffee) for RequireJS projects (85900c93)

v0.11.14 (2014-02-04)

Features

  • preprocessor: allow preprocessor to cancel test run (4d669bf3, closes #550)
  • reporter: use spaces rather than tabs when formatting errors (112becf7)
  • web-server: include html files as (03d7b106)

v0.11.13 (2014-01-19)

Bug Fixes

  • launcher: compatibility with old launchers (df557cec)

Features

  • support LiveScript configuration (88deebe7)

v0.11.12 (2013-12-25)

Bug Fixes

  • client: show error if an adapter is removed (a8b250cf)

Features

  • deps: update all deps (355a762c, closes #794)
  • reporter: support source maps (rewrite stack traces) (70e4abd9, closes #594)
  • watcher: use polling on Mac (66f50d7e)

v0.11.11 (2013-12-23)

Bug Fixes

  • events: resolve async events without any listener (4e4bba88)
  • launcher:
    • compatibility with Node v0.8 (6a46be96)
    • compatibility with old launchers (ffb74800)

v0.11.10 (2013-12-22)

Bug Fixes

  • completion: add missin --log-level for karma init (1e79eb55)
  • init: clean the terminal if killed (e2aa7497)

Features

  • revert default usePolling to false (e88fbc24)
  • config:
    • remove default preprocessors (coffee, html2js) (ada74d55)
    • Add the abillity to supress the client console. This adds the client config opti (4734962d, closes #744)
    • set default host/port from env vars (0a6a0ee4)
    • Allow tests be to run in a new window instead of iframe (471e3a8a)
  • init:
    • install karma-coffee-preprocessor (29f5cf2d)
    • add nodeunit, nunit frameworks (b4da1a08)
    • install missing plugins (frameworks, launchers) (1ba70a6f)
  • launcher: log how long it took each browser to capture (8dd54369)

Breaking Changes

  • Karma does not ship with any plugin. You need to explicitly install all the plugins you need. karma init can help with this.

Removed plugins that need to be installed explicitly are:

  • karma-jasmine
  • karma-requirejs
  • karma-coffee-preprocessor
  • karma-html2js-preprocessor
  • karma-chrome-launcher
  • karma-firefox-launcher
  • karma-phantomjs-launcher
  • karma-script-launcher (e033d561)

v0.11.9 (2013-12-03)

Features

  • browser: add browserNoActivity configuration (bca8faad)

v0.11.8 (2013-12-03)

Bug Fixes

  • reporter: remove SHAs from stack traces (d7c31f97)
  • web-server: correct caching headers for SHAs (bf27e80b)

Features

  • web-server: disable gzip compression (5ee886bc)

v0.11.7 (2013-12-02)

Bug Fixes

  • keep all sockets in the case an old socket will survive (a5945ebc)
  • reuse browser instance when restarting disconnected browser (1f1a8ebf)
  • client: redirect to redirect_url after all messages are sent (4d05602c)

Features

  • plugins: ignore some non-plugins package names (01776030)

v0.11.6 (2013-12-01)

Bug Fixes

  • config:
    • ignore empty string patterns (66c86a66)
    • apply CLI logger options as soon as we can (16179b08)
  • preprocess: set correct extension for the preprocessed path (c9a64d2f, closes #843)

Features

  • add browserDisconnectTolerance config option (19590e1f)
  • make autoWatch true by default (8454898c)
  • browser: improve logging (71b542ad)
  • client: show error if no adapter is included (7213877f)
  • web-server:

Breaking Changes

  • autoWatch is true by default. If you rely on the default value being false, please set it in karma.conf.js explicitly to false. (8454898c)

v0.11.5 (2013-11-25)

Bug Fixes

  • do not execute already executing browsers (00136cf6)

Features

  • launcher: send SIGKILL if SIGINT does not kill the browser (c0fa49aa)

v0.11.4 (2013-11-21)

Bug Fixes

  • browser: reply "start" event (4fde43de)

v0.11.3 (2013-11-20)

Bug Fixes

  • config: not append empty module if no custom launcher/rep/prep (ee15a4e4)
  • watcher: allow parentheses in a pattern (438eb8dd, closes #728)

Features

  • remove karma binary in favor of karma-cli (c7d46270)
  • config: log if no config file is specified (ce4c5646)

Breaking Changes

  • The karma module does not export karma binary anymore. The recommended way is to have local modules (karma and all the plugins that your project needs) stored in your package.json. You can run that particular Karma by ./node_modules/karma/bin/karma. Or you can have karma-cli installed globally on your system, which enables you to use the karma command.

The global karma command (installed by karma-cli) does look for local version of Karma (including parent directories) first and fall backs to a global one.

The bin/karma binary does not look for any other instances of Karma and just runs the one that it belongs to.

(c7d46270)

v0.11.2 (2013-11-03)

Bug Fixes

  • config: use polling by default (53978c42)
  • proxy: handle proxied socket.io websocket transport upgrade (fcc2a98f)

v0.11.1 (2013-10-25)

Bug Fixes

  • launcher kill method which was throwing an error if no callback was specified bu (5439f1cb)
  • static: Use full height for the iFrame. Fix based on PR #714. (f95daf3c)
  • watcher:

Features

  • redirect client to "return_url" if specified (6af2c897)
  • config: add usePolling config (18514d63)
  • watcher: ignore initial "add" events (dde1da4c)

v0.11.0 (2013-08-26)

Bug Fixes

  • support reconnecting for manually captured browsers (a8ac6d2d)
  • reporter: print browser stats immediately after it finishes (65202d87)

Features

  • don't wait for all browsers and start executing immediately (8647266f, closes #57)

v0.10.2 (2013-08-21)

Bug Fixes

  • don't mark a browser captured if already being killed/timeouted (21230979, closes #88)

Features

  • sync page unload (disconnect) (ac9b3f01)
  • buffer result messages when polling (c4ad6970)
  • allow browser to reconnect during the test run (cbe2851b, closes #82, #590)

v0.10.1 (2013-08-06)

Bug Fixes

v0.10.0 (2013-08-06)

v0.9.8 (2013-08-05)

Bug Fixes

  • init: install plugin as dev dependency (46b7a402)
  • runner: do not confuse client args with the config file (6f158aba)

Features

  • config: default config can be karma.conf.js or karma.conf.coffee (d4a06f29)
  • runner:

v0.9.7 (2013-07-31)

Bug Fixes

  • init: trim the inputs (b72355cb, closes #663)
  • web-server: correct urlRegex in custom handlers (a641c2c1)

Features

  • basic bash/zsh completion (9dc1cf6a)
  • runner: allow passing changed/added/removed files (b598106d)
  • watcher: make the batching delay configurable (fa139312)

v0.9.6 (2013-07-28)

Features

  • pass command line opts through to browser (00d63d0b)
  • web-server: compress responses (gzip/deflate) (8e8a2d44)

Breaking Changes

  • runnerPort is merged with port if you are using karma run with custom --runer-port, please change that to --port. (ca4c4d88)

v0.9.5 (2013-07-21)

Bug Fixes

  • detect a full page reload, show error and recover (15d80f47, closes #27)
  • better serialization in dump/console.log (fd46365d, closes #640)
  • browsers_change event always has collection as arg (42bf787f)
  • init: generate config with the new syntax (6b27fee5)
  • reporter: prevent throwing exception when null is sent to formatter (3b49c385)
  • watcher: ignore fs.stat errors (74ccc9a8)

Features

v0.9.4 (2013-06-28)

Bug Fixes

  • config:
    • make the config changes backwards compatible (593ad853)
    • better errors if file invalid or does not exist (74b533be)
    • allow parsing the config multiple times (78a7094e)
  • launcher: better errors when loading launchers (504e848c)
  • preprocessor:
    • do not show duplicate warnings (47c641f7)
    • better errors when loading preprocessors (3390a00b)
  • reporter: better errors when loading reporters (c645c060)

Features

  • config: pass the config object rather than a wrapper (d2a3c854)

Breaking Changes

  • please update your karma.conf.js as follows (d2a3c854):
// before:
module.exports = function(karma) {
  karma.configure({port: 123});
  karma.defineLauncher('x', 'Chrome', {
    flags: ['--disable-web-security']
  });
  karma.definePreprocessor('y', 'coffee', {
    bare: false
  });
  karma.defineReporter('z', 'coverage', {
    type: 'html'
  });
};

// after:
module.exports = function(config) {
  config.set({
    port: 123,
    customLaunchers: {
      'x': {
        base: 'Chrome',
        flags: ['--disable-web-security']
      }
    },
    customPreprocessors: {
      'y': {
        base: 'coffee',
        bare: false
      }
    },
    customReporters: {
      'z': {
        base: 'coverage',
        type: 'html'
      }
    }
  });
};

v0.9.3 (2013-06-16)

Bug Fixes

  • capturing console.log on IE (fa4b686a, closes #329)
  • config: fix the warning when using old syntax (5e55d797)
  • init: generate correct indentation (5fc17957)
  • launcher:
    • ignore exit code when killing/timeouting (1029bf2d, closes #444)
    • handle ENOENT error, do not retry (7d790b29, closes #452)
  • logger: configure the logger as soon as possible (0607d67c)
  • preprocessor: use graceful-fs to prevent EACCESS errors (279bcab5, closes #566)
  • watcher: watch files that match watched directory (39401175, closes #521)

Features

  • simplify loading plugins using patterns like karma-* (405a5a62)
  • client: capture all console.* log methods (683e6dcb)
  • config:
    • make socket.io transports configurable (bbd5eb86)
    • allow configurable launchers, preprocessors, reporters (76bdac16, closes #317)
    • add warning if old constants are used (7233c5fb)
    • require config as a regular module (a37fd6f7, closes #304)
  • helper: improve useragent detection (eb58768e)
  • init:
    • generate coffee config files (d2173717)
    • improve the questions a bit (baecadb2)
  • proxy: add https proxy support (be878dc5)

Breaking Changes

  • Update your karma.conf.js to export a config function (a37fd6f7):
module.exports = function(karma) {
  karma.configure({
    autoWatch: true,
    // ...
  });
};

v0.9.2 (2013-04-16)

Bug Fixes

  • better error reporting when loading plugins (d9078a8e)
  • config:
    • Separate ENOENT error handler from others (e49dabe7)
    • ensure basePath is always resolved (2e5c5aaa)

Features

  • allow inlined plugins (3034bcf9)
  • debug: show skipped specs and failure details in the console (42ab936b)

v0.9.1 (2013-04-04)

Bug Fixes

  • init: to not give false warning about missing requirejs (562607a1)

Features

  • ship coffee-preprocessor and requirejs as default plugins (f34e30db)

v0.9.0 (2013-04-03)

Bug Fixes

  • global error handler should propagate errors (dec0c196, closes #368)
  • config:
    • Check if configFilePath is a string. Fixes #447. (98724b6e)
    • do not change urlRoot even if proxied (8c138b50)
  • coverage: always send a result object (62c3c679, closes #365)
  • init:
    • generate plugins and frameworks config (17798d55)
    • fix for failing "testacular init" on Windows (0b5b3853)
  • preprocessor: resolve relative patterns to basePath (c608a9e5, closes #382)
  • runner: send exit code as string (ca75aafd, closes #403)

Features

  • display the version when starting (39617395, closes #391)
  • allow multiple preprocessors (1d17c1aa)
  • allow plugins (125ab4f8)
  • config:
    • always ignore the config file itself (103bc0f8)
    • normalize string preprocessors into an array (4dde1608)
  • web-server: allow custom file handlers and mime types (2df88287)

Breaking Changes

  • reporters, launchers, preprocessors, adapters are separate plugins now, in order to use them, you need to install the npm package (probably add it as a devDependency into your package.json) and load in the karma.conf.js with plugins = ['karma-jasmine', ...]. Karma ships with couple of default plugins (karma-jasmine, karma-chrome-launcher, karma-phantomjs-launcher).

  • frameworks (such as jasmine, mocha, qunit) are configured using frameworks = ['jasmine']; instead of prepending JASMINE_ADAPTER into files.

v0.8.0 (2013-03-18)

Breaking Changes

  • rename the project to "Karma":
  • whenever you call the "testacular" binary, change it to "karma", eg. testacular start becomes karma start.
  • if you rely on default name of the config file, change it to karma.conf.js.
  • if you access __testacular__ object in the client code, change it to __karma__, eg. window.__testacular__.files becomes window.__karma__.files. (026a20f7)

v0.6.1 (2013-03-18)

Bug Fixes

  • config: do not change urlRoot even if proxied (1be1ae1d)
  • coverage: always send a result object (2d210aa6, closes #365)
  • reporter.teamcity: report spec names and proper browser name (c8f6f5ea)

v0.6.0 (2013-02-22)

v0.5.11 (2013-02-21)

Bug Fixes

  • adapter.requirejs: do not configure baseUrl automatically (63f3f409, closes #291)
  • init: add missing browsers (Opera, IE) (f39e5645)
  • reporter.junit: Add browser log output to JUnit.xml (f108799a, closes #302)

Features

  • add Teamcity reporter (03e700ae)
  • adapter.jasmine: remove only last failed specs anti-feature (435bf72c, closes #148)
  • config: allow empty config file when called programmatically (f3d77424, closes #358)

v0.5.10 (2013-02-14)

Bug Fixes

  • init: fix the logger configuration (481dc3fd, closes #340)
  • proxy: fix crashing proxy when browser hangs connection (1c78a01a)

Features

  • set urlRoot to /karma/ when proxying the root (8b4fd64d)
  • adapter.requirejs: normalize paths before appending timestamp (94889e7d)
  • update dependencies to the latest (93f96278, e34d8834)

v0.5.9 (2013-02-06)

Bug Fixes

  • adapter.requirejs: show error if no timestamp defined for a file (59dbdbd1)
  • init: fix logger configuration (557922d7)
  • reporter: remove newline from base reporter browser dump (dfae18b6, closes #297)
  • reporter.dots: only add newline to message when needed (dbe1155c

Features

  • add "debug" button to easily open debugging window (da85aab9)
  • config: support running on a custom hostname (b8c5fe85)
  • reporter.junit: add a 'skipped' tag for skipped testcases (6286406e, closes #321)

v0.5.8

  • Fix #283
  • Suppress global leak for istanbul
  • Fix growl reporter to work with testacular run
  • Upgrade jasmine to 1.3.1
  • Fix file sorting
  • Fix #265
  • Support for more mime-types on served static files
  • Fix opening Chrome on Windows
  • Upgrade growly to 1.1.0

v0.5.7

  • Support code coverage for qunit.
  • Rename port-runner option in cli to runner-port
  • Fix proxy handler (when no proxy defined)
  • Fix #65

v0.5.6

  • Growl reporter !
  • Batch changes (eg. git checkout causes only single run now)
  • Handle uncaught errors and disconnect all browsers
  • Global binary prefers local versions

v0.5.5

  • Add QUnit adapter
  • Report console.log()

v0.5.4

  • Fix PhantomJS launcher
  • Fix html2js preprocessor
  • NG scenario adapter: show html output

v0.5.3

  • Add code coverage !

v0.5.2

  • Init: ask about using Require.js

v0.5.1

  • Support for Require.js
  • Fix testacular init basePath

v0.5.0

  • Add preprocessor for LiveScript
  • Fix JUnit reporter
  • Enable process global in config file
  • Add OS name in the browser name
  • NG scenario adapter: hide other outputs to make it faster
  • Allow config to be written in CoffeeScript
  • Allow espaced characters in served urls

v0.4.0 (stable)

v0.3.12

  • Allow calling run() pragmatically from JS

v0.3.11

  • Fix runner to wait for stdout, stderr
  • Make routing proxy always changeOrigin

v0.3.10

  • Fix angular-scenario adapter + junit reporter
  • Use flash socket if web socket not available

v0.3.9

  • Retry starting a browser if it does not capture
  • Update mocha to 1.5.0
  • Handle mocha's xit

v0.3.8

  • Kill browsers that don't capture in captureTimeout ms
  • Abort build if any browser fails to capture
  • Allow multiple profiles of Firefox

v0.3.7

  • Remove Travis hack
  • Fix Safari launcher

v0.3.6

  • Remove custom launcher (constructor)
  • Launcher - use random id to allow multiple instances of the same browser
  • Fix Firefox launcher (creating profile)
  • Fix killing browsers on Linux and Windows

v0.3.5

  • Fix opera launcher to create new prefs with disabling all pop-ups

v0.3.4

  • Change "reporter" config to "reporters"
  • Allow multiple reporters
  • Fix angular-scenario adapter to report proper description
  • Add JUnit xml reporter
  • Fix loading files from multiple drives on Windows
  • Fix angular-scenario adapter to report total number of tests

v0.3.3

  • Allow proxying files, not only directories

v0.3.2

  • Disable autoWatch if singleRun
  • Add custom script browser launcher
  • Fix cleaning temp folders

v0.3.1

  • Run tests on start (if watching enabled)
  • Add launcher for IE8, IE9

v0.3.0

  • Change browser binaries on linux to relative
  • Add report-slower-than to CLI options
  • Fix PhantomJS binary on Travis CI

v0.2.0 (stable)

v0.1.3

  • Launch Canary with crankshaft disabled
  • Make the captured page nicer

v0.1.2

  • Fix jasmine memory leaks
  • support __filename and __dirname in config files

v0.1.1

  • Report slow tests (add reportSlowerThan config option)
  • Report time in minutes if it's over 60 seconds
  • Mocha adapter: add ability to fail during beforeEach/afterEach hooks
  • Mocha adapter: add dump()
  • NG scenario adapter: failure includes step name
  • Redirect /urlRoot to /urlRoot/
  • Fix serving with urlRoot

v0.1.0

  • Adapter for AngularJS scenario runner
  • Allow serving Testacular from a subpath
  • Fix race condition in testacular run
  • Make testacular one binary (remove testacular-run, use testacular run)
  • Add support for proxies
  • Init script for generating config files (testacular init)
  • Start Firefox without custom profile if it fails
  • Preserve order of watched paths for easier debugging
  • Change default port to 9876
  • Require node v0.8.4+

v0.0.17

  • Fix race condition in manually triggered run
  • Fix autoWatch config

v0.0.16

  • Mocha adapter
  • Fix watching/resolving on Windows
  • Allow glob patterns
  • Watch new files
  • Watch removed files
  • Remove unused config (autoWatchInterval)

v0.0.15

  • Remove absolute paths from urls (fixes Windows issue with C:\)
  • Add browser launcher for PhantomJS
  • Fix some more windows issues

v0.0.14

  • Allow require() inside config file
  • Allow custom browser launcher
  • Add browser launcher for Opera, Safari
  • Ignore signals on windows (not supported yet)

v0.0.13

  • Single run mode (capture browsers, run tests, exit)
  • Start browser automatically (chrome, canary, firefox)
  • Allow loading external files (urls)

v0.0.12

  • Allow console in config
  • Warning if pattern does not match any file

v0.0.11

  • Add timing (total / net - per specs)
  • Dots reporter - wrap at 80

v0.0.10

  • Add DOTS reporter
  • Add no-colors option for reporters
  • Fix web server to expose only specified files

v0.0.9

  • Proper exit code for runner
  • Dynamic port asigning (if port already in use)
  • Add log-leve, log-colors cli arguments + better --help
  • Fix some IE errors (indexOf, forEach fallbacks)

v0.0.8

  • Allow overriding configuration by cli arguments (+ --version, --help)
  • Persuade IE8 to not cache context.html
  • Exit runner if no captured browser
  • Fix delayed execution (streaming to runner)
  • Complete run if browser disconnects
  • Ignore results from previous run (after server reconnecting)
  • Server disconnects - cancel execution, clear browser info

v0.0.7

  • Rename to Testacular

v0.0.6

  • Better debug mode (no caching, no timestamps)
  • Make dump() a bit better
  • Disconnect browsers on SIGTERM (kill, killall default)

v0.0.5

  • Fix memory (some :-D) leaks
  • Add dump support
  • Add runner.html

v0.0.4

  • Progress bar reporting
  • Improve error formatting
  • Add Jasmine lib (with iit, ddescribe)
  • Reconnect client each 2sec, remove exponential growing

v0.0.3

  • Jasmine adapter: ignore last failed filter in exclusive mode
  • Jasmine adapter: add build (no global space pollution)

0.0.2

  • Run only last failed tests (jasmine adapter)

0.0.1

  • Initial version with only very basic features