Nouvelles fonctionnalités de l’interface

Picard 3.0 introduit un mode sombre natif sur Windows, macOS et Linux, éliminant la nécessité de redémarrer l’application pour changer de thème. Le passage à Qt 6 améliore le redimensionnement des polices, corrige les incohérences de mise à l’échelle sous Windows et rend l’interface plus fluide sur les écrans haute résolution. Les utilisateurs peuvent désormais créer des colonnes personnalisées via un script, grâce à la contribution de knguyen1, et filtrer les listes en sélectionnant les champs recherchés, fonctionnalité ajoutée par jpmsousa03. La vue métadonnées affiche les différences entre les balises existantes et les nouvelles, et le copier‑coller multiple de balises fonctionne également vers des tableurs.

Migration vers Qt 6 et impacts techniques

Le moteur Qt5, utilisé depuis la version 2, a été remplacé par Qt6, ce qui assure la compatibilité avec les systèmes d’exploitation récents et les bibliothèques graphiques modernes. Qt6 apporte un support natif du mode sombre et une gestion améliorée du DPI, ce qui se traduit par une mise à l’échelle cohérente des éléments d’interface. Cette migration implique également la recompilation de tous les modules C++ du projet, ainsi que la mise à jour des bindings Python qui alimentent les scripts de balisage.

Système de plugins refondu

Le nouveau système de plugins impose un fichier MANIFEST.toml obligatoire, sépare les métadonnées du code et définit une API typée. Les plugins sont versionnés via Git, peuvent être installés depuis le registre central, un dépôt tiers ou un répertoire local, et sont classés selon quatre niveaux de confiance (officiel, trusted, community, untrusted). Un outil en ligne de commande picard-cli permet d’installer, désinstaller ou mettre à jour les extensions. La possibilité de blacklistage centralisé répond aux problèmes de sécurité, tandis que chaque plugin possède son propre espace de configuration et son système de traduction, géré éventuellement via Weblate. La compatibilité ascendante n’est pas assurée : les plugins de la version 2 doivent être migrés, et plus de 30 plugins sont déjà disponibles pour la version 3.

Traitement des couvertures et extensions de balises

Picard 3.0 ajoute des options de filtrage et de traitement d’images de couverture : les utilisateurs peuvent ignorer les images en dessous d’une taille donnée, redimensionner automatiquement les couvertures ou les convertir vers un format spécifique. Ces filtres et processeurs sont extensibles via les plugins, une fonctionnalité développée dans le cadre du Google Summer of Code 2024 par twodoorcoupe. Au niveau du balisage, le tag %syncedlyrics% supporte désormais les paroles synchronisées, et le nouveau tag %musicbrainz_composerid% expose l’identifiant du compositeur. Des variables internes comme %_genres% et %_folksonomy_tags% donnent accès aux listes brutes de genres et de tags folksonomiques, tandis que la date de diffusion d’un enregistrement est disponible via la variable %_broadcast….