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

pantsbuild / pants / 23715422062

29 Mar 2026 05:59PM UTC coverage: 52.399% (-40.5%) from 92.917%
23715422062

Pull #23200

github

web-flow
Merge ee17c6764 into da60c6486
Pull Request #23200: perf: Port FrozenOrderedSet to rust

18 of 26 new or added lines in 6 files covered. (69.23%)

23004 existing lines in 605 files now uncovered.

31634 of 60371 relevant lines covered (52.4%)

1.05 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

UNCOV
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
        )
UNCOV
51
        check_existence = [os.path.join(d, file) for file in config_files for d in ("", *dirs)]
×
UNCOV
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