Koha 25.11

La version d'automne de Koha est une version majeure : 3 nouvelles fonctionnalités, 224 améliorations et 433 corrections de bugs. Les réservations sont particulièrement à l'honneur, avec la réservation d'un exemplaire parmi un groupe de titres, la modification par lot et le regroupement des réservations existantes. La configuration de SIP2 et des transferts de fichiers (FTP/SFTP) se fait désormais dans l'interface professionnelle.
Réservations
Réservation du premier exemplaire disponible parmi un groupe de titres 🆕
Un adhérent peut désormais réserver le premier exemplaire disponible parmi un
groupe de titres, depuis l'interface professionnelle ou depuis l'OPAC. La
fonctionnalité est activée par la préférence système DisplayAddHoldGroups.
Le fonctionnement des groupes de réservations a été revu. Auparavant, seules les réservations en attente déclenchaient les actions de groupe, en annulant les autres réservations du groupe. Désormais, dès qu'une réservation d'un groupe passe en transit ou en attente, elle devient la réservation cible du groupe. Les retours suivants ignorent les autres réservations du groupe, sauf si la cible est annulée, auquel cas une nouvelle cible est désignée. Ce comportement s'applique aux retours, aux réservations à mettre de côté et à la file des réservations.
Les groupes de réservations ne pouvaient être créés qu'au moment de réserver. Le
personnel peut maintenant regrouper des réservations existantes d'un
adhérent : dans l'onglet Réservations de sa fiche lecteur, on sélectionne au
moins deux réservations et on clique sur Regrouper la sélection. Les groupes
sont numérotés simplement (1, 2, 3…) et un clic sur le numéro permet d'afficher
ou de gérer le groupe. Un groupe qui ne contient plus qu'une réservation est
supprimé automatiquement. Les réservations déjà trouvées (en attente de retrait)
ne peuvent pas être regroupées. Il est aussi possible de sélectionner toutes les
réservations d'un groupe et de dégrouper des réservations. Un nouveau point
d'accès de l'API REST, /api/v1/patrons/{patron_id}/hold_groups, permet de
lister et de créer des groupes de réservations.
Modification des réservations par lot 🆕
Il arrive qu'une bibliothèque doive modifier de nombreuses réservations à la fois, par exemple prolonger leur date d'expiration après une fermeture. Un nouvel outil, Modification des réservations par lot, le permet. Il se trouve dans Outils, section Adhérents et circulation.
On commence par rechercher les réservations à modifier, selon plusieurs critères combinables :
- intervalle de dates d'expiration,
- sites de retrait,
- statut de la réservation : sans statut, en transit, en traitement, en attente,
- réservation suspendue ou non et intervalle de dates de fin de suspension,
- texte de la note de réservation.
Les réservations trouvées sont affichées dans un tableau, où l'on sélectionne celles à modifier, ou toutes. On peut alors, en une seule opération :
- fixer une nouvelle date d'expiration,
- changer le site de retrait,
- suspendre ou réactiver les réservations, avec une date de fin de suspension,
- remplacer la note de réservation, ou l'effacer.
Une réservation déjà trouvée (en transit, en traitement ou en attente) ne peut pas être suspendue : l'outil le signale avant d'enregistrer. Un rapport final liste les réservations modifiées et celles dont la modification a échoué.
Quand les critères de recherche ne suffisent pas, on peut partir d'un rapport
SQL : si le résultat d'un rapport contient une colonne reserve_id, le menu
Traitements par lot du rapport propose Modification des réservations
par lot, qui ouvre l'outil avec ces réservations. Par exemple :
SELECT reserve_id FROM reserves WHERE branchcode = 'CPL' AND found IS NULL
L'outil nécessite la nouvelle permission batch_modify_holds (Outils),
ainsi que la permission de placer des réservations pour les adhérents
(place_holds).
Plus
-
Déplacement d'une réservation — Le personnel peut déplacer une réservation de niveau exemplaire vers un autre exemplaire et une réservation de niveau notice vers une autre notice. Sur la page des réservations d'une notice, le bouton Déplacer les réservations sélectionnées ouvre une fenêtre où l'on choisit la nouvelle cible. Il faut disposer de la nouvelle permission
alter_hold_target. -
Sélection de plusieurs réservations — Le tableau des réservations des pages Détails et Prêt de l'adhérent a maintenant une colonne de cases à cocher. On sélectionne les réservations, puis on clique sur Annuler les réservations sélectionnées ou on suspend la sélection. Auparavant, on ne pouvait suspendre qu'une réservation, ou toutes. Les annulations par lot sont traitées en tâche de fond, par le nouveau point d'accès de l'API REST
/api/v1/holds/cancellation_bulk. On évite ainsi les dépassements de délai sur les fiches lecteur comportant beaucoup de réservations. Remarque : la page peut ne pas se rafraîchir immédiatement après une annulation ; la tâche de fond est visible dans Administration › Tâches. -
File des réservations — On peut sélectionner plusieurs collections ou plusieurs localisations pour générer la file des réservations. Le lien vers la file des réservations, sur la page d'accueil de la circulation, pointe par défaut sur le site de connexion.
-
Historique des réservations — Une colonne Note de réservation est ajoutée au tableau de l'historique des réservations de l'adhérent.
Réservations programmées
-
Activation — Le module de réservations programmées peut maintenant être désactivé avec la nouvelle préférence système
EnableBooking. -
Transformation en prêt — Une réservation programmée peut être transformée en prêt. Un nouveau champ
booking_idde la tableissueslie les prêts aux réservations programmées qu'ils ont satisfaites. -
Types de document — Les options de réservation programmée sont affichées dans la page d'administration des types de document.
Circulation
-
Journalisation des forçages — Quand le personnel passait outre une restriction lors d'un prêt, d'un renouvellement ou d'un retour, rien ne permettait de le retrouver. Chaque forçage est désormais inscrit dans le journal des actions, avec les codes de confirmation (
DEBT,AGE_RESTRICTION,ON_RESERVE, etc.) au format JSON. Le visualiseur des journaux en affiche une description lisible, par exemple « Forçage de la limite de renouvellements ». Sont suivis les forçages de restrictions d'adhérent, de limites d'âge, de limites de prêts, de conflits de réservation, d'amendes, etc. -
Déjà emprunté ? par type de document — La vérification des emprunts antérieurs d'un même titre (préférence
CheckPrevCheckout) peut maintenant être réglée par type de document et plus seulement par catégorie d'adhérent. Il faut que la préférence vaille « Sauf exception par catégorie d'adhérent ou par type de document… ». -
Retrait des exemplaires prêtés — La nouvelle préférence système
PreventWithdrawingItemsStatusempêche de marquer comme retiré un exemplaire en prêt ou en transit. -
Retour d'un exemplaire perdu — Au retour d'un exemplaire perdu, le message affiche la description de la valeur autorisée
LOSTau lieu d'un message générique. Par exemple : « L'exemplaire était Manquant, il est retrouvé. ». -
Coordonnées des adhérents — La fenêtre de réservation trouvée, au retour, affiche le numéro de téléphone d'alerte SMS de l'adhérent. La page des transferts à recevoir affiche le numéro de carte de l'adhérent pour qui l'exemplaire est réservé. Le rapport des retards a des classes CSS (
overdue_email,overdue_phone) qui facilitent sa personnalisation.
Administration
Configuration de SIP2 dans l'interface professionnelle 🆕
Un nouveau module SIP2 permet au personnel disposant de la nouvelle permission
sip2 de gérer directement dans l'interface professionnelle les institutions
SIP2, les comptes et les surcharges de préférences système. Lors de la mise à
jour vers la 25.11, les réglages correspondants du fichier SIPConfig.xml sont
automatiquement migrés dans la base de données. Le serveur SIP prend en compte
les modifications immédiatement, sans redémarrage. Plus besoin d'accéder au
serveur pour modifier des fichiers XML. Les paramètres du serveur et les
écouteurs (listeners) restent configurés dans SIPConfig.xml.
Transferts de fichiers
Une nouvelle page, Administration › Transferts de fichiers, centralise la
configuration des connexions aux serveurs FTP et SFTP : hôte, port,
identifiants, répertoires de dépôt et de téléchargement, clé privée SSH, etc.
Les mots de passe et les clés sont chiffrés dans la base de données. Koha teste
la connexion à l'enregistrement et vérifie les droits de lecture et d'écriture
sur les répertoires. Une même configuration peut servir à plusieurs
fonctionnalités : si un mot de passe change, une seule configuration est à
mettre à jour. L'accès à cette page est contrôlé par la nouvelle permission
manage_file_transports.
Les comptes EDI utilisent désormais ces transferts de fichiers au lieu de
stocker leurs propres paramètres de connexion. Lors de la mise à jour, les
configurations EDI existantes sont converties automatiquement. Le script
export_records.pl peut aussi déposer ses exports par FTP.
Plus
-
Grilles de catalogage — La page des grilles de catalogage bibliographiques a un lien direct vers la grille par défaut. Chaque grille a un bouton Voir la zone des exemplaires (995 en UNIMARC, 952 en MARC21).
-
Correspondances Koha › MARC — Le message d'information de la page indique qu'il faut lancer
batchRebuildItemsTables.plsi les changements concernent la tableitems. -
Comptes EDI — Le tableau des comptes EDI peut être trié, filtré, exporté et ses colonnes configurées.
-
Règles de circulation — Un clic sur une règle de circulation la met en évidence dans le tableau.
Catalogage
Personnalisation de l'affichage des notices
Pour afficher une zone MARC que les feuilles de style XSLT de Koha ignorent, il fallait jusqu'ici modifier ces feuilles XSLT. On peut désormais compléter l'affichage des notices bibliographiques sans toucher aux XSLT, au moyen d'un nouveau type de contenu additionnel : Outils › Outils supplémentaires › Personnalisation de l'affichage de la notice.
Chaque personnalisation est affectée à un emplacement d'affichage :
StaffResultsPageetStaffDetailPage— pages de résultats de recherche et de détail de l'interface professionnelle,OPACResultsPageetOPACDetailPage— pages de résultats de recherche et de détail de l'OPAC,StaffListPageetOPACListPage— contenu des listes, dans l'interface professionnelle et à l'OPAC.
Comme les autres contenus additionnels, une personnalisation peut être limitée à un site et avoir une version par langue de l'interface : un libellé peut ainsi être traduit.
Le contenu est écrit en Template Toolkit et mis en forme en HTML. Il a accès à
la notice MARC complète, au moyen de la variable record. Le résultat est
ajouté à la suite de l'affichage produit par la feuille XSLT. Par exemple, pour
afficher la note sur les détails techniques (538$a, MARC21) :
[% IF record.subfield('538', 'a') %]
<span class="results_summary note_technique">
<span class="label">Détails techniques : </span>
[% FOREACH f IN record.field('538') %]
[% f.subfield('a') %]
[% END %]
</span>
[% END %]
Pour des raisons de sécurité, le HTML produit est filtré : seules les balises
de mise en forme courantes sont conservées (div, span, p, titres, listes,
tableaux, liens, images, etc.), avec leurs attributs class et id, ce qui
permet de les mettre en forme en CSS. Le JavaScript est supprimé. L'éditeur
WYSIWYG est désactivé pour ce type de contenu.
Plus
-
Validation de l'ISBN — Un nouveau plugin de catalogage,
validate_isbn.pl, vérifie la validité de l'ISBN. Si l'ISBN saisi n'est pas valide, une fenêtre le signale ; on peut passer outre (le champ est alors surligné en jaune) et enregistrer quand même la notice. Pour les nouvelles installations, le plugin est lié par défaut au 010$a (UNIMARC) ou au 020$a (MARC21). Pour les installations existantes, mettez à jour vos grilles manuellement. -
Recherche Z39.50 — Les préférences système
AdditionalFieldsInZ3950ResultSearchetAdditionalFieldsInZ3950ResultAuthSearchacceptent maintenant le label (000), une zone de contrôle complète (008), une position précise (000p1,008p2) ou un intervalle de positions (000p6-7,008p35-37). Dans l'éditeur de catalogage avancé, la recherche est clairement libellée Recherche Z39.50/SRU et propose la recherche par mot-clé. -
Notices filles — La zone 773 (MARC21) d'une notice fille est remplie de façon plus complète lors de sa création.
-
Navigation dans les cotes — Le plugin de navigation dans les cotes (
cn_browser.pl) affiche la localisation des exemplaires. -
Zones de contrôle MARC21 — L'éditeur de base signale à l'ouverture une zone de contrôle (005 à 008) qui n'a pas la bonne longueur.
-
Termes de relation MARC21 — La liste de valeurs autorisées
RELTERMSintègre les notes techniques MARC21 de 2025 : ajout dewaw,wfw,inketpnc, suppression deaui. Seules les nouvelles installations sont concernées : mettez à jour la liste manuellement sur les installations existantes. -
Suppression d'exemplaires en ligne de commande — Le script
delete_items.plpeut supprimer la notice quand l'exemplaire supprimé est le dernier qui y est rattaché. Attention : l'option--wherene doit plus nommer la tableitems. Écrivez--where "withdrawn = 0"et non plus--where "items.withdrawn = 0". -
Lot d'import — Un avertissement est affiché avant la suppression d'un lot d'import.
Acquisitions
-
Recherche de doublons — Lors d'une commande à partir d'une notice vide, Koha recherche les notices existantes en double. Si un doublon est trouvé, on peut utiliser la notice existante, créer quand même une nouvelle notice ou revenir au panier, comme lors des imports et du catalogage.
-
Prix UNIMARC — Lors de l'ajout à un panier depuis un nouveau fichier, le prix est aussi extrait du 071$d, en plus des 010$d et 345$d.
-
Lien entre commandes et suggestions — Une commande (dans un panier non clos, ou une commande permanente) peut être liée manuellement à une suggestion acceptée.
-
Export des paniers — Tout panier peut être exporté en CSV, même s'il est clos ou rattaché à un groupe. Un export ODS est ajouté.
-
EDIFACT — Un compte EDI peut utiliser le numéro de bon de commande des devis EDIFACT (segment RFF+ON) comme nom de panier, au lieu du nom du fichier. Les paniers sont ainsi plus faciles à retrouver et à rapprocher avec les fournisseurs. La page d'une facture et celle d'un panier affichent les messages EDIFACT dont ils proviennent (INVOICE, QUOTE, ORDER), avec les éventuelles erreurs de traitement et le message brut.
-
Fournisseurs — Le menu de gauche de la fiche d'un fournisseur a deux nouvelles entrées, Contrats et Licences. Elles ouvrent le module ERM sur la liste des contrats ou des licences rattachés à ce fournisseur.
OPAC
-
Tri des listes — Les listes publiques ou privées peuvent être triées par nom ou par date de modification.
-
Listes privées — La page de détail d'une notice affiche des liens vers les listes privées de l'adhérent qui contiennent la notice. Auparavant, seules les listes publiques étaient affichées.
-
Carte de bibliothèque — Dans le compte de l'adhérent, l'onglet Ma carte virtuelle a été déplacé et renommé Carte de bibliothèque. La carte affiche le numéro de carte et la date d'expiration de l'adhérent.
-
Suggestion d'achat et PEB depuis les résultats — En bas de la page de résultats de recherche, les liens « Vous ne trouvez pas ce que vous cherchez ? », pour faire une suggestion d'achat ou une demande de PEB, sont désormais affichés à tous, même aux visiteurs non connectés. Il suffit que la préférence système
suggestionouILLModulesoit activée. Si le visiteur n'est pas connecté, la connexion lui est demandée au moment de faire la suggestion, sauf siAnonSuggestionsautorise les suggestions anonymes. -
Accessibilité — Plusieurs améliorations : balises sémantiques HTML5 (
<header>,<main>), alternative textuelle pour la notation par étoiles, contrastes de couleurs suffisants, libellés et en-têtes de colonnes manquants.
Adhérents
-
Prénom d'usage — La nouvelle préférence système
ShowPatronFirstnameIfDifferentThanPreferrednameaffiche, dans les résultats de recherche d'adhérents, le prénom officiel à côté du prénom d'usage quand ils diffèrent. -
Dernière visite — La date de dernière visite (
borrowers.lastseen) est affichée dans la fiche lecteur de l'adhérent. -
Messages — Les messages du compte d'un adhérent sont regroupés et étiquetés selon qu'il s'agit de notes internes ou de messages OPAC.
-
Compteurs des onglets — Les compteurs des onglets Prêt et Détails ont un style homogène. Le compteur des réclamations passe à l'orange quand le seuil
ClaimReturnedWarningThresholdest atteint, celui des restrictions est rouge. -
Changement de catégorie — La date d'expiration est mise à jour lors d'un changement de catégorie d'adhérent.
-
Fusion — Les fusions d'adhérents sont journalisées (si
BorrowersLogest activée). -
Cartes d'adhérent — La date d'expiration peut être ajoutée à la mise en page des cartes d'adhérent.
-
Listes d'un adhérent supprimé — Quand on supprime un adhérent, ses listes privées non partagées sont toujours supprimées. Pour ses listes publiques et ses listes privées partagées avec d'autres adhérents, la préférence système
ListOwnershipUponPatronDeletionoffrait deux choix : les supprimer toutes, ou les transférer toutes à un nouveau propriétaire. Une troisième option permet de les traiter différemment : les listes publiques sont transférées, les listes partagées sont supprimées. Le nouveau propriétaire est l'adhérent dont le numéro est indiqué dans la préférenceListOwnerDesignatedou, à défaut, le membre du personnel qui supprime l'adhérent.
Authentification
-
Double authentification — Un superbibliothécaire peut réinitialiser la double authentification (2FA) d'un membre du personnel qui n'a plus accès à son application d'authentification : fiche lecteur › Plus › Gérer la double authentification. Le script
misc/admin/reset_2fa.plfait la même chose en ligne de commande. -
Création automatique des comptes (SSO) — Koha permet de se connecter au moyen d'un fournisseur d'identité externe OAuth2/OIDC (Google, Microsoft, Keycloak, etc.) : c'est l'authentification unique (SSO). Quand une personne se connecte ainsi sans avoir encore de compte dans Koha, ce compte peut être créé automatiquement à partir des informations transmises par le fournisseur d'identité, avec le site et la catégorie d'adhérent par défaut. Ce réglage se fait par domaine de messagerie, dans Administration › Fournisseurs d'identité › Domaines. Jusqu'ici, cette création automatique ne fonctionnait qu'à l'OPAC. Elle se règle désormais séparément pour l'OPAC et pour l'interface professionnelle.
-
Retour à la page de départ (SSO) — Après une connexion par SSO, l'utilisateur revient sur la page d'où il s'est connecté (résultats de recherche, notice qu'il voulait réserver, etc.), au lieu d'arriver sur la page d'accueil.
PEB
-
Statistiques et pseudonymisation — Deux nouveaux types de statistiques : demande de PEB créée et demande de PEB terminée. Si la pseudonymisation est activée, des transactions pseudonymisées en sont tirées. Attention : la table
pseudonymized_borrower_attributesest renomméepseudonymized_metadata_values. Mettez à jour les rapports qui l'utilisent. -
Alias de statut — Au moment de terminer une demande, on peut choisir un alias de statut, si la catégorie de valeurs autorisées
ILL_STATUS_ALIASest renseignée. -
Droit d'auteur — La confirmation du respect du droit d'auteur par l'adhérent est enregistrée et affichée sur la page de la demande.
-
Formulaire de l'OPAC — Les champs obligatoires sont vérifiés dans le navigateur avant l'envoi du formulaire.
-
Formulaire Standard — Seuls les sites qui sont des lieux de retrait sont proposés. L'éditeur est demandé pour les articles de revue. La page de gestion d'une demande affiche l'URL d'accès.
ERM - Gestion des ressources électroniques
-
COUNTER 5.1 — Le module ERM prend en charge la version 5.1 du Code of Practice COUNTER, en vigueur depuis 2025.
-
Import KBART — L'outil d'import KBART accepte les fichiers
.txtet détecte s'il s'agit de CSV ou de TSV. -
Fournisseurs de données — Des boutons Lancer et Tester sont ajoutés à la barre d'outils des fournisseurs de données.
Périodiques
-
Date de publication — La nouvelle préférence système
DisplayPublishedDatedétermine si la date de publication est affichée, entre parenthèses, après la numérotation dans les tableaux des exemplaires. -
Exemplaires et numéros — Lors de la suppression ou de la modification d'exemplaires, une option permet de supprimer ou de modifier les numéros de périodique liés.
-
Réclamations — Dans Périodiques › Réclamations, le tableau des numéros manquants ou en retard d'un fournisseur bénéficie des fonctionnalités DataTables standard, comme les autres tableaux de Koha : choix des colonnes affichées, export et réglage par défaut dans Administration › Paramétrage des tableaux › Périodiques › Réclamations (colonnes masquées, ordre de tri par défaut). Les filtres par colonne sont placés en haut du tableau et non plus en bas.
Recherche
-
Tri des facettes — Les facettes sont triées selon une locale configurable (nouvelle préférence système
FacetSortingLocale) et non plus selon l'ordre des octets. Les lettres accentuées sont ainsi bien classées. -
Filtre par site — Avec la nouvelle préférence système
FilterSearchResultsByLoggedInBranch, le personnel peut filtrer les résultats de recherche de l'interface professionnelle sur le site de connexion. -
Recherche d'exemplaires — Les résultats ont une colonne date d'acquisition (
dateaccessioned). Les sélections persistantes et les traitements par lot peuvent être désactivés. -
Elasticsearch — Les préférences système Elasticsearch ont des noms harmonisés. Une nouvelle entrée de
koha-conf.xmlfixe la taille des lots traités parkoha-es-indexer, utile aux gros sites. Les scriptskoha-elasticsearchetcompare_es_to_db.plont de nouvelles options (--where,--biblios,--authorities).
Notifications
-
Template Toolkit — Les notifications par défaut de rappel (
RETURN_RECALLED_ITEM,PICKUP_RECALLED_ITEM,RECALL_REQUESTER_DET),TRANSFERSLIP,HOLDPLACEDetHOLD_CHANGEDsont converties en Template Toolkit. Les notifications existantes ne changent pas, mais la nouvelle version peut être consultée avec le bouton « Voir la version par défaut ». -
Notification ODUE — Elle ne contient plus la phrase sur l'interdiction d'utiliser sa carte au-delà de 30 jours de retard, qui dépend des règles de chaque bibliothèque. Les installations existantes ne sont pas modifiées.
-
JSON dans les modèles — Certaines données de Koha sont stockées au format JSON, par exemple le détail des tâches de fond (colonne
background_jobs.data). Pour les exploiter dans une notification ou dans un modèle de rapport, certaines bibliothèques écrivaient du Perl dans leurs modèles. Depuis que le Perl y est interdit, pour des raisons de sécurité, ce n'est plus possible. Le plugin Template ToolkitJSON, désormais livré avec Koha, prend le relais : il permet de décoder une chaîne JSON pour en lire les éléments, ou à l'inverse de convertir une donnée en JSON. Par exemple :[% USE JSON %] [% data = JSON.json_decode(row.data) %] Notices traitées : [% data.report.total_records %]
Rapports
-
Notes des rapports — Le champ notes des rapports SQL enregistrés accepte du HTML (nettoyé).
-
Rapports guidés — Le bouton de la dernière étape s'appelle Enregistrer et non plus Suivant.
-
Personnalisation de la page d'accueil des rapports — La préférence système
IntranetReportsHomeHTMLdevient une personnalisation HTML,StaffReportsHome, qui peut varier selon la langue et le site.
API REST
-
Contenus additionnels — Un nouveau point d'accès public,
/api/v1/public/additional_contents, renvoie sans authentification les actualités et les personnalisations HTML, dans une langue donnée (lang) ou avec toutes leurs traductions (embed=translated_contents). On peut ainsi afficher les actualités de Koha sur le site web de la bibliothèque. -
Nouveaux points d'accès — Crédits et débits individuels, liste des caisses, annulation de réservations par lot, groupes de réservations.
Architecture, fonctionnement interne et plomberie
-
Vue.js — Plusieurs modules de l'interface professionnelle sont des applications Vue.js. Jusqu'ici, chacun réécrivait ses propres formulaires et pages d'affichage, avec beaucoup de code répété. Un framework commun fournit désormais des composants génériques :
FormElementetShowElementpour les champs de saisie et d'affichage,ResourceFormSave,ResourceShowetResourceListpour les pages de formulaire, de détail et de liste. Un nouveau module Vue peut ainsi être construit rapidement, en décrivant ses données plutôt qu'en écrivant ses pages. Les modules existants (ERM, Preservation, Record sources, Vendors) ont été migrés vers ce framework. Pour l'utilisateur, rien ne change, mais l'interface de ces modules devient plus cohérente et moins sujette aux régressions. -
Masquage à l'OPAC — Une notice peut être masquée à l'OPAC quand la préférence système
OpacSuppressionest activée. Jusqu'ici, Koha lisait cette information directement dans la notice MARC, en 942$n. Elle est désormais stockée dans une nouvelle colonne de la tablebiblio,opac_suppressed(0 ou 1), comme les autres données liées par les correspondances Koha › MARC. C'est plus rapide et l'information devient utilisable en SQL, dans les rapports par exemple. La mise à jour lie le 942$n àbiblio.opac_suppresseddans toutes les grilles de catalogage et remplit la colonne. En UNIMARC, si vous masquez les notices au moyen d'une autre sous-zone, liez-la àbiblio.opac_suppresseddans vos grilles, puis lancez le scriptmisc/maintenance/touch_all_biblios.pl. -
Injection de formules CSV — Une cellule de fichier CSV qui commence par
=est interprétée comme une formule par un tableur (Excel, LibreOffice). Un fichier malveillant peut ainsi faire exécuter une commande ou envoyer des données vers l'extérieur, quand il est ouvert dans un tableur. C'est l'injection de formules CSV (CSV injection), une attaque distincte du XSS, qui vise le navigateur. Koha neutralise désormais ces cellules lors de l'import des fichiers CSV : import d'adhérents, import de fichiers KBART et de fichiers COUNTER dans le module ERM. Une valeur qui commence par=y est remplacée par une valeur vide. Une formule malveillante ne peut donc plus entrer dans Koha par ce biais, puis ressortir dans un export ouvert dans un tableur. -
Plugins — Le script
install_plugins.placcepte les options--includeet--excludepour choisir les plugins à installer. -
Notifications et
Context.Scalar— Le plugin Template ToolkitContextest supprimé. La mise à jour de la base signale les notifications personnalisées qui l'utilisent : remplacez[% Context.Scalar(x,y) %]par[% x.y %]. -
Signalement des failles de sécurité — Le code source de Koha contient désormais un fichier
SECURITY.md, à la racine du dépôt. C'est l'endroit où GitHub et GitLab, entre autres, renvoient quiconque cherche à signaler une faille de sécurité dans un projet. Ce fichier explique la marche à suivre : ouvrir un bug dans le produit Koha security de Bugzilla, qui n'est visible que de l'équipe de sécurité. Le bug n'est rendu public qu'une fois le correctif publié dans toutes les versions maintenues. Comme le résumé et la description du bug deviennent alors visibles de tous, il ne faut pas y mettre d'informations personnelles ni de détails sur son propre système. Le fichier décrit aussi le traitement du signalement : prise en compte, reproduction, évaluation de la gravité, correctif, puis publication dans la version mensuelle suivante.
Préférences système
Nouvelles préférences :
AdditionalContentLog(anciennementNewsLog)DisplayAddHoldGroupsDisplayPublishedDateElasticsearchPreventAutoTruncateEnableBookingFacetSortingLocaleFilterSearchResultsByLoggedInBranchPreventWithdrawingItemsStatusShowPatronFirstnameIfDifferentThanPreferredname
Préférences supprimées :
IntranetReportsHomeHTML(remplacée par la personnalisation HTMLStaffReportsHome)OPACHoldingsDefaultSortField