# Changelog

- 0.26.0
  - Refactor `chalkline` access to use native module (removed from `gulp-messenger`)
  - Changed `no-coverage` option to remove check for existing configuration file.  This option should allow setting, regardless of existence of configuration file.
- 0.25.0
  - Implemented `callback support`
  - Removed `gulp-util` Issue [113](https://github.com/mikeerickson/gulp-phpunit/issues/113)
- 0.24.0
  - Add entrypoint for `prettyPrinter` -- requires (https://packagist.org/packages/codedungeon/phpunit-result-printer)

      ```javascript
      var opts = { prettyPrinter: true } // default false
      gulp.src('phpunit.xml')
        .pipe(phpunit('./vendor/bin/phpunit',opts));
      });
      ```
      - **Pretty Printer Installation**
        `$ composer require codedungeon/phpunit-result-printer`

- 0.22.2
  - Fixed `--no-coverage` flag setting when supplied [Issue 104](https://github.com/mikeerickson/gulp-phpunit/issues/104)

- 0.21.0
  - Updated dependencies
  - `node-notifier@^5` reduces package size significantly

- 0.20.0
  - Fixed issue with duplicate test result output [57](https://github.com/mikeerickson/gulp-phpunit/issues/57)
  - This was a regression introduced in 0.19
  - Added new option `showData` which can be used to fix incorrect output (this was causing the duplicate output)
  - Closed Issues
      [57] (https://github.com/mikeerickson/gulp-phpunit/issues/57) https://github.com/mikeerickson/gulp-phpunit/issues/57

- 0.17.0
  - Added optional callback method which will be executed when testing is complete.

      ```javascript
      gulp.task('phpunit', function() {
        gulp.src('')
          .pipe(phpunit('phpunit.xml', opts, function(err, success){
            if(err) { throw err }
            console.log(success)
          });
      });
      ```
- 0.16.0 Changes
         Added --no-coverage option
         [43](https://github.com/mikeerickson/gulp-phpunit/issues/43)
         ```javascript
         var opts = { noCoverage: true } // default false
         gulp.src('phpunit.xml')
           .pipe(phpunit('./vendor/bin/phpunit',opts));
         });
         ```

- 0.15.2 Updated to provide `reveal` support accessible `npmaddict.com`

- 0.15.1 Fixed module dependency issue
         [42](https://github.com/mikeerickson/gulp-phpunit/issues/42)

- 0.14.0 Refactored to perform testing asynchronously so output is displayed immediately (shows progress)
         [40](https://github.com/mikeerickson/gulp-phpunit/issues/40)

- 0.13.0 Added yellow chalkline when there are skipped or incomplete tests
         [35](https://github.com/mikeerickson/gulp-phpunit/issues/35)

- 0.12.1 Added support for disabling auto colors (supports older versions of PHPUnit)
    - When using older versions of PHPUnit (prior to 4.8.x) the default color option used by gulp-phpunit was causing !errors
      - You can now turn off auto colors within gulp-phpunit by using the `colors: 'disabled' option

        ```javascript
        gulp.phpunit('',{colors: 'disabled'});
        ```

- 0.12.0 Updated dependencies
- 0.11.1 Updated module dependencies
- 0.11.0 Bug Fixes and Code Refactoring
  - Fixed all know issues related to using configuration files
    - If `.xml` file supplied as task source, it will be used as configuration file
    - If `configurationFile` property supplied in options, it will be used as configuration file
    - If you enable `noConfigurationFile` property, no configuration file will be used
    - Refactored internal options object
    - Fixed issue when using configuration files ( -c option )
    - Removed spurious console.log statement
    - Modified `colors` option to match new color options in PHPUnit. You now supply one of three values
      Use colors in output ("never", "auto" or "always")
    - Fixed issue where output colors were not displayed, regardless of '--colors' attribute
    - Added new property `statusLine` which will display one of three status lines
      - green for passing tests
      - red for failing tests
      - yellow for tests which have `debug` property enabled (will also display red, green status)
    - Notifications are on by default (if gulp-notify installed)
      - You can disable notifications using the `notify` property ( default: true )

- 0.10.0 Fixed Issues
    - Added new property `notify` which will conditionally display notifications (both in buffer and growl where available)
      - This property is `false` by default as to not affect existing installations.
      - You can enable by adding in `options` parameter (options.notify = true)

    - Fixed issues when supplying `testsuite`

    - Closed Issues
      [30] (https://github.com/mikeerickson/gulp-phpunit/issues/30) https://github.com/mikeerickson/gulp-phpunit/issues/30
      [27] (https://github.com/mikeerickson/gulp-phpunit/issues/27) https://github.com/mikeerickson/gulp-phpunit/issues/27
      [17] (https://github.com/mikeerickson/gulp-phpunit/issues/27) https://github.com/mikeerickson/gulp-phpunit/issues/17

- 0.9.0 Fixed Issues
    - Fixed issue when supplying a configuration file (either through configuration option or file parameter)
    - Added bounds check to assure file supplied as `src` parameter is an actual configuration file
      - I am only checking to assure it is an .xml file, not a VALID xml file
    - Tested against Elixir 3.0 for compatibility

    - Closed Issues:
      [23] (https://github.com/mikeerickson/gulp-phpunit/issues/22) https://github.com/mikeerickson/gulp-phpunit/issues/22
      [23] (https://github.com/mikeerickson/gulp-phpunit/issues/23) https://github.com/mikeerickson/gulp-phpunit/issues/23
      [24] (https://github.com/mikeerickson/gulp-phpunit/issues/24) https://github.com/mikeerickson/gulp-phpunit/issues/24
      [25] (https://github.com/mikeerickson/gulp-phpunit/issues/25) https://github.com/mikeerickson/gulp-phpunit/issues/25

- 0.8.0 Bug Fixes and New Features

    - Fixed issue with gulp.src not correctly using supplied phpunit.xml file
    - Added stdout datastream for live logging of phpunit's progress.
    - Updated internal gulp dependencies (getting ready for gulp 4 support)

- 0.7.0 Added Plugin Resources
    - Added new icons for pass and fail which can be used by notify plugin (see example below for usage)
      /assets/test-pass.png
      /assets/test-fail.png
    - Added missing 'verbose' flag to PHPUnit command call (option existed but wasn't used).

- 0.6.3 Updated general options
    - Changed dry run output text color

- 0.6.2 Updated general options
    - Added dryRun option (echo constructed PHPUnit command) sets opt.debug true

- 0.6.1 Updated README to include all updated options

- 0.6.0 Updated to support PHPUnit 4.x and new options

    - Added Code Coverage Options
      - coverageClover
      - coverageCrap4j
      - coverageHtml
      - coveragePHP
      - coverageText
      - coverageXML

    - Added Logging Options
      - logJunit
      - logTap
      - logJson
      - testdoxHtml
      - testdoxText

    - Added Test Selection Options
      - filter
      - testsuite
      - group
      - excludeGroup
      - testSuffix

    - Added Test Execution Options
      - reportUseless
      - strictCoverage
      - disallowTestOutput
      - enforceTimeLimit
      - strict
      - isolation
      - noGlobals
      - staticBackup
      - stopOnError
      - stopOnFailure
      - stopOnRisky
      - stopOnSkipped
      - displayDebug
      - testdox
      - tap

    - Added Configuration Options
      - includePath
      - noColor
      - noConfig
      - noCoverage (added 0.16.0)

- 0.5.3 Updated dev dependencies to use latest builds

- 0.5.2: Small adjustments and Configuration File Support (thanks @wayneashleyberry)
   - Added Configuration File Support
   - Removed Node 0.9 from Travis support

- 0.5.1: Added CI Support
    - Added .travis support
    - Added .circle support

- 0.5.0: Complete refactoring and cleanup (thanks @taai)
    - Simplified code and callback handling
    - Addressed additional issues related to dependecies

- 0.4.2: Added additional tests

- 0.4.1: Code Cleanup
    - Removed calls to console.log -> gutil.log (playing nice in the playground)
    - Fixed issue with calling as dependency task (thanks @taai)

- 0.4.0: Added check for invalid PHPUnit binary path as first parameter
    - Safeguard to assure options is not passed as first parameter

- 0.3.0: Refactoring
    - Refactored color console message to use gulp-util instance instead of color plugi

- 0.2.1: Update Default Command - Windows Fix
    - Fixed default command when using windows (thx @imissions)

- 0.1.0:
    - Enhanced debug output (supporting color)

- 0.0.4:
    - Updated version number, error publishing full archive to npm in 0.0.3 update

- 0.0.3:
    - Added support return calling user supplied callback to handle notification

- 0.0.2:
    - Fixed issue which caused tests to be run multiple times
    - Added 'clear' flag to clear console before running tests
    - Added 'testClass' option to define a specific class to test
    - Added './vendor/bin/phpunit' as default bin if no path supplied

- 0.0.1: Initial Release
