• 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

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✔
30
        except KeyError:
×
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