From 22a59dde8726ec418e291285abdb8c06ed585b64 Mon Sep 17 00:00:00 2001 From: Conduction Release Bot Date: Sun, 30 Aug 2026 14:56:11 +0200 Subject: [PATCH] fix(deps): pin @nextcloud/vue below the NcSelect rework E2E went from 127 passed / 0 failed to 127 passed / 11 failed between two runs 36 minutes apart: 10:45 4d3819d5 @nextcloud/vue 9.9.0 E2E success 11:21 b0a322a6 @nextcloud/vue 9.11.0 E2E failure Nothing about the tests changed -- both failing specs (conditional-visibility-editor, dashboard-sharing) were last touched on 2026-08-13. What changed is the lockfile. package.json asked for ^9.5.0, so regenerating the lockfile for an unrelated stylelint PR silently moved @nextcloud/vue two minor versions. 9.10.0 reworked NcSelect: fix(NcSelect): floating label design using NcTextField #8570 fix(NcSelect): truncate long selected labels ... #8829 All 11 failures share one signature, and it is not 'element missing'. The locator RESOLVES, Playwright logs 'attempting click action', and then times out on 'waiting for element to be visible, enabled and stable': - waiting for locator('.vs__dropdown-option').nth(2) locator resolved to
  • ... attempting click action -> Timeout 10000ms exceeded An option that exists but never settles is what a re-laying-out floating label produces. ~9.9.0 holds the last version whose NcSelect these tests were written against. This is deliberately a PIN, not a fix: adapting the specs to the new NcSelect is real work and should be its own change, made against the new component on purpose rather than as a side effect of a lockfile regeneration. Verified locally: 9.9.0 installed, 682 unit tests pass, format exits 0. The E2E itself only runs in CI, and that is the check this is aimed at. --- package-lock.json | 18 +++++++++--------- package.json | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 488fbbe0..33eca57c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "@nextcloud/initial-state": "^2.2.0", "@nextcloud/l10n": "^3.4.1", "@nextcloud/router": "^3.1.0", - "@nextcloud/vue": "^9.5.0", + "@nextcloud/vue": "~9.9.0", "dexie": "^4.4.5", "dompurify": "^3.4.14", "gridstack": "^12.2.1", @@ -4251,9 +4251,9 @@ } }, "node_modules/@nextcloud/vue": { - "version": "9.11.0", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-9.11.0.tgz", - "integrity": "sha512-LRsyU9Mxs0b2xWqbxygps8O7/i1z4QhNQD9/QDni+VqFY3V0N95mAgmKJm6vfoFuxTAMXERp9bjqFn3UV542gw==", + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-9.9.0.tgz", + "integrity": "sha512-TmKnBWp6Aiw+cm+WamwX5cMkhkpJqLSUKrTUB5I5Y9RDt2S0TUlwRaTe9vltBIV3qmKParhpZQ3/ewWHgEQlrQ==", "license": "AGPL-3.0-or-later", "dependencies": { "@ckpack/vue-color": "^1.6.0", @@ -4270,19 +4270,19 @@ "@nextcloud/sharing": "^0.4.0", "@nextcloud/vue-select": "^4.1.0", "@vuepic/vue-datepicker": "^11.0.3", - "@vueuse/components": "^14.4.0", - "@vueuse/core": "^14.4.0", + "@vueuse/components": "^14.3.0", + "@vueuse/core": "^14.3.0", "blurhash": "^2.0.5", "clone": "^2.1.2", "debounce": "^3.0.0", - "dompurify": "^3.4.14", + "dompurify": "^3.4.12", "emoji-mart-vue-fast": "^15.0.5", "escape-html": "^1.0.3", "floating-vue": "^5.2.2", "focus-trap": "^8.2.2", "linkifyjs": "^4.3.3", "mdast-util-to-string": "^4.0.0", - "p-queue": "^9.3.3", + "p-queue": "^9.3.1", "rehype-external-links": "^3.0.0", "rehype-highlight": "^7.0.2", "rehype-react": "^8.0.0", @@ -4299,7 +4299,7 @@ "unist-builder": "^4.0.0", "unist-util-visit-parents": "^6.0.2", "vue": "^3.5.18", - "vue-router": "^5.2.0" + "vue-router": "^5.1.0" }, "engines": { "node": "^20.11.0 || ^22 || ^24" diff --git a/package.json b/package.json index b7d88e9b..03fca29a 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "@nextcloud/initial-state": "^2.2.0", "@nextcloud/l10n": "^3.4.1", "@nextcloud/router": "^3.1.0", - "@nextcloud/vue": "^9.5.0", + "@nextcloud/vue": "~9.9.0", "dexie": "^4.4.5", "dompurify": "^3.4.14", "gridstack": "^12.2.1",