Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package k6 for openSUSE:Factory checked in 
at 2025-11-11 19:19:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/k6 (Old)
 and      /work/SRC/openSUSE:Factory/.k6.new.1980 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "k6"

Tue Nov 11 19:19:54 2025 rev:7 rq:1316966 version:1.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/k6/k6.changes    2025-09-23 16:08:49.767484958 
+0200
+++ /work/SRC/openSUSE:Factory/.k6.new.1980/k6.changes  2025-11-11 
19:20:13.004658495 +0100
@@ -1,0 +2,288 @@
+Mon Nov 10 13:09:41 UTC 2025 - Johannes Kastl 
<[email protected]>
+
+- Update to version 1.4.0:
+  k6 v1.4.0 is here! This release includes:
+  * OpenTelemetry output graduated from experimental to stable
+    status.
+  * Changes in the Browser module:
+    - page.waitForRequest for waiting on specific HTTP requests.
+    - QueryAll methods now return elements in DOM order.
+    - locator.evaluate and locator.evaluateHandle for executing
+      JavaScript code in the page context with access to the
+      matching element.
+    - page.unroute(url) and page.unrouteAll for removing routes
+      registered with page.route.
+  * Breaking changes
+    As per our stability guarantees, breaking changes across minor
+    releases are allowed only for experimental features.
+    - Breaking changes for experimental modules
+      - #5164 OpenTelemetry output now exports rate metrics as a
+        single counter with zero/nonzero labels instead of separate
+        metrics.
+      - #5333 OpenTelemetry output configuration:
+        K6_OTEL_EXPORTER_TYPE is deprecated in favor of
+        K6_OTEL_EXPORTER_PROTOCOL to align with OpenTelemetry
+        standards.
+    - Breaking changes for undefined behaviours
+      - #5320, #5239, #5342 Automatic extension resolution now only
+        inspects ES module import statements and no longer supports
+        CommonJS require() calls. CommonJS require() calls are
+        dynamic, and it is not possible to know for certain if they
+        will be called, or if they will be called with static
+        strings - the only way they were even previously loaded.
+        This functionality was a quirk of the previous
+        implementation and had numerous problems. Additionally, use
+        k6 directives are now only recognized when they appear at
+        the beginning of files (after optional shebang and
+        whitespace/comments). This was the original intention, but
+        due to implementation bugs, it did not accurately reflect
+        what was happening.
+  * New features
+    - OpenTelemetry output graduation #5334
+      The OpenTelemetry output has graduated from experimental
+      status and is now available as a stable output using the name
+      opentelemetry. This change makes OpenTelemetry the
+      recommended vendor-agnostic solution for exporting k6
+      telemetry data.
+      You can now use the stable output name in your k6 commands:
+
+        # Previous experimental usage (still supported for backward 
compatibility)
+      K6 run --out experimental-opentelemetry script.js
+
+      # New stable usage
+      K6 run --out opentelemetry script.js
+
+      The experimental-opentelemetry name will continue to work for
+      backward compatibility for now but it's deprecated and we
+      might remove it in future versions. We recommend migrating to
+      use the new opentelemetry name.
+    - page.waitForRequest #5330
+      The browser module now supports page.waitForRequest(), which
+      allows you to wait for HTTP requests that match specific URL
+      patterns during browser automation. This method is
+      particularly valuable for testing scenarios where you need to
+      ensure specific network requests are initiated before
+      proceeding with test actions.
+
+      The method supports multiple URL pattern matching strategies:
+
+        // Wait for exact URL match
+        const requestPromise = 
page.waitForRequest('https://api.example.com/data');
+        await page.click('button[data-testid="load-data"]');
+        const request = await requestPromise;
+
+        // Wait for regex pattern match
+        await page.waitForRequest(/\/api\/.*\.json$/);
+
+        // Use with Promise.all for coordinated actions
+        await Promise.all([
+          page.waitForRequest('https://api.example.com/user-data'),
+          page.click('button[data-testid="load-user-data"]')
+        ]);
+
+      This complements the existing page.waitForResponse() method
+      by focusing on HTTP requests rather than responses, providing
+      more granular control over network-dependent test scenarios.
+    - page.unroute(url) and page.unrouteAll() #5223
+      The browser module now supports page.unroute(url) and
+      page.unrouteAll(), allowing you to remove routes previously
+      registered with page.route.
+
+      Example usage:
+
+        await page.route(/.*\/api\/pizza/, function (route) {
+          console.log('Modifying request to /api/pizza');
+          route.continue({
+            postData: JSON.stringify({
+              customName: 'My Pizza',
+            }),
+          });
+        });
+        ...
+
+        await page.unroute(/.*\/api\/pizza/); // The URL needs to be exactly 
the same as the one used in the call to the `route` function
+
+        await page.route(/.*\/api\/pizza/, function (route) {
+          console.log('Modifying request to /api/pizza');
+          route.continue({
+            postData: JSON.stringify({
+              customName: 'My Pizza',
+            }),
+          });
+        });
+        ...
+
+        await page.unrouteAll();
+
+    - locator.evaluate and locator.evaluateHandle #5306
+      The browser module now supports locator.evaluate and
+      locator.evaluateHandle, allowing you to execute JavaScript
+      code in the page context with access to the matching element.
+      The only difference between evaluate and evaluateHandle is
+      that evaluateHandle returns a JSHandle.
+      Example usage:
+
+        await check(page, {
+          'calling evaluate': async p => {
+            const n = await p.locator('#pizza-name').evaluate(pizzaName => 
pizzaName.textContent);
+            return n == 'Our recommendation:';
+          }
+        });
+
+        await check(page, {
+          'calling evaluate with arguments': async p => {
+            const n = await p.locator('#pizza-name').evaluate((pizzaName, 
extra) => pizzaName.textContent + extra, ' Super pizza!');
+            return n == 'Our recommendation: Super pizza!';
+          }
+        });
+
+        const jsHandle = await 
page.locator('#pizza-name').evaluateHandle((pizzaName) => pizzaName);
+
+        const obj = await jsHandle.evaluateHandle((handle) => {
+          return { innerText: handle.innerText };
+        });
+        console.log(await obj.jsonValue()); // {"innerText":"Our 
recommendation:"}
+
+    - New officially supported k6 DNS extension
+      The xk6-dns extension is now officially supported in k6 OSS
+      and k6 Cloud. You can import k6/x/dns directly in your
+      scripts thanks to automatic extension resolution, with no
+      custom build required.
+      Use it to perform DNS resolution testing as part of your
+      tests: resolve names via custom or system DNS, measure
+      resolution latency and errors, validate records before HTTP
+      steps, compare resolvers, and even load test DNS servers in
+      end‑to‑end scenarios.
+      For example:
+
+        import dns from 'k6/x/dns';
+
+        export default function () {
+          const answer = dns.resolve('grafana.com', { recordType: 'A' });
+          console.log(answer.records.map(({ address }) => address).join(', '));
+        }
+
+      The extension currently supports A and AAAA record lookups.
+      If you would like to see additional record types supported,
+      please consider contributing to the extension.
+    - Automatic extension resolution improvements #5320, #5239,
+      #5342, #5332, #5240
+      Automatic extension resolution has been completely
+      reimplemented to use k6's internal module loader instead of
+      the external k6deps/esbuild pipeline. This change brings
+      significant improvements in reliability and maintainability.
+      As part of the rewrite, a few issues and unintended features
+      were found, namely:
+      - Trying to follow require calls, which, due to their dynamic
+        nature, don't work particularly stably. That is, depending
+        on where and how the require call was used, k6 might decide
+        whether it is needed or not. And it definitely doesn't work
+        when using actual string variables. Support for CommonJS is
+        primarily for backward compatibility, so after an internal
+        discussion, we opted not to support it at all. We could
+        bring this back until v2, if there is enough interest.
+        However, in the long term, it is intended that this not be
+        part of k6.
+      - "use k6 with ..." directives were parsed from the whole
+        file instead of just the beginning, which leads to numerous
+        problems, and was not the intended case. As such, they are
+        now only parsed at the beginning of files (not just the
+        main one) with potential empty lines and comments preceding
+        them.
+      Example:
+
+        // main.js
+        "use k6 with k6/x/faker"
+        import { faker } from 'k6/x/faker';
+        import { helper } from './utils.js';
+
+        export default function() {
+          console.log(faker.name());
+          helper();
+        }
+
+     Or, an example using the directive with CommonJS
+
+        // utils.js
+        "use k6 with k6/x/redis"
+        const redis = require('k6/x/redis');
+
+        exports.helper = function() {
+          // Use redis extension
+        }
+
+      In this example, k6 will detect both k6/x/faker and
+      k6/x/redis extensions from the use k6 directives in both
+      files and provision a binary that includes both extensions if
+      needed.
+      Other fixes this brings are:
+      - Fixes for path related issues (irregardless of usage of the
+        feature) on windows, especially between drives. It is
+        possible there were problems on other OSes that were just
+        not reported. #5176
+      - Syntax errors were not reported as such, as the underlying
+        esbuild parsing will fail, but won't be handled well.
+        #5127, #5104
+      - Propagating exit codes from a sub-process running the new
+        k6. This lets you use the result of the exit code.
+  * UX improvements and enhancements
+    - #5307 QueryAll methods now return elements in DOM order.
+      Thank you, @shota3506, for the contribution.
+    - #5159 Simplifies warning message for legacy config files.
+    - #5343 Explictly marks the option's default values.
+  * Bug fixes
+    - #5242 Fixes cleanup errors on Windows for browser tests.
+    - #5246 Fixes the support for TypeScript source code from
+      stdin.
+    - #5322 Fixes browser.newPageInContext bug where pages created
+      in a non-existing browser context.
+  * Maintenance and internal improvements
+    - #5238 Browser: Fix early context cancellation in tests
+    - #5347, #5349 Browser: Move k6ext.Promise to the mapping
+      layer.
+    - #5340 Browser: Simplify page event iteration by using an
+      iterator.
+    - #5315, #5311 Browser: Revamped page event listening internals
+      for addition of new features and better maintainability.
+    - #5339 Browser: Remove unused VU fields.
+    - #5314 Browser: Refactor pattern matcher.
+    - #5222 Browser: Fix linter errors and warnings.
+    - #5207 Browser: Refactor and improve selector parsing. Thank
+      you, @elmiringos for the contribution.
+    - #5313, #5321 Update to k6provider v0.2.0 and update code to
+      use the new API.
+    - #4682 Update go-httpbin dependency to v2 and update tests to
+      accommodate breaking changes.
+    - #5309 Update cdproto dependency and fix syntax changes in
+      browser module.
+    - #5209 Update golangci-lint to v2.5.0 and fix related linting
+      issues.
+    - #5308 Format Go Doc comments. Thank you, @shota3506 for the
+      contribution.
+    - #5184 Migrates Prometheus Remote-Write output configuration
+      parsing to envconfig.
+    - #5304 Bumps the minimum required Go version to 1.24.
+    - #5214 Update release issue template after 1.3.0
+    - #5303 Fixes code scanning alert no. 102: Incorrect conversion
+      between integer types.
+    - #5302, #5244 Refactors Sobek out of business logic and into
+      mapping layer for the browser module.
+    - #5247 Refactors indirection out of locator.go.
+    - #4234, #5301, #5300, #5208 Updates renovate config.
+    - #5355, #5354, #5353, #5352, #5351, #5324, #5293, #5292,
+      #5291, #5290, #5288, #5287, #5286, #5284, #5283, #5282,
+      #5268, #5267, #5266, #5265, #5258, #5257, #5256, #5253,
+      #5252, #5251, Updates dependencies.
+    - #5216 Refactors TestPageOnResponse to fail fast on errors.
+      Thank you, @rMaxiQp for the contribution.
+    - #5203, #5201 Adds WinGet support to the project.
+    - #5220 Switches from gouuid to google/uuid. Thank you,
+      @mikelolasagasti for the contribution.
+    - #5344, #5345 Uses .env context for ghcr login when publishing
+      docker images.
+    - #5331 Reports require calls during the initial loading of
+      modules, instead for each call in all execution of all VUs.
+    - #5218 Adds user AgnesToulet to the auto assign issue
+      workflow.
+
+-------------------------------------------------------------------

