Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package openQA for openSUSE:Factory checked 
in at 2026-11-06 19:35:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
 and      /work/SRC/openSUSE:Factory/.openQA.new.3759290 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openQA"

Fri Nov  6 19:35:31 2026 rev:904 rq:1395133 version:5.1793868658.dfa961c2

Changes:
--------
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes    2026-11-04 
19:44:30.965040926 +0100
+++ /work/SRC/openSUSE:Factory/.openQA.new.3759290/openQA.changes       
2026-11-06 19:38:48.638048950 +0100
@@ -1,0 +2,40 @@
+Thu Nov 05 08:54:46 UTC 2026 - [email protected]
+
+- Update to version 5.1793868658.dfa961c2:
+  * chore(deps-dev): bump eslint from 10.2.1 to 10.13.0 (#8056)
+  * test(devel-mode): Avoid sporadic failures when waiting for uploads
+
+-------------------------------------------------------------------
+Wed Nov 04 16:54:18 UTC 2026 - [email protected]
+
+- Update to version 5.1793809764.4e765df8:
+  * feat(worker): Improve warning on failed health checks
+
+-------------------------------------------------------------------
+Wed Nov 04 15:26:02 UTC 2026 - [email protected]
+
+- Update to version 5.1793805947.6de9429d:
+  * ci: Enable packaging checks for Leap 16.1
+  * fix(openQA.spec): package system resources as root, not as geekotest
+
+-------------------------------------------------------------------
+Wed Nov 04 12:43:30 UTC 2026 - [email protected]
+
+- Update to version 5.1793793355.58c4f04c:
+  * feat(investigation): Improve git diff --stat filename output
+  * refactor(investigation): Add an options hash to git_diff parameters
+
+-------------------------------------------------------------------
+Wed Nov 04 07:38:15 UTC 2026 - [email protected]
+
+- Update to version 5.1793777871.7773352c:
+  * chore(deps-dev): bump @csstools/media-query-list-parser
+
+-------------------------------------------------------------------
+Tue Nov 03 18:35:57 UTC 2026 - [email protected]
+
+- Update to version 5.1793730939.c4b8f9f6:
+  * feat: Set application name of DB connections for easier tracking
+  * test(api-key-ui): Fix sporadic failures
+
+-------------------------------------------------------------------

Old:
----
  openQA-5.1793722468.aa0c30fc.obscpio

New:
----
  openQA-5.1793868658.dfa961c2.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:38:51.606173104 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:38:51.608173188 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-client
 Name:           %{short_name}-test
-Version:        5.1793722468.aa0c30fc
+Version:        5.1793868658.dfa961c2
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:38:51.696176869 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:38:51.701177078 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA
 Name:           %{short_name}-test
-Version:        5.1793722468.aa0c30fc
+Version:        5.1793868658.dfa961c2
 Release:        0
 Summary:        Test package for openQA
 License:        GPL-2.0-or-later

++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:38:51.789180759 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:38:51.791180843 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-worker
 Name:           %{short_name}-test
-Version:        5.1793722468.aa0c30fc
+Version:        5.1793868658.dfa961c2
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:38:51.892185068 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:38:51.894185151 +0100
@@ -104,7 +104,7 @@
 %define devel_requires %devel_no_selenium_requires chromedriver
 
 Name:           openQA
-Version:        5.1793722468.aa0c30fc
+Version:        5.1793868658.dfa961c2
 Release:        0
 Summary:        Framework for automated system-level testing (web-frontend, 
scheduler and tools)
 Group:          Development/Tools/Other
@@ -734,6 +734,9 @@
 %{_datadir}/openqa/script/openqa-webui-daemon
 %{_datadir}/openqa/script/upgradedb
 %{_datadir}/openqa/script/modify_needle
+%if 0%{?suse_version} > 1500
+%{_sysusersdir}/geekotest.conf
+%endif
 # TODO: define final user
 %defattr(-,geekotest,root)
 # attention: never package subdirectories owned by a user other
@@ -751,9 +754,6 @@
 %dir %{_localstatedir}/lib/openqa/share/factory/repo
 %dir %{_localstatedir}/lib/openqa/share/factory/other
 %ghost %{_localstatedir}/log/openqa
-%if 0%{?suse_version} > 1500
-%{_sysusersdir}/geekotest.conf
-%endif
 
 %if %{with devel_package}
 %files devel
@@ -840,17 +840,17 @@
 %{_datadir}/openqa/script/openqa-workercache-daemon
 %{_datadir}/openqa/script/openqa-worker-cacheservice-minion
 %dir %{_localstatedir}/lib/openqa/pool
-%defattr(-,_openqa-worker,root)
-%dir %{_localstatedir}/lib/openqa/cache
-%dir %{_localstatedir}/lib/openqa/cache/podman
-# own one pool - to create the others is task of the admin
-%dir %{_localstatedir}/lib/openqa/pool/1
 %if 0%{?suse_version} > 1500
 %{_sysusersdir}/%{name}-worker.conf
 %endif
 %if 0%{?suse_version} <= 1560
 %{_prefix}/lib/sysctl.d/01-openqa-reload-worker-auto-restart.conf
 %endif
+%defattr(-,_openqa-worker,root)
+%dir %{_localstatedir}/lib/openqa/cache
+%dir %{_localstatedir}/lib/openqa/cache/podman
+# own one pool - to create the others is task of the admin
+%dir %{_localstatedir}/lib/openqa/pool/1
 
 %files client
 %dir %{_datadir}/openqa

++++++ node_modules.obscpio ++++++
Binary files old/@csstools-media-query-list-parser-5.0.0.tgz and 
new/@csstools-media-query-list-parser-5.0.0.tgz differ
Binary files old/@csstools-media-query-list-parser-5.0.2.tgz and 
new/@csstools-media-query-list-parser-5.0.2.tgz differ
Binary files old/@eslint-config-helpers-0.5.5.tgz and 
new/@eslint-config-helpers-0.5.5.tgz differ
Binary files old/@eslint-config-helpers-0.7.0.tgz and 
new/@eslint-config-helpers-0.7.0.tgz differ
Binary files old/@eslint-plugin-kit-0.7.2.tgz and 
new/@eslint-plugin-kit-0.7.2.tgz differ
Binary files old/@eslint-plugin-kit-0.7.3.tgz and 
new/@eslint-plugin-kit-0.7.3.tgz differ
Binary files old/eslint-10.13.0.tgz and new/eslint-10.13.0.tgz differ
Binary files old/eslint-10.2.1.tgz and new/eslint-10.2.1.tgz differ
Binary files old/file-entry-cache-8.0.0.tgz and new/file-entry-cache-8.0.0.tgz 
differ
Binary files old/flat-cache-4.0.1.tgz and new/flat-cache-4.0.1.tgz differ
Binary files old/flatted-3.4.2.tgz and new/flatted-3.4.2.tgz differ
Binary files old/flatted-3.4.4.tgz and new/flatted-3.4.4.tgz differ
Binary files old/json-buffer-3.0.1.tgz and new/json-buffer-3.0.1.tgz differ
Binary files old/keyv-4.5.4.tgz and new/keyv-4.5.4.tgz differ

++++++ node_modules.spec.inc ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:38:53.954271323 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:38:53.964271741 +0100
@@ -6,17 +6,17 @@
 Source1005:         
https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-4.0.2.tgz#/@csstools-css-parser-algorithms-4.0.2.tgz
 Source1006:         
https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.15.tgz#/@csstools-css-syntax-patches-for-csstree-1.1.15.tgz
 Source1007:         
https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-4.0.2.tgz#/@csstools-css-tokenizer-4.0.2.tgz
-Source1008:         
https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.0.tgz#/@csstools-media-query-list-parser-5.0.0.tgz
+Source1008:         
https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.2.tgz#/@csstools-media-query-list-parser-5.0.2.tgz
 Source1009:         
https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.2.tgz#/@csstools-selector-resolve-nested-4.0.2.tgz
 Source1010:         
https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz#/@csstools-selector-specificity-6.0.0.tgz
 Source1011:         
https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz#/@eslint-community-eslint-utils-4.10.1.tgz
 Source1012:         
https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#/@eslint-community-regexpp-4.12.2.tgz
 Source1013:         
https://registry.npmjs.org/@eslint/config-array/-/config-array-0.23.5.tgz#/@eslint-config-array-0.23.5.tgz
-Source1014:         
https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.5.5.tgz#/@eslint-config-helpers-0.5.5.tgz
+Source1014:         
https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.7.0.tgz#/@eslint-config-helpers-0.7.0.tgz
 Source1015:         
https://registry.npmjs.org/@eslint/core/-/core-1.2.1.tgz#/@eslint-core-1.2.1.tgz
 Source1016:         
https://registry.npmjs.org/@eslint/js/-/js-10.0.1.tgz#/@eslint-js-10.0.1.tgz
 Source1017:         
https://registry.npmjs.org/@eslint/object-schema/-/object-schema-3.0.5.tgz#/@eslint-object-schema-3.0.5.tgz
-Source1018:         
https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.2.tgz#/@eslint-plugin-kit-0.7.2.tgz
+Source1018:         
https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.3.tgz#/@eslint-plugin-kit-0.7.3.tgz
 Source1019:         
https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.2.tgz#/@fortawesome-fontawesome-free-6.7.2.tgz
 Source1020:         
https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz#/@humanfs-core-0.19.2.tgz
 Source1021:         
https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz#/@humanfs-node-0.16.8.tgz
@@ -104,7 +104,7 @@
 Source1103:         
https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#/env-paths-2.2.1.tgz
 Source1104:         
https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz#/error-ex-1.3.4.tgz
 Source1105:         
https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#/escape-string-regexp-4.0.0.tgz
-Source1106:         
https://registry.npmjs.org/eslint/-/eslint-10.2.1.tgz#/eslint-10.2.1.tgz
+Source1106:         
https://registry.npmjs.org/eslint/-/eslint-10.13.0.tgz#/eslint-10.13.0.tgz
 Source1107:         
https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz#/eslint-config-prettier-10.1.8.tgz
 Source1108:         
https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.5.tgz#/eslint-plugin-prettier-5.5.5.tgz
 Source1109:         
https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz#/eslint-scope-9.1.2.tgz
@@ -124,133 +124,129 @@
 Source1123:         
https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#/fastest-levenshtein-1.0.16.tgz
 Source1124:         
https://registry.npmjs.org/fastq/-/fastq-1.20.3.tgz#/fastq-1.20.3.tgz
 Source1125:         
https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.5.tgz#/file-entry-cache-11.1.5.tgz
-Source1126:         
https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz#/file-entry-cache-8.0.0.tgz
-Source1127:         
https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#/fill-range-7.1.1.tgz
-Source1128:         
https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz#/find-up-5.0.0.tgz
-Source1129:         
https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz#/flat-cache-4.0.1.tgz
-Source1130:         
https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.23.tgz#/flat-cache-6.1.23.tgz
-Source1131:         
https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz#/flatted-3.4.2.tgz
-Source1132:         
https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz#/get-east-asian-width-1.6.0.tgz
-Source1133:         
https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#/glob-parent-5.1.2.tgz
-Source1134:         
https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz#/glob-parent-6.0.2.tgz
-Source1135:         
https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz#/global-modules-2.0.0.tgz
-Source1136:         
https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz#/global-prefix-3.0.0.tgz
-Source1137:         
https://registry.npmjs.org/globals/-/globals-17.13.0.tgz#/globals-17.13.0.tgz
-Source1138:         
https://registry.npmjs.org/globby/-/globby-16.2.4.tgz#/globby-16.2.4.tgz
-Source1139:         
https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz#/globjoin-0.1.4.tgz
-Source1140:         
https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz#/graphlib-2.1.8.tgz
-Source1141:         
https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz#/has-flag-5.0.1.tgz
-Source1142:         
https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz#/hashery-1.5.1.tgz
-Source1143:         
https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz#/hookified-1.15.1.tgz
-Source1144:         
https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz#/hookified-2.2.0.tgz
-Source1145:         
https://registry.npmjs.org/html-tags/-/html-tags-5.1.0.tgz#/html-tags-5.1.0.tgz
-Source1146:         
https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#/iconv-lite-0.6.3.tgz
-Source1147:         
https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz#/ignore-5.3.2.tgz
-Source1148:         
https://registry.npmjs.org/ignore/-/ignore-7.0.12.tgz#/ignore-7.0.12.tgz
-Source1149:         
https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz#/ignore-7.0.5.tgz
-Source1150:         
https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz#/import-fresh-3.3.1.tgz
-Source1151:         
https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz#/import-meta-resolve-4.2.0.tgz
-Source1152:         
https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#/imurmurhash-0.1.4.tgz
-Source1153:         
https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#/ini-1.3.8.tgz
-Source1154:         
https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz#/internmap-2.0.3.tgz
-Source1155:         
https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#/is-arrayish-0.2.1.tgz
-Source1156:         
https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#/is-extglob-2.1.1.tgz
-Source1157:         
https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#/is-fullwidth-code-point-3.0.0.tgz
-Source1158:         
https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#/is-glob-4.0.3.tgz
-Source1159:         
https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#/is-number-7.0.0.tgz
-Source1160:         
https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz#/is-path-inside-4.0.0.tgz
-Source1161:         
https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#/is-plain-object-5.0.0.tgz
-Source1162:         
https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#/isexe-2.0.0.tgz
-Source1163:         
https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz#/jquery-3.7.1.tgz
-Source1164:         
https://registry.npmjs.org/jquery/-/jquery-4.0.0.tgz#/jquery-4.0.0.tgz
-Source1165:         
https://registry.npmjs.org/jquery-ujs/-/jquery-ujs-1.2.3.tgz#/jquery-ujs-1.2.3.tgz
-Source1166:         
https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#/js-tokens-4.0.0.tgz
-Source1167:         
https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.2.tgz#/js-yaml-4.3.2.tgz
-Source1168:         
https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz#/json-buffer-3.0.1.tgz
-Source1169:         
https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#/json-parse-even-better-errors-2.3.1.tgz
-Source1170:         
https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#/json-schema-traverse-0.4.1.tgz
-Source1171:         
https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#/json-schema-traverse-1.0.0.tgz
-Source1172:         
https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#/json-stable-stringify-without-jsonify-1.0.1.tgz
-Source1173:         
https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz#/keyv-4.5.4.tgz
-Source1174:         
https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz#/keyv-5.6.0.tgz
-Source1175:         
https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#/kind-of-6.0.3.tgz
-Source1176:         
https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.37.0.tgz#/known-css-properties-0.37.0.tgz
-Source1177:         
https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#/levn-0.4.1.tgz
-Source1178:         
https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#/lines-and-columns-1.2.4.tgz
-Source1179:         
https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz#/locate-path-6.0.0.tgz
-Source1180:         
https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz#/lodash-4.18.1.tgz
-Source1181:         
https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz#/lodash.truncate-4.4.2.tgz
-Source1182:         
https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-4.0.0.tgz#/mathml-tag-names-4.0.0.tgz
-Source1183:         
https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz#/mdn-data-2.27.1.tgz
-Source1184:         
https://registry.npmjs.org/meow/-/meow-14.1.0.tgz#/meow-14.1.0.tgz
-Source1185:         
https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#/merge2-1.4.1.tgz
-Source1186:         
https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz#/micromatch-4.0.8.tgz
-Source1187:         
https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz#/minimatch-10.2.4.tgz
-Source1188:         https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#/ms-2.1.3.tgz
-Source1189:         
https://registry.npmjs.org/nanoid/-/nanoid-3.3.20.tgz#/nanoid-3.3.20.tgz
-Source1190:         
https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#/natural-compare-1.4.0.tgz
-Source1191:         
https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#/normalize-path-3.0.0.tgz
-Source1192:         
https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz#/optionator-0.9.4.tgz
-Source1193:         
https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz#/p-limit-3.1.0.tgz
-Source1194:         
https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz#/p-locate-5.0.0.tgz
-Source1195:         
https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#/parent-module-1.0.1.tgz
-Source1196:         
https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#/parse-json-5.2.0.tgz
-Source1197:         
https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#/path-exists-4.0.0.tgz
-Source1198:         
https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#/path-key-3.1.1.tgz
-Source1199:         
https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz#/picocolors-1.1.1.tgz
-Source1200:         
https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz#/picomatch-2.3.2.tgz
-Source1201:         
https://registry.npmjs.org/postcss/-/postcss-8.5.30.tgz#/postcss-8.5.30.tgz
-Source1202:         
https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#/postcss-media-query-parser-0.2.3.tgz
-Source1203:         
https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz#/postcss-resolve-nested-selector-0.1.6.tgz
-Source1204:         
https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.1.0.tgz#/postcss-safe-parser-7.1.0.tgz
-Source1205:         
https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz#/postcss-scss-4.0.9.tgz
-Source1206:         
https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz#/postcss-selector-parser-7.1.6.tgz
-Source1207:         
https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#/postcss-value-parser-4.2.0.tgz
-Source1208:         
https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#/prelude-ls-1.2.1.tgz
-Source1209:         
https://registry.npmjs.org/prettier/-/prettier-3.9.10.tgz#/prettier-3.9.10.tgz
-Source1210:         
https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz#/prettier-linter-helpers-1.0.1.tgz
-Source1211:         
https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz#/punycode-2.3.1.tgz
-Source1212:         
https://registry.npmjs.org/qified/-/qified-0.10.1.tgz#/qified-0.10.1.tgz
-Source1213:         
https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#/queue-microtask-1.2.3.tgz
-Source1214:         
https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#/require-from-string-2.0.2.tgz
-Source1215:         
https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#/resolve-from-4.0.0.tgz
-Source1216:         
https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz#/reusify-1.1.0.tgz
-Source1217:         
https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz#/robust-predicates-3.0.3.tgz
-Source1218:         
https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#/run-parallel-1.2.0.tgz
-Source1219:         https://registry.npmjs.org/rw/-/rw-1.3.3.tgz#/rw-1.3.3.tgz
-Source1220:         
https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#/safer-buffer-2.1.2.tgz
-Source1221:         
https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#/shebang-command-2.0.0.tgz
-Source1222:         
https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#/shebang-regex-3.0.0.tgz
-Source1223:         
https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz#/signal-exit-4.1.0.tgz
-Source1224:         
https://registry.npmjs.org/slash/-/slash-5.1.0.tgz#/slash-5.1.0.tgz
-Source1225:         
https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz#/slice-ansi-4.0.0.tgz
-Source1226:         
https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.2.tgz#/source-map-js-1.2.2.tgz
-Source1227:         
https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#/string-width-4.2.3.tgz
-Source1228:         
https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz#/string-width-8.2.2.tgz
-Source1229:         
https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#/strip-ansi-6.0.1.tgz
-Source1230:         
https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz#/strip-ansi-7.2.0.tgz
-Source1231:         
https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz#/style-search-0.1.0.tgz
-Source1232:         
https://registry.npmjs.org/stylelint/-/stylelint-17.16.0.tgz#/stylelint-17.16.0.tgz
-Source1233:         
https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-18.0.0.tgz#/stylelint-config-recommended-18.0.0.tgz
-Source1234:         
https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-17.0.1.tgz#/stylelint-config-recommended-scss-17.0.1.tgz
-Source1235:         
https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-40.0.0.tgz#/stylelint-config-standard-40.0.0.tgz
-Source1236:         
https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-17.0.0.tgz#/stylelint-config-standard-scss-17.0.0.tgz
-Source1237:         
https://registry.npmjs.org/stylelint-prettier/-/stylelint-prettier-5.0.3.tgz#/stylelint-prettier-5.0.3.tgz
-Source1238:         
https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-7.0.0.tgz#/stylelint-scss-7.0.0.tgz
-Source1239:         
https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz#/supports-color-10.2.2.tgz
-Source1240:         
https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.5.0.tgz#/supports-hyperlinks-4.5.0.tgz
-Source1241:         
https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz#/svg-tags-1.0.0.tgz
-Source1242:         
https://registry.npmjs.org/synckit/-/synckit-0.11.13.tgz#/synckit-0.11.13.tgz
-Source1243:         
https://registry.npmjs.org/table/-/table-6.9.0.tgz#/table-6.9.0.tgz
-Source1244:         
https://registry.npmjs.org/timeago.js/-/timeago.js-4.0.2.tgz#/timeago.js-4.0.2.tgz
-Source1245:         
https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#/to-regex-range-5.0.1.tgz
-Source1246:         
https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#/type-check-0.4.0.tgz
-Source1247:         
https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.1.tgz#/unicorn-magic-0.4.1.tgz
-Source1248:         
https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#/uri-js-4.4.1.tgz
-Source1249:         
https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#/util-deprecate-1.0.2.tgz
-Source1250:         
https://registry.npmjs.org/which/-/which-1.3.1.tgz#/which-1.3.1.tgz
-Source1251:         
https://registry.npmjs.org/which/-/which-2.0.2.tgz#/which-2.0.2.tgz
-Source1252:         
https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz#/word-wrap-1.2.5.tgz
-Source1253:         
https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz#/write-file-atomic-7.0.1.tgz
-Source1254:         
https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#/yocto-queue-0.1.0.tgz
+Source1126:         
https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#/fill-range-7.1.1.tgz
+Source1127:         
https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz#/find-up-5.0.0.tgz
+Source1128:         
https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.23.tgz#/flat-cache-6.1.23.tgz
+Source1129:         
https://registry.npmjs.org/flatted/-/flatted-3.4.4.tgz#/flatted-3.4.4.tgz
+Source1130:         
https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz#/get-east-asian-width-1.6.0.tgz
+Source1131:         
https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#/glob-parent-5.1.2.tgz
+Source1132:         
https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz#/glob-parent-6.0.2.tgz
+Source1133:         
https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz#/global-modules-2.0.0.tgz
+Source1134:         
https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz#/global-prefix-3.0.0.tgz
+Source1135:         
https://registry.npmjs.org/globals/-/globals-17.13.0.tgz#/globals-17.13.0.tgz
+Source1136:         
https://registry.npmjs.org/globby/-/globby-16.2.4.tgz#/globby-16.2.4.tgz
+Source1137:         
https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz#/globjoin-0.1.4.tgz
+Source1138:         
https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz#/graphlib-2.1.8.tgz
+Source1139:         
https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz#/has-flag-5.0.1.tgz
+Source1140:         
https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz#/hashery-1.5.1.tgz
+Source1141:         
https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz#/hookified-1.15.1.tgz
+Source1142:         
https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz#/hookified-2.2.0.tgz
+Source1143:         
https://registry.npmjs.org/html-tags/-/html-tags-5.1.0.tgz#/html-tags-5.1.0.tgz
+Source1144:         
https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#/iconv-lite-0.6.3.tgz
+Source1145:         
https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz#/ignore-5.3.2.tgz
+Source1146:         
https://registry.npmjs.org/ignore/-/ignore-7.0.12.tgz#/ignore-7.0.12.tgz
+Source1147:         
https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz#/ignore-7.0.5.tgz
+Source1148:         
https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz#/import-fresh-3.3.1.tgz
+Source1149:         
https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz#/import-meta-resolve-4.2.0.tgz
+Source1150:         
https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#/imurmurhash-0.1.4.tgz
+Source1151:         
https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#/ini-1.3.8.tgz
+Source1152:         
https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz#/internmap-2.0.3.tgz
+Source1153:         
https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#/is-arrayish-0.2.1.tgz
+Source1154:         
https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#/is-extglob-2.1.1.tgz
+Source1155:         
https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#/is-fullwidth-code-point-3.0.0.tgz
+Source1156:         
https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#/is-glob-4.0.3.tgz
+Source1157:         
https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#/is-number-7.0.0.tgz
+Source1158:         
https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz#/is-path-inside-4.0.0.tgz
+Source1159:         
https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#/is-plain-object-5.0.0.tgz
+Source1160:         
https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#/isexe-2.0.0.tgz
+Source1161:         
https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz#/jquery-3.7.1.tgz
+Source1162:         
https://registry.npmjs.org/jquery/-/jquery-4.0.0.tgz#/jquery-4.0.0.tgz
+Source1163:         
https://registry.npmjs.org/jquery-ujs/-/jquery-ujs-1.2.3.tgz#/jquery-ujs-1.2.3.tgz
+Source1164:         
https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#/js-tokens-4.0.0.tgz
+Source1165:         
https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.2.tgz#/js-yaml-4.3.2.tgz
+Source1166:         
https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#/json-parse-even-better-errors-2.3.1.tgz
+Source1167:         
https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#/json-schema-traverse-0.4.1.tgz
+Source1168:         
https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#/json-schema-traverse-1.0.0.tgz
+Source1169:         
https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#/json-stable-stringify-without-jsonify-1.0.1.tgz
+Source1170:         
https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz#/keyv-5.6.0.tgz
+Source1171:         
https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#/kind-of-6.0.3.tgz
+Source1172:         
https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.37.0.tgz#/known-css-properties-0.37.0.tgz
+Source1173:         
https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#/levn-0.4.1.tgz
+Source1174:         
https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#/lines-and-columns-1.2.4.tgz
+Source1175:         
https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz#/locate-path-6.0.0.tgz
+Source1176:         
https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz#/lodash-4.18.1.tgz
+Source1177:         
https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz#/lodash.truncate-4.4.2.tgz
+Source1178:         
https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-4.0.0.tgz#/mathml-tag-names-4.0.0.tgz
+Source1179:         
https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz#/mdn-data-2.27.1.tgz
+Source1180:         
https://registry.npmjs.org/meow/-/meow-14.1.0.tgz#/meow-14.1.0.tgz
+Source1181:         
https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#/merge2-1.4.1.tgz
+Source1182:         
https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz#/micromatch-4.0.8.tgz
+Source1183:         
https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz#/minimatch-10.2.4.tgz
+Source1184:         https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#/ms-2.1.3.tgz
+Source1185:         
https://registry.npmjs.org/nanoid/-/nanoid-3.3.20.tgz#/nanoid-3.3.20.tgz
+Source1186:         
https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#/natural-compare-1.4.0.tgz
+Source1187:         
https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#/normalize-path-3.0.0.tgz
+Source1188:         
https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz#/optionator-0.9.4.tgz
+Source1189:         
https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz#/p-limit-3.1.0.tgz
+Source1190:         
https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz#/p-locate-5.0.0.tgz
+Source1191:         
https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#/parent-module-1.0.1.tgz
+Source1192:         
https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#/parse-json-5.2.0.tgz
+Source1193:         
https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#/path-exists-4.0.0.tgz
+Source1194:         
https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#/path-key-3.1.1.tgz
+Source1195:         
https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz#/picocolors-1.1.1.tgz
+Source1196:         
https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz#/picomatch-2.3.2.tgz
+Source1197:         
https://registry.npmjs.org/postcss/-/postcss-8.5.30.tgz#/postcss-8.5.30.tgz
+Source1198:         
https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#/postcss-media-query-parser-0.2.3.tgz
+Source1199:         
https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz#/postcss-resolve-nested-selector-0.1.6.tgz
+Source1200:         
https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.1.0.tgz#/postcss-safe-parser-7.1.0.tgz
+Source1201:         
https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz#/postcss-scss-4.0.9.tgz
+Source1202:         
https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz#/postcss-selector-parser-7.1.6.tgz
+Source1203:         
https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#/postcss-value-parser-4.2.0.tgz
+Source1204:         
https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#/prelude-ls-1.2.1.tgz
+Source1205:         
https://registry.npmjs.org/prettier/-/prettier-3.9.10.tgz#/prettier-3.9.10.tgz
+Source1206:         
https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.1.tgz#/prettier-linter-helpers-1.0.1.tgz
+Source1207:         
https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz#/punycode-2.3.1.tgz
+Source1208:         
https://registry.npmjs.org/qified/-/qified-0.10.1.tgz#/qified-0.10.1.tgz
+Source1209:         
https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#/queue-microtask-1.2.3.tgz
+Source1210:         
https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#/require-from-string-2.0.2.tgz
+Source1211:         
https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#/resolve-from-4.0.0.tgz
+Source1212:         
https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz#/reusify-1.1.0.tgz
+Source1213:         
https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz#/robust-predicates-3.0.3.tgz
+Source1214:         
https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#/run-parallel-1.2.0.tgz
+Source1215:         https://registry.npmjs.org/rw/-/rw-1.3.3.tgz#/rw-1.3.3.tgz
+Source1216:         
https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#/safer-buffer-2.1.2.tgz
+Source1217:         
https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#/shebang-command-2.0.0.tgz
+Source1218:         
https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#/shebang-regex-3.0.0.tgz
+Source1219:         
https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz#/signal-exit-4.1.0.tgz
+Source1220:         
https://registry.npmjs.org/slash/-/slash-5.1.0.tgz#/slash-5.1.0.tgz
+Source1221:         
https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz#/slice-ansi-4.0.0.tgz
+Source1222:         
https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.2.tgz#/source-map-js-1.2.2.tgz
+Source1223:         
https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#/string-width-4.2.3.tgz
+Source1224:         
https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz#/string-width-8.2.2.tgz
+Source1225:         
https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#/strip-ansi-6.0.1.tgz
+Source1226:         
https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz#/strip-ansi-7.2.0.tgz
+Source1227:         
https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz#/style-search-0.1.0.tgz
+Source1228:         
https://registry.npmjs.org/stylelint/-/stylelint-17.16.0.tgz#/stylelint-17.16.0.tgz
+Source1229:         
https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-18.0.0.tgz#/stylelint-config-recommended-18.0.0.tgz
+Source1230:         
https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-17.0.1.tgz#/stylelint-config-recommended-scss-17.0.1.tgz
+Source1231:         
https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-40.0.0.tgz#/stylelint-config-standard-40.0.0.tgz
+Source1232:         
https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-17.0.0.tgz#/stylelint-config-standard-scss-17.0.0.tgz
+Source1233:         
https://registry.npmjs.org/stylelint-prettier/-/stylelint-prettier-5.0.3.tgz#/stylelint-prettier-5.0.3.tgz
+Source1234:         
https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-7.0.0.tgz#/stylelint-scss-7.0.0.tgz
+Source1235:         
https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz#/supports-color-10.2.2.tgz
+Source1236:         
https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.5.0.tgz#/supports-hyperlinks-4.5.0.tgz
+Source1237:         
https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz#/svg-tags-1.0.0.tgz
+Source1238:         
https://registry.npmjs.org/synckit/-/synckit-0.11.13.tgz#/synckit-0.11.13.tgz
+Source1239:         
https://registry.npmjs.org/table/-/table-6.9.0.tgz#/table-6.9.0.tgz
+Source1240:         
https://registry.npmjs.org/timeago.js/-/timeago.js-4.0.2.tgz#/timeago.js-4.0.2.tgz
+Source1241:         
https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#/to-regex-range-5.0.1.tgz
+Source1242:         
https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#/type-check-0.4.0.tgz
+Source1243:         
https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.1.tgz#/unicorn-magic-0.4.1.tgz
+Source1244:         
https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#/uri-js-4.4.1.tgz
+Source1245:         
https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#/util-deprecate-1.0.2.tgz
+Source1246:         
https://registry.npmjs.org/which/-/which-1.3.1.tgz#/which-1.3.1.tgz
+Source1247:         
https://registry.npmjs.org/which/-/which-2.0.2.tgz#/which-2.0.2.tgz
+Source1248:         
https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz#/word-wrap-1.2.5.tgz
+Source1249:         
https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz#/write-file-atomic-7.0.1.tgz
+Source1250:         
https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#/yocto-queue-0.1.0.tgz
 

++++++ openQA-5.1793722468.aa0c30fc.obscpio -> 
openQA-5.1793868658.dfa961c2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/.mergify.yml 
new/openQA-5.1793868658.dfa961c2/.mergify.yml
--- old/openQA-5.1793722468.aa0c30fc/.mergify.yml       2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/.mergify.yml       2026-11-05 
09:50:58.000000000 +0100
@@ -41,7 +41,7 @@
   - name: automatic merge on merge-skip-oqa-in-oqa-tests
     conditions:
       - and: *core_checks
-      - '#check-success>=39'
+      - '#check-success>=43'
       - label=merge-skip-oqa-in-oqa-tests
       - -label=merge-skip-extended-tests
     actions: *merge
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/.obs/workflows.yml 
new/openQA-5.1793868658.dfa961c2/.obs/workflows.yml
--- old/openQA-5.1793722468.aa0c30fc/.obs/workflows.yml 2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/.obs/workflows.yml 2026-11-05 
09:50:58.000000000 +0100
@@ -31,6 +31,12 @@
                 target_repository: '16.0'
               - target_project: devel:openQA
                 target_repository: '16.0'
+          - name: '16.1'
+            paths:
+              - target_project: devel:openQA:Leap:16.1
+                target_repository: '16.1'
+              - target_project: devel:openQA
+                target_repository: '16.1'
             architectures: [ x86_64 ]
 
   filters:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/dist/rpm/openQA.spec 
new/openQA-5.1793868658.dfa961c2/dist/rpm/openQA.spec
--- old/openQA-5.1793722468.aa0c30fc/dist/rpm/openQA.spec       2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/dist/rpm/openQA.spec       2026-11-05 
09:50:58.000000000 +0100
@@ -735,6 +735,9 @@
 %{_datadir}/openqa/script/openqa-webui-daemon
 %{_datadir}/openqa/script/upgradedb
 %{_datadir}/openqa/script/modify_needle
+%if 0%{?suse_version} > 1500
+%{_sysusersdir}/geekotest.conf
+%endif
 # TODO: define final user
 %defattr(-,geekotest,root)
 # attention: never package subdirectories owned by a user other
@@ -752,9 +755,6 @@
 %dir %{_localstatedir}/lib/openqa/share/factory/repo
 %dir %{_localstatedir}/lib/openqa/share/factory/other
 %ghost %{_localstatedir}/log/openqa
-%if 0%{?suse_version} > 1500
-%{_sysusersdir}/geekotest.conf
-%endif
 
 %if %{with devel_package}
 %files devel
@@ -841,17 +841,17 @@
 %{_datadir}/openqa/script/openqa-workercache-daemon
 %{_datadir}/openqa/script/openqa-worker-cacheservice-minion
 %dir %{_localstatedir}/lib/openqa/pool
-%defattr(-,_openqa-worker,root)
-%dir %{_localstatedir}/lib/openqa/cache
-%dir %{_localstatedir}/lib/openqa/cache/podman
-# own one pool - to create the others is task of the admin
-%dir %{_localstatedir}/lib/openqa/pool/1
 %if 0%{?suse_version} > 1500
 %{_sysusersdir}/%{name}-worker.conf
 %endif
 %if 0%{?suse_version} <= 1560
 %{_prefix}/lib/sysctl.d/01-openqa-reload-worker-auto-restart.conf
 %endif
+%defattr(-,_openqa-worker,root)
+%dir %{_localstatedir}/lib/openqa/cache
+%dir %{_localstatedir}/lib/openqa/cache/podman
+# own one pool - to create the others is task of the admin
+%dir %{_localstatedir}/lib/openqa/pool/1
 
 %files client
 %dir %{_datadir}/openqa
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Scheduler.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Scheduler.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Scheduler.pm    2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Scheduler.pm    2026-11-05 
09:50:58.000000000 +0100
@@ -25,13 +25,13 @@
 
 sub startup ($self) {
     $self->moniker('openqa_scheduler');
+    $self->defaults(appname => 'openQA Scheduler');
 
     # Provide help to users early to prevent failing later on misconfigurations
     return if $ENV{MOJO_HELP};
 
     OpenQA::Scheduler::Client::mark_current_process_as_scheduler;
     $self->setup if $RUNNING;
-    $self->defaults(appname => 'openQA Scheduler');
 
     # no cookies for worker, no secrets to protect
     $self->secrets(['nosecretshere']);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Schema/Result/Jobs.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Schema/Result/Jobs.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Schema/Result/Jobs.pm   
2026-11-03 17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Schema/Result/Jobs.pm   
2026-11-05 09:50:58.000000000 +0100
@@ -1950,8 +1950,10 @@
     return $res->{stdout} . $res->{stderr};
 }
 
-sub git_diff ($self, $dir, $refspec_range, $limit = undef) {
+sub git_diff ($self, $dir, $refspec_range, %options) {
     return "Invalid range $refspec_range" if $refspec_range =~ 
m/UNKNOWN|unreadable git hash/;
+    my $limit = $options{limit} // 0;
+    my $stat = $options{stat} // '300,200';
     my $timeout = 
OpenQA::App->singleton->config->{global}->{job_investigate_git_timeout}
       // JOB_INVESTIGATE_GIT_TIMEOUT;
     my $cmd = ['git', '-C', $dir, 'rev-list', '--count', $refspec_range];
@@ -1969,7 +1971,7 @@
     }
     return "Too many commits ($count) to create a diff between $refspec_range 
(maximum: $limit)" if $count > $limit;
 
-    $cmd = ['timeout', $timeout, 'git', '-C', $dir, 'diff', '--stat', 
$refspec_range];
+    $cmd = ['timeout', $timeout, 'git', '-C', $dir, 'diff', "--stat=$stat", 
$refspec_range];
     $res = run_cmd_with_log_return_error($cmd, stdout => 'trace');
     $out = $res->{stdout} . $res->{stderr};
     if (my $return_code = $res->{return_code}) {
@@ -2022,7 +2024,7 @@
         my $diff_limit = $args{git_limit} ? $args{git_limit} / 2 : undef;
         $inv{test_log} = $self->git_log_diff($casedir, $refspec_range, limit 
=> $args{git_limit});
         $inv{test_log} ||= 'No test changes recorded, test regression 
unlikely';
-        $inv{test_diff_stat} = $self->git_diff($casedir, $refspec_range, 
$diff_limit) if $inv{test_log};
+        $inv{test_diff_stat} = $self->git_diff($casedir, $refspec_range, limit 
=> $diff_limit) if $inv{test_log};
         # no need for duplicating needles git log if the git repo is the same
         # as for tests
         if ($self_vars->{TEST_GIT_HASH} ne $self_vars->{NEEDLES_GIT_HASH}) {
@@ -2030,7 +2032,7 @@
             my $refspec_needles_range = 
"$prev_vars->{NEEDLES_GIT_HASH}..$self_vars->{NEEDLES_GIT_HASH}";
             $inv{needles_log} = $self->git_log_diff($needles_dir, 
$refspec_needles_range, limit => $args{git_limit});
             $inv{needles_log} ||= 'No needle changes recorded, test regression 
due to needles unlikely';
-            $inv{needles_diff_stat} = $self->git_diff($needles_dir, 
$refspec_needles_range, $diff_limit)
+            $inv{needles_diff_stat} = $self->git_diff($needles_dir, 
$refspec_needles_range, limit => $diff_limit)
               if $inv{needles_log};
         }
         last;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Schema.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Schema.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Schema.pm       2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Schema.pm       2026-11-05 
09:50:58.000000000 +0100
@@ -63,6 +63,12 @@
         my $database_config = 
parse_config_files_as_hash($database_config_paths);
         my $database_config_for_mode = $database_config ? 
$database_config->{$mode} : {dsn => 'DBI:Pg:dbname=openqa'};
         die "Could not find database section '$mode' in 
@$database_config_paths\n" unless $database_config_for_mode;
+        my $app = OpenQA::App->singleton;
+        my $app_name = ($app ? $app->defaults('appname') : '') || 'openQA';
+        $app_name = ";application_name='$app_name'";
+        ref $database_config_for_mode eq 'HASH'
+          ? ($database_config_for_mode->{dsn} .= $app_name)
+          : ($database_config_for_mode .= $app_name);
         $SINGLETON = __PACKAGE__->connect($database_config_for_mode);
     }
     if (defined(my $search_path = $ENV{OPENQA_DATABASE_SEARCH_PATH})) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/WebSockets.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/WebSockets.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/WebSockets.pm   2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/WebSockets.pm   2026-11-05 
09:50:58.000000000 +0100
@@ -17,11 +17,11 @@
 
 sub startup ($self) {
     $self->moniker('openqa_websockets');
+    $self->defaults(appname => 'openQA Websocket Server');
     OpenQA::WebSockets::Client::mark_current_process_as_websocket_server;
 
     $self->_setup if $RUNNING;
 
-    $self->defaults(appname => 'openQA Websocket Server');
     if (defined(my $max_workers = 
$self->config->{misc_limits}->{max_online_workers})) {
         # increase max connections from default of 1000 to cover configured 
max_online_workers
         my $loop = Mojo::IOLoop->singleton;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Worker/WebUIConnection.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Worker/WebUIConnection.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Worker/WebUIConnection.pm       
2026-11-03 17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Worker/WebUIConnection.pm       
2026-11-05 09:50:58.000000000 +0100
@@ -33,6 +33,8 @@
 # the websocket connection to receive commands from the web UI and send the 
status (Mojo::Transaction::WebSockets instance)
 has 'websocket_connection';
 
+my $HEALTH_CHECK_WARNING = 'Worker unavailable (health check failed)';
+
 sub new ($class, $webui_host, $cli_options) {
     my $url = $webui_host !~ '/' ? 
Mojo::URL->new->scheme('http')->host_port($webui_host) : 
Mojo::URL->new($webui_host);
     my $ua = OpenQA::Client->new(
@@ -405,6 +407,7 @@
     return undef if $self->{_send_status_timer} || 
!$self->websocket_connection;
 
     # re-evaluate the error status after just a few seconds if the current 
error is ephemeral
+    my $worker = $self->worker;
     return $self->{_send_status_timer} = Mojo::IOLoop->timer(
         EPHEMERAL_RECHECK_INTERVAL,
         sub {
@@ -413,13 +416,14 @@
             return $self->send_status(status => $status) unless 
$worker->current_error;
             delete $self->{_send_status_timer};
             $self->send_status_delayed;
-        }) if $self->worker->current_error_is_ephemeral;
+        }) if $worker->current_error_is_ephemeral;
 
-    my $status_update_interval = $self->calculate_status_update_interval;
-    my $webui_host = $self->webui_host;
-    my $reason = ($self->{_last_worker_status} // {})->{reason};
-    log_warning "$reason - checking again for web UI '$webui_host' in 
$status_update_interval s" if $reason;
-    $self->{_send_status_timer} = Mojo::IOLoop->timer($status_update_interval, 
sub { $self->send_status });
+    my $interval = $self->calculate_status_update_interval;
+    if (my $reason = ($self->{_last_worker_status} // {})->{reason}) {
+        my $for = @{$worker->settings->webui_hosts} > 1 ? sprintf(" for web UI 
'%s'", $self->webui_host) : '';
+        log_warning "$HEALTH_CHECK_WARNING: $reason - checking again$for in 
$interval s";
+    }
+    $self->{_send_status_timer} = Mojo::IOLoop->timer($interval, sub { 
$self->send_status });
 }
 
 # send "quit" message when intentionally "going offline" so the worker is 
immediately considered
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Worker.pm 
new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Worker.pm
--- old/openQA-5.1793722468.aa0c30fc/lib/OpenQA/Worker.pm       2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/lib/OpenQA/Worker.pm       2026-11-05 
09:50:58.000000000 +0100
@@ -904,8 +904,7 @@
     return undef if !$threshold || @$load < 3;
     # look at the load evolution over time to react quick enough if the load
     # rises but accept a falling edge
-    return
-"The average load (@$load) is exceeding the configured threshold of 
$threshold. The worker will temporarily not accept new jobs until the load is 
lower again."
+    return "The average load (@$load) is exceeding the configured threshold of 
$threshold."
       if max(@$load) > $threshold && ($load->[0] > $load->[1] || $load->[0] > 
$load->[2] || min(@$load) > $threshold);
     return undef;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/package-lock.json 
new/openQA-5.1793868658.dfa961c2/package-lock.json
--- old/openQA-5.1793722468.aa0c30fc/package-lock.json  2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/package-lock.json  2026-11-05 
09:50:58.000000000 +0100
@@ -24,7 +24,7 @@
       "devDependencies": {
         "@eslint/js": "^10.0.1",
         "@stylistic/stylelint-plugin": "^5.0.1",
-        "eslint": "^10.2.1",
+        "eslint": "^10.13.0",
         "eslint-config-prettier": "^10.1.8",
         "eslint-plugin-prettier": "^5.5.5",
         "globals": "^17.13.0",
@@ -72,33 +72,6 @@
         "keyv": "^5.6.0"
       }
     },
-    "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": {
-      "version": "1.3.1",
-      "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz";,
-      "integrity": 
"sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "hashery": "^1.4.0",
-        "hookified": "^1.15.0"
-      },
-      "engines": {
-        "node": ">= 18"
-      },
-      "peerDependencies": {
-        "keyv": "^5.6.0"
-      }
-    },
-    "node_modules/@cacheable/memory/node_modules/keyv": {
-      "version": "5.6.0",
-      "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz";,
-      "integrity": 
"sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@keyv/serialize": "^1.1.1"
-      }
-    },
     "node_modules/@cacheable/utils": {
       "version": "2.5.0",
       "resolved": 
"https://registry.npmjs.org/@cacheable/utils/-/utils-2.5.0.tgz";,
@@ -110,16 +83,6 @@
         "keyv": "^5.6.0"
       }
     },
-    "node_modules/@cacheable/utils/node_modules/keyv": {
-      "version": "5.6.0",
-      "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz";,
-      "integrity": 
"sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@keyv/serialize": "^1.1.1"
-      }
-    },
     "node_modules/@csstools/css-calc": {
       "version": "3.4.3",
       "resolved": 
"https://registry.npmjs.org/@csstools/css-calc/-/css-calc-3.4.3.tgz";,
@@ -213,9 +176,9 @@
       }
     },
     "node_modules/@csstools/media-query-list-parser": {
-      "version": "5.0.0",
-      "resolved": 
"https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.0.tgz";,
-      "integrity": 
"sha512-T9lXmZOfnam3eMERPsszjY5NK0jX8RmThmmm99FZ8b7z8yMaFZWKwLWGZuTwdO3ddRY5fy13GmmEYZXB4I98Eg==",
+      "version": "5.0.2",
+      "resolved": 
"https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.2.tgz";,
+      "integrity": 
"sha512-qx19O8AbbLLbDSAcI6YOby/Vq8rV51psgIvlF5OZT/L8fQJDCyQifL6k+kYU4a8ySpzJ4RBzZkIs530bAn8y4Q==",
       "dev": true,
       "funding": [
         {
@@ -232,8 +195,8 @@
         "node": ">=20.19.0"
       },
       "peerDependencies": {
-        "@csstools/css-parser-algorithms": "^4.0.0",
-        "@csstools/css-tokenizer": "^4.0.0"
+        "@csstools/css-parser-algorithms": "^4.0.2",
+        "@csstools/css-tokenizer": "^4.0.2"
       }
     },
     "node_modules/@csstools/selector-resolve-nested": {
@@ -340,9 +303,9 @@
       }
     },
     "node_modules/@eslint/config-helpers": {
-      "version": "0.5.5",
-      "resolved": 
"https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.5.5.tgz";,
-      "integrity": 
"sha512-eIJYKTCECbP/nsKaaruF6LW967mtbQbsw4JTtSVkUQc9MneSkbrgPJAbKl9nWr0ZeowV8BfsarBmPpBzGelA2w==",
+      "version": "0.7.0",
+      "resolved": 
"https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.7.0.tgz";,
+      "integrity": 
"sha512-DObd/KKUsU+FaFv4PLxSRenpXfQWmPXXP3pPZ6/K1PCrMu2vQpMDMuQe/BqYeoLcz8ro0bVDF1RxOJgfVEdhUw==",
       "dev": true,
       "license": "Apache-2.0",
       "dependencies": {
@@ -397,9 +360,9 @@
       }
     },
     "node_modules/@eslint/plugin-kit": {
-      "version": "0.7.2",
-      "resolved": 
"https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.2.tgz";,
-      "integrity": 
"sha512-+CNAzxglkrpNf/kKywqQfk74QjtceuOE7Qm+AF8miRvPF/wmmK5+OJOgVh3AVTT3RP2mH3+FOaxlE5v72owk0A==",
+      "version": "0.7.3",
+      "resolved": 
"https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.7.3.tgz";,
+      "integrity": 
"sha512-IkO+/KEUvwbVpiURZg+P7zF74z5Jxe0UgJxVni+RtoHQ6IZieXaO02kmadomap/q+l6bc/jdPGGqTjhuZnuz1Q==",
       "dev": true,
       "license": "Apache-2.0",
       "dependencies": {
@@ -485,6 +448,23 @@
         "url": "https://github.com/sponsors/nzakas";
       }
     },
