cmake plugin: Support `disable-parallel` parameter
Metadata
Current evaluation
Enhancement: make the cmake plugin honour the `disable-parallel` part property. Still unimplemented at HEAD (cmake_plugin.py always emits `-j{parallel_build_count}`). Maintainer-filed, labelled Enhancement/Needs information; explicitly deprioritised pending a real-world use case.
Suggested action: keep open
Reason: The gap is real and verified at HEAD: craft_parts/plugins/cmake_plugin.py:136 unconditionally emits `cmake --build . -- -j{self._part_info.parallel_build_count}`, and CMakePluginProperties (like every plugin except autotools) declares no `disable_parallel` field, so `PluginProperties.model_config` with `extra="forbid"` would reject the key. The fix is a direct copy of the shipped autotools precedent (autotools_plugin.py:49 `disable_parallel: bool = False` and line 133's `make` vs `make -j{N}` branch, added by commit 7dfd1bf7 / PR #1167, with a unit test in tests/unit/plugins/test_autotools_plugin.py:120). It stays open rather than being triaged further because the author explicitly labels it "extremely low priority until someone shows us a real-world use case" and tagged it Status: Needs information — it is blocked on an external test case, not on maintainer assessment, and 395 days of inactivity alone is not grounds to close. Confidence is limited slightly by the fact that no candidate implementation was proposed and the sibling issues (#1242, #1245, #1247, #1249, #1251) remain in the same deferred state, so batch-scoped handling is likely.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha |
Impact:
22
Quick Win:
11
Complexity:
15
Confidence:
86
Actionability:
58
|
keep open | Enhancement: make the cmake plugin honour the `disable-parallel` part property. Still unimplemented at HEAD (cmake_plugin.py always emits `-j{parallel_build_count}`). Maintainer-filed, labelled Enhancement/Needs information; explicitly deprioritised pending a real-world use case. | |
| qwen/qwen3.6-35b-a3b |
Impact:
30
Quick Win:
11
Complexity:
40
Confidence:
70
Actionability:
60
|
keep open | Add disable-parallel part property support to the cmake plugin. Open 384 days, labeled Enhancement and Needs information, awaiting a real-world use case. | |
| qwen/qwen3.8-27b |
Impact:
20
Quick Win:
17
Staleness:
65
Complexity:
15
Confidence:
78
Support Request:
10
|
keep open | Feature request to add disable-parallel support to the cmake plugin, mirroring the autotools plugin. Triaged with 'Needs information' label, waiting for a real-world use case. 363 days old, no comments, feature not yet implemented. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
75
Complexity:
25
Confidence:
80
Support Request:
10
|
close stale | Request to add disable-parallel support to the cmake plugin. Labeled needs information, inactive for over 10 months, awaiting a real-world use case to justify implementation. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
85
Complexity:
20
Confidence:
80
Support Request:
10
|
needs triage | Request to add disable-parallel support to the cmake plugin. Labeled needs information, inactive for 10 months, awaiting a real-world use case from the maintainer author. |
Update history
No update history recorded yet.
Related work
-
Related To:
craft-parts#1245
(confidence 90%)
Sibling issue from the same maintainer batch (meson plugin), same rationale and same Enhancement/Needs information state.
-
Related To:
craft-parts#1242
(confidence 90%)
Sibling issue (make plugin); make_plugin.py:86 also hardcodes -j"N" and would need the identical change.
-
Related To:
craft-parts#1249
(confidence 85%)
Sibling qmake-plugin issue (qmake_plugin.py:185 hardcodes make -j{N}); part of the same per-plugin batch as #1234.
-
Related To:
craft-parts#1247
(confidence 80%)
Sibling python-plugin issue that additionally flags tri-state semantics vs. setting CRAFT_PARALLEL_BUILD_COUNT=1, a design question that would also apply here.
-
Related To:
snapcraft#2733
(confidence 60%)
Merged PR delivering the same capability ('cmake plugin now uses BasePlugin's parallel build count, enabling disable-parallel'), but landed in the snapcraft repo's own plugin, not craft-parts; craft-parts' cmake plugin is still unchanged. Useful precedent for the fix.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1242 make plugin: Support `disable-parallel` parameter | craft-parts | open | Enhancement: make plugin should honor the disable-parallel part property (currently always emits make -j"N"). Filed by a maintainer, labeled Triaged/Enhancement, and explicitly deferred as "extremely low priority" until a real-world non-parallel-build use case is supplied; autotools already has it via PR #1167. | |
| #1249 qmake plugin: Support `disable-parallel` parameter | craft-parts | open | Enhancement: add disable-parallel support to the qmake plugin. Maintainer-filed, labeled Needs information; explicitly deferred as low priority pending a real-world use case. One of six sibling per-plugin issues (cmake, meson, make, go, rust). | |
| #2733 cmake plugin: support disable-parallel option | snapcraft | merged | Merged in canonical/snapcraft#2733 (commit 634d72466), enabling CMake disable-parallel via BasePlugin's parallel build count and adding unit coverage. | |
| #1245 meson plugin: Support `disable-parallel` parameter | craft-parts | open | Enhancement request to add `disable-parallel` support to the meson plugin. Open, labelled Enhancement/Needs information by maintainer lengau; explicitly deprioritized until someone provides a real-world use case to test against. | |
| #1243 maven plugin: Support `disable-parallel` parameter | craft-parts | open | Maven plugin support for disable-parallel remains unimplemented; the open enhancement is maintainer-marked Needs information and deliberately low priority pending a real-world failing build. | |
| #1251 scons plugin: Support `disable-parallel` parameter | craft-parts | open | Maintainer-filed enhancement (lengau) asking the scons plugin to honour the disable-parallel part property, like autotools; explicitly deferred as "extremely low priority" pending a real-world use case. Labeled Needs information, no comments. | |
| #1244 maven-use plugin: Support `disable-parallel` parameter | craft-parts | open | Maintainer-filed request to add the disable-parallel part property to the maven-use plugin. Marked Enhancement/Needs information; maintainer states it is extremely low priority pending a real-world use case, none supplied in ~395 days. | |
| #1241 jlink plugin: Support `disable-parallel` parameter | craft-parts | open | Maintainer-filed, triaged enhancement to honour the disable-parallel part property in the jlink plugin. Labeled Needs information; jlink never uses parallel_build_count, so the property would likely be a no-op. Open 395 days, no comments. | |
| #1247 python plugin: Support `disable-parallel` parameter | craft-parts | open | Python plugin support for compiled-wheel parallel control remains unimplemented; maintainers are awaiting a real-world case and resolution of tri-state semantics versus setting CRAFT_PARALLEL_BUILD_COUNT=1. | |
| #1237 go plugin: Support `disable-parallel` parameter | craft-parts | open | Adding disable-parallel support to the Go plugin remains open and low priority, pending a concrete real-world use case or application that fails with parallel builds. |