grunt
                                
                                 grunt copied to clipboard
                                
                                    grunt copied to clipboard
                            
                            
                            
                        Multitask marked as success when forced
Issue: When force is enabled, multitasks are unconditionally marked as success, even if a child task fails with a warning.
Expected behavior: A multitask is only marked as success if all the child tasks were marked as success.
Use case: Forcing a task to be performed unconditionally after a multitask, then making it required without force enabled to defer failure. See https://github.com/floriangosse/grunt-force-task/issues/2#issuecomment-229729700. Related to #810.
Example:
module.exports = function (grunt) {
  'use strict';
  grunt.loadNpmTasks('grunt-force-task');
  grunt.registerTask('can-fail', function() {
    grunt.task.run('force:jasmine');
    grunt.task.run('istanbul_combine');
    grunt.task.run('jasmine-passed');
  });
  grunt.registerTask('test', function() {
    grunt.task.run('force:jasmine');
    grunt.task.run('istanbul_combine');
    grunt.task.run('jasmine-passed');
  });
  grunt.registerTask('jasmine-passed', function() {
    this.requires('jasmine');
  });
});
Since the jasmine task is a multitask, this.requires('jasmine') will never throw an error, because the jasmine task is being marked as a success. This is counter intuitive, because a child task like jasmine:cars can fail, generate a warning, but will be not marked as success.