• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pantsbuild / pants / 21042790249

15 Jan 2026 06:57PM UTC coverage: 43.263% (-35.4%) from 78.666%
21042790249

Pull #23021

github

web-flow
Merge cc03ad8de into d250c80fe
Pull Request #23021: WIP gh workflow scie pex

23 of 33 new or added lines in 3 files covered. (69.7%)

16147 existing lines in 521 files now uncovered.

26164 of 60477 relevant lines covered (43.26%)

0.87 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/python/pants/backend/javascript/lint/prettier/subsystem.py
1
# Copyright 2022 Pants project contributors (see CONTRIBUTORS.md).
2
# Licensed under the Apache License, Version 2.0 (see LICENSE).
3

UNCOV
4
from __future__ import annotations
×
5

UNCOV
6
import os
×
UNCOV
7
from collections.abc import Iterable
×
8

UNCOV
9
from pants.backend.javascript.subsystems.nodejs_tool import NodeJSToolBase
×
UNCOV
10
from pants.core.util_rules.config_files import ConfigFilesRequest
×
UNCOV
11
from pants.option.option_types import ArgsListOption, SkipOption
×
UNCOV
12
from pants.util.strutil import help_text
×
13

14

UNCOV
15
class Prettier(NodeJSToolBase):
×
UNCOV
16
    options_scope = "prettier"
×
UNCOV
17
    name = "Prettier"
×
UNCOV
18
    help = help_text(
×
19
        """
20
        The Prettier utility for formatting JS/TS (and others) code
21
        (https://prettier.io/).
22
        """
23
    )
24

UNCOV
25
    default_version = "prettier@3.6.2"
×
26

UNCOV
27
    skip = SkipOption("fmt", "lint")
×
UNCOV
28
    args = ArgsListOption(example="--version")
×
29

UNCOV
30
    def config_request(self, dirs: Iterable[str]) -> ConfigFilesRequest:
×
31
        """Prettier will use the closest configuration file to the file currently being formatted,
32
        so add all of them In the event of multiple configuration files, Prettier has an order of
33
        precedence specified here: https://prettier.io/docs/en/configuration.html."""
34

35
        config_files = (
×
36
            *[f"prettier.config{ext}" for ext in [".js", ".cjs"]],
37
            *[
38
                f".prettierrc{ext}"
39
                for ext in [
40
                    "",
41
                    ".json",
42
                    ".yml",
43
                    ".yaml",
44
                    ".json5",
45
                    ".js",
46
                    ".cjs",
47
                    ".toml",
48
                ]
49
            ],
50
        )
51
        check_existence = [os.path.join(d, file) for file in config_files for d in ("", *dirs)]
×
52
        return ConfigFilesRequest(
×
53
            discovery=True,
54
            check_existence=check_existence,
55
        )
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc