Skip to content

Releases

4.1.1

Choose a tag to compare

@mapiolca mapiolca released this 05 Nov 09:42
b62c497

La version 4.1.1 corrige la pagination des titres PDF avec fond coloré lors d’un saut de page automatique.

Correction

  • Le fond suit les pages réellement occupées par le titre et reste dans la zone de contenu, sans déclencher une page supplémentaire ni isoler le titre des prestations suivantes.
  • Les sauts de page forcés avant les titres, les descriptions longues et les réglages de pagination du modèle sont conservés.
  • Aucune modification du modèle JPSUN, du core Dolibarr ou de la base. Aucune migration ni modification de configuration nécessaire depuis 4.1.0.

Installation / mise à jour

Utiliser l’archive module_subtotal-4.1.1.zip jointe, contenant directement le répertoire subtotal/. Le fichier .sha256 permet de contrôler son intégrité. Les archives « Source code » automatiques de GitHub sont destinées aux sources.

Les réglages existants sont conservés. Pour une mise à jour depuis une version antérieure à 4.1.0, consulter également les instructions de la release 4.1.0 concernant le droit de gestion des textes prédéfinis.

Validation et limites

  • Régression reproduite avant correction ; 37 scénarios de pagination exécutés séparément avec les moteurs natifs TCPDF 6.3.2, 6.7.5 et 6.11.4 sous PHP 8.4.22. Services Dolibarr simulés ; rendu TCPDF réel. Scénarios couvrant notamment sauts automatiques et forcés, HTML, titres et descriptions longs, anciens et nouveaux modèles et transactions de génération.
  • Les 14 scripts de régression/fixtures existants, le contrôle statique, le lint PHP de 49 fichiers et les contrôles de diff passent. Les 37 scénarios TCPDF 6.11.4 et le contrôle statique ont été relancés avant fusion. L’arbre du commit fusionné est identique à celui du correctif testé.
  • Recette réelle sur develop, Dolibarr 25.0.0-alpha / PHP 8.3.36, devis fictif (PROV50), modèle « JPSUN sans images » : titre ÉTUDES et ses trois prestations sur la même page, VARIANTE sur la page suivante avec saut forcé. Réglages vérifiés inchangés ; activation du module remise à son état initial désactivé. Le devis reste en brouillon avec ses lignes de recette identifiables.
  • Réserve indépendante du module : develop présente une erreur native d’indexation ecm_files.date_creation, reproduite avec Subtotal désactivé. Elle n’empêche pas la création du PDF et n’est pas corrigée par cette release.
  • ZIP vérifié : racine unique, version, intégrité, contenu issu du commit fusionné, sans Git, tests ni fichiers de recette. Installation par l’installateur natif et acceptation Dolistore non exécutées.
  • Aucun contrôle CI configuré. PHPStan niveau 5 n’a pas pu analyser la cible historique phpVersion: 70000, refusée par PHPStan 2.2.2 ; configuration et suppressions inchangées.
  • Compatibilité historique déclarée conservée : Dolibarr 16+ / PHP 7.0+, avec Dolibarr 20+ / PHP 8.0+ recommandés. La matrice complète des versions Dolibarr et des runtimes PHP n’est pas annoncée comme testée.

Règles de packaging consultées : documentation officielle Dolibarr.

PR : #11. Commit de release : b62c49796ed6dcb9273d365356e4a739e22aea70.

4.1.0

Choose a tag to compare

@mapiolca mapiolca released this 05 Nov 07:23
79b2205

La 4.1.0 permet de gérer les textes prédéfinis directement depuis les documents clients et fournisseurs proposant l’ajout de texte libre.

