RubyMine 2023.3 est disponible :
prise en charge améliorée de l'AI Assistant, nouvelles bibliothèques et technologies, et bien plus

JetBrains annonce la disponibilité de la troisième mise à jour majeure de l'année de RubyMine, son EDI Ruby on Rails. RubyMine 2023.3 vient avec une prise en charge améliorée de l'AI Assistant, les chemins personnalisés pour les applications et moteurs Rails, l'analyse du code pour les variables locales strictes de Rails 7.1 et des déclarations supplémentaires de RBS. On note encore parmi les nouveautés et améliorations une mise à jour des moteurs de rendu de type du Débogeur, RuboCop en mode serveur, des inspections de code Brakeman et bien plus.

AI Assistant

L'AI Assistant est maintenant disponible pour tous, avec de nombreuses nouveautés et fonctionnalités améliorées pour rendre votre travail avec les EDI de JetBrains encore plus productif.

Prise en charge des suggestions de noms générées par IA

Vous pouvez désormais activer les suggestions de noms générées par IA pour les variables locales et les paramètres dans votre code Ruby. Cette action est disponible lors de l'utilisation de la refactorisation inline Rename. Pour activer les suggestions de noms, cochez la case Provide AI-generated name suggestions dans Settings | Tools | AI Assistant.

Amélioration des contextes Ruby

JetBrains continue d'améliorer les contextes Ruby et la façon dont les LLM analysent votre base de code. Ces modifications ont un impact sur la façon dont l'AI Assistant génère la documentation, explique votre code Ruby, reconnaît le contenu des fichiers et plus.

Génération de tests unitaires

L'AI Assistant vous permet de générer sans effort des tests pour les méthodes publiques dans votre application Ruby ou Rails. Sélectionnez la méthode pour laquelle vous souhaitez préparer les tests et appuyez sur ⌥ + Entrée sous macOS ou Alt + Entrée sous Windows. Dans le menu contextuel, sélectionnez AI Actions, puis Generate Unit Tests.

Pour utiliser l'AI Assistant dans RubyMine en tant que fonctionnalité supplémentaire, vous devez disposer d'un abonnement à JetBrains AI Service.

Rails

Chemins personnalisés pour les applications et les moteurs Rails

RubyMine détecte l'utilisation de chemins personnalisés dans vos applications et moteurs Rails. En plus des chemins par défaut comme app, app/controllers et app/models, l'EDI reconnaît tout autre emplacement configuré dans votre projet. Vous pouvez ainsi redéfinir la structure par défaut et continuer de bénéficier des fonctionnalités d'analyse du code de RubyMine. Pour configurer des chemins personnalisés, allez dans Settings | Languages & Frameworks | Rails | Paths.


Importation automatique des chemins Rails

JetBrains a implémenté une nouvelle option qui permet de détecter automatiquement les chemins personnalisés dans votre application Rails. Chaque fois que vous ouvrez votre projet, RubyMine tente d'importer la configuration des chemins Rails en arrière-plan.

Analyse du code pour les modèles, les contrôleurs et les mailers stockés en dehors de leurs emplacements par défaut

Toutes vos fonctionnalités préférées d'analyse du code, telles que la navigation et la prise en charge des types, fonctionnent maintenant avec les modèles, les contrôleurs et les mailers, même si ces derniers se trouvent en dehors de leurs répertoires par défaut.

Analyse du code pour les variables locales strictes de Rails 7.1

RubyMine prend désormais en charge les fonctionnalités de résolution, la saisie semi-automatique, Find Usages, Rename, et la navigation pour les variables locales strictes.

Inférence de type

Affichage du type pour les types self personnalisés dans les blocs

La nouvelle version de RubyMine prend en charge la personnalisation du type self des blocs de RBS vers Ruby. Cette fonctionnalité aide à reconnaître les DSL et améliore l'analyse et la compréhension du code.

Annotation personnalisée pour spécifier le type de self des blocs

Vous pouvez maintenant déclarer explicitement le type self directement à l'intérieur des blocs en utilisant un commentaire de type YARD.

Prise en charge des déclarations supplémentaires de RBS

JetBrains a implémenté une prise en charge basique pour reconnaître les déclarations supplémentaires de RBS lorsqu'elles ne sont pas présentes dans vos fichiers Ruby. Cette prise en charge est particulièrement intéressante pour les projets qui utilisent beaucoup la réflexion, car ces déclarations peuvent ensuite être utilisées pour l'auto-complétion et pour d'autres fonctionnalités de RubyMine. La fonctionnalité est disponible pour les classes, les modules, les constantes, les méthodes et les variables.

Débogueur

Mise à jour pour les outils de rendu de type du débogueur

Vous n'avez plus besoin de redémarrer le débogueur pour appliquer des modifications aux outils de rendu de type. Cliquez simplement sur le bouton Apply et RubyMine les rechargera instantanément.

Outils et bibliothèques

RuboCop en mode serveur

RubyMine prend automatiquement en charge l'exécution de RuboCop en mode serveur. Pour utiliser cette fonctionnalité, les conditions suivantes doivent être respectées :

  • Linux ou macOS
  • MRI Ruby local 2.3 ou version ultérieure
  • RuboCop 1.31 ou version ultérieure

Inspections de code Brakeman

Vous pouvez désormais consulter facilement les informations de Brakeman dans RubyMine, dans un format convivial. Résolvez rapidement les problèmes de sécurité grâce à un accès facile à la documentation de Brakeman, aux indicateurs de confiance et bien plus. Assurez-vous que la gemme brakeman est installée, puis allez dans Code | Analyze Code | Run inspection by name pour lancer l'analyse.


Spécifications paramétrées avec rspec-parameterized

RubyMine fournit une prise en charge complète de la syntaxe RSpec:: Parameterized, qui inclut notamment la reconnaissance, la résolution et des suggestions de saisie semi-automatique. JetBrains a également implémenté des configurations Run/Debug pour améliorer votre expérience de test.


Déclarations de fixtures avec let_it_be

JetBrains a ajouté la prise en charge des déclarations de fixtures dans les tests RSpec utilisant des blocs let_it_be. Cette prise en charge comprend des fonctionnalités telles que la résolution de variable, la mise en évidence de la syntaxe et la gestion automatique de l'insertion de blocs do pour before_all. Pour l'activer, vous devez installer la gemme test-prof.


Nouveautés et téléchargement de RubyMine 2023.3