Go to file
Martin Renvoize 3a05b239db
Bug 29016 [25.11.x]: (QA follow-up) Expand action_logs API and test coverage
Build on the new ActionLog DBIC relations to expose them as opt-in
embeds, and shore up gaps in the test coverage that QA flagged.

Swagger
  * paths/action_logs.yaml declares an x-koha-embed header parameter
    constrained to the supported relations (librarian, patron).
  * definitions/action_log.yaml adds the corresponding optional
    `librarian` and `patron` object fields.

Tests
  * Convert the single 24-test subtest into focused subtests:
    - authorization (403 vs 200)
    - simple typed filters
    - q-DSL: multi-value module, info LIKE, combined filter
    - embeds: librarian and patron, with and without x-koha-embed
    - pagination + X-Total-Count and order_by
  * Mock AuthSuccessLog/AuthFailureLog/BorrowersLog to 0 to remove the
    flakiness where the API GET itself appended an AUTH log row between
    delete and assertion.
  * Build the test librarian with both `tools` and `borrowers` flags so
    embedded patron fields are not redacted by Koha::Patron->is_accessible.
  * Use a small build_fixtures() helper to avoid copy-pasting setup
    across subtests.

Test plan:
  1. yarn build && restart_all  (refresh swagger bundle)
  2. prove t/db_dependent/api/v1/action_logs.t  (all subtests green)
  3. curl -H 'x-koha-embed: librarian,patron' \
       /api/v1/action_logs?module=MEMBERS  -- patron and librarian
       objects appear in the response.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jacob O'Mara <Jacob.omara@openfifth.co.uk>
