← Back to issue list

Regression: No difference between "legacy" and "full" app adapter

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1860873
Type
issue
State
closed
Author
~kyrofa
Labels
—
Created
Updated
Closed

Current evaluation

Snapcraft's automatic wrapper/command-chain handling made adapter obsolete; merged PR #3741 (commit 46a3e90be) deprecated it. The legacy/full distinction was ultimately removed, not restored.

Resolution: closed stale

Reason: Maintainers said Snapcraft automatically decided between wrappers and command-chain, leaving the adapter keyword obsolete. PR #3741 merged commit 46a3e90be to deprecate adapter and snapcraft_runner. The final closing comment confirmed that this functionality no longer exists.

Evaluated by: mr-cal-bot

No scores available.

Issue body

I was surprised to see that this snapcraft.yaml: name: my-snap-name # you probably want to 'snapcraft register <name>' base: core18 # the base snap is the execution environment for this snap version: '0.1' # just for humans, typically '1.2+git' or '1.3.2' summary: Single-line elevator pitch for your amazing snap # 79 char long summary description: |   This is my-snap's description. You have a paragraph or two to tell the   most important story about your snap. Keep it under 100 words though,   we live in tweetspace and your description wants to look good in the snap   store. grade: devel # must be 'stable' to release into candidate/stable channels confinement: devmode # use 'strict' once you have the right plugs and slots apps:   hello:     command: hello.sh     adapter: legacy parts:   my-part:     # See 'snapcraft plugins'     plugin: nil     override-build: |       echo "#!/bin/sh\necho 'hello'" > "$SNAPCRAFT_PART_INSTALL/hello.sh"       chmod a+x "$SNAPCRAFT_PART_INSTALL/hello.sh" Produced exactly the same priming area as the same snapcraft.yaml, but using the "full" app adapter instead. They are both what "full" should be: using the command-chain instead of generating wrappers. Not only should they not be the same, but "legacy" is still supposed to be the default, according to the schema. It means that there is no way today to generate a snap that doesn't assume command-chain.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed stale Snapcraft's automatic wrapper/command-chain handling made adapter obsolete; merged PR #3741 (commit 46a3e90be) deprecated it. The legacy/full distinction was ultimately removed, not restored.
stealth/space-bunny-alpha — closed stale Legacy/full app-adapter behavior was later deprecated by snapcraft PR #3741 (46a3e90be); the issue was closed after noting the functionality no longer exists.
stealth/space-bunny-alpha — closed stale LP #1860873 closed without a fix; legacy and full adapters still produced identical priming output, with no resolving PR or commit recorded.
qwen3.6-35b-a3b-mtp-q6 — — Closed without resolution; the regression where legacy and full app adapters produce identical output remains unfixed.
qwen/qwen3.6-35b-a3b
Staleness: 98
Complexity: 25
Confidence: 90
Support Request: 5
close stale Reports a snapcraft regression where legacy and full app adapters produce identical output, claiming legacy should be default. Unlabelled, zero comments, and inactive for over six years.
qwen/qwen3.6-35b-a3b
Staleness: 98
Complexity: 65
Confidence: 85
Support Request: 5
close stale Regression in Snapcraft where legacy and full app adapters produce identical output, preventing legacy wrapper generation. Unaddressed for over six years with no maintainer response.
qwen3.6-35b-a3b-mtp-q6
Staleness: 98
Complexity: 45
Confidence: 90
Support Request: 10
close stale Reports a regression where snapcraft's legacy and full app adapters produce identical output using command-chain instead of legacy wrappers. Issue is over 6 years old, unlabelled, and references deprecated core18 base.

Update history

Date Change
created

Related work

  • Superseded By: snapcraft#3741 (confidence 90%)

    Its merged command-chain and adapter deprecation replaced the legacy/full selection model.

Related issues

Issue Project State Summary Similarity
#2343 schema, meta: add "full" app adapter snapcraft merged Merged PR #2343 (commit d99c1fe43), adding the full app adapter via snapd command-chain instead of wrappers; legacy remained the default for compatibility.
79%
#1794532 Add "full" adapter type snapcraft (launchpad) closed Full adapter merged in canonical/snapcraft#2343 (d99c1fe43), using snapd command-chain without wrappers; legacy remained the default for compatibility.
78%
#1792018 Add "legacy" adapter type snapcraft (launchpad) closed Added the "legacy" app adapter via snapcore/snapcraft PR #2262, commit 66c0cd0dd.
75%
#2262 schema: add "legacy" adapter type snapcraft merged Merged PR #2262 as 66c0cd0dd, adding the default "legacy" app adapter to preserve wrapper generation and resolve LP #1792018.
73%
#2853 meta: do not set snapcraft-runner when adapter is "none" snapcraft merged Merged PR #2853 fixed app metadata handling so adapter: none does not add snapcraft-runner to command-chain; full and legacy adapters still do (commit 9599497fb).
73%
#1798918 command-chain is incompatible with legacy adapter, but snapcraft doesn't say so snapcraft (launchpad) closed Added a sanity check rejecting command-chain use with the legacy app adapter in snapcore/snapcraft#2375 (commit 57c7fb8d0).
71%
#1750658 snapcraft should filter out 'adapter' when generating snap.yaml snapcraft (launchpad) closed Snapcraft no longer propagates apps.adapter into generated snap.yaml; fixed by merged PR #1955 in commit b93625a37.
70%