Test plan 1. KOHA_IMAGE=main-bookworm ktd up 2. prove t/db_dependent/Budgets.t 3. pass 4. KOHA_IMAGE=main-trixie ktd up 5. prove t/db_dependent/Budgets.t # Failed test 'no warnings' # at /usr/share/perl/5.40/Test/Builder.pm line 193. # There were 30 warning(s) # Previous test 65 'total ordered price is 20' # Use of uninitialized value $row[0] in hash element at /usr/lib/x86_64-linux-gnu/perl5/5.40/DBI.pm line 2122. # at /usr/lib/x86_64-linux-gnu/perl5/5.40/DBI.pm line 2122. # DBD::_::st::fetchall_hashref(DBI::st=HASH(0x557454dac660), "budget_id") called at /usr/lib/x86_64-linux-gnu/perl5/5.40/DBD/mysql.pm line 866 # DBD::mysql::st::__ANON__(DBI::st=HASH(0x557454dac660), "budget_id") called at /usr/lib/x86_64-linux-gnu/perl5/5.40/DBI.pm line 1684 # DBD::_::db::selectall_hashref(DBI::db=HASH(0x557454733ab0), "\x{a} SELECT shipmentcost_budgetid as budget_id,\x{a} "..., "budget_id") called at /kohadevbox/koha/C4/Budgets.pm line 750 # C4::Budgets::GetBudgetHierarchy(36) called at /kohadevbox/koha/C4/Budgets.pm line 1442 # C4::Budgets::CloneBudgetPeriod(HASH(0x557454dc9ca0)) called at t/db_dependent/Budgets.t line 598 # etc Maybe you need to apply bug 40680 if there are other warnings interfering. Or just ignore them and focus on the "Use of uninitialized value" ones. Severity = major because it makes the CI fail and hides issues even if not as much as Bug 40680. Maybe critical, I don't know.
Created attachment 187719 [details] [review] Bug 40978: Remove warnings from Budgets.t If no shipment_budget is set then undef is set as key of the hashref which generates a warning: Use of uninitialized value $row[0] in hash element at /usr/lib/x86_64-linux-gnu/perl5/5.40/DBI.pm line 2122. Later we only access the hashref by budget_id, so this change seems safe.