MCPcopy Index your code
hub / github.com/nodejs/node / main

Function main

deps/inspector_protocol/check_protocol_compatibility.py:414–461  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

412
413
414def main():
415 if not self_test():
416 sys.stderr.write("Self-test failed")
417 return 1
418
419 cmdline_parser = optparse.OptionParser()
420 cmdline_parser.add_option("--show_changes")
421 cmdline_parser.add_option("--expected_errors")
422 cmdline_parser.add_option("--stamp")
423 arg_options, arg_values = cmdline_parser.parse_args()
424
425 if len(arg_values) < 1:
426 sys.stderr.write("Usage: %s [--show_changes] <protocol-1> [, <protocol-2>...]\n" % sys.argv[0])
427 return 1
428
429 domains = []
430 baseline_domains = []
431 version = load_domains_and_baselines(arg_values[0], domains, baseline_domains)
432 for dependency in arg_values[1:]:
433 load_domains_and_baselines(dependency, domains, baseline_domains)
434
435 expected_errors = []
436 if arg_options.expected_errors:
437 expected_errors_file = open(arg_options.expected_errors, "r")
438 expected_errors = json.loads(expected_errors_file.read())["errors"]
439 expected_errors_file.close()
440
441 errors = compare_schemas(baseline_domains, domains, False)
442 unexpected_errors = []
443 for i in range(len(errors)):
444 if errors[i] not in expected_errors:
445 unexpected_errors.append(errors[i])
446 if len(unexpected_errors) > 0:
447 sys.stderr.write(" Compatibility checks FAILED\n")
448 for error in unexpected_errors:
449 sys.stderr.write(" %s\n" % error)
450 return 1
451
452 if arg_options.show_changes:
453 changes = compare_schemas(domains, baseline_domains, True)
454 if len(changes) > 0:
455 print(" Public changes since %s:" % version)
456 for change in changes:
457 print(" %s" % change)
458
459 if arg_options.stamp:
460 with open(arg_options.stamp, 'a') as _:
461 pass
462
463if __name__ == '__main__':
464 sys.exit(main())

Callers 1

Calls 11

self_testFunction · 0.70
compare_schemasFunction · 0.70
closeMethod · 0.65
openFunction · 0.50
rangeFunction · 0.50
printFunction · 0.50
writeMethod · 0.45
parse_argsMethod · 0.45
readMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…