def run_docformatter( rule_runner: RuleRunner, targets: List[Target], *, passthrough_args: Optional[str] = None, skip: bool = False, ) -> Tuple[Sequence[LintResult], FmtResult]: args = ["--backend-packages=pants.backend.python.lint.docformatter"] if passthrough_args: args.append(f"--docformatter-args='{passthrough_args}'") if skip: args.append("--docformatter-skip") rule_runner.set_options(args) field_sets = [DocformatterFieldSet.create(tgt) for tgt in targets] lint_results = rule_runner.request(LintResults, [DocformatterRequest(field_sets)]) input_sources = rule_runner.request( SourceFiles, [ SourceFilesRequest(field_set.sources for field_set in field_sets), ], ) fmt_result = rule_runner.request( FmtResult, [ DocformatterRequest(field_sets, prior_formatter_result=input_sources.snapshot), ], ) return lint_results.results, fmt_result
def run_docformatter( rule_runner: RuleRunner, targets: list[Target], *, extra_args: list[str] | None = None ) -> tuple[tuple[LintResult, ...], FmtResult]: rule_runner.set_options( [ "--backend-packages=pants.backend.python.lint.docformatter", *(extra_args or ()) ], env_inherit={"PATH", "PYENV_ROOT", "HOME"}, ) field_sets = [DocformatterFieldSet.create(tgt) for tgt in targets] lint_results = rule_runner.request(LintResults, [DocformatterRequest(field_sets)]) input_sources = rule_runner.request( SourceFiles, [ SourceFilesRequest(field_set.source for field_set in field_sets), ], ) fmt_result = rule_runner.request( FmtResult, [ DocformatterRequest(field_sets, prior_formatter_result=input_sources.snapshot), ], ) return lint_results.results, fmt_result
def run_docformatter( self, targets: List[TargetWithOrigin], *, passthrough_args: Optional[str] = None, skip: bool = False, ) -> Tuple[LintResult, FmtResult]: args = ["--backend-packages2=pants.backend.python.lint.docformatter"] if passthrough_args: args.append(f"--docformatter-args='{passthrough_args}'") if skip: args.append(f"--docformatter-skip") options_bootstrapper = create_options_bootstrapper(args=args) field_sets = [DocformatterFieldSet.create(tgt) for tgt in targets] lint_result = self.request_single_product( LintResult, Params(DocformatterFieldSets(field_sets), options_bootstrapper)) input_sources = self.request_single_product( SourceFiles, Params( AllSourceFilesRequest(field_set.sources for field_set in field_sets), options_bootstrapper, ), ) fmt_result = self.request_single_product( FmtResult, Params( DocformatterFieldSets( field_sets, prior_formatter_result=input_sources.snapshot), options_bootstrapper, ), ) return lint_result, fmt_result