Bug 41329

Summary: yarn install generates 2 warnings regarding datatables-.net-vue3
Product: Koha Reporter: Jonathan Druart <jonathan.druart>
Component: Architecture, internals, and plumbingAssignee: Jonathan Druart <jonathan.druart>
Status: Needs Signoff --- QA Contact: Testopia <testopia>
Severity: major    
Priority: P5 - low CC: lucas, matt.blenkinsop, paul.derscheid, tomascohen
Version: unspecified   
Hardware: All   
OS: All   
GIT URL: Initiative type: ---
Sponsorship status: --- Comma delimited list of Sponsors:
Crowdfunding goal: 0 Patch complexity: ---
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:
Bug Depends on: 38426    
Bug Blocks:    
Attachments: Bug 41329: Add datatables.net@^1.13.1 jquery@^3.6.0

Description Jonathan Druart 2025-11-28 09:06:31 UTC
warning " > datatables.net-vue3@2.1.3" has unmet peer dependency "datatables.net@^1.13.1".                                                                                                                           
warning " > datatables.net-vue3@2.1.3" has unmet peer dependency "jquery@^3.6.0".    

How is that bad?
Comment 1 Jonathan Druart 2025-11-28 09:08:51 UTC
Created attachment 190012 [details] [review]
Bug 41329: Add datatables.net@^1.13.1 jquery@^3.6.0

warning " > datatables.net-vue3@2.1.3" has unmet peer dependency "datatables.net@^1.13.1".
warning " > datatables.net-vue3@2.1.3" has unmet peer dependency "jquery@^3.6.0".

Test plan:
yarn build should not show those 2 warnings after this patch is applied

@RM: You will need to push yarn.lock as well
Comment 2 Paul Derscheid 2025-11-28 10:00:04 UTC
So this is not directly a problem since datatables and jquery are available as globals in compatible versions.

On resolution, yarn just can't find them because they are not in package.json and not installed via that route yet.

The patch would add them, but we would still continue using the static version in koha-tmpl/{intranet,opac}-tmpl/lib/.

To make at least the datatables.net-vue use them, we would need to remove datatables.net and jquery from the externals field in rspack.config.js, but then they would get bundled inside the vue assets and that would essentially be duplication because they are already available as globals.

The better solution would be to either copy the version from node_modules to the static lib dirs at build time or to make Asset.pm scan node_modules.

Since we are essentially tracking the versions we use in package.json via this patch, just not copying it yet, it could still be a valid way to silence the warnings, but more work is needed here.