Changelog - Journal des modifications 2021
-
Version 0.2.22
Version 0.2.21
0.2.2151 Series : 20 – 31 décembre 2021
- FIX 192614 Tables à colonnes fixes : lors de l’ajout dynamique de lignes, il faut réinitialiser la liste des cellules des colonnes fixes
- FIX 192614 Tables à colonnes fixes : souci de superposition de la première ligne sur la première cellule de la première colonne fixe : en clair les titres de colonnes passaient par dessus le contrôle “sélectionner tout / rien”
- STD 192614 itrocks.list.js passe aux nouvelles conventions ES6 : pas de point-virgule, remplace les var par des const / let.
0.2.2150 Series : 13 – 19 décembre 2021
- ADD 191782 Nouvelle fonction du Maintainer : remove_empty_tables, supprime un maximum de tables vides (donc inutilisées) pour alléger la structure de la base de données jusqu’à son strict nécessaire
- ADD 191298 Permet de forcer le nom des contrôles HTML
<input>
pour{@field}
, comme ça existe déjà pour{@edit}
(exemple :{property.path.@field("myproperty[path]"}
) - IMP 186584 Tri des objets de l’historique History par défaut : par date, puis par utilisateur
- FIX 191782 Maintainer : les propriétés
@component @store json
doivent donner lieu à la création d’un champs en base de données
0.2.2149 Series : 6 – 12 décembre 2021
- ADD 190178 Éditeur WYSIWYG Quill : limite les éléments HTML à ceux qui s’imprimeront proprement
- ADD 190178 Nouvelle annotation de propriété @list : permet de décrire des champs dont on affichera la somme (extensible à d’autres calculs) en pied de liste
- REF 191552 191580 190734 Remplace toutes les comparaisons de valeurs de type float par des appels à Type::floatEqual() pour tenir compte du niveau de précision appliqué aux nombres à virgule flotante
- IMP 190178 Éditeur WYSIWYG Quill : accepte les listes à points, fait correspondre l’éditeur, leur affichage et leur impression PDF
- IMP 187768 Has_Default : empêche de décocher “par défaut” si aucun autre document n’est défini comme étant par défaut
- FIX 191506 La modification de champs chaînes de caractères assimilables à des numériques ne fonctionnai pas si on ajoutai / retirai des zéros en début de chaîne
- FIX 190812 Autorise l’utilisation de css border dans les listes à entêtes / pieds / colonnes fixes : remplace tous les patchs box-shadow par des border dans la liste standard
- STD 190178 app.quill.js en conventions ES6
0.2.2148 Series : 29 novembre – 5 décembre 2021
- FIX 190964 Corrigé un crash sur appel à Layout\Model::getName() d’un nouveau modèle d’impression
- FIX 191138 Dao::read() peut être appelé avec un identifiant chaîne de caractères
- FIX 191136 Contrôleur Add : n’initialiser les sous-objets composants que s’ils ne l’ont pas déjà été en amont
- FIX 191136 Builder::createClone() : la demande de déconnexion de l’objet ne fonctionnait pas si la classe cible était la même que la classe de l’objet source
0.2.2147 Series : 22 – 28 novembre 2021
- ADD 190178 Éditeur de texte Quill : lorsque le contenu du
<textarea>
associé est modifié, reporte la modification dans l’éditeur WYSIWYG - IMP 190178 @user_change : accepte maintenant les modifications d’un
<textarea>
: reportées dans le contenu et non plus dans l’attributvalue
- FIX 188888 Typage fort : Dao::write() renvoie parfois
null
0.2.2146 Series : 25 octobre – 21 novembre 2021
- ADD 189666 Envois de mails : les comptes encryptés avec TLS sont maintenant supportés
- ADD 189666 Envois de mails : l’émetteur (sender) peut maintenant être forcé pour être unique pour le logiciel, et pas dépendant de l’adresse mail liée à l’utilisateur
- ADD 190046 Serveur d’actions déclenchées : nouvelles fonctions Action::getLogEntry() et Action::wait() pour faciliter des exécutions asynchrones via ce serveur
- IMP 190178 L’annotation de classe @duplicate ne rend plus l’objet duplicable, et n’est bien dévolu qu’à sa fonction de description d’un comportement à adopter lors de la duplication et rien d’autre : il faut maintenant explicitement avoir implémenté l’interface Duplicate pour que l’objet soit duplicable
- FIX 188968 Les modifications du contenu HTML via l’éditeur Quill doivent être transmises même lorsque ne proviennent pas du clavier
- FIX 188972 Soucis de typage fort, accepte null dans certains cas
- FIX 189758 SQL UNION : attention à ne pas supprimer les résultats en double, rajoute UNION ALL (était sans effet dans les vues objets, préventif)
- REF 188888 Console::$current peut maintenant être utilisé pour savoir si le script a été exécuté depuis la console ou comme page web
- REF 188972 190622 Utilise les generics de PhpStorm partout où c’est possible, rajouté du typage fort php 8.0
0.2.2142 Series : 18 – 24 octobre 2021
- FIX 188878 Problèmes lors de l’écriture d’objets de lien immutables
- FIX 188878 Sauvegarder une collection nécessite d’avoir le bon id avant d’appeler @before_add_element. Note : pourrait encore poser des problèmes de compatibilité avec Immutable.
0.2.2141 Series : 11 – 17 octobre 2021
- ADD 188344 Constantes de balises HTML
P
et_P
- ADD 188344 Modèles d’impression : découpage des longs textes dans les itérations en plusieurs itérations pour gérer les sauts de page
- IMP 188046 Modèles d’impression : peut maintenant imprimer deux textes avec beaucoup de retours à la ligne à suivre (l’un dessous l’autre) dans la même itération
- FIX 188426 Modèles d’impression : corrige un souci où la première page sortait vide
- FIX 188426 éditeur quill : taille fixée dans les affichages collection
- FIX 188546 Recherche sur date : “vide” sur un objet lié qui peut lui-même être vide donnait de mauvais résultats
- FIX 188546 Traductions des termes de recherche équivalents à “vide” : ne traduit pas ce qui est tapé par l’utilisateur
- FIX 188546 Recherche sur objet : “vide” renvoyait tous les objets pour lesquels un @representative est vide, même si un autre ne l’est pas
- FIX 188770 Recherche sur
chemin.de.propriété
: la recherche sur “!quelquechose” perdait des résultats si l’objet lui-même étaitnull
- FIX 188692 Import : le bouton exécuter l’import avait disparu depuis la v0.2.2140
- STD 188426 autowidth et quill passés en ES6 sans point-virgules
0.2.2140 Series : 4 – 10 octobre 2021
- ADD 187374 Possibilité de mettre une infobulle au niveau des boutons d’actions de la zone d’actions sur sélection des listes
- ADD 188426 Export PDF à base de modèles d’impression : les champs contenant du HTML : mise en forme du texte gras, couleur, souligné, italique, etc., identifiées par
<p>
en début et</p>
en fin, issus de l’éditeur HTML Quill, donnent maintenant lien à une impression PDF intégrant cette mise en forme du texte - ADD 188518 Les actions sur sélection des listes ne sont maintenant visibles que si au moins un élément de la liste est sélectionné
- IMP 188492 Champs de saisie de date sans heure : réduit la taille du champ de saisie au strict nécessaire, pour ne pas donner à penser qu’on peut y adjoindre une heure
- FIX 187772 Map_As_Collection : manque l’identifiant dans le formulaire si classe de lien, souci de déliage et d’enregistrement de doublons au moment d’enregistrer les données
- FIX 187352 Corrige les problèmes d’affichage du menu introduits dans la version précédent
- FIX 188298 Crash lors de la déconnexion d’un objet composant stocké en json
- FIX 122478 Le copier-coller de pages de modèles d’impression faisait un réalité un couper-coller : corrigé
- STD 173160 Respect du HTML sémantique : les liens symboliques
<a>
doivent toujours avoir un contenu affiché, on n’a pas à avoir de code pour gérer un cas où ce contenu serait absent et ne respecterait pas le principe du HTML sémantique
- DOC 188276 Le constructeur de Reflection_Property accepte un objet, mais pas officiellement : corrigé
0.2.2139 Series : 27 septembre – 3 octobre 2021
Note : Cette version casse l’affichage des chevrons dans les menus
- ADD 187404 Travail sur les détails de listes (en cours)
- ADD 187404 Images colorées pour les statuts standards
- ADD 187374 Possibilité de mettre des textes popup lorsqu’on passe la souris sur les boutons
- ADD 187348 Travail sur le menu accordéon (en cours)
- REF 188150 Redirection après sauvegarde : passe tout le code javascript dans un fichier javasript
- FIX 188150 Templates :
|{variable}|
avec valeur vide aboutissait à l’affichage de||
, ces barres verticales doivent disparaître - FIX 187772 Widgets qui retournent ORIGIN : il ne faut pas rajouter de
<div>
dans le cas de templates de modification
0.2.2138 Series : 20 – 24 septembre 2021
- ADD 187348 Travail sur le menu accordéon (en cours)
- ADD 187348 Agrandissement de la largeur standard du menu de gauche
- FIX 187654 Impossible de retirer une colonne de liste par glisser-déposer
0.2.2137 Series : 13 – 19 septembre 2021
Note : cette version casse le retrait de colonnes des listes par glisser-déposer.
- ADD 186962 Tableaux de bord : déplacement par drag-and-drop et modification des indicateurs
- ADD 186904 Tableaux de bord : le tableau de bord par défaut est maintenant affiché sur la page d’accueil, d’office
- ADD 187164 Une fonctionnalité pour réinitialiser les filtres de recherche dans les listes de l’utilisateur à chaque reconnexion ou reconnexion et changement de jour.
- ADD 187238 Modèles d’impression : on peut maintenant choisir de mettre des zones de texte en gras ou non
- ADD 187238 Modèles d’impression : on peut maintenant choisir la couleur de zones de texte
- IMP 186904 Templates : la fonction hasAccessToo accepte maintenant des chemins de classes absolus (pas encore partiels basés sur
<!--use
) - IMP 186904 Lors de la suppression par glisser-déposer, les éléments du DOM correspondant à l’objet supprimé (data-class, data-id) sont tous supprimés (auparavant, seuls les
article
étaient retirés) - IMP 187108 data-delete-replace-by permet de remplacer la suppression d’élément du DOM par le remplacement par un autre code HTML
- REF 186962 Listes personnalisées : la suppression se fait maintenant par glisser-déposer vers une corbeille
- REF 186902 Retire toute trace de la corbeille générale, remplacée par une corbeille à apparition contextuelle
- REF 187164 Range la fonctionnalité User Settings, pour en réunir les composants
- FIX 186990 isValueEmpty renvoyai true pour une valeur ‘-0’, pas très logique. Tend à éviter de travailler avec cette valeur, mais la tolère ici.
- FIX 182310 Les clauses use globales correspondant uniquement à des implements étaient retirées des classes de remplacement finales, lors de l’installation et la désinstallation de fonctionnalités
- FIX 186986 Certains chargements de pages par appels ajax rajoutaient
?as_widget
dans l’URL, provoquant un chargement incomplet en cas de page précédente / rechargement de la page - FIX 186986 Les éléments du DOM select étaient en largeur recalculée, ce qui n’a pas de sens. Rétabli la taille dépendant du contenu
- FIX 186986 Widgets : des éléments
<div>
étaient ajoutés puis échapés, provoquant l’affichage de<div>
pour l’utilisateur - REF 186902 Nommage et optimisation de l’icône retour du fil d’ariane
- STD 182310 Comme chaque semaine : un peu de migration vers le typage fort de PHP 8
0.2.2136 Series : 6 – 12 septembre 2021
- ADD 186900 Tableaux de bord : affichage d’indicateurs sur un tableau de bord sur page d’accueil
- ADD 186900 Tableaux de bord : création dynamique d’indicateurs depuis une liste personnalisée enregistrée, par glisser-déposer
- IMP 186900 List_\Selection::allFromListSetting() permet de récupérer tous les objets d’une liste personnalisée, sans formulaire de sélection
- STD 186900 custom.js migré vers ES6 sans point-virgules
0.2.2135 Series : 30 août – 5 septembre 2021
- FIX 186202 Traduction dans les listes : utilise le texte original en anglais si la traduction a été initialisée en chaîne vide
- CNF 173084 Traductions : augmente le nombre de traductions inverses autorisées à aller chercher en cas d’utilisation de wildcards par l’utilisateur dans les critères de recherche des listes : passe de 100 à 10000, pour éviter la non-résolution de certaines traductions
0.2.2134 Series : 16 – 29 août 2021
- IMP 184870 Imports Possibilité de développer des imports avec notifications et messages d’erreurs (pour les deux zones)
- FIX 185842 Maintainer Patch pour un problème de création de table avec des contextes dont un
[$id_field_1, $id_field_2]
- FIX 185924 Typage fort : les modules de contrôle de droits d’accès peuvent générer des liens à
null
, il faut donc les supporter - STD 185842 Typage fort dans le mainteneur MySQL
0.2.2132 Series : 19 juillet – 15 août 2021
- ADD 180806 Modèles d’impression : statut téléchargé / personnalisé
- ADD 184512 Modèles d’impression : copier-coller d’un modèle de page à un autre
- ADD 183954 Modèles d’impression : vider une page et le fonds de page
- ADD 180792 Codes couleurs fonctionnels
- ADD 183196 Lorsqu’on ajoute une colonne dans une liste, le message en sortie est maintenant affiché
- ADD 184044 Nouvelles fonctions de traitement sur les tableaux arrayInsert(), arrayInsertBefore()
- IMP 182592 Exports xlsx : les dates égales à Date_Time::max() sont maintenant exportées à vide
- IMP 185316 Barre de défilement de listes : la barre horizontale est maintenant visible si les entêtes dépassent de la zone, même s’il n’y a pas de lignes de données dans la liste
- REF 184026 Les exemples sont sortis pour aller dans le projet Examples
- FIX 181376 Recherche de date sur un objet : lorsqu’une propriété de @representative est une date, la recherche sur cette date ne fonctionnai pas. C’est maintenat ok
- FIX 185394 Les listes n’étaient pas triées pour les colonnes property.path depuis l’intervention 184018
- FIX 185394 Listes : meilleure gestion des conflits lorsqu’une colonne property.path correspond à une propriété @prepresentative de la classe d’une autre colonne property également triée
- FIX 185420 Crash des listes lors de la recherche sur une colonne correspondant à une propriété de classe abstraite (bug introduit cette même semaine)
- STD 185316 185448 Quelques scripts upgradés en php8 / ES6
0.2.2128 Series : 12 – 18 juillet 2021
- FIX 173394 Planificateur de tâches : patch pour erreur de lecture de la propriété
string[]
Schedule::days_of_week
0.2.2127 Series : 5 – 11 juillet 2021
- ADD 180804 Modèles d’impression : fonctionnalités client et serveur pour permettre le téléchargement de modèles d’impression centralisés dans un catalogue sur un hub
- ADD 180804 Type mime
application/json
- ADD 180804 Reflection_Property::isComponent() renvoie true sur la propriété est un (ou plusieurs) objet composant
- ADD 180804 Dao::exhaust() déclenche le chargement par l’ORM, via le DAO, de tous les composants d’un objet, récursivement. Des options permettent de déréfencer les objets composites et/ou de déconnecter les objets chargés dans le même temps.
- ADD 180804 Permet de générer les liens absolus dynamiques, compatibles avec les protocoles applicatifs
abs
,app
,dyn
,rel
. - ADD 180804 Json::decodeObject() et Builder::buildFromArray() acceptent à présent des objets qui ont été sérialisés avec la structure interne d’objets “traffiquée” pour l’AOP (propriété et suffixes
_
) - ADD 180804 pseudo-fonctionnalité back : design de bouton action pour revenir à l’étape précédente
- IMP 183930 Permet d’étendre Counter, en changeant les appels statiques pour des appels à la classe construite
- IMP 180804 N’envoie le sélecteur de propriétés pour les modèles d’impression qu’en formulaire de modification
- IMP 180804 Feature_Class est maintenant Is_Immutable, empêchant ainsi tout doublon et simplifiant les imports
- FIX 183596 Compteurs : empêche d’incrémenter plusieurs fois le compteur sur la même propriété du même document dans le même clic
- FIX 183966 184018 isStrictNumeric : ‘91.8500’ n’était pas reconnu comme un numérique
- FIX 183870 Modèles d’impression : plantage sur impression d’un document sans modèle d’impression
- FIX 180804 Crash à la désérialisation de plugins dont la configuration contient des valeurs incluant le caractère
':'
- FIX 180804 Modèles d’impression : liens au nom de classe et au document redondants mal géré : empêche la réinitialisation systématique de l’un ou de l’autre
- FIX 180804 xtarget : Ignore les crash sur modification de l’URL et ajout à l’historique (liens absolus vers un autre logiciel distant)
- FIX 177500 Mauvaise traduction de “retirer ligne”
- FIX 180530 Namespace du composant graphique accordéon
- FIX 151072 183640 184018 Tri dans les listes par colonne objet : jusqu’ici était trié par id, maintenant par
@sort
/@representative
0.2.2126 Series : 28 juin – 4 juillet 2021
- ADD 183732 Permet d’utiliser les propriétés de champs objets stockés en json dans les modèles d’impression
- ADD 183730 IP +
LOCALHOSTS
+LOCALS
pour faciliter la configuration d’adresses locales multiples, notamment IPv6 - IMP 183182 Composant graphique expérimental bouton : rajoute des éléments d’URL
- IMP 183732 Modèle d’impression : réduit la marge automatique entre un groupe et un élément en dessous : .5 au lieu de 5
- FIX 183732 Modèle d’impression : mauvaise itération lorsque deux groupes sur la même page, certaines données étaient mal initialisées
- FIX 183730 Manager du serveur à déclencheurs : local_access.php doit être sauvegardé avant l’interprétation et les appels @feature_install, qui a besoin ici des droits d’accès locaux à jour
- FIX 181040 Erreur Incorrect DATETIME value ‘’ lors des recherches sur liste avec date mal saisie : le message utilisateur n’était pas affiché, le critère de recherche était mis à blanc (recherche sur valeur vide) au lieu d’être retiré
0.2.2125 Series : 14 – 27 juin 2021
- ADD 183182 Nouveaux composants graphiques expérimentaux : fil d’Ariane, IHM étapes, indicateur de progression, Titre de contenu
- STD 183180 Tous les
new
devraient être remplacés par des Builder::create() : fait pour Final_Image et Final_Text
0.2.2123 Series : 7 – 13 juin 2021
- ADD 182642 Compteurs : nouvelle fonctionnalité compteurs aléatoires
- ADD 182642 Compteurs : facilite l’utilisation de compteurs en utilisant le trait Use_Counter et deux annotations
- IMP 180812 Modèles d’impression : peut maintenant utiliser les modèles sans erreur même si certaines fonctionnalités ne sont pas installées, et donc certaines données manquent
- IMP 173902 Annotation de propriété @print_getter : la fonction de callback prend maintenant l’objet de contexte racine en premier argument, et s’applique aux champs mixtes texte + chemins de propriétés des modèles d’impression
- REF 182642 Dao::count() valeur de retour en typage fort
- FIX 182622 Authentification utilisateur avec son email à la place de son identifiant ne fonctionnait plus
- FIX 173160 Traductions le délai max de connexion au hub pour obtention des traductions de 1 seconde était trop court
0.2.2122 Series : 31 mai – 6 juin 2021
- ADD 142410 Utilisateurs désactivés : fonctionnalité prête et rationalisée
- ADD 182242 mLastParse()
- ADD 182242 Annotation de classe @feature_local_access : l’installation de fonctionnalités peut ajouter des réglages à local_access.php
- ADD 182246 Tâches asynchrones : possibilité d’installer une tâche asynchrone dans la crontab (Linux seulement)
- ADD 182246 Serveur sur déclencheurs : Trigger\Server\Manager permet d’activer ou désactiver le serveur sur le système, y compris après un reboot, avec gestion de reprise en cas d’arrêt inopiné
- REF 142410 Ordonnanceur : meilleur nom de stockage pour le planning horodaté
- FIX 142410 Test unitaire sur traduction composite HS depuis la refactorisation 137320 en v0.2.2118
0.2.2121 Series : 17 – 30 mai 2021
- ADD 181432 Packages de fonctionnalités installables
- ADD 181674 Mock du Dao pour désactiver l’écriture en base de données pendant les tests unitaires
- IMP 180740 Meilleurs messages sur les erreurs dans Reflection_Source
- ADD 142410 Utilisateurs désactivés (WIP)
- FIX 142410 Envois de mails vers fichiers :
send()
ne renverra pas d’exception liée à la réflexion
0.2.2119 Series : 10 – 16 mai 2021
- ADD 181332 Templates HTML : on peut maintenant ajouter des commentaires non envoyés au client
<!--// blind comment -->
- ADD 181332 Templates HTML : les délimiteurs de structure peuvent maintenant être explicitement décrits (optionnel) :
<!--if variable-->
,<!--with object-->
,<!--foreach array-->
0.2.2118 Series : 3 – 9 mai 2021
- ADD 153112 xtarget désactive le bouton cliqué pour éviter les double-enregistrements : grisé et curseur de souris de progression
- REF 137320 La traduction composite n’est plus un plugin, et est maintenant appliqué systématiquement
- FIX 180962 Double initialisation AOP qui laisse la propriété avec une valeur invalide lorsque une annotation de propriété @getter vient surcharger l’annotation de propriété @link d’origine
- FIX 180816 Les traductions étaient jusqu’ici désactivées pendant les mises à jour, manquaient du coup la traduction des fonctionnalités installables et des noms de fonctionnalités dans les droits d’accès
- FIX 180752 Call_Stack::getArgument et Call_Stack::getArguments : ne fonctionnai pas avec le second argument à
false
0.2.2117 Series : 19 avril – 2 mai 2021
- ADD 142410 Permet la personnalisation par des plugins du message d’erreur d’authentification utilisateur
- IMP 171678 Meilleure gestion des URL
protocol:
(tel: et autres, http:, https:) : évite les remplacements intepestifs de la part du
framework - REF 180570 La structure HTML des messages de résultat / anomalies lors des imports n’était pas à jour du standard actuel
- REF 165410 Remplace l’implémentation de l’envoi des mails via PEAR par l’utilisation de SwiftMailer
- FIX 180092 Appel au Validator avant écriture avec un nom d’annotation à
null
possible - FIX 180092 Les erreurs de plus bas niveau de PHP entraînent un code d’erreur 500 et annulent tout affichage côté navigateur : corrigé pour que dès qu’on envoie un message d’anomalie au client on passe en code 200 pour en permettre l’affichage
- FIX 180570 Des appels à des fonctions de comparaison dans des tris utilisateurs qui renvoyaient un booléen au lieu d’un entier
- FIX 180868 Is_Immutable doit marcher même si l’objet est entièrement vide, dans le sens contenant au mieux des valeurs à
''
par exemple - FIX 180868 Phone Le numéro de téléphone texte ne doit pas être obligatoire, car l’utilisateur a le droit de le laisser vide
- STD 180084 Préfère Builder::create() à
new
(en cas d’extension), quelques coding standards
0.2.2115 Series : 12 – 18 avril 2021
- ADD 177498 Annotation de propriété @filters :
@filters property_name=null
et@filters property_name=!null
sont maintenant autorisés - ADD 177686 Permet d’empiler des messages d’erreurs additionnels dans une exception User_Error_Exception
- ADD 179912 Les widgets peuvent maintenant ajouter plusieurs objets à enregistrer en résultat de Object_Builder_Array
- ADD 174602 PDF::toColor() transforme une couleur au format texte pour css
'#ff0f00'
en tableau RGB pour FPDF[255, 15, 0]
- ADD 171678 Accepte les URI spéciales telles que callto:, data:, fax:, mailto:, tel:, sans les altérer
- IMP 177686 Validateur : Les anomalies sont remontées sous forme d’exceptions User_Error_Exception pour être traitées correctement
- IMP 179974 Permet le renvoi d’un mail qui n’aurait pas de message d’envoi, mais n’ayant pas non plus d’UIDL (donc n’ayant effectivement pas été envoyé)
- REF 177686 Validateur : Renomme la classe
Exception
enExcept
, confirmant ainsi le statut “réservé aux exceptions” du nom de classeException
- FIX 179804 Surcharge avec modification du type de propriété entier vers virgule flottante provoquait des reformatages en entier erronés
- FIX 177686 Mauvais namespace pour la classe Phone_Number_Test
- FIX 177974 La création d’un nouveau compteur provoquait une erreur de typage fort
- FIX 179982
image2wbmp()
a été remplacé parimagebmp()
depuis php 7, et a été supprimé en php 8 - STD 177686 Applique le typage fort php 8.0 au validateur
0.2.2114 Series : 5 – 11 avril 2021
- ADD 178086 Formulaire d’import : permet de personnaliser l’étape suivante et sa cible pour développer vos propres imports
- ADD 178086 Message::display() permet d’afficher un message d’information et des anomalies à l’utilisateur en utilisant une nouvelle vue Message
- ADD 178836 @feature_install accepte un second paramètre optionnel délai pour exécuter un traitement post-installation après plusieurs clics utilisateur
- ADD 178836 Annotation de propriété @transform : peut être posé à
false
pour remise à valeur par défaut de propriétés dont on ne veut pas conserver la valeur lors d’une transformation - FIX 179588 Problème avec Cache lors d’appels à Dao::read() pour rechargement d’un objet
- FIX 178086 Problème sur @default sur propriété indéfinie
- FIX 179692 Les attributs hérités de propriétés (dont le type) sont perdus à la construction d’un float pour une vue
- FIX 179668 Controller/Getter : stoppe la recherche de contrôleurs (et autres) sur l’application de la classe source du contexte, pour ne pas risquer d’aller chercher des contrôleurs de classes de plus bas niveau qui n’auraient rien à voir
- FIX 179732 Typage fort php 8.0 : isStrictNumeric ne fonctionnai pas sur des cas particuliers, comme -0.64
- FIX 179748 Tests unitaires sur @unique en panne, corrigés, code changé pour être plus proche d’exemples d’utilisation
- FIX 179782 Formattage par @user_getter : pouvait être re-suivi par un formattage à typage fort malvenu, le format de sortie d’un @user_getter étant libre et devant être autonome pour la mise en forme pour l’utilisateur
- STD 179412 Interne : typage fort sur $pre_path
- STD 179668 Typage fort php 8.0 sur le Application_Class_Tree_Filter
- STD 179782 Nettoyage progressif de warnings sous PhpStorm : nettoie petit-à-petit la base de code
0.2.2113 Series : 28 mars – 4 avril 2021
Version instable : le contrôle des types float / integer peut provoquer des blocages
- ADD 114862 Objet métier Phone et trait associé Has_Phone, pour la gestion et la validation de saisie de numéros de téléphones
- ADD 114862 Objet métier Pays
- ADD 179214 Capture pour affichage de plus d’informations pour toutes les erreurs fatales non capturées par le gestionnaire d’erreurs
- ADD 179214 Call_Stack::getArgumentsValue permet de rechercher la première valeur passée comme paramètre de fonction parmi une liste de noms de paramètres
- ADD 179214 Cible Target::QUERY pour l’affichage de requêtes de la part du logiciel, Target::to() pour le ciblage en vue HTML
- ADD 179214 User_Error_Exception : permet de lever une exception utilisateur, destinée à l’affichage dans l’élément HTML div #query
- ADD 179214 179652 Contrôle de types de données à la conversion depuis tableau (formulaire, import, etc.) float / integer : dès Object_Builder_Array, avant validation
- ADD 172042 Traits métiers Has_Created_By et Has_Updated_By pour lier l’utilisateur qui a créé / réalisé la plus récente modification sur un objet
- FIX 179186 Quelques bugs introduits depuis la migration php 8.0 : sur le Maintainer
- FIX 179340 Les méthodes référencées par l’annotation de propriété @default doivent être publiques
0.2.2112 Series : 21 – 27 mars 2021
- ADD 175106 Annotation de propriété @unique : permet d’appliquer des règles de gestion garantissant que la donnée sera bien unique
- ADD 179066 Annotation de propriété @default accepte maintenant des constantes (utile pour de la simple surcharge)
- IMP 178656 Asynchronous : les processus sont maintenant exécutés en chemins absolus, pour faciliter leur identification lors d’un
ps -aux
par exemple - REF 178774 Compatibilité avec php 8.0, compatibilité avec PHPUnit 9. Rajoute notamment un script console dédié au lancement des tests unitaires
- REF 178774 Retire les scripts de console dépréciés pour ne laisser que console
- FIX 178774 Annotation de propriété @foreign : des soucis lorsque la liste des annotations n’est pas renvoyée sous forme d’un tableau
- FIX 178774 Rapports d’erreurs : parfois il peut ne pas y avoir de connexion à mysql
- FIX 178774 Tests unitaires : réparation de tests pour lesquels la classe de test s’était vu retiré un @extends sans logique métier
0.2.2111 Series : 15 – 21 mars 2021
Fin de la compatibilité avec php 7.X : Le framework est maintenant compatible php 8.0+ uniquement
- ADD 177590 Compatibilité avec xdebug 3.0
- IMP 177034 Access\Ip::checkAccess ne doit pas être appliqué lorsqu’un utilisateur est connecté et que User\Access_Control est activé : les utilisateurs connectés ont accès à tout
- IMP 178502 Plus d’informations dans le message d’erreur de création de dossier temporaire (nom du dossier)
- REF 169664 Compatibilité avec php 8.0
- REF 178036 Compatibilité du mainteneur Mysql avec mysql 8.0
- REF 178452 Recompilation des fichiers scss en css avec le package debian sass.
- FIX 177040 Des tentatives d’accès aux propriétés privées statiques comme des propriétés publiques dans l’appel à Mysql\Link::escapeString
- FIX 178446 Les formulaires intermédiaires de confirmation doivent échaper les valeurs de formulaire reportées (cas de valeurs contenant des guillemets ou des chevrons)
- FIX 178446 La construction d’un composant de modification d’un string[] ne fonctionnai pas toujours en textearea multi-lines / input séparé par des virgules (soucis entre valeurs string[] et string séparé par virgules)
- FIX 178502 Des soucis à la création de dossiers temporaires sous tmp dans certains environnements protégés (apache 2.4 / debian 10) : préfère la création du dossier temporaire sous le dossier utilisateur.
0.2.2110 Series : 8 – 14 mars 2021
- ADD 176470 Nouvelle classe Mutex pour exécuter des portions de code en exclusion mutuelle
- FIX 176470 Dao::lock ne doit plus être utilisé : le déverrouillage provoquai le commit de la transaction en cours, et les effets de bord liés en cas de transaction finalement invalide. Appliqué à Counter.
0.2.2109 Series : 1 – 7 mars 2021
- ADD 177354 Droits d’accès aux modèles d’impression, nécessitent notamment l’accès aux fonctionnalités d’affichage du fond de page
- ADD 177236 L’annotation de propriété @var permet maintenant de récupérer le type et les types secondaires (séparés par
|
) - CNF 177236 Entêtes pour les favicones dans main.html.
- FIX 177132 Message d’erreur pour
@var
manquant : indique le trait déclaré plutôt que la classe finale - FIX 160806 Retire des
@extends
injustifiés - FIX 177516 Problème d’alignement des champs dans les formulaires à cause e 177016 de v0.2.2108
- STD 177060 Réparations d’écritures normalisées dans les templates
0.2.2108 Series : 22 – 28 février 2021
- FIX 177070 Default_List_Row::getOutputLink() renvoie parfois
null
, lorsque forcé par un plugin d’ACLs par exemple - FIX 177234 Certains identifiants d’enregistrements sortaient jusqu’ici sous format
float
; différencie les types numériques testés - FIX 173072 Path Reflection_Property::getValue() : renvoie
null
lorsqu’appelé en chemin de propriété incluant des valeurs multiples collection / map - FIX 177016 li.component-objects : devrait être affiché comme list-item (! provoque une régression à corriger)
0.2.2107 Series : 15 – 21 février 2021
- ADD 176052 On peut maintenant utiliser
{property_name.@property.value}
dans les gabarits
0.2.2106 Series : 11 janvier – 14 février 2021
- ADD 175608 String_Class::round() pour
{some_stringable.round}
- ADD 175992 Annotation de classe @maintain : permet de forcer le contexte pour la maintenance automatique de la base de données sur une classe de substitution
- FIX 175808 Compilation du cache AOP : un souci d’appel de parent::__aop() sur une classe chargée avant la compilation complète
- FIX 175808 Le stockage de Sort dans les List_Settings doit se faire avec la classe de base], mais s’exécuter avec la classe construite
- FIX 175992 Affichage de la date tronquée : élargi le champs de saisie
- STD 175992 Has_Creation_Date_Time et Has_Update_Date_Time
0.2.2101 Series : 28 décembre 2020 – 10 janvier 2021
- ADD 173324 Compteurs : la règle de gestion pour le changement d’année peut être associée à la date de l’objet à la place de la date du jour
- IMP 173334 Mail de réinitialisation de mot de passe par défaut : remplace
<strong>
par un cssfont-weight
pour une meilleure compatibilité des liens en gras en mode “texte brut” - FIX 173334 Email\Decoder : erreur de décodage des mails en multipart/mixed (par exemple contenant des pièces jointes)
Versions antérieures
- Changelog – Journal des modifications 2020
- Changelog – Journal des modifications 2019
- Changelog – Journal des modifications 2018
- Changelog – Journal des modifications 2017
Notice
Type d’intervention :- ADD – Addition : ajout d’une nouvelle fonctionnalité
- IMP – Improvement : amélioration d’une fonctionnalité existante
- REF – Refactoring : refactorise l’implémentation d’une fonctionnalité
- CNF – Configuration : réglages de configuration uniquement
- DEV – Development : code ajouté uniquement et spécifiquement pour les configurations de développement (par exemple traces de débogage)
- FIX – correction d’un bogue
- STD – Standards : application de standards de programmation
- DOC – Documentation : ajout / modification de la documentation incluse dans le code
- [RAD] – Rapid Application Development : développement graphique de fonctionnalités par l’utilisateur final
- 2 premiers caractères : l’année,
- 2 caractères suivants : le numéro de semaine.
La numérotation de ticket 12345 est un numéro interne de ticket, et ne correspond pas forcément à la numérotation de tickets dans GitHub.
Le master (https://github.com/itrocks/framework/master) correspond à la version en cours de développement, et contient donc les dernières évolutions du build le plus récent.
Voir aussi