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

pantsbuild / pants / 22740642519

05 Mar 2026 11:00PM UTC coverage: 52.677% (-40.3%) from 92.931%
22740642519

Pull #23157

github

web-flow
Merge 2aa18e6d4 into f0030f5e7
Pull Request #23157: [pants ng] Partition source files by config.

31678 of 60136 relevant lines covered (52.68%)

0.53 hits per line

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

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

4
from __future__ import annotations
1✔
5

6
from pants.backend.python.subsystems.setup import PythonSetup
1✔
7
from pants.backend.python.subsystems.setuptools import PythonDistributionFieldSet
1✔
8
from pants.backend.python.util_rules.dists import run_pep517_build
1✔
9
from pants.backend.python.util_rules.package_dists import create_dist_build_request
1✔
10
from pants.backend.python.util_rules.package_dists import rules as package_dists_rules
1✔
11
from pants.core.goals.package import BuiltPackage, BuiltPackageArtifact, PackageFieldSet
1✔
12
from pants.engine.intrinsics import digest_to_snapshot
1✔
13
from pants.engine.rules import collect_rules, implicitly, rule
1✔
14
from pants.engine.unions import UnionMembership, UnionRule
1✔
15

16

17
@rule
1✔
18
async def package_python_dist(
1✔
19
    field_set: PythonDistributionFieldSet,
20
    python_setup: PythonSetup,
21
    union_membership: UnionMembership,
22
) -> BuiltPackage:
23
    dist_build_request = await create_dist_build_request(
×
24
        dist_target_address=field_set.address,
25
        python_setup=python_setup,
26
        union_membership=union_membership,
27
        # raises an error if both dist_tgt.wheel and dist_tgt.sdist are False
28
        validate_wheel_sdist=True,
29
    )
30
    setup_py_result = await run_pep517_build(dist_build_request, **implicitly())
×
31
    dist_snapshot = await digest_to_snapshot(setup_py_result.output)
×
32
    return BuiltPackage(
×
33
        setup_py_result.output,
34
        tuple(BuiltPackageArtifact(path) for path in dist_snapshot.files),
35
    )
36

37

38
def rules():
1✔
39
    return [
1✔
40
        *package_dists_rules(),
41
        *collect_rules(),
42
        UnionRule(PackageFieldSet, PythonDistributionFieldSet),
43
    ]
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