+    "node_modules/@keyv/bigmap": {
+      "version": "1.3.1",
+      "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz";,
+      "integrity": 
"sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==",
+      "dev": true,
+      "license": "MIT",
+      "dependencies": {
+        "hashery": "^1.4.0",
+        "hookified": "^1.15.0"
+      },
+      "engines": {
+        "node": ">= 18"
+      },
+      "peerDependencies": {
+        "keyv": "^5.6.0"
+      }
+    },
     "node_modules/@keyv/serialize": {
       "version": "1.1.1",
       "resolved": 
"https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.1.tgz";,
@@ -777,16 +757,6 @@
         "qified": "^0.10.1"
       }
     },
-    "node_modules/cacheable/node_modules/keyv": {
-      "version": "5.6.0",
-      "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz";,
-      "integrity": 
"sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@keyv/serialize": "^1.1.1"
-      }
-    },
     "node_modules/callsites": {
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz";,
@@ -1435,18 +1405,21 @@
       }
     },
     "node_modules/eslint": {
-      "version": "10.2.1",
-      "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.2.1.tgz";,
-      "integrity": 
"sha512-wiyGaKsDgqXvF40P8mDwiUp/KQjE1FdrIEJsM8PZ3XCiniTMXS3OHWWUe5FI5agoCnr8x4xPrTDZuxsBlNHl+Q==",
+      "version": "10.13.0",
+      "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.13.0.tgz";,
+      "integrity": 
"sha512-UohDjD4zSzEwhf58M3O7vc/ycc8O1I7dNlhtD0WxE8Px8EHNJKtUwzBqrzeGhisRuv2ag4sAYswszCJRgKXYUg==",
       "dev": true,
       "license": "MIT",
+      "workspaces": [
+        "packages/*"
+      ],
       "dependencies": {
         "@eslint-community/eslint-utils": "^4.8.0",
         "@eslint-community/regexpp": "^4.12.2",
         "@eslint/config-array": "^0.23.5",
-        "@eslint/config-helpers": "^0.5.5",
+        "@eslint/config-helpers": "^0.7.0",
         "@eslint/core": "^1.2.1",
-        "@eslint/plugin-kit": "^0.7.1",
+        "@eslint/plugin-kit": "^0.7.3",
         "@humanfs/node": "^0.16.6",
         "@humanwhocodes/module-importer": "^1.0.1",
         "@humanwhocodes/retry": "^0.4.2",
@@ -1461,14 +1434,14 @@
         "esquery": "^1.7.0",
         "esutils": "^2.0.2",
         "fast-deep-equal": "^3.1.3",
-        "file-entry-cache": "^8.0.0",
+        "file-entry-cache": "11.1.5 || >11.1.6 <12",
         "find-up": "^5.0.0",
         "glob-parent": "^6.0.2",
         "ignore": "^5.2.0",
         "imurmurhash": "^0.1.4",
         "is-glob": "^4.0.0",
         "json-stable-stringify-without-jsonify": "^1.0.1",
-        "minimatch": "^10.2.4",
+        "minimatch": "^10.2.5",
         "natural-compare": "^1.4.0",
         "optionator": "^0.9.3"
       },
@@ -1729,16 +1702,13 @@
       }
     },
     "node_modules/file-entry-cache": {
-      "version": "8.0.0",
-      "resolved": 
"https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz";,
-      "integrity": 
"sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==",
+      "version": "11.1.5",
+      "resolved": 
"https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.5.tgz";,
+      "integrity": 
"sha512-+PFTHITI08JIGhnNpGNI8T8inUpgZfk3GNEqfT9R2zZV2iFXg3CvqzSl/uEhs7TSGujYRELEANyDvS8Fj7+S7Q==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "flat-cache": "^4.0.0"
-      },
-      "engines": {
-        "node": ">=16.0.0"
+        "flat-cache": "^6.1.23"
       }
     },
     "node_modules/fill-range": {
@@ -1772,23 +1742,21 @@
       }
     },
     "node_modules/flat-cache": {
-      "version": "4.0.1",
-      "resolved": 
"https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz";,
-      "integrity": 
"sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==",
+      "version": "6.1.23",
+      "resolved": 
"https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.23.tgz";,
+      "integrity": 
"sha512-f++BY9pTk+983xK1FLzlLpmM0i0z+jHmx3QESGkURMXujQZz1k5wzwX6hjnQ8goaD0B+sYnDK1yZ6MTyZfUaqA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "flatted": "^3.2.9",
-        "keyv": "^4.5.4"
-      },
-      "engines": {
-        "node": ">=16"
+        "cacheable": "^2.5.0",
+        "flatted": "^3.4.2",
+        "hookified": "^1.15.0"
       }
     },
     "node_modules/flatted": {
-      "version": "3.4.2",
-      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz";,
-      "integrity": 
"sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==",
+      "version": "3.4.4",
+      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.4.tgz";,
+      "integrity": 
"sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==",
       "dev": true,
       "license": "ISC"
     },
