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

pantsbuild / pants / 21378504907

26 Jan 2026 11:48PM UTC coverage: 43.218% (-37.1%) from 80.269%
21378504907

Pull #23038

github

web-flow
Merge a9ec5051e into 09b8ecaa1
Pull Request #23038: remote cache logger - new plugin to help debug the remote cache

0 of 45 new or added lines in 1 file covered. (0.0%)

17212 existing lines in 540 files now uncovered.

26144 of 60493 relevant lines covered (43.22%)

0.86 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