anchor.diff:    final source = result['source'];
     final verbosity = Verbosity.values
         .firstWhere((v) => v.toString().split('.').last == result['verbosity']);
  -  String firstArg(String error) {
  -    if (result.rest.isEmpty) {
  -      _printHelp(errorMessage: error);
  -      exit(ExitCode.usage.code);
  -    }
  -    return result.rest.first;
  +  String firstArg() {
  +    return result.rest.isEmpty ? null : result.rest.first;
     }
   
     log.Logger.root.level = log.Level.ALL;
  
positive.code:         summary = await analyzer.inspectPackage(package,
              version: version, options: options);
        } else if (source == 'path') {
          final path = firstArg('No path was provided.');
          final absolutePath = await Directory(path).resolveSymbolicLinks();
          if (showWarning) {
            log.Logger.root
  
negative.code:       help:
            'The source where the package is located (hosted on $defaultHostedUrl, or local directory path).',
        allowed: ['hosted', 'path'],
        defaultsTo: 'path')
    ..addOption('hosted-url',
        help: 'The server that hosts <package>.', defaultsTo: defaultHostedUrl)
    ..addOption('line-length',
  