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

pantsbuild / pants / 19197356939
80%

Build:
DEFAULT BRANCH: main
Ran 08 Nov 2025 07:35PM UTC
Jobs 12
Files 1718
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

08 Nov 2025 07:08PM UTC coverage: 80.298%. Remained the same
19197356939

push

github

web-flow
[pants-ng] Initial implementation of contextual config (#22862)

The idea is that instead of global config there can be lots of 
local config files that apply to the directories below them.
The config to apply to a target or file is the union of the config
in its dir, then the config in its parent, and so on up to the
global config in the buildroot. The usual rules for overriding
or merging values across multiple config files will apply, with
the more global config having lower precedence than the
more local config.

Then this idea is taken a step further, by allowing further
contextual filtering based on tags in the filename.
For example, `pants_ci.toml` would only apply in ci, 
`pants_macos.toml` would only apply on macos, 
`pants_ci.macos.toml` would only apply on ci on macos, etc.

This can even support things like `pants_python311.toml`
to have different config for different python interpreters
(these contexts would be requested by the user via some 
as-yet-to-be-determined "context" flag).

The overall goal is to get rid of the duplication of concepts in 
BUILD files and in config in the vast majority of cases. Instead
of having a global option that can be overridden in a special
target field, on a case by case bases, we can often just have config
all the way down (literally!), with Pants doing the partitioning and
invoking the same rule multiple times, each with a different
(subsystems, lists of files) pair.

This change only handles discovery of config files. It does not
wire them up to anything. It is unlikely that existing goal 
implementations can be easily changed to use this mechanism,
so it is probably a pants-ng thing.

The existing config parser continues to be used, but its output
is no longer a global singleton.

78098 of 97260 relevant lines covered (80.3%)

3.36 hits per line

Jobs
ID Job ID Ran Files Coverage
1 test_python_linux_x86_64_7/10 - 19197356939.1 08 Nov 2025 08:02PM UTC 1184
42.67
GitHub Action Run
2 test_python_linux_x86_64_6/10 - 19197356939.2 08 Nov 2025 07:49PM UTC 1174
40.76
GitHub Action Run
3 test_python_linux_x86_64_0/10 - 19197356939.3 08 Nov 2025 07:52PM UTC 1199
46.89
GitHub Action Run
4 test_python_linux_x86_64_5/10 - 19197356939.4 08 Nov 2025 07:51PM UTC 1194
48.13
GitHub Action Run
5 test_python_linux_x86_64_1/10 - 19197356939.5 08 Nov 2025 07:56PM UTC 1177
40.2
GitHub Action Run
6 test_python_linux_arm64 - 19197356939.6 08 Nov 2025 07:44PM UTC 1162
43.24
GitHub Action Run
7 test_python_macos14_arm64 - 19197356939.7 08 Nov 2025 07:35PM UTC 1162
43.25
GitHub Action Run
8 test_python_linux_x86_64_3/10 - 19197356939.8 08 Nov 2025 07:57PM UTC 1177
45.68
GitHub Action Run
9 test_python_linux_x86_64_2/10 - 19197356939.9 08 Nov 2025 07:50PM UTC 1180
46.91
GitHub Action Run
10 test_python_linux_x86_64_8/10 - 19197356939.10 08 Nov 2025 07:59PM UTC 1180
45.42
GitHub Action Run
11 test_python_linux_x86_64_4/10 - 19197356939.11 08 Nov 2025 07:59PM UTC 1210
49.91
GitHub Action Run
12 test_python_linux_x86_64_9/10 - 19197356939.12 08 Nov 2025 07:54PM UTC 1185
45.06
GitHub Action Run
Source Files on build 19197356939
  • Tree
  • List 1718
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #19197356939
  • ae9999b0 on github
  • Prev Build on main (#19186107394)
  • Next Build on main (#19250292619)
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

© 2025 Coveralls, Inc