Nouveautés

  • Petit « + » natif à côté du sélecteur : gestion dans une modale large, sans quitter le document, avec recherche, pagination, création, modification, activation et suppression confirmée.
  • Deux sélecteurs Select2 natifs ; éditeur HTML Dolibarr ou zone de texte de repli. Le retour de la gestion actualise les choix sans perdre le bloc ou la description personnalisée. Une sélection explicite charge le modèle ; seul le contenu final est inséré au document.
  • Droit dédié Gérer les textes prédéfinis (10477701), non attribué par défaut. Le parcours est réservé aux utilisateurs internes ; la gestion exige aussi les permissions du document brouillon.
  • Dictionnaire administratif et table existants conservés, isolation stricte par entité courante, protection CSRF et détection des modifications concurrentes. Aucun changement du core ni migration structurelle.
  • Traductions françaises, anglaises et espagnoles et documentation actualisées. Commandes de maintenance avec shebang PHP et fins de ligne LF pour Unix, sans changement de leur logique.

Installation / mise à jour

Utiliser l’archive module_subtotal-4.1.0.zip jointe, qui contient directement le répertoire subtotal/. Les archives « Source code » automatiques de GitHub sont destinées aux sources.

Après mise à jour, ouvrir les permissions natives d’un utilisateur ou groupe pour enregistrer le nouveau droit du module actif, puis attribuer Gérer les textes prédéfinis aux profils concernés. L’utilisation des textes existants reste soumise aux permissions du document et ne nécessite pas ce droit de gestion. Les réglages et les textes déjà copiés dans les documents sont conservés.

Validation et limites

  • 14 scripts de tests/fixtures, dont 31 branches contrôleur et 21 scénarios modèle, contrôle statique, lint de 48 fichiers PHP et syntaxe JavaScript : réussite sous PHP 8.4.22 avec les sources locales Dolibarr 25 alpha. Les doubles SQL/session/transaction restent distincts des essais réels.
  • Recette réelle antérieure sous Dolibarr 25 alpha sur devis client et demande de prix fournisseur, avec deux entités et un profil standard ; dernier ajustement du « + » vérifié après déploiement. Les états initiaux ont été restaurés.
  • ZIP contrôlé : nom numérique, racine unique, versions, intégrité, fichiers livrés et commandes exécutables LF ; ni Git ni fixtures de recette.
  • Aucun contrôle CI configuré. PHPStan niveau 5 refuse la cible historique phpVersion: 70000 avant analyse ; sa configuration n’a pas été affaiblie.
  • La compatibilité historique déclarée reste Dolibarr 16+ / PHP 7.0+, avec Dolibarr 20+ / PHP 8.0+ recommandés. La matrice complète d’instances et de runtimes historiques, l’installation par l’installateur natif et l’acceptation Dolistore ne sont pas annoncées comme validées. Les autres limites de recette sont détaillées dans AUDIT.md.

Règles de packaging consultées : documentation officielle Dolibarr.

PR : #10. Commit de release : 79b2205fe0b56125ecd90480157b85156974d03c.

4.0.2

Choose a tag to compare

@mapiolca mapiolca released this 04 Nov 08:29
6493f33

Correction du calcul et de l’affichage des marges de sous-totaux.

  • Calcul limité aux lignes du bloc concerné, avec les coûts natifs du document et conservation du prorata des factures de situation.
  • Récapitulatif dans une cellule : titre, prix de revient, marge avec son taux, montant HT ; marge non soulignée et séparateurs réguliers.
  • Régressions sur les blocs imbriqués, coûts nuls, taux et rendu avec quantités et multicurrency.

Validation : onze scripts de test et lint réussis sous PHP 8.4.22 ; helpers natifs Dolibarr 16, 20–24 et 25-alpha testés avec des fixtures. Aperçu local vérifié sur bureau et téléphone. PHPStan et recette du devis réel non exécutés ; aucun déploiement effectué. Les archives automatiques GitHub sont des archives source, sans essai d’installation native revendiqué.

PR : #9
Comparaison : 4.0.1...4.0.2

4.0.1

Choose a tag to compare

@mapiolca mapiolca released this 28 Oct 13:16
0299409

What's Changed

  • FIX: prevent legacy PDF model deprecations (4.0.1) by @mapiolca in #8

Full Changelog: 4.0.0...4.0.1

4.0.0

Choose a tag to compare

@mapiolca mapiolca released this 28 Oct 09:56
b14f7a8

