diff --git a/nixpkgs_review/cli/__init__.py b/nixpkgs_review/cli/__init__.py index 77c4839b..1d7ddc62 100644 --- a/nixpkgs_review/cli/__init__.py +++ b/nixpkgs_review/cli/__init__.py @@ -66,6 +66,11 @@ def pr_flags( action="store_true", help="Post the nixpkgs-review results as a PR comment", ) + pr_parser.add_argument( + "--no-headers", + action="store_true", + help="Do not render the header in the markdown report", + ) pr_parser.set_defaults(func=pr_command) return pr_parser diff --git a/nixpkgs_review/cli/pr.py b/nixpkgs_review/cli/pr.py index 02ec40f2..8451177c 100644 --- a/nixpkgs_review/cli/pr.py +++ b/nixpkgs_review/cli/pr.py @@ -93,6 +93,7 @@ def pr_command(args: argparse.Namespace) -> str: nixpkgs_config=nixpkgs_config, extra_nixpkgs_config=args.extra_nixpkgs_config, num_parallel_evals=args.num_parallel_evals, + show_header=not args.no_headers, ) contexts.append((pr, builddir.path, review.build_pr(pr))) except NixpkgsReviewError as e: diff --git a/nixpkgs_review/report.py b/nixpkgs_review/report.py index 6561a64c..acb1297c 100644 --- a/nixpkgs_review/report.py +++ b/nixpkgs_review/report.py @@ -149,9 +149,11 @@ def __init__( self, attrs_per_system: dict[str, list[Attr]], extra_nixpkgs_config: str, + show_header: bool = True, *, checkout: Literal["merge", "commit"] = "merge", ) -> None: + self.show_header = show_header self.attrs = attrs_per_system self.checkout = checkout @@ -198,17 +200,19 @@ def json(self, pr: int | None) -> str: ) def markdown(self, pr: int | None) -> str: - msg = "## `nixpkgs-review` result\n\n" - msg += "Generated using [`nixpkgs-review`](https://github.com/Mic92/nixpkgs-review).\n\n" - - cmd = "nixpkgs-review" - if pr is not None: - cmd += f" pr {pr}" - if self.extra_nixpkgs_config: - cmd += f" --extra-nixpkgs-config '{self.extra_nixpkgs_config}'" - if self.checkout != "merge": - cmd += f" --checkout {self.checkout}" - msg += f"Command: `{cmd}`\n" + msg = "" + if self.show_header: + msg += "## `nixpkgs-review` result\n\n" + msg += "Generated using [`nixpkgs-review`](https://github.com/Mic92/nixpkgs-review).\n\n" + + cmd = "nixpkgs-review" + if pr is not None: + cmd += f" pr {pr}" + if self.extra_nixpkgs_config: + cmd += f" --extra-nixpkgs-config '{self.extra_nixpkgs_config}'" + if self.checkout != "merge": + cmd += f" --checkout {self.checkout}" + msg += f"Command: `{cmd}`\n" for system, report in self.system_reports.items(): msg += "\n---\n" diff --git a/nixpkgs_review/review.py b/nixpkgs_review/review.py index bc340bee..afa023cd 100644 --- a/nixpkgs_review/review.py +++ b/nixpkgs_review/review.py @@ -106,6 +106,7 @@ def __init__( checkout: CheckoutOption = CheckoutOption.MERGE, sandbox: bool = False, num_parallel_evals: int = 1, + show_header: bool = True, ) -> None: if skip_packages_regex is None: skip_packages_regex = [] @@ -144,6 +145,7 @@ def __init__( self.nixpkgs_config = nixpkgs_config self.extra_nixpkgs_config = extra_nixpkgs_config self.num_parallel_evals = num_parallel_evals + self.show_header = show_header def _process_aliases_for_systems(self, system: str) -> set[str]: match system: @@ -359,6 +361,7 @@ def start_review( attrs_per_system, self.extra_nixpkgs_config, checkout=self.checkout.name.lower(), # type: ignore[arg-type] + show_header=self.show_header, ) report.print_console(pr) report.write(path, pr)