JetBrains annonce la disponibilité de la deuxième mise à jour majeure de l'année de RubyMine, son EDI Ruby on Rails. RubyMine 2024.2 vient avec un bon lot de nouveautés et améliorations que nous allons présenter ici avec plus de détails.
Rails
Complétion pour les fichiers de configuration Kamal
RubyMine fournit maintenant la complétion de code pour les fichiers de configuration Kamal. Lors de la modification de fichiers deploy.yaml et .env, vous verrez des suggestions de complétion pour les propriétés spécifiques à Kamal.
Analyse du code pour la limitation du débit
Rails 8 introduit la fonction rate_limit à utiliser avec les contrôleurs. Pour vous permettre de profiter de cette nouvelle fonctionnalité, JetBrains a implémenté une analyse du code dédiée, comprenant la mise en évidence et la saisie semi-automatique du code.
Analyse du code pour la protection du navigateur
Dans RubyMine 2024.2, JetBrains a ajouté des informations sur le code pour la méthode de protection du navigateur. Cela inclut la mise en évidence de la fonction allow_browser, ainsi que la saisie semi-automatique des noms de navigateur et des arguments only.
Validations et rappels de modèles dans la vue Structure de Rails
Vous pouvez visualiser les validations et les rappels de modèle dans la vue Structure et les masquer si nécessaire. De plus, des rappels sont affichés pour certaines syntaxes, telles que les utilisations du mot-clé ou de la méthode after_create.
Stimulus
RubyMine 2024.2 offre une prise en charge intégrée de Stimulus, un framework JavaScript qui s'intègre avec le HTML statique et les éléments DOM. Cette prise en charge inclut la saisie semi-automatique de code, la navigation et la refactorisation Rename. Le plugin Stimulus est intégré à RubyMine et fonctionne dans les fichiers .erb. La gemme stimulus-rails est livrée par défaut avec Rails à partir de la version 7.
Ruby
Suggestion pour changer de SDK Ruby à l'ouverture du projet
Lorsque vous ouvrez votre projet, RubyMine vérifie que le SDK Ruby configuré correspond aux fichiers de configuration : .rvmrc pour les SDK RVM ; .ruby-version, .ruby-gemset ou .rbenv-version pour les SDK rbenv ; .tool-versions pour les SDK asdf ; ou .versions.conf pour les SDK RVM.
RubyMine suggère de sélectionner un SDK pertinent si celui qui correspond aux fichiers de configuration du module est déjà installé.
Installation de Ruby à partir de la notification indiquant que le SDK est introuvable
Si vous utilisez rbenv, rvm ou asdf pour gérer vos versions Ruby, RubyMine vous suggérera d'installer la version appropriée du SDK Ruby en fonction des fichiers de configuration de votre projet (par exemple, .rvmrc, .ruby-version ou .rbenv-version). RubyMine vérifie le SDK Ruby sélectionné et les fichiers de configuration lors de l'ouverture du projet.
AI Assistant
Saisie semi-automatique inline basée sur l'IA à la fin des lignes
La fonctionnalité de saisie semi-automatique de l'AI Assistant peut à présent être activée à la fin des lignes avec du contenu. Elle fonctionne donc après ., ::, et après les expressions binaires.
Amélioration de la saisie semi-automatique de code multiligne
Les prompts pour la saisie semi-automatique de code multiligne requièrent désormais des détails techniques spécifiques, ce qui favorise la génération de suggestions plus pertinentes. Ces détails incluent la version de Ruby utilisée, le type de projet (Rails ou Gem) sur lequel vous travaillez, le framework de test utilisé, le nom du fichier en cours et les cinq gemmes les plus utilisées dans le projet.
Amélioration du contexte pour Rails
L'AI Assistant fonctionne plus efficacement avec le contexte des applications Rails. Par exemple, si vous demandez une explication de code pour un contrôleur, l'AI Assistant tient maintenant compte du modèle et des routes correspondants.
Fonctionnalités et améliorations
Saisie semi-automatique pour les commandes liées à Ruby dans le nouveau terminal
Le nouveau terminal fournit la complétion automatique pour les commandes, options, sous-commandes, arguments, et plus. Dans RubyMine 2024.2, JetBrains a ajouté la saisie semi-automatique pour les commandes suivantes : ruby, rails, rake, bundle, rbenv, irb, pry, rbs et rspec.
Rendu Markdown en mode lecteur et documentation rapide
Étant donné que Rails 8 utilise la documentation Markdown au lieu de RDoc, JetBrains a mis à disposition le rendu Markdown en mode lecteur et dans les fenêtres contextuelles de documentation rapide. Cette fonctionnalité s'applique lorsqu'un fichier comporte la directive # :markup: markdown au début, ou si la racine du projet comporte un fichier .rdoc_options contenant la ligne markup : markdown.
Configurations RuboCop personnalisées
Dans Settings | Tools | RuboCop, vous pouvez maintenant sélectionner un fichier de configuration RuboCop personnalisé. RubyMine transmet le chemin d'accès à votre fichier de configuration en tant qu'argument de commande RuboCop avec l'option --config, ce qui garantit qu'il fonctionne même avec des SDK distants.
Si vous ne spécifiez pas de fichier, RubyMine utilisera .rubocop.yaml, ou les paramètres par défaut si .rubocop.yaml est introuvable dans votre projet.
Option pour ajuster les espaces dans les littéraux de tableaux
Un nouveau paramètre de formatage vous permet de contrôler les espaces dans les littéraux de tableaux. Ce nouveau paramètre est conçu pour aligner RubyMine sur le comportement de RuboCop. il est disponible dans Settings | Editor | Code Style | Ruby | Spaces | Within array literals.
Bun en tant que framework JavaScript pour les projets Rails
Lors de la création d'une nouvelle application Rails, vous pouvez maintenant spécifier Bun comme framework JavaScript. Veuillez noter que cette fonctionnalité n'est disponible que pour Rails 7.1.0.beta1 et les versions ultérieures.
Prise en charge des types de fonctions RBS avec des paramètres non typés
Avec l'introduction de RBS 3.5, RubyMine prend en charge la déclaration de méthodes avec des paramètres non typés. Il ne renvoie pas les erreurs de syntaxe redondantes pour de telles méthodes, mais fournit des conseils d'insertion appropriés pour celles-ci.
Clés d'enregistrement RBS facultatives
RubyMine analyse et reconnaît désormais les champs facultatifs avec différents types de clés. De plus, JetBrains a amélioré les vérifications des sous-types.
Nouvelle interface utilisateur par défaut
JetBrains a activé la nouvelle interface utilisateur pour tous les utilisateurs de RubyMine dans la version 2024.2. La nouvelle interface utilisateur réduit l'encombrement visuel afin de faciliter l'accès aux fonctionnalités essentielles et révèle progressivement des fonctionnalités plus avancées selon les besoins. Épurée et moderne, elle offre des commandes plus grandes et plus faciles à utiliser, une palette de couleurs cohérente, des icônes claires et lisibles, un contraste accru et de meilleurs accents.
Nouveautés et téléchargement de RubyMine 2024.2
RubyMine 2024.2 est disponible :
Mises à jour pour Rails, prise en charge intégrée du framework JavaScript Stimulus et bien d'autres améliorations
RubyMine 2024.2 est disponible :
Mises à jour pour Rails, prise en charge intégrée du framework JavaScript Stimulus et bien d'autres améliorations
Le , par Michael Guilloux
Une erreur dans cette actualité ? Signalez-nous-la !