@@ -2167,13 +2135,6 @@
         "js-yaml": "bin/js-yaml.js"
       }
     },
-    "node_modules/json-buffer": {
-      "version": "3.0.1",
-      "resolved": 
"https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz";,
-      "integrity": 
"sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
-      "dev": true,
-      "license": "MIT"
-    },
     "node_modules/json-parse-even-better-errors": {
       "version": "2.3.1",
       "resolved": 
"https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz";,
@@ -2196,13 +2157,13 @@
       "license": "MIT"
     },
     "node_modules/keyv": {
-      "version": "4.5.4",
-      "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz";,
-      "integrity": 
"sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
+      "version": "5.6.0",
+      "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz";,
+      "integrity": 
"sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "json-buffer": "3.0.1"
+        "@keyv/serialize": "^1.1.1"
       }
     },
     "node_modules/kind-of": {
@@ -3102,28 +3063,6 @@
         "stylelint": "^16.8.2 || ^17.0.0"
       }
     },
-    "node_modules/stylelint/node_modules/file-entry-cache": {
-      "version": "11.1.5",
-      "resolved": 
"https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.5.tgz";,
-      "integrity": 
"sha512-+PFTHITI08JIGhnNpGNI8T8inUpgZfk3GNEqfT9R2zZV2iFXg3CvqzSl/uEhs7TSGujYRELEANyDvS8Fj7+S7Q==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "flat-cache": "^6.1.23"
-      }
-    },
-    "node_modules/stylelint/node_modules/flat-cache": {
-      "version": "6.1.23",
-      "resolved": 
"https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.23.tgz";,
-      "integrity": 
"sha512-f++BY9pTk+983xK1FLzlLpmM0i0z+jHmx3QESGkURMXujQZz1k5wzwX6hjnQ8goaD0B+sYnDK1yZ6MTyZfUaqA==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "cacheable": "^2.5.0",
-        "flatted": "^3.4.2",
-        "hookified": "^1.15.0"
-      }
-    },
     "node_modules/stylelint/node_modules/ignore": {
       "version": "7.0.12",
       "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.12.tgz";,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/package.json 
new/openQA-5.1793868658.dfa961c2/package.json
--- old/openQA-5.1793722468.aa0c30fc/package.json       2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/package.json       2026-11-05 
09:50:58.000000000 +0100
@@ -14,7 +14,7 @@
   "devDependencies": {
     "@eslint/js": "^10.0.1",
     "@stylistic/stylelint-plugin": "^5.0.1",
-    "eslint": "^10.2.1",
+    "eslint": "^10.13.0",
     "eslint-config-prettier": "^10.1.8",
     "eslint-plugin-prettier": "^5.5.5",
     "globals": "^17.13.0",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/t/10-jobs.t 
new/openQA-5.1793868658.dfa961c2/t/10-jobs.t
--- old/openQA-5.1793722468.aa0c30fc/t/10-jobs.t        2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/t/10-jobs.t        2026-11-05 
09:50:58.000000000 +0100
@@ -453,8 +453,8 @@
                 return $fake_git_log;
             });
         $job_mock->redefine(
-            git_diff => sub ($self, $dir, $range, $limit = undef) {
-                $got_diff_limit = $limit;
+            git_diff => sub ($self, $dir, $range, %options) {
+                $got_diff_limit = $options{limit};
                 return $fake_git_log;
             });
         
path('t/data/last_good.json')->copy_to(path(($job->_previous_scenario_jobs)[1]->result_dir(),
 'vars.json'));
@@ -1097,34 +1097,34 @@
     $_settings{TEST} = 'L';
     my $job = _job_create(\%_settings);
 
-    my $too_big = $job->git_diff('/foo', '123..456', 5);
+    my $too_big = $job->git_diff('/foo', '123..456', limit => 5);
     like $too_big, qr{Too many commits}, 'Too many commits';
 
     combined_like {
-        my $non_numeric = $job->git_diff('/foo', 'nonumber..123456', 10);
+        my $non_numeric = $job->git_diff('/foo', 'nonumber..123456', limit => 
10);
         like $non_numeric, qr{Cannot display diff because of a git problem}, 
'rev-list --count returned no number';
     }
     qr{returned non-numeric string}, 'rev-list --count returned no number - 
warning is logged';
 
     combined_like {
-        my $fail = $job->git_diff('/foo', 'revlistfail..456', 10);
+        my $fail = $job->git_diff('/foo', 'revlistfail..456', limit => 10);
         like $fail, qr{Cannot display diff because of a git problem}, 'git 
rev-list exited with non-zero';
     }
     qr{git failed}, 'git rev-list exited with non-zero - warning is logged';
 
     combined_like {
-        my $fail = $job->git_diff('/foo', 'difffail..456', 10);
+        my $fail = $job->git_diff('/foo', 'difffail..456', limit => 10);
         like $fail, qr{Cannot display diff because of a git problem}, 'git 
diff exited with non-zero';
     }
     qr{git failed}, 'git diff exited with non-zero - warning is logged';
 
-    my $fail = $job->git_diff('/foo', 'longrange', 10);
+    my $fail = $job->git_diff('/foo', 'longrange', limit => 10);
     like $fail, qr{Computing diff timed out}, 'timeout logged specifically';
 
-    my $res = $job->git_diff('/foo', 'invalidrange', 10);
+    my $res = $job->git_diff('/foo', 'invalidrange', limit => 10);
     like $res, qr{Cannot display diff: Invalid revision range}, 'error about 
invalid range returned';
 
-    my $ok = $job->git_diff('/foo', '123..456', 10);
+    my $ok = $job->git_diff('/foo', '123..456', limit => 10);
     like $ok, qr{2 files changed}, 'expected git_diff output';
 };
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/t/16-utils-runcmd.t 
new/openQA-5.1793868658.dfa961c2/t/16-utils-runcmd.t
--- old/openQA-5.1793722468.aa0c30fc/t/16-utils-runcmd.t        2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/t/16-utils-runcmd.t        2026-11-05 
09:50:58.000000000 +0100
@@ -114,10 +114,14 @@
     subtest 'log diff computation helper of job' => sub {
         my $msg = 'commit msg';
         like OpenQA::Schema::Result::Jobs::git_log_diff(undef, $empty_tmp_dir, 
'HEAD'), qr/$msg.*testfile/s,
-          'commit and file mentioned';
+          'git_log_diff - commit and file mentioned';
         like OpenQA::Schema::Result::Jobs::git_log_diff(undef, $empty_tmp_dir, 
'HEAD', stat => '15,10'),
           qr/$msg.*\.\.\.ile.txt/s,
-          'commit and file mentioned';
+          'git_log_diff - commit and shortened file mentioned';
+        like OpenQA::Schema::Result::Jobs::git_diff(undef, $empty_tmp_dir, 
'HEAD', limit => 3), qr/testfile.txt/,
+          'git_diff - full filename';
+        like OpenQA::Schema::Result::Jobs::git_diff(undef, $empty_tmp_dir, 
'HEAD', limit => 3, stat => '15,10'),
+          qr/\.\.\.ile.txt/, 'git_diff - filename shortened';
     };
 
     subtest 'cache_ref' => sub {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/t/33-developer_mode.t 
new/openQA-5.1793868658.dfa961c2/t/33-developer_mode.t
--- old/openQA-5.1793722468.aa0c30fc/t/33-developer_mode.t      2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/t/33-developer_mode.t      2026-11-05 
09:50:58.000000000 +0100
@@ -188,22 +188,33 @@
 
     # skip timeout
     enter_developer_console_cmd $driver, 
'{"cmd":"set_assert_screen_timeout","timeout":0}';
-    wait_for_developer_console_like(
+    my $pause_start = wait_for_developer_console_like(
         $driver,
         qr/\"set_assert_screen_timeout\":0/,
         'response to set_assert_screen_timeout'
     );
 
-    # wait until test paused
+    # wait until paused and the upload has finished
+    # note: The "match=on_prompt timed out" message might be sent before or 
after "outstanding_images" so we specify
+    #       $pause_start as start offset when checking for 
"outstanding_images" to consider also log output before
+    #       "match=on_prompt timed out" and thus not asserting a specific 
order of messages.
     wait_for_developer_console_like(
         $driver,
         qr/\"(reason|test_execution_paused)\":\"match=on_prompt timed out/,
         'paused after assert_screen timeout'
     );
-
-    # clear console so subsequent wait_for_developer_console_like calls don't 
see old output
-    $driver->execute_script(
-        '$("#log").empty(); document.getElementById("log").value = ""; 
window.lastWaitForDevelConsoleMsgMatch = 0;');
+    my $upload_started_pos = wait_for_developer_console_like(
+        $driver,
+        qr/\"outstanding_images\":[1-9]*/,
+        'progress of image upload received',
+        ONE_MINUTE, $pause_start
+    );
+    my $upload_done_pos
+      = wait_for_developer_console_like($driver, qr/\"outstanding_images\":0/, 
'image upload has finished',
+        ONE_MINUTE, $upload_started_pos);
+    my $update_last_match
+      = "window.lastWaitForDevelConsoleMsgMatch = 
Math.max(window.lastWaitForDevelConsoleMsgMatch || 0, $upload_done_pos);";
+    $driver->execute_script($update_last_match);
 
     # try to resume
     enter_developer_console_cmd $driver, '{"cmd":"resume_test_execution"}';
@@ -226,29 +237,14 @@
 
     # skip timeout (again)
     enter_developer_console_cmd $driver, 
'{"cmd":"set_assert_screen_timeout","timeout":0}';
-    my $pause_start = wait_for_developer_console_like(
+    wait_for_developer_console_like(
         $driver,
         qr/\"set_assert_screen_timeout\":0/,
         'response to set_assert_screen_timeout'
     );
 
-    # wait until paused and the upload has finished
-    # note: The "match=on_prompt timed out" message might be sent before or 
after "outstanding_images" so we specify
-    #       $pause_start as start offset when checking for 
"outstanding_images" to consider also log output before
-    #       "match=on_prompt timed out" and thus not asserting a specific 
order of messages.
+    # wait until test paused (again)
     wait_for_developer_console_like($driver, qr/match=on_prompt timed out/, 
'paused on assert_screen timeout (again)');
-    my $upload_started_pos = wait_for_developer_console_like(
-        $driver,
-        qr/\"outstanding_images\":[1-9]*/,
-        'progress of image upload received',
-        ONE_MINUTE, $pause_start
-    );
-    my $upload_done_pos
-      = wait_for_developer_console_like($driver, qr/\"outstanding_images\":0/, 
'image upload has finished',
-        ONE_MINUTE, $upload_started_pos);
-    $driver->execute_script(
-"window.lastWaitForDevelConsoleMsgMatch = 
Math.max(window.lastWaitForDevelConsoleMsgMatch || 0, $upload_done_pos);"
-    );
 
     # open needle editor in 2nd tab
     my $needle_editor_url = '/tests/1/edit';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1793722468.aa0c30fc/t/lib/OpenQA/Test/FakeWorker.pm 
new/openQA-5.1793868658.dfa961c2/t/lib/OpenQA/Test/FakeWorker.pm
--- old/openQA-5.1793722468.aa0c30fc/t/lib/OpenQA/Test/FakeWorker.pm    
2026-11-03 17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/t/lib/OpenQA/Test/FakeWorker.pm    
2026-11-05 09:50:58.000000000 +0100
@@ -7,6 +7,7 @@
     use Mojo::Base -base;
     has global_settings => sub { {RETRIES => 3, RETRY_DELAY => 10, 
RETRY_DELAY_IF_WEBUI_BUSY => 90} };
     has webui_host_specific_settings => sub { {} };
+    has webui_hosts => sub { [] };
 }
 
 has pool_directory => undef;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1793722468.aa0c30fc/t/ui/13-admin.t 
new/openQA-5.1793868658.dfa961c2/t/ui/13-admin.t
--- old/openQA-5.1793722468.aa0c30fc/t/ui/13-admin.t    2026-11-03 
17:14:28.000000000 +0100
+++ new/openQA-5.1793868658.dfa961c2/t/ui/13-admin.t    2026-11-05 
09:50:58.000000000 +0100
@@ -725,8 +725,8 @@
     };
 
     subtest 'create key with expiration date' => sub {
+        $driver->find_element('#api-keys-form input[type=submit]')->click;
         my $row = wait_for_element(
-            trigger_function => sub { $driver->find_element('#api-keys-form 
input[type=submit]')->click },
             selector => '#api-keys-tbody > tr',
             description => 'key row present'
         ) or return;
@@ -737,8 +737,14 @@
         $tbody = api_keys_tbody;
         unlike $tbody->get_text, qr/never/, 'no key without expiration date 
present so far';
         $driver->find_element_by_id('expiration')->click;
+        wait_until(
+            sub {
+                $driver->execute_script('return 
document.getElementById("expiration-datetime-field")?.disabled;');
+            },
+            'expiration field disabled'
+        );
+        $driver->find_element('#api-keys-form input[type=submit]')->click;
         my $row = wait_for_element(
-            trigger_function => sub { $driver->find_element('#api-keys-form 
input[type=submit]')->click },
             selector => '#api-keys-tbody tr:nth-child(2)',
             description => 'key row present (without expiration)'
         ) or return;

++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.8t1dsk/_old  2026-11-06 19:39:05.823767813 +0100
+++ /var/tmp/diff_new_pack.8t1dsk/_new  2026-11-06 19:39:05.827767980 +0100
@@ -1,5 +1,5 @@
 name: openQA
-version: 5.1793722468.aa0c30fc
-mtime: 1793722468
-commit: aa0c30fcbc07ef6ddb3746ad0bd3a83336b09a48
+version: 5.1793868658.dfa961c2
+mtime: 1793868658
+commit: dfa961c22aed5d0dd1ee33a325c80b959d0ab70c
 

Reply via email to