← Back to issue list

Regression: plugin not registered: 'dotnet'

View original Github issue

Metadata

Project
snapcraft
Number
#4825
Type
issue
State
closed
Author
mateusrodrigues
Labels
Created
Updated
Closed

Current evaluation

Fixed in Snapcraft 8.2.11. The dotnet plugin registration regression for core22 was resolved and released to latest/candidate and latest/stable on June 17, 2024.

Suggested action:

No scores available.

Issue body

### Bug Description Building an application with the `dotnet` plugin on `core22` currently errors out with: ``` Bad snapcraft.yaml content: - plugin not registered: 'dotnet' (in field 'parts.dotnet-installer') ``` It was previously possible to run snapcraft on the same `snapcraft.yaml` file. ### To Reproduce We can use the [canonical/dotnet-snap](https://github.com/canonical/dotnet-snap) application as an example: ``` $ git clone git@github.com:canonical/dotnet-snap.git $ cd dotnet-snap $ snapcraft --use-lxd --debug --verbose ``` ### Environment - Ubuntu 24.04 LTS - Snapcraft 8.2.8 - Using LXD - `core22` snap (I haven't tested with other bases) ### snapcraft.yaml ```shell name: dotnet base: core22 version: 8.0.4 summary: .NET CLI tools, SDK and runtime description: | .NET is the free, open-source, cross-platform framework for building modern apps and powerful cloud services that work on Android, iOS, GNU/Linux, macOS and Windows. . This Snap also includes a powerful installer tool that allows you to manage your .NET installation and gives you the possibility to install as many multiple versions of .NET side-by-side as you want, as well as receive monthly security and feature updates whenever they become available. grade: devel # must be 'stable' to release into candidate/stable channels confinement: classic package-repositories: - type: apt ppa: dotnet/snaps priority: always parts: pre-reqs: plugin: nil build-attributes: - enable-patchelf stage-packages: - libc6 - libgcc-s1 - libgssapi-krb5-2 - libicu70 - liblttng-ust1 - libssl3 - libstdc++6 - libunwind8 - zlib1g dotnet-installer: plugin: dotnet dotnet-build-configuration: Release dotnet-self-contained-runtime-identifier: linux-x64 source: . build-packages: - dotnet-sdk-8.0 override-stage: | craftctl default patchelf --set-interpreter /snap/dotnet/current/lib64/ld-linux-x86-64.so.2 Dotnet.Installer.Console patchelf --force-rpath --set-rpath \$ORIGIN/netcoredeps:/snap/dotnet/current/usr/lib/x86_64-linux-gnu Dotnet.Installer.Console prime: - Dotnet.Installer.Console - Configuration/* - Scripts/* dotnet-host: plugin: nil build-packages: - patchelf stage-packages: - dotnet-hostfxr-8.0 override-stage: | craftctl default patchelf --set-interpreter /snap/dotnet/current/lib64/ld-linux-x86-64.so.2 usr/lib/dotnet/dotnet patchelf --force-rpath --set-rpath /snap/dotnet/current/usr/lib/x86_64-linux-gnu usr/lib/dotnet/dotnet patchelf --force-rpath --set-rpath /snap/dotnet/current/usr/lib/x86_64-linux-gnu usr/lib/dotnet/host/fxr/8.0.4/libhostfxr.so netstandard-targeting-pack: plugin: nil stage-packages: - netstandard-targeting-pack-2.1-8.0 apps: dotnet: command: Scripts/dotnet-launcher.sh environment: DOTNET_INSTALL_DIR: $SNAP_COMMON/dotnet LIMITS_PATH: $SNAP/Configuration/limits.json SERVER_URL: https://raw.githubusercontent.com/canonical/dotnet-snap/main/manifest/ ``` ### Relevant log output ```shell 2024-05-29 10:06:56.724 Starting snapcraft, version 8.2.8 2024-05-29 10:06:56.724 Log verbosity level set to BRIEF 2024-05-29 10:06:56.727 Falling back from craft-application to snapcraft. 2024-05-29 10:06:56.728 lifecycle command: 'pack', arguments: Namespace(destructive_mode=False, use_lxd=True, debug=True, enable_manifest=False, manifest_image_information=None, bind_ssh=False, build_for=None, http_proxy=None, https_proxy=None, ua_token=None, enable_experimental_ua_services=False, enable_experimental_plugins=False, enable_experimental_extensions=False, enable_developer_debug=False, enable_experimental_target_arch=False, target_arch=None, provider=None, directory=None, output=None) 2024-05-29 10:06:56.728 command: pack, arguments: Namespace(destructive_mode=False, use_lxd=True, debug=True, enable_manifest=False, manifest_image_information=None, bind_ssh=False, build_for=None, http_proxy=None, https_proxy=None, ua_token=None, enable_experimental_ua_services=False, enable_experimental_plugins=False, enable_experimental_extensions=False, enable_developer_debug=False, enable_experimental_target_arch=False, target_arch=None, provider=None, directory=None, output=None) 2024-05-29 10:06:56.740 CPU count (from process affinity): 16 2024-05-29 10:06:56.740 Invalid SNAPCRAFT_MAX_PARALLEL_BUILD_COUNT '' 2024-05-29 10:06:56.740 Running on amd64 for amd64 2024-05-29 10:06:56.741 Bad snapcraft.yaml content: - plugin not registered: 'dotnet' (in field 'parts.dotnet-installer') 2024-05-29 10:06:56.743 Traceback (most recent call last): 2024-05-29 10:06:56.743 File "/snap/snapcraft/11772/lib/python3.10/site-packages/snapcraft/application.py", line 368, in main 2024-05-29 10:06:56.743 return app.run() 2024-05-29 10:06:56.743 File "/snap/snapcraft/11772/lib/python3.10/site-packages/craft_application/application.py", line 488, in run 2024-05-29 10:06:56.743 dispatcher = self._get_dispatcher() 2024-05-29 10:06:56.743 File "/snap/snapcraft/11772/lib/python3.10/site-packages/snapcraft/application.py", line 227, in _get_dispatcher 2024-05-29 10:06:56.743 raise errors.ClassicFallback() 2024-05-29 10:06:56.743 snapcraft.errors.ClassicFallback 2024-05-29 10:06:56.743 2024-05-29 10:06:56.743 During handling of the above exception, another exception occurred: 2024-05-29 10:06:56.743 Traceback (most recent call last): 2024-05-29 10:06:56.743 File "/snap/snapcraft/11772/lib/python3.10/site-packages/snapcraft/models/project.py", line 876, in unmarshal 2024-05-29 10:06:56.743 project = Project(**data) 2024-05-29 10:06:56.743 File "pydantic/main.py", line 341, in pydantic.main.BaseModel.__init__ 2024-05-29 10:06:56.743 pydantic.error_wrappers.ValidationError: 1 validation error for Project 2024-05-29 10:06:56.743 parts -> dotnet-installer 2024-05-29 10:06:56.743 plugin not registered: 'dotnet' (type=value_error) 2024-05-29 10:06:56.743 Full execution log: '/home/mateus/.local/state/snapcraft/log/snapcraft-20240529-100656.724103.log' ``` ### Additional context _No response_

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Fixed in Snapcraft 8.2.11. The dotnet plugin registration regression for core22 was resolved and released to latest/candidate and latest/stable on June 17, 2024.
qwen/qwen3.6-35b-a3b Fixed a regression where the dotnet plugin failed to register on core22. Resolved in snapcraft 8.2.11, released to latest/candidate on June 13, 2024, and scheduled for latest/stable on June 17, 2024.
qwen/qwen3.6-35b-a3b Fixed in snapcraft 8.2.11. The dotnet plugin registration regression affecting core22 builds was resolved and released to latest/candidate, with a stable release on June 17, 2024.
qwen3.6-35b-a3b-mtp-q6 Fixed the dotnet plugin registration regression for core22 builds. The resolution was included in snapcraft 8.2.11 and released to latest/candidate, with a stable release on June 17, 2024.
qwen3.6-35b-a3b-mtp-q6 Fixed the dotnet plugin registration regression on core22 in snapcraft 8.2.11. The update was deployed to latest/candidate and scheduled for stable release on June 17, 2024.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1857705 The dotnet plugin does not support the current version of .Net Core snapcraft (launchpad) open Request to update the snapcraft dotnet plugin to support .NET Core 3.0+ and bases beyond core16. The plugin has since been fully reworked in snapcraft 8.x to support core22+ and modern .NET SDKs, making this obsolete.
76%