Currently, the Koha::Item->safe_to_delete method checks (among other things) if there are existing waiting or in-transit holds. It seems that 'In processing' should block item deletion as well. I'm not familiar with SIP or how the 'P' flag is removed later in the process, but this feels wrong on its own.
Created attachment 144839 [details] [review] Bug 32529: Add Koha::Holds->filter_by_found This patch adds a method for filtering Koha::Holds resultsets by the status belonging to Koha's concept of 'found'. To test: 1. Apply this patch 2. Run: $ kshell k$ prove t/db_dependent/Koha/Holds.t => SUCCESS: Tests pass! 3. Sign off :-D
Created attachment 144840 [details] [review] Bug 32529: Regression tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 144841 [details] [review] Bug 32529: Make Koha::Item->safe_to_delete consider 'P' holds as found Currently, the Koha::Item->safe_to_delete method checks (among other things) if there are existing waiting or in-transit holds. It seems that 'In processing' should block item deletion as well. This patch implements that. To test: 1. Apply up to the regression tests 2. Run: $ kshell k$ prove t/db_dependent/Koha/Item.t => FAIL: Boo! Tests fail! 3. Apply this patch 4. Repeat 2 => SUCCESS: Tests pass! 5. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 144848 [details] [review] Bug 32529: Add Koha::Holds->filter_by_found This patch adds a method for filtering Koha::Holds resultsets by the status belonging to Koha's concept of 'found'. To test: 1. Apply this patch 2. Run: $ kshell k$ prove t/db_dependent/Koha/Holds.t => SUCCESS: Tests pass! 3. Sign off :-D Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Created attachment 144849 [details] [review] Bug 32529: Regression tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Created attachment 144850 [details] [review] Bug 32529: Make Koha::Item->safe_to_delete consider 'P' holds as found Currently, the Koha::Item->safe_to_delete method checks (among other things) if there are existing waiting or in-transit holds. It seems that 'In processing' should block item deletion as well. This patch implements that. To test: 1. Apply up to the regression tests 2. Run: $ kshell k$ prove t/db_dependent/Koha/Item.t => FAIL: Boo! Tests fail! 3. Apply this patch 4. Repeat 2 => SUCCESS: Tests pass! 5. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Created attachment 144874 [details] [review] Bug 32529: Add Koha::Holds->filter_by_found This patch adds a method for filtering Koha::Holds resultsets by the status belonging to Koha's concept of 'found'. To test: 1. Apply this patch 2. Run: $ kshell k$ prove t/db_dependent/Koha/Holds.t => SUCCESS: Tests pass! 3. Sign off :-D Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 144875 [details] [review] Bug 32529: Regression tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 144876 [details] [review] Bug 32529: Make Koha::Item->safe_to_delete consider 'P' holds as found Currently, the Koha::Item->safe_to_delete method checks (among other things) if there are existing waiting or in-transit holds. It seems that 'In processing' should block item deletion as well. This patch implements that. To test: 1. Apply up to the regression tests 2. Run: $ kshell k$ prove t/db_dependent/Koha/Item.t => FAIL: Boo! Tests fail! 3. Apply this patch 4. Repeat 2 => SUCCESS: Tests pass! 5. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Pushed to master for 23.05. Nice work everyone, thanks!
Nice work, thanks everyone! Pushed to 22.11.x for the next release.
Does not apply cleanly to 22.05.x, no backport. If needed please rebase