RubyMine 2019.2 ajoute la prise en charge de Rails 6 et Ruby 2.7, améliore la prise en charge de YARD et le débogueur, et intègre de nombreuses améliorations à la plateforme.
Notre débogueur utilisait TracePoint :line
pour suivre l'exécution du programme ligne par ligne. Pour la version 2019.2, nous avions conçu une extension native pour MRI permettant au débogueur de choisir à quels fragments de code l'exécution devait être suspendue, afin d'éviter toute surcharge au reste du code. Nous avons ainsi radicalement accéléré le débogueur et implémenté les nouvelles fonctionnalités ci-dessous.
Auparavant, si vous tombiez sur une ligne avec beaucoup de méthodes dans une session de débogage, RubyMine n'était capable de s'exécuter pas à pas que dans la première méthode d'une ligne. Le nouveau Smart Step Into élimine cette restriction et vous permet de lancer des exécutions pas à pas et d'examiner chaque méthode ou appel de bloc spécifique situé sur la même ligne.
Avec la nouvelle version, vous pouvez définir des points d'arrêt non seulement sur des lignes mais aussi sur des blocs. Lorsque vous cliquez sur la gouttière de gauche pour définir un point de rupture sur une ligne contenant un bloc, RubyMine vous demandera si vous voulez définir un point d'arrêt sur une ligne, un bloc ou les deux.
Consultez Déboguer dans RubyMine pour découvrir en détail comment déboguer les scripts Ruby and Rails dans RubyMine.
RubyMine 2019.2 prend en charge la reconnaissance des schémas, qui a été introduite dans le premier aperçu de Ruby 2.7 en tant que fonctionnalité expérimentale. L'IDE identifie la nouvelle syntaxe et vous aide à naviguer, à trouver les utilisations et à renommer les objets.
Plus d'informations sur la reconnaissance de schémas dans Ruby
La nouvelle version de RubyMine reconnaît la syntaxe des paramètres numérotés et affiche/trouve leurs utilisations. Ceci est une autre fonctionnalité expérimentale de Ruby 2.7 qui vous permet d'assigner des valeurs dans des blocs en utilisant un numéro de paramètre comme paramètre par défaut, au lieu de définir une variable de bloc.
RubyMine 2019.2 prend en charge Action Mailbox qui sera disponible avec Rails 6. L'IDE propose la saisie automatique des méthodes de routage et des rappels, et permet de naviguer entre leurs implémentations et leurs utilisations.
Nous avons également ajouté quelques inspections qui vous permettent de savoir si vous avez oublié d'ajouter un appel routing
dans ApplicationMailbox
et une méthode process
dans votre mailbox. Cette dernière propose également un correctif rapide.
Plus d'informations sur l'utilisation d'Action Mailbox dans cet épisode détaillé de GoRails.
Nous avons ajouté la bonne prise en charge du code pour ActiveRecord::Enum
. Cela inclut la saisie automatique du code, la navigation et la recherche des utilisations les noms et méthodes des énumérations. Les portées négatives pour emums, introduites dans Rails 6, sont également prises en charge.
Nous améliorons progressivement notre prise en charge de YARD pour vous aider à créer et gérer les balises YARD et obtenir une meilleure saisie automatique du code dans RubyMine en fonction des annotations YARD. La nouvelle version ajoute des annotations et des inspections de type appropriées pour les balises @overload
et @yieldparam
.
Consultez la page Prise en charge de YARD dans RubyMine pour un aperçu détaillé des fonctionnalités et des nouvelles améliorations de RubyMine concernant YARD.
Avec la v2019.2, vous pouvez renommer (Maj+F6) des factory, des séquences et des caractéristiques. L'IDE trouve leurs définitions et propose de les renommer ainsi que toutes les utilisations, de même que le nom du fichier s'il correspond à celui de la factory.
Nous avons également ajouté des factory, des séquences et des caractéristiques à la vue File Structure (Alt+F7 et à la fenêtre contextuelle (Ctrl + F12), ainsi que la possibilité de les supprimer sans risque (Refactor | Safe Delete).
La nouvelle intention Propagate to destructuring (Alt-Entrée) vous permet de remplacer une variable supplémentaire si possible par une autre déstructuration. Pour supprimer complètement une déstructuration, utilisez l'action d'intention Replace destructuring with property or index access.
Lorsque vous renommez un symbole dans un fichier JavaScript ou TypeScript, l'IDE regroupe maintenant les utilisations dynamiques et, par défaut, les exclut de la refactorisation. Cela permet de rendre la refactorisation plus précise et vous donne plus de contrôle sur ce qui doit être renommé dans la fenêtre d'outils Refactoring Preview.
La saisie automatique du code pour les composants et leurs accessoires depuis Vuetify, BootstrapVue, Quasar et certaines autres bibliothèques de composants Vue, est maintenant plus précise. Une nouvelle approche de la manipulation de ces bibliothèques dans l'IDE a rendu cela possible.
La nouvelle inspection Duplicate code fragment vérifie votre code à la volée et met immédiatement en évidence les doublons potentiels dans l'éditeur. Cela fonctionne pour JavaScript, TypeScript, CSS, Sass, SCSS et Less.
Consultez les nouveautés de WebStorm pour en savoir plus sur les améliorations JavaScript disponibles dans RubyMine 2019.2.
Avec la v2019.2, vous pouvez gérer différents styles de code dans différentes parties de vos projets en ajoutant plusieurs fichiers .editorconfig
. Hormis les options EditorConfig standards, qui sont prises en charge depuis longtemps, vous devez à présent utiliser des propriétés propres à l'IDE couvrant toutes les options de style de code de l'IDE.
La nouvelle version prend entièrement en charge les scripts shell. Cela inclut saisie automatique du code, la documentation rapide, le renommage textuel pour les fichiers .sh
et .bash
, et les configurations d'exécution des scripts shell. L'IDE intègre également ShellCheck pour le linting et shfmt pour le formatage du code.
Dans les fichiers .gitignore
, l'IDE propose désormais des suggestions de saisie de code pour les fichiers et dossiers. Utilisez Ctrl + clic sur le nom pour accéder directement à ce fichier ou dossier dans la fenêtre d'outils Project. Vous pouvez également ajouter rapidement des fichiers au fichier .gitignore
à partir de la vue Project et de l'onglet Local Changes – faites un clic droit dessus et sélectionnez Add to .gitignore.
Vous pouvez maintenant rechercher les données dans vos bases de données même si vous ne connaissez pas leur emplacement. Faites un clic droit sur la source de données que vous voulez rechercher et sélectionnez Full-text Search (Ctrl+Alt+Shift+F). Les résultats de votre recherche seront filtrés pour n'afficher que les chaînes dans lesquelles se trouvent les données.
Consultez les nouveautés de DataGrip pour en savoir plus sur les autres améliorations de bases de données disponibles dans RubyMine 2019.2.