← Back to issue list

make plugin: Support `disable-parallel` parameter

View original Github issue

Metadata

Project
craft-parts
Number
#1242
Type
issue
State
open
Author
lengau
Labels
Status: Triaged Type: Enhancement
Created
Updated
Closed
—

Current evaluation

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.

Suggested action: keep open

Reason: The gap is real and verifiable: craft_parts/plugins/make_plugin.py `_get_make_command` unconditionally appends `-j"{self._part_info.parallel_build_count}"`, while only autotools_plugin.py declares `disable_parallel: bool` and conditionally drops the -j flag (changelog line 522 confirms autotools support via PR #1167). The maintainer triaged it with Status: Triaged/Type: Enhancement and set expectations — "extremely low priority until someone shows us a real-world use case" — which is a deferral, not a rejection, so the issue stays open; impact is discounted because no concrete failing build was reported.

Evaluated by: mr-cal-bot

Impact: 28 Quick Win: 19 Complexity: 18 Confidence: 88 Actionability: 82

Issue body

### What needs to get done Support the [disable-parallel](https://canonical-craft-parts.readthedocs-hosted.com/latest/common/craft-parts/reference/part_properties/#disable-parallel) part property in the make plugin. ### Why it needs to get done All of our plugins should theoretically support this. In practice though, this is extremely low priority until someone shows us a real-world use case for it. If someone can bring us a real-world use case that we can test against (especially a case of "this application simply does not build with parallel"), that would be ideal. The [autotools plugin](https://github.com/canonical/craft-parts/pull/1167) required this for OpenJDK builds, for example.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 28
Quick Win: 19
Complexity: 18
Confidence: 88
Actionability: 82
keep 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.
qwen/qwen3.6-35b-a3b
Impact: 30
Quick Win: 19
Complexity: 20
Confidence: 85
Actionability: 80
keep open Add disable-parallel part property support to the make plugin, following the pattern established in autotools and other plugins.
qwen/qwen3.8-27b
Impact: 20
Quick Win: 17
Staleness: 65
Complexity: 15
Confidence: 82
Support Request: 10
keep open Make plugin lacks disable-parallel support. Triaged as low-priority enhancement by maintainer, explicitly awaiting a real-world use case that never arrived in 363 days. Feature still unimplemented; sibling plugin issues (cmake, go, python, etc.) in same state.
qwen/qwen3.6-35b-a3b
Staleness: 80
Complexity: 35
Confidence: 75
Support Request: 10
close stale Enhancement request to add disable-parallel support to the make plugin. Triaged but inactive for over a year with no real-world use case provided.
qwen3.6-35b-a3b-mtp-q6
Staleness: 85
Complexity: 15
Confidence: 80
Support Request: 10
close stale Enhancement to add disable-parallel parameter support to the make plugin. Triaged but inactive for over 300 days with no maintainer engagement or real-world use case provided.

Update history

No update history recorded yet.

Related work

  • Related To: craft-parts#1234 (confidence 95%)

    cmake plugin: Support `disable-parallel` parameter — one of ten sibling per-plugin issues in the same batch (#1232, #1234, #1237, #1238, #1239, #1245, #1247, #1249, #1250, #1251), all open and awaiting the same real-world use case.

  • Related To: craft-parts#1249 (confidence 93%)

    qmake plugin: Support `disable-parallel` parameter — same scope, same deferred-pending-use-case status; a shared implementation could close several of these at once.

  • Related To: canonical/craft-parts#1167 (confidence 92%)

    Merged PR adding disable_parallel to the autotools plugin (commit 7dfd1bf7); the exact implementation precedent for this change in the make plugin.

  • Related To: craft-parts#1237 (confidence 90%)

    go plugin: Support `disable-parallel` parameter — sibling issue in the same plugin-wide disable-parallel sweep.

Related issues

Issue Project State Summary Similarity
#1234 cmake plugin: Support `disable-parallel` parameter craft-parts 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.
86%
#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).
86%
#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.
81%
#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.
81%
#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.
81%
#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.
80%
#1167 feat: add parallel parameter to autotools plugin craft-parts merged Merged #1167 as commit 7dfd1bf7, adding disable_parallel to the Autotools plugin so builds can omit make -j and addressing #1069.
80%
#1235 dotnet plugin: Support `disable-parallel` parameter craft-parts open Maintainer-filed enhancement: dotnet plugin does not honor the existing `disable-parallel` part property. Labeled Needs information and explicitly deferred as "extremely low priority" pending a real-world use case; no comments in 395 days.
79%
#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.
79%
#1608994 Need a way to disable parallel building per part snapcraft (launchpad) closed Per-part parallel-build control was added by merged PR #698 (commit b7fc3eb66), which introduced the disable-parallel plugin property; the autotools plugin later gained it (commit 634d72466), documented in the 8.13 release notes.
78%