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

pantsbuild / pants / 20332790708

18 Dec 2025 09:48AM UTC coverage: 64.992% (-15.3%) from 80.295%
20332790708

Pull #22949

github

web-flow
Merge f730a56cd into 407284c67
Pull Request #22949: Add experimental uv resolver for Python lockfiles

54 of 97 new or added lines in 5 files covered. (55.67%)

8270 existing lines in 295 files now uncovered.

48990 of 75379 relevant lines covered (64.99%)

1.81 hits per line

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

0.0
/src/python/pants/backend/typescript/subsystem.py
1
# Copyright 2025 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 logging
×
7

UNCOV
8
from pants.backend.javascript.subsystems.nodejs_tool import NodeJSToolBase
×
UNCOV
9
from pants.option.option_types import SkipOption, StrListOption
×
UNCOV
10
from pants.util.strutil import softwrap
×
11

UNCOV
12
logger = logging.getLogger(__name__)
×
13

14

UNCOV
15
class TypeScriptSubsystem(NodeJSToolBase):
×
UNCOV
16
    options_scope = "typescript"
×
UNCOV
17
    name = "TypeScript"
×
UNCOV
18
    help = """TypeScript type checker (tsc)."""
×
19

20
    # TypeScript always uses resolve-based execution because it needs access to project
21
    # dependencies for type checking. The resolve is determined dynamically in check.py.
22
    # This default version is never used - TypeScript must come from project package.json.
UNCOV
23
    default_version = "typescript@FROM_PACKAGE_JSON"
×
24

UNCOV
25
    skip = SkipOption("check")
×
26

UNCOV
27
    extra_build_args = StrListOption(
×
28
        default=[],
29
        help=(
30
            "Extra arguments to pass to tsc when running in --build mode. "
31
            "These args are added to the base command 'tsc --build'. "
32
            "Commonly used: --verbose, --force, --dry."
33
        ),
34
    )
35

UNCOV
36
    def __init__(self, *args, **kwargs):
×
37
        super().__init__(*args, **kwargs)
×
38

39
        if self.version != "typescript@FROM_PACKAGE_JSON":
×
40
            logger.warning(
×
41
                softwrap(f"""
42
                    You set --typescript-version={self.version}. This setting is ignored because
43
                    TypeScript always uses the version from your project's package.json dependencies
44
                    or devDependencies. Please ensure TypeScript is listed in your package.json.
45
                """)
46
            )
47

48
        self._binary_name_override = "tsc"
×
49

UNCOV
50
    @property
×
UNCOV
51
    def binary_name(self) -> str:
×
52
        """The binary name to run for this tool."""
53
        return self._binary_name_override or super().binary_name
×
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

© 2025 Coveralls, Inc