diff --git a/docs/reference/changelog.rst b/docs/reference/changelog.rst index 571faec3e1..8559a3c2ff 100644 --- a/docs/reference/changelog.rst +++ b/docs/reference/changelog.rst @@ -68,6 +68,22 @@ Changelog For a complete list of commits, check out the `X.Y.Z`_ release on GitHub. +8.3.4 (2024-Sep-13) +------------------- + +Core +==== + +Plugins +####### + +NPM +""" + +* Fix a bug where NPM parts fail to build if the ``pull`` and ``build`` steps + did not occur in the same execution of Snapcraft. + +For a complete list of commits, check out the `8.3.4`_ release on GitHub. 8.4.0 (2024-Sep-10) ------------------- @@ -1171,4 +1187,5 @@ For a complete list of commits, check out the `8.0.0`_ release on GitHub. .. _8.3.1: https://github.com/canonical/snapcraft/releases/tag/8.3.1 .. _8.3.2: https://github.com/canonical/snapcraft/releases/tag/8.3.2 .. _8.3.3: https://github.com/canonical/snapcraft/releases/tag/8.3.3 +.. _8.3.4: https://github.com/canonical/snapcraft/releases/tag/8.3.4 .. _8.4.0: https://github.com/canonical/snapcraft/releases/tag/8.4.0 diff --git a/tests/spread/core24/npm-reentrant/hello.js b/tests/spread/core24/npm-reentrant/hello.js new file mode 100644 index 0000000000..8001048aa4 --- /dev/null +++ b/tests/spread/core24/npm-reentrant/hello.js @@ -0,0 +1,3 @@ +#!/usr/bin/env node + +console.log('hello world'); diff --git a/tests/spread/core24/npm-reentrant/package-lock.json b/tests/spread/core24/npm-reentrant/package-lock.json new file mode 100644 index 0000000000..cf8ee3b99e --- /dev/null +++ b/tests/spread/core24/npm-reentrant/package-lock.json @@ -0,0 +1,5 @@ +{ + "name": "npm-hello", + "version": "1.0.0", + "lockfileVersion": 1 +} diff --git a/tests/spread/core24/npm-reentrant/package.json b/tests/spread/core24/npm-reentrant/package.json new file mode 100644 index 0000000000..c45d277657 --- /dev/null +++ b/tests/spread/core24/npm-reentrant/package.json @@ -0,0 +1,13 @@ +{ + "name": "npm-hello", + "version": "1.0.0", + "description": "Testing grounds for snapcraft integration tests", + "bin": { + "npm-hello": "hello.js" + }, + "scripts": { + "npm-hello": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "GPL-3.0" +} diff --git a/tests/spread/core24/npm-reentrant/snap/snapcraft.yaml b/tests/spread/core24/npm-reentrant/snap/snapcraft.yaml new file mode 100644 index 0000000000..7a75149e72 --- /dev/null +++ b/tests/spread/core24/npm-reentrant/snap/snapcraft.yaml @@ -0,0 +1,15 @@ +name: npm-reentrant +version: "1.0" +summary: test the npm plugin +description: Check that the npm plugin works across snapcraft calls + +confinement: strict +grade: devel +base: core24 + +parts: + hello: + source: . + plugin: npm + npm-include-node: true + npm-node-version: 22.1.0 diff --git a/tests/spread/core24/npm-reentrant/task.yaml b/tests/spread/core24/npm-reentrant/task.yaml new file mode 100644 index 0000000000..9ad7c48d5d --- /dev/null +++ b/tests/spread/core24/npm-reentrant/task.yaml @@ -0,0 +1,11 @@ +summary: Pull, then Build, a Node snap + +execute: | + snapcraft pull + snapcraft build + snapcraft pack + test -f npm-reentrant*.snap + +restore: | + snapcraft clean + rm -f ./*.snap