Old:
----
  k6-1.3.0.obscpio

New:
----
  k6-1.4.0.obscpio

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

Other differences:
------------------
++++++ k6.spec ++++++
--- /var/tmp/diff_new_pack.ereHmb/_old  2025-11-11 19:20:14.348714788 +0100
+++ /var/tmp/diff_new_pack.ereHmb/_new  2025-11-11 19:20:14.352714955 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           k6
-Version:        1.3.0
+Version:        1.4.0
 Release:        0
 Summary:        Modern load testing tool, using Go and JavaScript
 License:        AGPL-3.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.ereHmb/_old  2025-11-11 19:20:14.392716631 +0100
+++ /var/tmp/diff_new_pack.ereHmb/_new  2025-11-11 19:20:14.396716799 +0100
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/grafana/k6.git</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v1.3.0</param>
+    <param name="revision">v1.4.0</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="changesgenerate">enable</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.ereHmb/_old  2025-11-11 19:20:14.432718306 +0100
+++ /var/tmp/diff_new_pack.ereHmb/_new  2025-11-11 19:20:14.436718474 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/grafana/k6.git</param>
-              <param 
name="changesrevision">5870e99ae8a690a2b0bfc9a7dd2b5feb7c9851bb</param></service></servicedata>
+              <param 
name="changesrevision">a9f9e3b28a0407b8ed785c0f5f5d7716c8efe9a4</param></service></servicedata>
 (No newline at EOF)
 

++++++ k6-1.3.0.obscpio -> k6-1.4.0.obscpio ++++++
++++ 78884 lines of diff (skipped)

++++++ k6.obsinfo ++++++
--- /var/tmp/diff_new_pack.ereHmb/_old  2025-11-11 19:20:19.828944316 +0100
+++ /var/tmp/diff_new_pack.ereHmb/_new  2025-11-11 19:20:19.872946159 +0100
@@ -1,5 +1,5 @@
 name: k6
-version: 1.3.0
-mtime: 1758618829
-commit: 5870e99ae8a690a2b0bfc9a7dd2b5feb7c9851bb
+version: 1.4.0
+mtime: 1762771976
+commit: a9f9e3b28a0407b8ed785c0f5f5d7716c8efe9a4
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/k6/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.k6.new.1980/vendor.tar.gz differ: char 12, line 1

Reply via email to