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-01-23 17:31:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openQA (Old) and /work/SRC/openSUSE:Factory/.openQA.new.1928 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA" Fri Jan 23 17:31:59 2026 rev:799 rq:1328704 version:5.1769068942.639067ee Changes: -------- --- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2026-01-22 15:16:09.023161657 +0100 +++ /work/SRC/openSUSE:Factory/.openQA.new.1928/openQA.changes 2026-01-23 17:32:03.535450677 +0100 @@ -2 +2 @@ -Wed Jan 21 13:01:48 UTC 2026 - [email protected] +Thu Jan 22 14:07:47 UTC 2026 - [email protected] @@ -4 +4,3 @@ -- Update to version 5.1768996386.e3f58202: +- Update to version 5.1769068942.639067ee: + * Dependency cron 2026-01-22 + * feat: Show limits on "Next & Previous" tab within table @@ -11,0 +14,5 @@ + +------------------------------------------------------------------- +Tue Jan 20 20:12:31 UTC 2026 - [email protected] + +- Update to version 5.1768919350.40d92537: Old: ---- openQA-5.1768996386.e3f58202.obscpio New: ---- openQA-5.1769068942.639067ee.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openQA-client-test.spec ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:05.675539085 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:05.679539251 +0100 @@ -18,7 +18,7 @@ %define short_name openQA-client Name: %{short_name}-test -Version: 5.1768996386.e3f58202 +Version: 5.1769068942.639067ee Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA-devel-test.spec ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:05.707540408 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:05.711540572 +0100 @@ -18,7 +18,7 @@ %define short_name openQA-devel Name: %{short_name}-test -Version: 5.1768996386.e3f58202 +Version: 5.1769068942.639067ee Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA-test.spec ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:05.743541895 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:05.747542060 +0100 @@ -18,7 +18,7 @@ %define short_name openQA Name: %{short_name}-test -Version: 5.1768996386.e3f58202 +Version: 5.1769068942.639067ee Release: 0 Summary: Test package for openQA License: GPL-2.0-or-later ++++++ openQA-worker-test.spec ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:05.775543217 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:05.775543217 +0100 @@ -18,7 +18,7 @@ %define short_name openQA-worker Name: %{short_name}-test -Version: 5.1768996386.e3f58202 +Version: 5.1769068942.639067ee Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA.spec ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:05.819545034 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:05.823545200 +0100 @@ -99,7 +99,7 @@ %define devel_requires %devel_no_selenium_requires chromedriver Name: openQA -Version: 5.1768996386.e3f58202 +Version: 5.1769068942.639067ee Release: 0 Summary: The openQA web-frontend, scheduler and tools License: GPL-2.0-or-later ++++++ openQA-5.1768996386.e3f58202.obscpio -> openQA-5.1769068942.639067ee.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/assets/javascripts/job_next_previous.js new/openQA-5.1769068942.639067ee/assets/javascripts/job_next_previous.js --- old/openQA-5.1768996386.e3f58202/assets/javascripts/job_next_previous.js 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/assets/javascripts/job_next_previous.js 2026-01-22 09:02:22.000000000 +0100 @@ -28,19 +28,27 @@ if (typeof params.next_limit != 'undefined') { d.next_limit = params.next_limit.toString(); } - }, - dataSrc: function (json) { - const info = json.info; - if (Array.isArray(info) && info.length > 0) { - addUniqueFlash('info', 'next_previous_info', info.join('<br/>'), $(tableElement), 'before'); - } - return json.data; } }, paging: true, ordering: false, deferRender: true, columns: [{width: '5%'}, {data: 'result'}, {data: 'build'}, {data: 'finished'}], + rowCallback: function (row, data) { + // set the colspan attribute and hide additional columns if a note is present + // note: DataTables does not seem to provide an API for this except for headers. + if (data.note === undefined) { + return; + } + const cells = row.children; + if (cells.length > 2) { + cells[1].colSpan = 3; + cells[1].style.textAlign = 'center'; + while (cells.length > 2) { + row.removeChild(row.lastElementChild); + } + } + }, processing: false, order: false, columnDefs: [ @@ -66,6 +74,9 @@ } function renderMarks(data, type, row) { + if (row.note) { + return ''; + } var html = '<span class="badge text-bg-primary float-right" title="'; if (row.iscurrent == 1 && row.islatest == 1) { html += 'Current & Latest job">C&L</span>'; @@ -78,6 +89,9 @@ } function renderJobResults(data, type, row) { + if (row.note) { + return row.note; + } var html = ''; // job status html += '<span id="res-' + row.id + '">'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/cpanfile new/openQA-5.1769068942.639067ee/cpanfile --- old/openQA-5.1768996386.e3f58202/cpanfile 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/cpanfile 2026-01-22 09:02:22.000000000 +0100 @@ -118,7 +118,7 @@ requires 'Code::TidyAll'; requires 'Perl::Critic'; requires 'Perl::Critic::Community'; - requires 'Perl::Tidy', '== 20250912.0.0'; + requires 'Perl::Tidy', '== 20260109.0.0'; requires 'Test::CheckGitStatus'; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/dependencies.yaml new/openQA-5.1769068942.639067ee/dependencies.yaml --- old/openQA-5.1768996386.e3f58202/dependencies.yaml 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/dependencies.yaml 2026-01-22 09:02:22.000000000 +0100 @@ -84,7 +84,7 @@ sudo: tar: xorg-x11-fonts: - perl(Perl::Tidy): '== 20250912.0.0' + perl(Perl::Tidy): '== 20260109.0.0' perl(Test::CheckGitStatus): devel_requires: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/lib/OpenQA/WebAPI/Controller/Test.pm new/openQA-5.1769068942.639067ee/lib/OpenQA/WebAPI/Controller/Test.pm --- old/openQA-5.1768996386.e3f58202/lib/OpenQA/WebAPI/Controller/Test.pm 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/lib/OpenQA/WebAPI/Controller/Test.pm 2026-01-22 09:02:22.000000000 +0100 @@ -666,13 +666,11 @@ } $data[0]->{islatest} = 1 if @data; if (($source_count{p} // 0) > $p_limit) { # the query requests `$p_limit + 1` so we know when the limit was reached - push @info, "The number of \"Previous\" jobs exceeds the display limit of $p_limit."; - pop @data; # discard the additional "Previous" job + $data[-1]->{note} = "There are more \"Previous\" jobs but the display limit of $p_limit was exceeded."; } if (($source_count{n} // 0) > $n_limit) { # the query requests `$n_limit + 1` so we know when the limit was reached - push @info, "The number of \"Next\" jobs exceeds the display limit of $n_limit. " - . 'The first job on the table is still the latest.'; - splice @data, 1, 1; # discard the additional "Next" job (preserving the first job as it is always the latest) + $data[1]->{note} = "Jobs have been omitted as the display limit of $n_limit for \"Next\" jobs was exceeded. " + . 'The first job in this table is still the latest.'; } $self->render(json => {info => \@info, data => \@data}); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/t/ui/16-tests_job_next_previous.t new/openQA-5.1769068942.639067ee/t/ui/16-tests_job_next_previous.t --- old/openQA-5.1768996386.e3f58202/t/ui/16-tests_job_next_previous.t 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/t/ui/16-tests_job_next_previous.t 2026-01-22 09:02:22.000000000 +0100 @@ -237,7 +237,7 @@ $driver->get('/tests/99947?previous_limit=10#next_previous'); wait_for_ajax(); ($entries) = $driver->get_text('#job_next_previous_table_info') =~ /of (\d+) (entries|entry)$/; -is($entries, 11, '10 previous of 99947 and itself shown'); +is($entries, 12, '10 previous of 99947, 99947 itself and note about limit shown'); is(scalar @{$driver->find_elements('#job_next_previous_table #job_result_99947')}, 1, 'found current job 99947'); $driver->find_element('[aria-label="Next"]')->click(); is(scalar @{$driver->find_elements('#job_next_previous_table #job_result_99909')}, 1, 'found 10th previous job 99909'); @@ -245,7 +245,7 @@ $driver->get('/tests/99901?next_limit=10#next_previous'); wait_for_ajax(); ($entries) = $driver->get_text('#job_next_previous_table_info') =~ /of (\d+) (entries|entry)$/; -is($entries, 12, '10 next of 99901, itself and the latest shown'); +is($entries, 13, '10 next of 99901, 99901 itself, the latest and the note about the limit shown'); $init_page = $driver->find_element_by_xpath("//*[\@class='dt-paging-button page-item active']")->get_text(); is($init_page, 2, 'init page is 2 for 99901'); is(scalar @{$driver->find_elements('#job_next_previous_table #job_result_99901')}, 1, 'found current job 99901'); @@ -255,7 +255,7 @@ $driver->get('/tests/99908?previous_limit=3&next_limit=2#next_previous'); wait_for_ajax(); ($entries) = $driver->get_text('#job_next_previous_table_info') =~ /of (\d+) (entries|entry)$/; -is($entries, 7, '3 previous and 2 next of 99901, itself and the latest shown'); +is($entries, 9, '3 previous and 2 next of 99901, 99901 itself, the latest and the limit notes shown'); is(scalar @{$driver->find_elements('#job_next_previous_table #job_result_99908')}, 1, 'found current job 99908'); is(scalar @{$driver->find_elements('#job_next_previous_table #job_result_99947')}, 1, 'found the latest job 99947'); @@ -286,32 +286,35 @@ $t->get_ok('/tests/99910/ajax?previous_limit=0&next_limit=6', 'query with exceeding user-specified limit for next') ->status_is(200); my $jobs = $t->tx->res->json->{data}; - is ref $jobs, 'ARRAY', 'data returned (1)' and is scalar @$jobs, 7, 'maximum limit for next is effective'; + is ref $jobs, 'ARRAY', 'data returned (1)' and is scalar @$jobs, 9, 'maximum limit for next is effective'; $t->get_ok('/tests/99910/ajax?previous_limit=6&next_limit=0', 'query with exceeding user-specified limit for previous')->status_is(200); $jobs = $t->tx->res->json->{data}; - is ref $jobs, 'ARRAY', 'data returned (2)' and is scalar @$jobs, 7, 'maximum limit for previous is effective'; + is ref $jobs, 'ARRAY', 'data returned (2)' and is scalar @$jobs, 9, 'maximum limit for previous is effective'; $t->get_ok('/tests/99910/ajax?previous_limit=3&next_limit=0', 'query with low user-specified limit for next') ->status_is(200); $jobs = $t->tx->res->json->{data}; - is ref $jobs, 'ARRAY', 'data returned (3)' and is scalar @$jobs, 5, 'user-specified limit for next is effective'; + is ref $jobs, 'ARRAY', 'data returned (3)' and is scalar @$jobs, 7, 'user-specified limit for next is effective'; $t->get_ok('/tests/99910/ajax?previous_limit=0&next_limit=3', 'query with low user-specified limit for previous') ->status_is(200); $jobs = $t->tx->res->json->{data}; is ref $jobs, 'ARRAY', 'data returned (4)' - and is scalar @$jobs, 5, 'user-specified limit for previous is effective'; + and is scalar @$jobs, 7, 'user-specified limit for previous is effective'; $t->get_ok('/tests/99910/ajax', 'query with (low) default limit for next and previous')->status_is(200); $jobs = $t->tx->res->json->{data}; - is ref $jobs, 'ARRAY', 'data returned (5)' and is scalar @$jobs, 6, 'default limit for next is effective'; + is ref $jobs, 'ARRAY', 'data returned (5)' and is scalar @$jobs, 8, 'default limit for next is effective'; $driver->get('/tests/99910?previous_limit=6&next_limit=0#next_previous'); - my $info = wait_for_element selector => '#job_next_previous_table_wrapper .alert', desc => 'info shown'; - like $info->get_text, qr/previous.*limit.*6.*next.*limit.*0/is, - 'info about next and previous jobs being limited shown'; + my $info = wait_for_element + selector => '#job_next_previous_table tbody tr:nth-child(2)', + desc => 'next limit shown'; + like $info->get_text, qr/omitted.*0.*next/is, 'info about next jobs being limited shown'; + $info = wait_for_element selector => '#job_next_previous_table tbody tr:last-child', desc => 'previous limit shown'; + like $info->get_text, qr/previous.*6.*exceeded/is, 'info about previous jobs being limited shown'; }; kill_driver(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/tools/ci/autoinst.sha new/openQA-5.1769068942.639067ee/tools/ci/autoinst.sha --- old/openQA-5.1768996386.e3f58202/tools/ci/autoinst.sha 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/tools/ci/autoinst.sha 2026-01-22 09:02:22.000000000 +0100 @@ -1 +1 @@ -c43e4abe4b7db76797d524a6fbd8d2bca5a71438 +b85e4864b41e812c63df80ccd7adb4bf0cd4b2f9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1768996386.e3f58202/tools/ci/ci-packages.txt new/openQA-5.1769068942.639067ee/tools/ci/ci-packages.txt --- old/openQA-5.1768996386.e3f58202/tools/ci/ci-packages.txt 2026-01-21 12:53:06.000000000 +0100 +++ new/openQA-5.1769068942.639067ee/tools/ci/ci-packages.txt 2026-01-22 09:02:22.000000000 +0100 @@ -186,7 +186,7 @@ perl-Perl-Critic-Policy-Variables-ProhibitLoopOnHash-0.008 perl-Perl-Critic-Pulp-99 perl-PerlIO-utf8_strict-0.008 -perl-Perl-Tidy-20250912.0.0 +perl-Perl-Tidy-20260109.0.0 perl-Pod-MinimumVersion-50 perl-Pod-POM-2.01 perl-Pod-Spell-1.26 ++++++ openQA.obsinfo ++++++ --- /var/tmp/diff_new_pack.4Uneqj/_old 2026-01-23 17:32:24.480315915 +0100 +++ /var/tmp/diff_new_pack.4Uneqj/_new 2026-01-23 17:32:24.484316080 +0100 @@ -1,5 +1,5 @@ name: openQA -version: 5.1768996386.e3f58202 -mtime: 1768996386 -commit: e3f58202e1fd12a5063a6dfb2cdce7c83bf1956f +version: 5.1769068942.639067ee +mtime: 1769068942 +commit: 639067eeb88a239e7807a67d749980c251ad5f68
