Prise en charge des nouvelles fonctionnalités des langages Ruby et RBS, nouvelles inspections et correctifs rapides, améliorations de l'expérience utilisateur, et plus.
RubyMine 2022.1 apporte la prise en charge des nouvelles fonctionnalités de Ruby et de RBS introduites dans Ruby 3.1. Cette prise en charge concerne notamment les génériques bornés, RBS collection, le transfert des arguments de blocs anonymes, et les alias de types génériques.
Cette version ajoute plusieurs nouvelles inspections qui vérifient l'utilisation des variables de types dans RBS. Elles signalent les signatures de types manquantes, l'utilisation d'arguments de types non valides, les variations de variables de types conflictuelles et les variations d'arguments de types incorrectes, entre autres.
RubyMine peut maintenant afficher les surcharges dans la recherche de la documentation rapide (Ctrl+Q). Lorsque vous appelez la documentation rapide sur une méthode, elle affiche la surcharge correspondante actuelle.
RubyMine affiche maintenant des conseils d'insertion pour le code Ruby, basés sur les signatures de types des fichiers RBS correspondants. En cliquant sur un conseil, vous accédez à la signature de type correspondante.
RubyMine signale les types inférés dans le code Ruby qui ne correspondent pas au type attendu de RBS. À partir de la version 2022.1, vous pouvez rapidement naviguer vers le fichier RBS correspondant dans de tels cas.
RubyMine comprend la balise @overload
et suggère toutes les surcharges déclarées lorsqu'il affiche les informations sur les paramètres. À partir de cette version, la saisie semi-automatique pour la balise @overload
ajoute le nom d'une méthode que vous décrivez.
Nous avons retravaillé l'interface de la boîte de dialogue New Project afin de simplifier la création de nouveaux projets, tant pour les débutants que pour les utilisateurs plus expérimentés.
generate
de Rails 7Cette version apporte la prise en charge des nouvelles options du framework JavaScript pour la génération de projets, qui ont été ajoutées dans Rails 7. Vous pouvez désormais les sélectionner lors de la création d'un nouveau projet à l'aide de la boîte de dialogue New Project.
Nous avons remplacé le journal Event Log par une nouvelle fenêtre d'outils Notifications. Cela permet d'avoir une meilleure vue d'ensemble des notifications de l'IDE pour ne rien manquer d'important. Toutes les notifications qui s'affichent dans la fenêtre d'outils sont désormais réparties en deux catégories : Suggestions et Timeline.
Nous avons supprimé l'arborescence de la boîte de dialogue Open File or Project afin que l'IDE ne calcule plus tous les nœuds de répertoire intermédiaires à l'ouverture. Cette modification améliore les performances globales de l'IDE en évitant les blocages persistants causés par les calculs de chemins sans issue.
Afin de maximiser l'espace utilisable dans la fenêtre d'outils Debugger, les libellés des onglets sont maintenant masqués par défaut.
Nous avons remanié la boîte de dialogue Structural Search and Replace afin de présenter une liste de tous les modèles et de faciliter la navigation entre eux.
Vous pouvez désormais définir l'indentation des modificateurs de visibilité (public
, protected
, private
) et du code qu'ils contiennent. Pour utiliser ce paramètre, cliquez sur Preferences/Settings | Editor | Code Style | Ruby | Tabs and Indents et cochez la case Indent visibility modifiers.
Le mode LightEdit permet de modifier des fichiers sans créer ou charger un projet complet. Vous pouvez désormais mettre votre code en forme en étant en mode LightEdit. Pour ce faire, appuyez sur Ctrl+Alt+L ou cliquez sur Code | Reformat Code dans le menu principal.
Nous avons ajouté une nouvelle icône gouttière à côté des commandes shell pour les fichiers Markdown. Cliquer sur cette icône permet d'exécuter une commande dans le terminal intégré de RubyMine. Cela peut servir si vous suivez des instructions comme les fichiers README, qui contiennent souvent des commandes shell.
Vous pouvez utiliser la nouvelle action Copy code snippet pour copier le contenu d'un bloc dans le presse-papiers.
De nouvelles options pour la barre d'outils flottante s'affichent quand vous sélectionnez du texte lors de la modification de fichiers Markdown. Grâce à cette barre d'outils, vous pouvez désormais sélectionner des styles d'en-tête et créer des listes rapidement.
Vous pouvez désormais naviguer, à partir de vos spécifications, vers les contextes partagés et les exemples partagés utilisés dans ces contextes. Pour ce faire, utilisez Ctrl+clic<0> sur une déclaration qui ajoute une ressource partagée : include_context
, include_examples
, it_behaves_like
ou it_should_behave_like
.
Nous avons considérablement remanié l'interface utilisateur de Docker dans la fenêtre d'outils Services. Cette refonte concerne les conteneurs, les images, les réseaux et les volumes.
Nous avons ajouté la prise en charge de l'API HTTP V2 de Docker Registry pour une utilisation avec Docker 1.6 et ses versions ultérieures. Vous pouvez ainsi créer des registres Docker V2 simples ou protégés par mot de passe et effectuer des actions comme afficher, pousser et extraire des images.
Nous avons amélioré la fonctionnalité d'Annotate with Git Blame afin de faciliter l'examen des modifications. RubyMine met en évidence les différences entre les lignes dans l'éditeur lorsque vous survolez une annotation et vous pouvez ouvrir la fenêtre d'outils Git Log en cliquant sur l'annotation.
La nouvelle interface utilisateur de la fenêtre d'outils Git File History est désormais indépendante du processus d'indexation. Les données sont représentées avec une nouvelle interface même si l'index Log est désactivé.
Grâce à la prise en charge intégrée de React, toutes les fonctionnalités principales doivent déjà fonctionner dans vos projets Next.js. RubyMine 2022.1 ajoute la prise en charge de certains aspects spécifiques au framework, comme les pages. L'IDE résout les chemins utilisés dans la propriété href
de vos composants Link
ainsi que dans les balises form et autres. La saisie semi-automatique du code, la navigation et les refactorisations fonctionnent également à présent.
Cette version apporte une intégration complète avec Volta, un gestionnaire d'outils JavaScript. RubyMine reconnaît ainsi automatiquement Yarn et npm s'ils sont installés à l'aide de Volta.
extend
ajoute des méthodes à une classe singleton et ne doit pas avoir accès aux variables de types. RubyMine affiche désormais une erreur si on essaye d'utiliser des variables de types avec extend
: RUBY-29099. corepack enable
dans le terminal intégré. La fonctionnalité n'est pas activée par défaut. webpack.config.js
.