Skip to content

GNU Make Jobserver support? #1283

@xmo-odoo

Description

@xmo-odoo

I was reading https://blogs.gentoo.org/mgorny/2025/11/30/one-jobserver-to-rule-them-all/ on global / system jobservers (using the gnu make jobserver protocol as it has fairly wide support) and it noted upon xdist missing that.

It's definitely an issue I have observed when i mix workloads (e.g. multiple large test suites run in parallel, plus native compilation on the side), currently I try to eyeball my CPU graph to see how I'm doing and if I have more headroom but it would definitely be useful to be able to use jobservers to allow workers to coordinate.

https://github.com/tommilligan/pytest-jobserver exists, however it notes that it is not able to call into existing jobservers because the xdist protocol does not support sending jobserver info, so I'm assuming this requires updates to xdist itself. It also does not support the "windows jobserver" method.

Further jobserver resources:

Of note: as the essay calls out, while the jobserver protocol calls out for a fifo this is probably something to either not check or extend: in order to mitigate common failure modes, the system-wide jobserver implementations use other file types (regular file via FUSE or character device via CUSE). Make itself does not check the file type.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions