Find issues related to a given issue number.
(args, data)
| 434 | |
| 435 | |
| 436 | def cmd_related(args, data): |
| 437 | """Find issues related to a given issue number.""" |
| 438 | issues = all_issues(data) |
| 439 | issue_map = {i["number"]: i for i in issues} |
| 440 | |
| 441 | target = issue_map.get(args.number) |
| 442 | if not target: |
| 443 | print(f"Issue #{args.number} not found.", file=sys.stderr) |
| 444 | sys.exit(1) |
| 445 | |
| 446 | state_filter = args.state.upper() if args.state else None |
| 447 | results = find_related(target, issues, state_filter, args.limit or 15) |
| 448 | |
| 449 | query_sigs = extract_signatures(target["title"] + " " + (target["body"] or "")[:1000]) |
| 450 | print(f"Issues related to #{target['number']}: {target['title'][:70]}") |
| 451 | print(f" Signatures: {query_sigs or 'none'}") |
| 452 | print() |
| 453 | |
| 454 | for score, issue, sig_ol, tok_ol in results: |
| 455 | print(format_related_result(score, issue, sig_ol, tok_ol, verbose=args.verbose)) |
| 456 | |
| 457 | |
| 458 | def cmd_batch_related(args, data): |
nothing calls this directly
no test coverage detected