RubyMine 2021.3 est disponible en Release Candidate et apporte des améliorations du client HTTP
ainsi qu'au niveau des outils de gestion de base de données

Outils de base de données

Base de données dans le système de contrôle de version

Une source de données DDL est une source de données virtuelle dont le schéma est basé sur un ensemble de scripts SQL. Le stockage de ces fichiers dans le système de contrôle de version est un moyen de conserver votre base de données sous le VCS.

À partir de cette version, vous pouvez :
  • Générer une source de données DDL à partir d'une vraie
  • Utilisez la source de données DDL pour mapper la vraie
  • Comparez-les et synchronisez-les dans les deux sens

Nom : un.png
Affichages : 15942
Taille : 39,0 Ko

Agrégats

JetBrains a ajouté la possibilité d'afficher une vue agrégée pour une plage de cellules. Cela vous aidera à gérer vos données et vous évitera d'avoir à écrire des requêtes supplémentaires.

Sélectionnez simplement la plage de cellules pour laquelle vous souhaitez afficher la vue, puis cliquez avec le bouton droit et sélectionnez Afficher la vue agrégée. Une valeur agrégée est affichée dans la barre d'état et vous pouvez choisir la valeur que vous souhaitez.

Nom : deux.png
Affichages : 372
Taille : 50,9 Ko

Nouvelle fenêtre de comparaison de base de données

Vous pouvez maintenant utiliser la nouvelle fenêtre de comparaison de la base de données pour comparer deux schémas ou objets : sélectionnez-les simplement et appuyez sur ⌘D / Ctrl+D.

La première ligne est la détection automatique de l'en-tête

A partir de cette version, lorsque vous ouvrez ou importez un fichier CSV, RubyMine détecte automatiquement que la première ligne est l'en-tête et contient les noms des colonnes.

Nom : trois.png
Affichages : 375
Taille : 23,7 Ko

[Oracle] Niveaux d'introspection

L'introspection est le processus d'obtention des métadonnées de la base de données, telles que les noms d'objets et le code source. RubyMine en a besoin pour fournir une assistance rapide au codage, à la navigation et à la recherche.

Pour la plupart des travaux quotidiens, et même pour une aide au codage efficace, il n'est pas nécessaire de charger des sources d'objets. Dans de nombreux cas, le simple fait d'avoir des noms d'objet de base de données devrait être suffisant pour fournir une saisie et une navigation correctes du code. Ainsi, JetBrains a introduit trois niveaux d'introspection pour les bases de données Oracle :
  • Niveau 1 : noms de tous les objets pris en charge et de leurs signatures, à l'exclusion des noms des colonnes d'index et des variables de package privé
  • Niveau 2 : Tout sauf le code source
  • Niveau 3 : Tout

L'introspection est la plus rapide au niveau 1 et la plus lente au niveau 3.

Utilisez le menu contextuel pour changer le niveau d'introspection comme il convient :

Nom : quatre.png
Affichages : 367
Taille : 54,4 Ko

Le niveau d'introspection peut être défini pour un schéma ou pour l'ensemble de la base de données. Les schémas héritent de leur niveau d'introspection de la base de données, mais il peut également être défini indépendamment.

Améliorations du client HTTP

Dans cette version, l'équipe a amélioré le client HTTP intégré. Elle a ajouté la prise en charge des requêtes gRPC, la redirection de sortie vers un fichier ou un répertoire personnalisé, la prise en charge des flux texte et JSON, la prise en charge des identifiants de requête HTTP et la prise en charge des réponses binaires.

Réponses binaires dans le client HTTP

Le client HTTP affiche un aperçu de l'image dans la console de réponse si une réponse est une image.

S'il n'est pas clair s'il s'agit d'une réponse textuelle, le client HTTP n'affichera pas l'aperçu.

Requêtes gRPC dans le client HTTP

À partir de la v2021.3, le client HTTP de RubyMine prend en charge les requêtes gRPC (via le plugin gRPC).

Pour que le client HTTP traite vos requêtes comme gRPC, commencez simplement vos requêtes avec le mot-clé GRPC.

Le client HTTP fournit désormais la complétion pour gRPC : les champs des messages acceptés dans le corps de la requête, tous les services gRPC connus, les méthodes unaires et de streaming de serveur d'un serveur particulier.

Actuellement, le client HTTP peut exécuter des types RPC unaires et de streaming serveur. Comme dans les requêtes HTTP ordinaires, le corps de la requête et les réponses sont des fichiers JSON simples.

Prise en charge des flux de texte et des flux JSON dans le client HTTP

Il est désormais plus facile de tester les applications de streaming dans l'IDE. RubyMine 201.3 prend en charge les types de contenu text/event-stream, application/stream+json et application/x-ndjson.

Cela signifie que le client HTTP n'attendra plus la fin d'un flux et affichera à la place la sortie à la volée.

Le client HTTP écoutera également la fin d'un flux et affichera un message lorsque le processus est terminé.

Redirection de sortie vers un fichier ou un répertoire personnalisé

Le client HTTP peut désormais rediriger la sortie vers un fichier ou un répertoire personnalisé. Il prend en charge deux opérateurs pour les redirections forcées et logicielles :
  • L'opérateur >> crée toujours un nouveau fichier, ajoutant un suffixe -n à un nom de fichier si le nom de fichier demandé existe déjà.
  • L'opérateur >>! réécrit le fichier s'il existe déjà.

Prise en charge des identifiants de requête HTTP

RubyMine 2021.3 comprend désormais les identifiants (ou noms) des requêtes.

L'EDI comprend à la fois les identifiants déclarés sous forme de commentaire avec @name et ceux déclarés sous forme de texte dans le premier séparateur (###).

Vous pouvez appeler une demande par son identifiant à partir de la fenêtre de l'outil Services ou des boîtes de dialogue Exécuter la configuration, Exécuter n'importe quoi ou Rechercher partout.

En savoir plus sur RubyMine 2021.3