#1163·grunt

是否应当对有错误的任务发出警告或导致任务失败?

作者: cowboy创建于 2014年6月18日更新于 2026年8月15日
标签needs discussion

我们已经在 contrib 插件中多次遇到这个问题。有些人希望失败的任务发出警告,以便后续任务继续运行。其他人希望失败的任务出错,以便后续任务不运行。 目前,唯一的方法是让用户控制此问题,使失败的任务失败,导致任何后续任务都不运行,然后可以通过 --force CLI 选项在全局范围内覆盖此设置。 ** 我们目前是否在 contrib 中以这种方式处理此问题? ** 这似乎是理想的行为:

  1. 如果有任何事项阻止任务完成其主要任务,则任务应失败。
  2. 如果没有任何事项阻止任务完成其主要任务,则任务应发出警告。
  3. 默认情况下,失败的任务会阻止任何后续任务的运行。
  4. 在用户可能指定任务的每个位置,都可以设置一个标志,表明该任务应受到规则 3 的排除。 示例:
  • 一个 linting 插件应在检测到 linting 错误时失败。其他任何“错误”都是警告。
  • 一个编译插件应在无法实际编译文件(由于语法错误或文件权限错误)时失败。其他任何“错误”都是警告。
  • 一个文件复制插件应在无法实际复制文件时失败。其他任何“错误”都是警告。 我想讨论以下两个问题:
  1. 我们如何一次性解决此问题并立即改进 grunt-contrib 插件?
  2. 未来该如何解决此问题?