anchor.diff:  const String _kOptionHeader = 'header';
   const String _kOptionSnapshot = 'snapshot';
   const String _kOptionWorking = 'working-dir';
  -const List<String> _kOptions = const <String>[
  +const String _kOptionsManifest = 'manifest';
  +const List<String> _kRequiredOptions = const <String>[
     _kOptionPackages,
     _kOptionOutput,
     _kOptionHeader,
  
positive.code:     ..addOption(_kOptionHeader, help: 'The header of the flx file')
      ..addOption(_kOptionSnapshot, help: 'The generated snapshot file')
      ..addOption(_kOptionWorking,
          help: 'The directory where to put temporary files');
    final ArgResults argResults = parser.parse(args);
    if (_kOptions.any((String option) => !argResults.options.contains(option))) {
      printError('Missing option! All options must be specified.');
      exit(1);
    }
  
negative.code:       snapshotFile: new File(argResults[_kOptionSnapshot]),
        workingDirPath: argResults[_kOptionWorking],
        packagesPath: argResults[_kOptionPackages],
        manifestPath: argResults[_kOptionsManifest] ?? defaultManifestPath,
        includeDefaultFonts: false,
      );
    } on ToolExit catch (e) {
  