Subtotal 4.0.0 — 28 octobre 2026

Cette version regroupe les évolutions et corrections de la PR #6, puis la finalisation datée de la PR #7.

Changements

  • Administration native : une entrée de réglages unique, onglets Réglages, Compatibilité et À propos ; métadonnées issues du descripteur et réglages conservés à la désactivation.
  • Sécurisation des actions Ajax et de l’API REST : jeton CSRF, droits natifs du document parent, accès à l’entité et restrictions des utilisateurs externes. Dictionnaire de textes libres isolé par entité.
  • Correction de l’insertion sous un titre et en fin de section ouverte ou imbriquée ; sélecteur de titre de largeur bornée et barre de repli alignée sur les colonnes affichées.
  • Corrections des colonnes, marges et sous-totaux des factures de situation, avec calcul au prorata de l’avancement de chaque ligne.
  • PDF : conservation du choix « Masquer les lignes internes » lors des régénérations automatiques, priorité au choix explicite et isolation entre documents ; totaux des lignes techniques préservés.
  • Documents rattachés au répertoire de leur entité propriétaire et réservation renforcée des pieds de page PDF.
  • Pictogramme d’origine conservé, avec le fichier de compatibilité attendu par Dolibarr 25 ; correction des propriétés du descripteur pour PHP 8.2.
  • Suppression des copies de fichiers core et des anciennes migrations web ; commandes de maintenance CLI en lecture seule par défaut et index du dictionnaire.

L’identifiant historique du module 104777 et les marqueurs special_code des lignes sont conservés.

Installation et maintenance

Installer ou mettre à jour le répertoire subtotal dans la racine des modules externes de Dolibarr. Les anciennes migrations web sont remplacées par les commandes de scripts/maintenance/ ; consulter le README et effectuer une sauvegarde avant toute exécution modificative.

Compatibilité déclarée : Dolibarr 16+ et PHP 7.0+ ; Dolibarr 20+ et PHP 8.0+ recommandés. Ces déclarations ne constituent pas une validation complète de chaque combinaison.

Validation et limites

  • PHP 8.4.22 : syntaxe des 38 fichiers PHP et conformité statique réussies.
  • Tests d’insertion (11 scénarios), colonnes, marges et sous-totaux de situation réussis.
  • Tests des totaux PDF et des 36 scénarios de régénération automatique réussis, avec contrôle du HookManager natif ; les données, requêtes, sessions et rendus PDF sont simulés.
  • Découverte du descripteur et sélecteur de titre avec les helpers natifs : réussite.
  • Les recettes réelles antérieures sur Dolibarr 25.0.0-alpha / PHP 8.3.36 et leurs limites sont détaillées dans AUDIT.md et la PR #6. Le dernier correctif des lignes masquées reste à vérifier sur un PDF réel après déploiement.
  • PHPStan non exécuté : outil absent localement. Aucun résultat de CI n’est disponible pour le commit de finalisation. Les dépréciations historiques de certaines signatures de hooks subsistent sous E_ALL.
  • La correction du débordement général des tableaux relève de Dolibarr/dolibarr#42238 et n’est pas incluse dans cette release du module.

Historique complet : ChangeLog.md.

3.29.2

Choose a tag to compare

@mapiolca mapiolca released this 23 Jul 15:22
fcfff26

What's Changed

  • fix: fiabiliser les sous-totaux PDF et les factures de situation by @mapiolca in #2

Full Changelog: 3.29.1...3.29.2

3.29.1

Choose a tag to compare

@mapiolca mapiolca released this 23 Jul 11:49
3cfa833

What's Changed

  • Corriger les sous-totaux des factures de situation et publier la version 3.29.1 by @mapiolca in #1

New Contributors

Full Changelog: 3.29.0...3.29.1

3.29.0

Choose a tag to compare

@mapiolca mapiolca released this 23 Jul 10:12
e5c6ca4

Full Changelog: 3.1.8...3.29.0

3.1.8

Choose a tag to compare

@mapiolca mapiolca released this 23 Jul 10:11

Full Changelog: 3.1.4...3.1.8