Problème utilisation du framework depuis 3.8

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Problème utilisation du framework depuis 3.8

    Hello.

    La 3.8 apporte sont lot de nouveautés et ....d'em.... (bon je vais rester polit )

    voila jusqu'à présent avec mon IDE (Eclipse) quand je saisisai les premières lettres de ma classe (par exemple "jfac"), l'IDE me proposait les classes correspondantes (JFacebook, JFactory, ....), puis ensuite me trouvait les méthodes, etc...

    Idem pour la doc, quand je plaçais le curseur sur JFactory::GetApplication par exemple, vu que l'IDE avait reconnu toutes les classes et méthodes du projet, il pouvait m'afficher les commentaires normalisés, si la méthode était deprecated, etc...

    D'un clic on arrivait aussi à ouvrir le fichier correspondant, sur la méthode correspondante.

    Bref on arrivait à bosser, avec une certaine "productivité" !

    Avec la 3.8, je constate que les principales classes statiques J... du framework sont renommées dynamiquement sans le J, avec des espaces de noms.

    Avant, un JFactory::... allait chercher cherche la classe JFactory en /librairies/joomla/factory.php.
    ...mais ca c'était avant !

    En version 3.8, un Jfactory::GetApplication va chercher la classe Factory (elle a perdu le J en préfixe en cours de route) dans /librairies/src/Factory.php (avec definition d'un namespace Joomla\CMS).

    Du coup actuellement nos IDE ne connaissent plus ces classes, et pire sous la dernière version (Eclipse Oxygen), la ligne est même marquée en erreur avec le message "JFactory cannot be resolved to a type."

    alors, faut-il placer systématiquement le namespace devant l'appel, virer le J et changer tous nos appels ?

    Par exemple modifier :

    Code PHP:
    JFactory::getApplication(); 
    en
    Code PHP:
    Joomla\CMS\Factory::getApplication(); 
    Voici la seule info que j'ai pu trouver sur l'usage des "namespace".
    Dernière édition par roland_d_alsace à 25/09/2017, 11h47
    A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
    Rejoignez le Joomla Users Groupe Alsace...
    roland_d_alsace va-t-il devenir roland_du_grand_est ?

  • #2
    Re : Problème nouvelles classes framework depuis 3.8

    Petit complément en continuant à me balader dans le code de la 3.8

    Il semblerait bien que cela soit les nouvelles recommandations (suppression du J et ajout du namespace).

    Par exemple, vu dans la classe Jerror méthode raiseWarning :
    Code PHP:
    * @deprecated  4.0 Use \Joomla\CMS\Factory::getApplication()->enqueueMessage($msg'warning'when wou want to notify the UI 
    A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
    Rejoignez le Joomla Users Groupe Alsace...
    roland_d_alsace va-t-il devenir roland_du_grand_est ?

    Commentaire


    • #3
      Re : Problème utilisation du framework depuis 3.8

      Salut Roland

      De ce que j'ai lu : la 3.8 amène la gestion des namespaces qui sera la règle sous J4 aussi je comprends ce que tu écris et je me dis "Okido, c'est logique". Logique car cela donne la possibilité aux programmeurs d'avoir des notifications et de préparer leur code pour la future version.

      Pour Eclipse, je ne peux que tu proposer d'aller sur joomla.org si ce n'est pas déjà fait pour indiquer cet effet indésirable car personne ici, je pense, n'aura de possibilité de t'aider.

      Bonne journée.
      Christophe (cavo789)
      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

      Commentaire


      • #4
        Re : Problème utilisation du framework depuis 3.8

        Bonjour,

        J'avais reçu une doc. qui explique un peu : https://joomla.digital-peak.com/imag...Joomla%204.pdf

        Pascal
        If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

        Commentaire


        • #5
          Re : Problème utilisation du framework depuis 3.8

          salut
          que pensez vous de créer un fil pour lister en français les procédures, et infos concernant la migration et l'évolution du code vers Joomla! 4 ?
          ça serait un point central pour une sorte de documentation où chacun pourrait participer

          Si ça vous branche, je m'occupe de créer le fil et le maintenir
          CEd
          Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
          http://www.template-creator.com Outil de création de templates
          Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

          Commentaire


          • #6
            Re : Problème utilisation du framework depuis 3.8

            Robert avait déjà essayé de créer un fil sur les développements liés à la mises à jour 4.0 : https://forum.joomla.fr/showthread.p...ght=joomla+4.0, d'ailleurs, c'est là que j'avais eu le lien digital-peaks...
            Pascal
            If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

            Commentaire


            • #7
              Re : Problème utilisation du framework depuis 3.8

              Envoyé par cavo789 Voir le message
              Salut Roland
              ...
              Pour Eclipse, je ne peux que tu proposer d'aller sur joomla.org si ce n'est pas déjà fait pour indiquer cet effet indésirable car personne ici, je pense, n'aura de possibilité de t'aider.
              ....
              En fait Eclipse réagit parfaitement, vu que les classes "JQuelqueChose" n'existent plus dans le framework.

              Je ne m'en était pas rendu compte de suite, vu que des fois cela fonctionnait et pas d'autre (normal j'ai encore des sites locaux de dev en J3.7 et d'autres en J3.8), surtout que de surcroit j'avais migré un poste de Eclipse Néon vers Oxygen, ceci avant de comprendre que le problème venait de la version de Joomla.

              Dans Jooma 3.8, le loader a été modifié afin que dans sa recherche, s'il ne trouve pas la classe nativement dans le framework, il essaie de la renommer dynamiquement et de lui rajouter les différents "namespace" devant son nom, (namespace qui est directement lié au chemin physique du fichier php de la classe).

              Ainsi la compatibilité descendante est assurée en attendant que toutes les extensions soient au format J3.8+ (et J4) et utilisent les "namespace".
              A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
              Rejoignez le Joomla Users Groupe Alsace...
              roland_d_alsace va-t-il devenir roland_du_grand_est ?

              Commentaire


              • #8
                Re : Problème utilisation du framework depuis 3.8

                Envoyé par ced1870 Voir le message
                salut
                que pensez vous de créer un fil pour lister en français les procédures, et infos concernant la migration et l'évolution du code vers Joomla! 4 ?
                ça serait un point central pour une sorte de documentation où chacun pourrait participer

                Si ça vous branche, je m'occupe de créer le fil et le maintenir
                CEd
                Oui pourquoi pas, cela permettrait aux "vagabonds" (comme moi) de se rafraichir un peu la mémoire quand après quelques temps de "plus Joomla/dev" on y revient.

                Mais à voir, car il faudrait faire juste une synthèse des problèmes rencontrés (ou à venir) et des solutions à apporter.
                A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                Rejoignez le Joomla Users Groupe Alsace...
                roland_d_alsace va-t-il devenir roland_du_grand_est ?

                Commentaire


                • #9
                  Re : Problème utilisation du framework depuis 3.8

                  Envoyé par pmleconte Voir le message
                  Robert avait déjà essayé de créer un fil sur les développements liés à la mises à jour 4.0 : https://forum.joomla.fr/showthread.p...ght=joomla+4.0, d'ailleurs, c'est là que j'avais eu le lien digital-peaks...
                  Pascal
                  En fait le fil de Robert est lié au même problème.

                  Je pense juste que le loader de la version qu'il utilisait n'était pas encore modifié pour assurer la compatibilité descendante et que donc les noms de classe "à la sauce" J3.7 ne passaient pas.
                  A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                  Rejoignez le Joomla Users Groupe Alsace...
                  roland_d_alsace va-t-il devenir roland_du_grand_est ?

                  Commentaire


                  • #10
                    Re : Problème utilisation du framework depuis 3.8

                    Hello.

                    Concernant les IDEs (PhpStorm, Netbeans, Eclipse,...) j'ai eu une réponse intéressante sur le forum de joomla.org qui me renvoie sur ceci :
                    Netbeans 8.2 autocomplete doesn't work on joomla 3.8. With joomla 3.7 or lower, it's works fine. Any one got the same issue ???? ?


                    On y trouve 2 formules pour créer un fichier qui sera interprété par les IDEs.

                    Il semble que la 1ere (joomlatypehints) ait été développée par Nikos (Akeeba) et quelle soit très complète, en mentionnant les anciennes classes en "deprecated/dépréciées", pour éviter de continuer à les utiliser, ce qui n'est pas à priori le cas si l'on utilise la 2ème formule (stubGenerator.php).

                    J'essaie à l'occase.
                    Dernière édition par roland_d_alsace à 25/09/2017, 21h10
                    A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                    Rejoignez le Joomla Users Groupe Alsace...
                    roland_d_alsace va-t-il devenir roland_du_grand_est ?

                    Commentaire


                    • #11
                      Re : Problème utilisation du framework depuis 3.8

                      Bonjour,

                      Pour le coup, je suis pas codeur ou dev, mais voici ce que j'ai vu passer et qui est sûrement en lien ?
                      En tout cas, ça cause d'autocompletion et de PHPStorm;
                      Si ça peut aider...

                      QUESTION
                      Code completion doesn't work any more in Joomla! 3.8 in PhpStorm (Undefined...). Do you know how to solve it?

                      REPONSE
                      Solution: Download stubs.php and place it into the root of the Joomla! instance for code completion: https://github.com/joomla/joomla-cms...8053/stubs.zip … (unzip first!)
                      Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

                      Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

                      Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

                      Commentaire


                      • #12
                        Re : Problème utilisation du framework depuis 3.8

                        tiens j'ai retrouvé des slides qui causent de la migration Joomla! 4 avec les namespaces, si ça peut être utile
                        JAB17 Prepare you extension for Joomla 4.pdf
                        Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
                        http://www.template-creator.com Outil de création de templates
                        Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

                        Commentaire


                        • #13
                          Envoyé par roland_d_alsace Voir le message
                          Re : Problème utilisation du framework depuis 3.8

                          Hello.

                          Concernant les IDEs (PhpStorm, Netbeans, Eclipse,...) j'ai eu une réponse intéressante sur le forum de joomla.org qui me renvoie sur ceci :
                          Netbeans 8.2 autocomplete doesn't work on joomla 3.8. With joomla 3.7 or lower, it's works fine. Any one got the same issue ???? ?


                          On y trouve 2 formules pour créer un fichier qui sera interprété par les IDEs.

                          Il semble que la 1ere (joomlatypehints) ait été développée par Nikos (Akeeba) et quelle soit très complète, en mentionnant les anciennes classes en "deprecated/dépréciées", pour éviter de continuer à les utiliser, ce qui n'est pas à priori le cas si l'on utilise la 2ème formule (stubGenerator.php).

                          J'essaie à l'occase.
                          Bonjour,

                          Je suis confronté au même problème avec Eclipse.
                          J'ai téléchargé le git joomlatypehints, mais je ne comprends pas comment l'utiliser. Quelqu'un l'a-t-il déjà utilisé ?

                          Merci

                          Commentaire


                          • #14
                            De mon côté j'ai "laissé tomber" et je renomme mes appels dans mes composant de la sorte :
                            https://ordi-genie.com/joomla/develo...partir-de-j3-8
                            A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                            Rejoignez le Joomla Users Groupe Alsace...
                            roland_d_alsace va-t-il devenir roland_du_grand_est ?

                            Commentaire


                            • #15
                              Envoyé par roland_d_alsace Voir le message
                              De mon côté j'ai "laissé tomber" et je renomme mes appels dans mes composant de la sorte :
                              https://ordi-genie.com/joomla/develo...partir-de-j3-8
                              Bonjour,

                              En "laissant tomber", tu te passes donc de l'auto-complétion d'Eclipse pour le Framework Joomla, mais également des fonctions comme du suivi des déclarations (touche F3) ?

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X