Anomalie #4759
fermémauvaise redéfinition de addAttachment dans sendmail
100%
Utilisation d'une nouvelle classe PHP_Mailer. PEAR n'est plus utilisée pour l'envoie de mail.
La classe "Fdl_Mail_mime" est adaptée pour cette classe
Description
l'erreur est la même que #4474, mais avec une version plus récente de mail_mime (1.8.5, ainsi que 1.8.8, la dernière)
la signature à jour de addAttachment est définie ici : https://github.com/pear/Mail_Mime/blob/master/Mail/mime.php#L397-L411
Afin de résoudre ces problèmes de manière pérenne (ils sont susceptible de survnir pour tous les packages pear), il est nécessaire de
- Spécifier la version requise pour chacun des modules pear requis par dynacase (dans ce cas, l'installation par les packages de l'os est à proscrire au profit de
pear install) - ajouter les checks correspondants lors de l'installation
Demandes liées 4 (2 ouvertes — 2 fermées)
Mis à jour par Matthieu Codron il y a presque 12 ans
la solution à court terme, pour ne pas imposer la version de mail_mime lors de la prochaine mise à jour mineure, est de mettre à jour la signature vers celle de mail_mime 1.8.8, puisqu'ils ont rajouté des paramètres. cela ne nous protège pas de façon pérenne, ni globale à l'ensemble des modules pear, mais permet au moins de supprimer l'erreur à court terme.
Mis à jour par Marc Claverie il y a presque 12 ans
- Statut changé de Nouveau à À analyser
- Assigné à mis à Éric Brison
- Version cible mis à 3.2.16
Mis à jour par Marc Claverie il y a presque 12 ans
- Version cible changé de 3.2.16 à 3.2.17
Mis à jour par Jérôme Augé il y a plus de 11 ans
Le problème est que ces classes n'ont apparemment pas de version : pas de propriété ->version ou de constante ::version pour inspecter dynamiquement la version.
Utiliser le framework PEAR pour inspecter la version ? Que faire si le serveur sur lequel est installé Dynacase n'emploi par PEAR pour installer ces classes ?
Reste la possibilité de les livrer sous la forme d'un module third-party.
Mis à jour par Matthieu Codron il y a plus de 11 ans
Jérôme Augé a écrit :
Le problème est que ces classes n'ont apparemment pas de version : pas de propriété
->versionou de constante::versionpour inspecter dynamiquement la version.Utiliser le framework PEAR pour inspecter la version ? Que faire si le serveur sur lequel est installé Dynacase n'emploi par PEAR pour installer ces classes ?
D'où l'hypothèse que je faisais de proscrire l'installation par les packages de l'os (de toute façon, ces versions sont, la plupart du temps, obsolète !)
Reste la possibilité de les livrer sous la forme d'un module third-party.
je ne suis pas pour, je pense qu'il faut soit
- adhérer à la philosophie PEAR, et donc demander l'installation par PEAR
- utiliser composer ou équivalent pour gérer des dépendances
Mis à jour par Éric Brison il y a plus de 11 ans
- Statut changé de À analyser à Analysé
- Solution proposée mis à jour (diff)
Mis à jour par Jérôme Augé il y a plus de 11 ans
Finalement, on va supprimer l'utilisation de Mime_Mail et Net_SMTP de PEAR et livrer PHPMailer (https://github.com/PHPMailer/PHPMailer).
Mis à jour par Jérôme Augé il y a plus de 11 ans
- Statut changé de Analysé à Assigné
- Assigné à mis à Jérôme Augé
- % réalisé changé de 0 à 100
Mis à jour par Éric Brison il y a plus de 11 ans
- Statut changé de Assigné à Intégré
Appliqué par commit dynacase-core|commit:2ad765c676bd07487cafcd3385ad074aa540a82b.