2026-05-24 13:42:26 +01:00
.github/workflows Bug 40027: Use GitHub workflow to automatically close PRs opened on the Koha repo there 2025-10-06 09:15:26 -06:00
C4 Bug 41690: Add MARC21 245 (subtitle) to Cite option 2026-05-24 13:42:25 +01:00
Koha Bug 29016 [25.11.x]: (QA follow-up) Add librarian/patron relations to ActionLog 2026-05-24 13:42:26 +01:00
acqui Bug 41454: Remove unused dbh calls 2026-05-24 13:42:17 +01:00
admin Bug 41882: Enforce pickup location rules 2026-05-24 13:42:23 +01:00
api Bug 29016 [25.11.x]: (QA follow-up) Expand action_logs API and test coverage 2026-05-24 13:42:26 +01:00
authorities Bug 21453: Copy data to the correct subfields when linking authorities with authorities 2026-05-24 13:42:20 +01:00
basket Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
bin Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
bookings Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
catalogue Bug 42107: Add search scores to staff results page 2026-05-24 13:42:18 +01:00
cataloguing Bug 42221: Fix EAN-13 autoBarcode not incrementing 2026-05-24 13:42:19 +01:00
circ Bug 41343: Further improvements 2026-05-24 13:42:25 +01:00
clubs Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
course_reserves Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
debian Bug 41353: koha-dump failing on mysqldump PROCESS privileges 2026-05-24 13:42:20 +01:00
docs Bug 41319: Automate sponsor tracking from git trailers 2026-04-13 10:03:49 +01:00
erm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
errors Bug 28146: Respect ReplytoDefault in error pages 2025-10-09 14:58:41 -06:00
etc Bug 41795: (follow-up) add a phrase Zebra index for 'authtype' 2026-05-24 13:42:24 +01:00
ill Bug 41076: [25.11.x] Adjust perl tidiness for v20250105 2026-03-16 13:23:08 +00:00
installer DBRev 25.11.04.011 2026-05-24 13:42:25 +01:00
koha-tmpl Bug 29016 [25.11.x]: Move strings from js file to tt file 2026-05-24 13:42:26 +01:00
labels Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
lib Bug 41521: Silent perlcritic warnings 2026-05-24 13:42:12 +01:00
members Bug 41761: Do not update accountlines.date when editing a note 2026-04-13 08:47:22 +01:00
misc Bug 41062: Add an option to erm_run_harvester.pl to specify provider IDs 2026-05-24 13:42:20 +01:00
offline_circ Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
opac Bug 41454: Remove unused dbh calls 2026-05-24 13:42:17 +01:00
patron_lists Bug 32176: Remove duplicated code to select patron from autocomplete 2025-10-31 15:26:25 -06:00
patroncards Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
plugins Bug 25952: Skip invalid repositories when searching for plugins 2025-11-21 08:41:52 -07:00
pos Bug 37671: (QA follow-up) Tidy printreceipt.pl 2026-05-24 13:42:21 +01:00
preservation Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
recalls Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
reports Bug 38414: (follow-up) Fix OR operator 2026-05-24 13:42:24 +01:00
reserve Bug 23269: (follow-up) Cleanup code 2026-05-24 13:42:11 +01:00
reviews Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
rotating_collections Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
serials Bug 41846: Fix nl2br to happen after html escaping 2026-05-24 13:42:25 +01:00
services Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
sip2 Bug 37893: Fix http links 2025-11-18 11:21:20 -07:00
skel
…
suggestion Bug 42071: Add 'show' to options that load a single suggestion 2026-04-13 14:04:54 +01:00
svc Bug 41518: Only show autorenewal text if autorenewal allowed 2026-04-13 09:21:30 +01:00
t Bug 29016 [25.11.x]: (QA follow-up) Expand action_logs API and test coverage 2026-05-24 13:42:26 +01:00
tags Bug 42254: (QA follow-up) Remove unused var, fixing a FIXME 2026-04-22 17:00:44 +01:00
tools Bug 29016 [25.11.x]: Convert log viewer to ajax datatable 2026-05-24 13:42:26 +01:00
virtualshelves Bug 40916: Fix another occurance 2025-10-06 09:15:22 -06:00
xt Bug 41216: Adjust POD 2026-05-24 13:42:17 +01:00
.codespell-ignore Bug 40950: Add 'falsy' programming idiom to codespell dictionary 2025-10-06 09:15:23 -06:00
.editorconfig
…
.git-blame-ignore-revs Bug 39096: Add 'tidy all' commits to a git blame ignore file 2025-02-17 13:10:25 +01:00
.gitignore Bug 40838: Add generated bookings CSS assets to gitignore 2025-09-19 08:42:47 -06:00
.htaccess
…
.mailmap Bug 40041: (follow-up) Fix periods and add Robert Fox 2025-12-05 09:29:04 -07:00
.nvmrc Bug 42353: Store the node version in .nvmrc 2026-04-14 17:48:20 +01:00
.perlcriticrc
…
.perltidyrc Bug 30002: Adjust perltidy 2023-06-08 08:32:42 -03:00
.prettierrc.js Bug 38664: Treat .vue files like other JS files 2025-02-11 14:58:25 +01:00
.proverc.dist
…
.stylelintrc.json Bug 31528: (follow-up) A few additional rules 2022-10-03 08:23:15 -03:00
INSTALL
…
Koha.pm DBRev 25.11.04.011 2026-05-24 13:42:25 +01:00
LICENSE Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MANIFEST.SKIP
…
Makefile.PL Bug 41076: [25.11.x] Adjust perl tidiness for v20250105 2026-03-16 13:23:08 +00:00
README
…
README.md Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
README.robots
…
SECURITY.md Bug 40527: Initial draft of SECURITY.md 2025-10-09 14:58:41 -06:00
about.pl Bug 41319: Automate sponsor tracking from git trailers 2026-04-13 10:03:49 +01:00
app.psgi Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
build-resources.PL Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
changelanguage.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
cpanfile Bug 41521: Remove deps from cpanfile 2026-05-24 13:42:12 +01:00
cypress.config.ts Bug 41362: Allow Cypress tests to use KOHA_USER and KOHA_PASS as override 2026-02-03 11:59:44 +00:00
eslint.config.mjs Bug 38524: Enable ESLint for .ts and .vue files 2025-01-16 15:56:17 +01:00
fix-perl-path.PL Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
gulpfile.js Bug 42356: Silence Sass if-function deprecation warning 2026-05-24 13:42:20 +01:00
help.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
kohaversion.pl Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
mainpage.pl Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
package.json Bug 41587: (follow-up) Fix js-yaml version conflict with resolutions override 2026-04-14 10:43:13 +01:00
rewrite-config.PL Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
rspack.config.js Bug 41587: (follow-up) Clean Cypress plugin dist on rebuild to prevent stale sourcemaps 2026-05-24 13:42:10 +01:00
tsconfig.json Bug 32030: Move cypress to t - fix build_js/watch_js 2022-11-08 09:44:52 -03:00
yarn.lock Bug 41587: (follow-up) Fix js-yaml version conflict with resolutions override 2026-04-14 10:43:13 +01:00

README.md

Koha is a free software integrated library system (ILS).

Koha is distributed under the GNU GPL version 3 or later.

Note: Koha does not accept pull requests from git hosting sites.

Note: This project has its own bug tracker, to report a bug or submit a patch visit https://bugs.koha-community.org.

For guidelines on submitting patches for Koha please visit https://wiki.koha-community.org/wiki/SubmitingAPatch

The developers handbook can be found at https://wiki.koha-community.org/wiki/Developer_handbook

https://koha-community.org/

Koha Logo