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

pantsbuild / pants / 21803785359

08 Feb 2026 07:13PM UTC coverage: 43.3% (-37.0%) from 80.277%
21803785359

Pull #23085

github

web-flow
Merge 7c1cd926d into 40389cc58
Pull Request #23085: A helper method for indexing paths by source root

2 of 6 new or added lines in 1 file covered. (33.33%)

17114 existing lines in 539 files now uncovered.

26075 of 60219 relevant lines covered (43.3%)

0.43 hits per line

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

80.0
/src/python/pants/engine/internals/session.py
1
# Copyright 2016 Pants project contributors (see CONTRIBUTORS.md).
2
# Licensed under the Apache License, Version 2.0 (see LICENSE).
3

4
from typing import Any, TypeVar, cast
1✔
5

6
from pants.util.frozendict import FrozenDict
1✔
7

8
_T = TypeVar("_T")
1✔
9

10

11
class RunId(int):
1✔
12
    """A unique id for a single run or `--loop` iteration of Pants within a single Scheduler.
13

14
    RunIds are not comparable across Scheduler instances, and only equality is meaningful, not
15
    ordering.
16
    """
17

18

19
class SessionValues(FrozenDict[type, Any]):
1✔
20
    """Values set for the Session, and exposed to @rules.
21

22
    Generally, each type provided via `SessionValues` should have a simple rule that returns the
23
    type so that users can directly request it in a rule, rather than needing to query
24
    `SessionValues`.
25
    """
26

27
    def __getitem__(self, item: type[_T]) -> _T:
1✔
28
        try:
1✔
29
            return cast(_T, super().__getitem__(item))
1✔
UNCOV
30
        except KeyError:
×
UNCOV
31
            raise KeyError(f"Expected {item.__name__} to be provided via SessionValues.")
×
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