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

pantsbuild / pants / 20974506033

13 Jan 2026 10:14PM UTC coverage: 43.251% (-37.0%) from 80.269%
20974506033

Pull #22976

github

web-flow
Merge a16a40040 into c12556724
Pull Request #22976: WIP: Add the ability to set stdin for a Process

2 of 4 new or added lines in 2 files covered. (50.0%)

17213 existing lines in 540 files now uncovered.

26146 of 60452 relevant lines covered (43.25%)

0.86 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
2✔
5

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

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

10

11
class RunId(int):
2✔
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]):
2✔
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:
2✔
28
        try:
2✔
29
            return cast(_T, super().__getitem__(item))
2✔
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