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

pantsbuild / pants / 26380816428

25 May 2026 02:57AM UTC coverage: 52.312% (-40.6%) from 92.89%
26380816428

Pull #23368

github

web-flow
Merge 7410b48e1 into 7b1060c81
Pull Request #23368: Run Linux ARM CI on Depot runners (Cherry-pick of #23363)

31807 of 60802 relevant lines covered (52.31%)

1.05 hits per line

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

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

4
"""Support for Python.
5

6
See https://www.pantsbuild.org/docs/python-backend.
7
"""
8

9
from pants.backend.python import target_types_rules
×
10
from pants.backend.python.dependency_inference import rules as dependency_inference_rules
×
11
from pants.backend.python.goals import (
×
12
    coverage_py,
13
    export,
14
    lockfile,
15
    package_dists,
16
    package_pex_binary,
17
    pytest_runner,
18
    repl,
19
    run_pex_binary,
20
    run_python_requirement,
21
    run_python_source,
22
    tailor,
23
)
24
from pants.backend.python.macros import (
×
25
    pipenv_requirements,
26
    poetry_requirements,
27
    python_requirements,
28
    uv_requirements,
29
)
30
from pants.backend.python.macros.pipenv_requirements import PipenvRequirementsTargetGenerator
×
31
from pants.backend.python.macros.poetry_requirements import PoetryRequirementsTargetGenerator
×
32
from pants.backend.python.macros.python_artifact import PythonArtifact
×
33
from pants.backend.python.macros.python_requirements import PythonRequirementsTargetGenerator
×
34
from pants.backend.python.macros.uv_requirements import UvRequirementsTargetGenerator
×
35
from pants.backend.python.subsystems import debugpy
×
36
from pants.backend.python.subsystems import uv as uv_subsystem
×
37
from pants.backend.python.target_types import (
×
38
    PexBinariesGeneratorTarget,
39
    PexBinary,
40
    PythonDistribution,
41
    PythonRequirementTarget,
42
    PythonSourceField,
43
    PythonSourcesGeneratorTarget,
44
    PythonSourceTarget,
45
    PythonTestsGeneratorTarget,
46
    PythonTestTarget,
47
    PythonTestUtilsGeneratorTarget,
48
)
49
from pants.backend.python.util_rules import (
×
50
    ancestor_files,
51
    local_dists,
52
    local_dists_pep660,
53
    pex,
54
    pex_from_targets,
55
    python_sources,
56
)
57
from pants.backend.python.util_rules import (
×
58
    uv as uv_util,
59
)
60
from pants.build_graph.build_file_aliases import BuildFileAliases
×
61
from pants.core.target_types import TargetGeneratorSourcesHelperTarget
×
62
from pants.core.util_rules.wrap_source import wrap_source_rule_and_target
×
63

64
wrap_python = wrap_source_rule_and_target(PythonSourceField, "python_sources")
×
65

66

67
def build_file_aliases():
×
68
    return BuildFileAliases(objects={"python_artifact": PythonArtifact, "setup_py": PythonArtifact})
×
69

70

71
def rules():
×
72
    return (
×
73
        *target_types_rules.rules(),
74
        # Subsystems
75
        *coverage_py.rules(),
76
        *debugpy.rules(),
77
        *uv_subsystem.rules(),
78
        # Util rules
79
        *ancestor_files.rules(),
80
        *dependency_inference_rules.rules(),
81
        *local_dists_pep660.rules(),
82
        *pex.rules(),
83
        *pex_from_targets.rules(),
84
        *python_sources.rules(),
85
        *uv_util.rules(),
86
        # Goals
87
        *package_pex_binary.rules(),
88
        *pytest_runner.rules(),
89
        *repl.rules(),
90
        *run_pex_binary.rules(),
91
        *run_python_requirement.rules(),
92
        *run_python_source.rules(),
93
        *package_dists.rules(),
94
        *tailor.rules(),
95
        *local_dists.rules(),
96
        *export.rules(),
97
        *lockfile.rules(),
98
        # Macros.
99
        *pipenv_requirements.rules(),
100
        *poetry_requirements.rules(),
101
        *python_requirements.rules(),
102
        *uv_requirements.rules(),
103
        *wrap_python.rules,
104
    )
105

106

107
def target_types():
×
108
    return (
×
109
        PexBinary,
110
        PexBinariesGeneratorTarget,
111
        PythonDistribution,
112
        TargetGeneratorSourcesHelperTarget,
113
        PythonRequirementTarget,
114
        PythonSourcesGeneratorTarget,
115
        PythonSourceTarget,
116
        PythonTestsGeneratorTarget,
117
        PythonTestTarget,
118
        PythonTestUtilsGeneratorTarget,
119
        # Macros.
120
        PipenvRequirementsTargetGenerator,
121
        PoetryRequirementsTargetGenerator,
122
        PythonRequirementsTargetGenerator,
123
        UvRequirementsTargetGenerator,
124
        *wrap_python.target_types,
125
    )
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