• 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/goal/anonymous_telemetry.py
1
# Copyright 2021 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.option.option_types import BoolOption, StrOption
×
UNCOV
9
from pants.option.subsystem import Subsystem
×
UNCOV
10
from pants.util.docutil import doc_url
×
UNCOV
11
from pants.util.strutil import softwrap
×
12

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

UNCOV
15
_telemetry_docs_referral = f"See {doc_url('docs/using-pants/anonymous-telemetry')} for details"
×
16

17

18
# This subsystem is orphaned (but not quite deprecated/removed).
19
# We found that:
20
#   - Most people disabled the telemetry
21
#   - The telemetry we received wasn't being used for meaningful decisions
22
#   - The implementation we had required humbug, which bloated Pants' environment with it and its dependencies
23
#
24
# The subsystem still exists, however, in hopes that a future implementation could be added seamlessly
25
# which addresses the above points.
UNCOV
26
class AnonymousTelemetry(Subsystem):
×
UNCOV
27
    options_scope = "anonymous-telemetry"
×
UNCOV
28
    help = "Options related to sending anonymous stats to the Pants project, to aid development."
×
29

UNCOV
30
    enabled = BoolOption(
×
31
        default=False,
32
        help=softwrap(
33
            f"""
34
            Whether to send anonymous telemetry to the Pants project.
35

36
            Telemetry is sent asynchronously, with silent failure, and does not impact build times
37
            or outcomes.
38

39
            {_telemetry_docs_referral}.
40
            """
41
        ),
42
        advanced=True,
43
    )
UNCOV
44
    repo_id = StrOption(
×
45
        default=None,
46
        help=softwrap(
47
            f"""
48
            An anonymized ID representing this repo.
49

50
            For private repos, you likely want the ID to not be derived from, or algorithmically
51
            convertible to, anything identifying the repo.
52

53
            For public repos the ID may be visible in that repo's config file, so anonymity of the
54
            repo is not guaranteed (although user anonymity is always guaranteed).
55

56
            {_telemetry_docs_referral}.
57
            """
58
        ),
59
        advanced=True,
60
    )
61

62

UNCOV
63
def rules():
×
UNCOV
64
    return AnonymousTelemetry.rules()
×
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