Voici un aperçu des nouveautés de cette version d'Eclipse :
CDT (Outil de développement C/C++ d'Eclipse)
CDT 10.2 est la dernière version de CDT publié récemment et qui a été intégrée dans la version simultanée Eclipse 2021-03. Voici ci-après les changements intervenus dans CDT 10.2 :
- le débogueur autonome CDT fait partie du téléchargement principal : le débogueur autonome CDT n'est plus fourni en téléchargement séparé ;
- Headless builder accepte "-help" sans espace de travail : afin d'aider les utilisateurs à visualiser l'affichage de "-help" sans définir d'espace de travail, un nouveau bundle a été créé afin d'éviter le démarrage automatique des bundles de ressources. Ce nouveau bundle, qui ne contient qu'une petite classe wrapper, s'appelle org.eclipse.cdt.managedbuilder.headlessbuilderapp ;
- une configuration de compilation ratée fait échouer la compilation avec le constructeur headless : jusqu'à récemment, si une seule configuration de construction dans l'ensemble des configurations à construire avait un marqueur d'erreur, le code de sortie de l'application headless builder n'était égal à 1 que si cette configuration était construite en dernier. Dans CDT 10.2, cela a changé de sorte que, quel que soit l'ordre de construction, l'application headless builder se terminera toujours avec un code de sortie différent de zéro pour la configuration de construction ayant échoué ;
- inversion des couleurs dans le terminal actuel : parfois, par exemple lors de la connexion à un système distant, la chaîne d'invite fait des suppositions sur le schéma de couleurs qui aboutissent à un terminal presque illisible. Le terminal dispose d'un paramètre de préférence permettant d'inverser la couleur d'arrière-plan. Désormais, une nouvelle entrée dans le menu contextuel permet à l'utilisateur de modifier temporairement ce paramètre ;
- renommer l'onglet du terminal : le nom de l'onglet peut être modifié, soit à l'aide de codes d'échappement ANSI (tels que echo -e "\033]0;TITLE\007", soit en cliquant avec le bouton droit de la souris et en choisissant "Renommer le terminal" ;
- l'API ManagedCommandLineGenerator : l'ancienne classe interne org.eclipse.cdt.managedbuilder.internal.core.ManagedCommandLineGenerator est utilisée par les consommateurs CDT comme si elle était une API. Pour réduire le nombre d'avertissements/erreurs pour les consommateurs CDT, la classe a maintenant été remplacée par org.eclipse.cdt.managedbuilder.core.ManagedCommandLineGenerator qui contient une API correcte.
EGit
Eclipse 2021-03 est publié avec EGit 5.11. Voici nouveautés les plus notables dans cette version :
Le protocole Git
Le protocole git est le protocole de la couche application que git utilise pour la communication entre un client git et un amont (serveur git). Il est implémenté au-dessus du protocole de transport (HTTPS ou SSH). Git dispose de deux protocoles différents pour communiquer avec un amont. EGit 5.11 essaie par défaut d'utiliser le protocole V2, plus efficace, pour la récupération et n'utilise l'ancien protocole V0 que si le serveur ne supporte pas le protocole V2. La plupart des serveurs git supportent aujourd'hui le protocole V2.
SSH
EGit 5.11 ne prend plus en charge la bibliothèque JSch pour les connexions SSH. Par défaut, EGit utilise désormais toujours la bibliothèque SSH sshd d'Apache MINA. Le paramètre de préférence qui permettait aux utilisateurs de choisir la bibliothèque à utiliser a été supprimé. Si la variable d'environnement GIT_SSH est définie comme le chemin d'un exécutable SSH, EGit utilise ce programme SSH externe à la place.
Vue "Propriétés"
À partir d'EGit 5.11, la vue "Propriétés" d'Eclipse affiche des informations sur une balise sélectionnée dans la vue "Dépôts Git". La vue "Propriétés" montre des informations sur la balise elle-même et aussi sur l'objet git vers lequel la balise pointe. Lorsque la propriété "Tag message" ou "Commit message" est sélectionnée, le message complet est affiché dans une pop-up focalisable. Lorsque la balise cible est un commit et qu'elle est sélectionnée, des boutons permettant d'ouvrir le commit dans la vue historique ou dans le visualisateur de commit sont affichés. De manière similaire, la vue "Propriétés" affiche également des informations sur un commit ouvert dans le visionneur de commit lorsque ce dernier est actif.
Vérification des signatures d'engagement
EGit 5.11 peut également vérifier les signatures OpenPGP des commits. Si cette option est activée dans les préférences Git, EGit vérifiera les signatures de commit et affichera l'information dans la vue "Historique Git". Les informations affichées sont similaires à ce que "git log --show-signature" montre, mais ne sont pas identiques. EGit utilise la bibliothèque Java Bouncy Castle pour vérifier les signatures (même si un GPG externe est utilisé pour signer les commits), il y a donc des différences mineures. Actuellement, EGit ne vérifie que les signatures de commit. Il n'y a pas (encore) d'interface utilisateur pour afficher les informations de vérification des signatures de balises.
Utilisation de GPG pour signer les commits et les tags
EGit utilise par défaut le support de signature fourni par JGit, la bibliothèque Java git qu'il utilise pour toutes les fonctionnalités de git. Celle-ci utilise la bibliothèque cryptographique Java Bouncy Castle pour trouver et lire les clés GPG et signer les commits. Dans EGit 5.11, l'utilisateur a également la possibilité d'utiliser l'exécutable GPG installé sur le système à la place. Il existe de nouveaux paramètres dans la page de préférences "Git/Committing".
Eclipse Memory Analyzer
Eclipse 2021-03 intègre la version 1.11 d'Eclipse Memory Analyzer. Voici les descriptions de certains des changements les plus intéressants ou les plus importants apportés à Eclipse Memory Analyzer dans cette version :
- les requêtes de comparaison d'instantanés ont été améliorées pour comparer correctement les arbres ainsi que les tableaux. En outre, un rapport de suspicion de fuite peut être exécuté sur deux instantanés pour montrer les fuites de mémoire possibles en utilisant la différence entre les deux instantanés de l'utilisation de la mémoire des objets et des composants ;
- Memory Analyzer a maintenant une option de configuration pour permettre une tentative d'analyse d'énormes vidages de tas, plus grands que ce que Memory Analyzer pouvait gérer dans la version précédente. Pour ce faire, il élimine facultativement certains objets du vidage du tas lors de la création de l'instantané, en espérant que les objets importants n'ont pas été éliminés ;
- "Stand-alone Eclipse Memory Analyzer" est maintenant basé sur Eclipse 2020-03, ce qui peut donner une interface utilisateur légèrement améliorée par rapport aux versions précédentes. Par conséquent, Stand-alone Eclipse Memory Analyzer n'est disponible que pour les plateformes suivantes : Windows (x86_64), Mac OS X (Mac/Cocoa x86_64), Linux (x86_64/GTK+), Linux (PPC64LE/GTK+).
Eclipse Linux Tools
Docker Tooling
Le support de Docker Tooling a été corrigé pour supporter Java 13 et plus. Docker Tooling utilise la réflexion pour prendre en charge la console Eclipse et cette réflexion ne fonctionnait plus dans Java 13 en raison de changements dans la JVM. Ce problème a été corrigé pour Linux Tools 8.2.0 (Docker Tooling 5.2.0). Les utilisateurs de la version précédente de Docker Tooling peuvent soit utiliser Java 11, soit effectuer une mise à jour via le dépôt updates-docker-nightly.
Eclipse Maven Integration
Eclipse 2021-03 a été publié avec la version 1.17.1 de "Eclipse m2e". Voici les changements les plus notables dans cette version :
- mise à jour des dépendances et de la chaîne d'outils de construction, en particulier Guava 30.1 est désormais utilisé ;
- améliorations de l'éditeur pom basé sur LemMinX, principalement grâce à la mise à niveau vers les nouvelles versions de Wild Web Developer et LemMinX-Maven ;
- améliorations et corrections de l'éditeur d'emplacement de la plateforme cible PDE de Maven ;
- icônes haute résolution.
Eclipse PHP Development Tools
Général
- le dépôt principal du projet et le gestionnaire de problèmes ont été déplacés sur GitHub : "https://github.com/eclipse/pdt" ;
- démarrage plus rapide des plugins ;
- Eclipse JavaScript Development Tools (JSDT) est maintenant optionnel. Eclipse PHP est construit avec WildWebDeveloper ;
- l'éditeur JSON de WTP est remplacé par l'éditeur de texte générique ;
- PHPUnit : prise en charge de la gestion des erreurs sur PHPUnit >= 8.3 ;
- Project Explorer : correction de la régression du fichier de suppression ;
- etc.
Éditeur
- amélioration du champ de recherche "Ressource dans l'éditeur actif" ;
- suppression de la revalidation du document dans l'interface utilisateur à chaque fois que l'éditeur est activé ;
- séparation des paramètres de pliage PHP de WTP ;
- réduction du nombre de marqueurs pour les "variables inutilisées" ;
- correction du problème lorsque Class/Trait ont le même nom que l'espace de nom enfant ;
- CodeAssist pour les types de retour avec FQN (par exemple \DateTime).
Source : Eclipse 2021-03
Et vous ?
Que pensez-vous des nouveautés d'Eclipse 2021-03 ?
Voir aussi
La version 2020-09 de l'EDI Eclipse est disponible avec l'ajout de EGit, définit la version minimale de Java sur Java 11 et l'intégration de CDT (Outil de développement C/C++)
La Fondation Eclipse annonce la disponibilité de la v1.0 de sa plateforme de développement d'EDI Theia, qu'elle positionne en « vraie » alternative open source à Visual Studio Code de Microsoft
Eclipse 4.16 est disponible avec une nouvelle API dans Equinox et prend désormais en charge les ligatures de polices sous Windows
La version 2019-12 de l'environnement de développement intégré Eclipse est disponible avec son lot de nouveautés et d'améliorations