IntelliJ IDEA 2021.3 ofrece compatibilidad con desarrollo remoto (Beta) e introduce una nueva forma de solucionar problemas del IDE con la acción Repair IDE.... También incorpora actualizaciones del depurador y la inspección de condiciones constantes para Kotlin, junto con otros cambios verdaderamente prácticos. Las siguientes descripciones breves explican con más detalle estas y otras funcionalidades dignas de mención.
IntelliJ IDEA Ultimate ahora admite una versión Beta de nuestro flujo de trabajo de desarrollo remoto. Le permite conectarse a una máquina remota que ejecute el backend de IntelliJ IDEA desde cualquier parte del mundo. Todo el procesamiento se realizará en esa potente máquina remota, y podrá trabajar en su proyecto con la misma fluidez que si estuviera en su máquina local. Esta funcionalidad puede iniciarse desde la pantalla de bienvenida de IntelliJ IDEA o desde una nueva aplicación llamada JetBrains Gateway, que está disponible en JetBrains Toolbox App.
Además, puede crear, precompilar, compartir, reproducir, hibernar y gestionar entornos de desarrollo con Space, una plataforma unificada para todo el proceso de desarrollo de software.
Consulte este artículo del blog para conocer más detalles.
IntelliJ IDEA 2021.3 presenta una nueva manera más rápida de diagnosticar y solucionar los problemas que hacen que su IDE no funcione correctamente. Si su IDE no funciona correctamente, invoque la nueva acción Repair IDE... del menú File. Esta le guiará a través de una secuencia de pasos para solucionar algunos de los problemas más comunes.
Hemos añadido la nueva inspección Constant conditions, que ayuda a IntelliJ IDEA a informar de condiciones y valores no triviales que se sabe estáticamente que son siempre verdaderos, falsos, nulos o cero. Funciona de la misma manera que la inspección similar para Java, y es compatible con la mayoría de las mismas comprobaciones. Encontrará esta nueva inspección en Preferences/ Settings | Editor | Inspections | Kotlin | Probable bugs.
Si desea depurar una expresión con llamadas a método encadenadas y lambdas, la acción Step Into le ofrecerá la funcionalidad de Smart Step Into de forma predeterminada. Destaca los métodos y lambdas donde puede usar Step Into. Para utilizarla, haga clic en el botón Step Into situado en el panel superior de la ventana de herramientas Debug o utilice el acceso directo F7. El IDE resaltará los lugares en los que puede entrar en el código, y podrá seleccionar la línea que desee haciendo clic en ella.
El depurador ahora es capaz de detectar las funciones inline de Kotlin y mostrar las llamadas a funciones inline en el panel de traza de pila. Puede navegar a estas llamadas e inspeccionar y evaluar las variables de cada marco.
Como nos han solicitado, hemos hecho posible cambiar el tamaño de la fuente en todas las pestañas abiertas simultáneamente con ⌘+rueda del ratón en macOS o Ctrl+rueda del ratón en Windows y Linux. Para habilitar esta función, vaya a Preferences/ Settings | Editor | General, escoja Change font size with Command + mouse wheel in y seleccione All editors. Si selecciona Active editor, el acceso directo cambiará el tamaño de la fuente solo en el archivo en el que esté trabajando actualmente.
IntelliJ IDEA tiene una opción muy útil que le permite previsualizar los resultados de las acciones de intención y los arreglos rápidos antes de aplicarlos a su código. Esta funcionalidad está disponible en el menú Intention actions. Para activar la vista previa, pulse F1 en macOS o Ctrl+Q en Windows y Linux.
Desde su introducción en la v2020.1, hemos seguido trabajando para mejorar la vista previa de intenciones. En IntelliJ IDEA 2021.3, funciona para más acciones de intención y arreglos rápidos en Kotlin, y el mensaje «Preview isn't available» se ha sustituido por descripciones HTML más informativas de las acciones de intención que no son compatibles. Además, en el caso de una acción que modifique varios archivos, la vista previa muestra parte de un posible resultado. Este resultado parcial debería ser suficiente para darle una idea general de lo que la acción cambiará.
En IntelliJ IDEA 2021.3 se pueden crear tablas con facilidad. Simplemente invoque el menú contextual y seleccione Insert | Table. ¡Y ya está! Puede seleccionar el tamaño preferido utilizando el teclado o la acción de pasar el ratón por encima.
El ancho de las celdas de la tabla se ajustará a medida que escriba. Puede editar el contenido de la tabla utilizando las barras de herramientas flotantes.
Para crear una nueva fila puede usar Mayús+Intro, y Tab para navegar a la siguiente celda.
Trabajar con pestañas del editor ahora es más sencillo. Solo tiene que hacer clic en los tres puntos de la esquina derecha del panel de la pestaña para acceder a todas las acciones de esa pestaña.
Hemos introducido la nueva ventana de herramientas Bookmarks concebida para reemplazar una instancia similar: Favorites. Así que, a partir de ahora, solo tiene que utilizar el atajo F3 en macOS o F11 en Windows y Linux para marcar sus archivos, carpetas y clases como importantes.
Cuando añade un marcador, IntelliJ IDEA lo coloca de forma predeterminada en el nodo con el nombre de su proyecto en la ventana de herramientas Bookmarks. Cada vez que añada un nuevo marcador, aparecerá en la parte superior de la lista dentro de este nodo. Puede clasificar sus marcadores por tipo utilizando la opción Sort Groups and Bookmarks en la configuración de la ventana de herramientas. También puede crear nuevos nodos y arrastrar y soltar elementos en ellos.
En la v2021.3, hemos hecho posible dividir la ventana de herramientas Run con pestañas. Esto le permite ejecutar varias configuraciones simultáneamente y ver todos los resultados.
Para dividir la ventana, arrastre la pestaña que desea ver al área resaltada dentro de la ventana de herramientas Run y suéltela allí. Para eliminar la división de la ventana, haga clic con el botón derecho en el panel superior y seleccione Unsplit en el menú contextual.
Cuando se buscan acciones, Search Everywhere en IntelliJ IDEA ahora funciona con aprendizaje automático de forma predeterminada. Hemos entrenado una fórmula basada en ML que tiene en cuenta:
Esperamos que los modelos basados en ML aumenten la calidad de sus búsquedas y le den resultados adaptados a sus necesidades específicas.
Cuando se buscan usos de una implementación de método mediante ⌥F7 en macOS o Alt+F7 en Windows y Linux, el IDE ya no pregunta si desea encontrar usos del método base en una ventana emergente. En su lugar, IntelliJ IDEA utilizará de forma predeterminada los métodos de la jerarquía de nivel superior como objetivos de su búsqueda. Si desea cambiar este comportamiento, desactive la casilla Search for base method usages en la configuración de la ventana de herramientas Find Usages, a la que puede acceder haciendo clic en el icono del engranaje.
El cuadro de diálogo Show Usages ahora cuenta con varias nuevas y prácticas funcionalidades. Hemos introducido la vista previa del código fuente por uso encontrado, que puede ver haciendo clic en el icono cuadrado del panel superior de la barra de herramientas. Otra actualización le permite cambiar el alcance de su búsqueda con la nueva lista desplegable situada junto al icono de vista previa. Además, la barra de título de la ventana muestra ahora el tipo de elemento de código que se busca y el número de usos encontrados.
Otra actualización menor pero muy práctica le permite establecer el ancho del cuadro de diálogo, que el IDE conservará la próxima vez que lo invoque.
En la v2021.3 notará algunos cambios en los nodos del IntelliJ IDEA Project Wizard.
Ahora puede seleccionar el nodo Empty Project para crear un proyecto básico para trabajar con archivos separados de diferentes tipos y añadir clases Java y Kotlin. El IDE configurará de forma automática el proyecto para que pueda compilarlo si hay alguna clase Java o Kotlin.
El nuevo nodo de Multi-Module Project permite crear un proyecto con una estructura compleja desde cero. Una vez creado el proyecto, se abrirá el cuadro de diálogo Project Structure y podrá añadir varios módulos.
IntelliJ IDEA 2021.3 aborda algunos problemas de accesibilidad para que el trabajo con el lector de pantalla sea más cómodo. Respondiendo a sus peticiones, hemos desactivado la ventana emergente del widget de herramientas y la ventana emergente de documentación rápida que solía aparecer al pasar el ratón por encima. También hemos solucionado un problema con la llamada al cuadro de diálogo Go to Declaration.
En esta versión también se ha mejorado la compatibilidad con la accesibilidad en macOS. Hemos resuelto varios problemas con el enfoque en la voz en off y hemos hecho posible que los lectores de pantalla detecten los elementos de la lista en el asistente de nuevo proyecto cuando cree proyectos. Para minimizar las distracciones mientras codificas, hemos disminuido el número de ayudas emergentes que reproducen sonidos.
IntelliJ IDEA ahora le advierte sobre peligros como la inyección SQL y defectos XSS, fugas de datos sensibles y deserialización no segura. También evita que se pasen datos no seguros a métodos seguros. Estas advertencias adicionales las indica nuestra nueva inspección Non-safe string is passed to a safe method.
Para que esta inspección funcione, es necesario anotar las cadenas como @Untainted
("seguro") o @Tainted
("no seguro"). Estas anotaciones serán válidas cuando se añada la dependencia org.checkerframework.checker.tainting.qual
.
Hemos añadido dos inspecciones que pueden ayudarle a simplificar su código. La primera sugiere que se sustituya collect(toList())
por .toList()
. Puede utilizarla con las versiones de Java 16 y posteriores. Otra inspección le pide que sustituya collection.addAll(List.of("x"))
por collection.add(x)
, y map.putAll(Map.of("a", "b"))
por map.put("a", "b")
.
Cuando se introduce una variable local en Java, los ajustes aplicables a esta ya no aparecen en una ventana emergente, que solía cubrir el código que se estaba escribiendo. En su lugar, puede acceder a estas opciones haciendo clic en el icono de la rueda dentada junto a una variable o utilizando el atajo de teclado ⌥⇧O en macOS o Alt+Mayús+O en Windows.
También hemos mejorado la refactorización Introduce parameter. Cuando invoca esta refactorización, con ⌥⌘P en macOS o Ctrl+Alt+P en Windows y Linux, el IDE le pregunta dónde desea reemplazar las ocurrencias. Después de efectuar esta selección, aparecerá un icono de engranaje, y al hacer clic en él podrá configurar más ajustes para la refactorización.
A veces puede ser necesario definir rutas de clase personalizadas en el cuadro de diálogo Run/Debug Configurations para cada configuración. A partir de esta versión, es posible hacerlo seleccionando Modify options | Modify classpath.
Hemos introducido una nueva refactorización que permite extraer constantes en Kotlin. Para utilizarla, sitúe el signo de intercalación sobre una cadena y pulse ⌥⌘C en macOS o Ctrl+Alt+C en Windows y Linux.
La inspección Possibly blocking call in non-blocking context (llamada posiblemente bloqueante en un contexto no bloqueante) le advierte si utiliza una corrutina en el contexto equivocado. En esta versión, la inspección funciona no solo como una advertencia, sino también como un arreglo rápido dependiente del contexto.
Además, hemos introducido otras mejoras. Esta inspección cubre ahora más casos, y puede personalizarla para que funcione mejor en su entorno particular.
A veces puede ser difícil entender las distintas formas de declarar los rangos que admite Kotlin. Para hacerlo un poco más fácil, hemos añadido consejos inline que explican con signos matemáticos sencillos lo que significan las palabras o los símbolos de los rangos. Si no necesita esta funcionalidad, puede desactivarla fácilmente haciendo clic con el botón derecho en un consejo y seleccionando Disable ‘Ranges’ hints type.
Hemos rediseñado el diseño del asistente New Project añadiendo consejos para todos los campos, para que pueda entender fácilmente la información que requieren. La sección de plantillas también se ha actualizado: hemos eliminado algunas de las plantillas menos populares y hemos añadido una nueva que permite crear una aplicación Compose Web.
Y, por último, el paso de configuración del proyecto se ha simplificado mucho. Ahora solo tiene que rellenar los campos básicos.
El objetivo principal de esta versión ha sido la compatibilidad con Scala 3. Hemos añadido resaltado, navegación y autocompletado para los marcadores end
. Ahora dispone de autocompletado para las palabras clave given
, using
y export
, las soft keywords y la sintaxis silenciosa. El lector TASTy ahora puede analizar el objeto del paquete
, así como la varianza y los límites en los tipos de tipo superior. El resaltado de los errores del lexer y el parser es ahora mucho más rápido. Hay más inspecciones compatibles con Scala 3. Hemos mejorado la resolución de las importaciones given
y admitido los miembros final
de nivel superior y abstract lazy val
.
Muchos proyectos que deberían compilarse tanto para Scala 2 como para Scala 3 son modelados como proyectos de Scala 3 compilados de forma cruzada para Scala 2, aunque técnicamente sean proyectos de Scala 2.
Abrir estos proyectos como Scala 2 permite al IDE utilizar la versión correcta de Scala, y es más fiable.
El complemento de Scala es compatible ahora con el análisis del flujo de datos, lo que puede ayudarle a detectar errores de programación más fácilmente. Puede leer nuestro reciente artículo del blog para obtener más detalles.
Hay montones de opciones diferentes en el compilador de Scala, y muy pocos programadores se las aprenden de memoria. Además, estas opciones varían en función de la versión de Scala que se utilice.
Ahora puede autocompletar las opciones aplicables e incluso ver la documentación rápida de cada una de ellas.
¿Se ha preguntado alguna vez si del 1 al 3
es una gama inclusiva o exclusiva? ¿Y qué hay de de la 1 hasta la 3
? ¿O Rango(1, 3)
? Olvide sus dudas: ahora la respuesta está clara.
IntelliJ IDEA 2021.3 le permite actualizar sus paquetes npm a la última versión ¡directamente desde el editor! Abra su archivo package.json file, sitúe el signo de intercalación sobre la versión del paquete que desee actualizar y pulse ⌥⏎ en macOS o Alt+Intro en Windows y Linux, y seleccione Update ‘package name’ to the latest version. También se mostrará un arreglo rápido cuando pase el ratón por encima de la versión del paquete.
Hemos mejorado el funcionamiento de la finalización del código en los archivos HTML. Cada vez que escriba un nombre de etiqueta o una abreviatura en el editor, o invoque la finalización de código, IntelliJ IDEA le mostrará sugerencias relevantes de inmediato. Anteriormente, solo se mostraban si se escribía < primero. Además, la finalización de código para las referencias a entidades de caracteres debería funcionar mejor ahora.
Esta muy deseada nueva funcionalidad le permite especificar un servidor proxy HTTP o SOCKS para su configuración SSH en Preferences/Settings | Tools | SSH Configurations. En la nueva sección HTTP/SOCKS, puede seleccionar el tipo de proxy, introducir un nombre de host y un puerto, y aplicar autenticación con un nombre de usuario y una contraseña, si fuese necesario. También es posible sincronizar la configuración del proxy SSH con la configuración global del IDE. Para ello, seleccione la casilla Use global IDE proxy settings.
.jfr
Ahora es fácil comprobar si los cambios que ha realizado han funcionado en su programa o han provocado una regresión. Para ello, basta con abrir dos instantáneas que desee comparar en la ventana de herramientas Profiler. En la instantánea más reciente, haga clic en el icono diff y seleccione la instantánea que utilizará como base. El IDE mostrará el resultado en forma de gráfico de llamas, árbol de llamadas o lista de métodos.
En la v2021.2, hemos añadido compatibilidad con Async Profiler 2.0 a las versiones de IntelliJ IDEA para macOS y Linux. A partir de v2021.3, la versión para Windows también es compatible con Async Profiler 2.0 desde su instalación. Esta compatibilidad proporciona una experiencia de creación de perfiles más fluida, y también mejora la forma en que se muestran las funciones nativas en las instantáneas.
Esta versión avanza algunos pasos en la mejora de nuestras configuraciones Run/Debug, y esta vez, las configuraciones de Maven se han rediseñado bastante. Los parámetros clave están agrupados en una pantalla, mientras que las opciones adicionales están disponibles a través de las opciones de modificación.
Si desea configurar los ajustes de Maven para cada proyecto en el archivo .mvn/maven.config, vaya a Preferences/ Settings | Build, Execution, Deployment | Maven y seleccione Use settings from .mvn/maven.config en la parte inferior de la pantalla. Tenga en cuenta que la configuración de este archivo anula la configuración estándar de la IU de Maven.
Cuando necesite comprobar la rama seleccionada y volver a situarla sobre una rama que esté actualmente comprobada, utilice la acción de Checkout and Rebase onto Current, que antes solo estaba disponible para las ramas locales. En IntelliJ IDEA 2021.3 también se puede utilizar para las ramas remotas.
Hemos mejorado la forma en que se estructuran los ajustes en Preferences/Settings | Version Control, y hemos hecho que algunas de las configuraciones críticas sean más visibles. El nodo Version Control sirve ahora como punto de partida para la navegación, con enlaces a todos los ajustes disponibles. Si va al nodo Git desde allí, verá que hemos dividido todas las configuraciones en secciones que incluyen los procesos más importantes: Commit, Push y Update. Además, los parámetros dentro de estas secciones están ahora organizados de forma más lógica. Y no solo eso: hemos añadido un nodo independiente para Directory mappings, y las operaciones en segundo plano están ahora activadas por defecto. El nodo Background ya no existe.
A partir de IntelliJ IDEA 2021.3, su IDE muestra la diferencia entre confirmaciones en una ventana de herramientas Changes por separado, situada a la izquierda del editor.
Una nueva acción le permite hacer push solo de las confirmaciones de las que está seguro, y dejar el resto para más adelante.
Le permite hacer push de las confirmaciones hasta la que haya seleccionado en la pestaña Log de la ventana de herramientas Git. Para utilizarla, elija la confirmación en la que desea detenerse, haga clic con el botón derecho del ratón para llamar al menú contextual y seleccione la nueva acción Push All up to Here.
Hemos añadido la nueva opción Align Changes Highlighting a los ajustes de la pantalla Diff que encontrará en el icono de la rueda dentada. Esta función facilita la lectura de Diff, sobre todo cuando hay modificaciones complejas, porque alinea las líneas no modificadas para que aparezcan una al lado de la otra. Esto le ayuda a ver más claramente el código que se ha añadido o eliminado.
In v2021.3, we’ve introduced support for the new ConPTY API on Windows. It addresses several issues users were having with the old implementation, which was based on winpty, and adds support for 24-bit colors in the terminal.
Nuestra nueva compatibilidad con typeahead en el terminal de IntelliJ IDEA predice las modificaciones de texto y las muestra instantáneamente en gris claro. Esta función le permite escribir en el terminal con la misma rapidez, tanto si trabaja en una máquina local como en una remota.
En esta versión, hemos mejorado la visibilidad de la funcionalidad Evaluate. Antes, cuando los usuarios necesitaban evaluar algo, muchos recurrían a las inspecciones. Simplemente creaban una inspección y luego la eliminaban, en lugar de utilizar el cuadro de diálogo Evaluate. Ahora se puede acceder al campo Evaluate directamente desde la ventana de herramientas Debug, lo que hace más evidente la forma más conveniente de evaluar las expresiones.
El cliente HTTP de IntelliJ IDEA ofrece compatibilidad básica con las solicitudes gRPC. Cuando se teclea la palabra clave GRPC para iniciar la solicitud, el cliente HTTP ofrece la finalización del código. Así, su IDE le pregunta sobre todos los servicios gRPC conocidos, los métodos unarios y de streaming de servidor de un servidor en particular y, lo más importante, los campos del cuerpo de la solicitud.
Otra nueva funcionalidad le permite generar una solicitud gRPC en el cliente HTTP. Para ello, basta con hacer clic en los iconos del medianil en sus archivos .proto
.
El cliente HTTP puede detectar imágenes en las respuestas y mostrar vistas previas de estas en la consola de respuestas.
Cuando se prueban aplicaciones de streaming en IntelliJ IDEA, ya no es necesario esperar a que termine un stream, porque el cliente HTTP mostrará el resultado sobre la marcha. Esto es ahora posible porque hemos añadido compatibilidad con los siguientes tipos de contenido: text/event-stream, application/stream+JSON y application/x-ndjson. También se le notificará cuando termine un stream.
En el cliente HTTP, es posible redirigir el resultado a un archivo o directorio personalizado. Puede utilizar dos operadores para las redirecciones forzadas y suaves:
>>
siempre crea un nuevo archivo, añadiendo un sufijo -n al nombre del archivo si el nombre del archivo solicitado ya existe. >>!
reescribe el archivo si ya existe. Puede añadir identificadores de solicitud como comentarios a través de @name o como texto en el primer separador (###). El IDE entiende estos identificadores y le permite invocar solicitudes por su parte desde la ventana de herramientas Services, así como desde los cuadros de diálogo Ejecutar configuración, Run Configuration, Run Anything y Search Everywhere.
Qute se encuentra ahora entre los lenguajes de plantillas compatibles. Esto significa que IntelliJ IDEA ofrece resaltado de código, autocompletado y otras funcionalidades útiles para ayudarle a desarrollar plantillas para su proyecto Quarkus.
IntelliJ IDEA puede detectar si las especificaciones de la OpenAPI se encuentran en varios archivos y están vinculadas a través de $ref
, y ofrecerá finalización.
We’ve made 2 additions to the JetBrains annotation collection. Una vez que añada 'org.jetbrains:annotations:23.0.0' a las dependencias de su proyecto, podrá anotar sus clases y métodos como @Blocking
o @NonBlocking
. Esto hará posible que el IDE detecte las llamadas bloqueantes en contextos no bloqueantes, como las corrutinas de Kotlin o el código reactivo con Project Reactor, RxJava y SmallRye Mutiny.
Además, el IDE admite automáticamente las anotaciones correspondientes de Micronaut y SmallRye Mutiny.
IntelliJ IDEA ahora detecta más casos de código bloqueante en Spring y Java EE, incluyendo JpaRepository y CrudRepository de Spring Data, RestTemplate y JdbcTemplate, métodos de interfaz de Spring Feign, llamadas a JPA EntityManager, y cualquier método y clase anotada como @Transactional
.
Hemos rediseñado el cuadro de diálogo Run/Debug Configurations para los proyectos de Spring Boot. El diseño es similar a las configuraciones actualizadas anteriormente para Java. La nueva interfaz presenta los ajustes clave en una sola pantalla y permite configurar más parámetros a través de Modify Options.
IntelliJ IDEA ofrece ahora finalización de código en archivos de configuración adicionales (propiedades o archivos .yaml
) cuando se utiliza una clave spring.config.import para hacer referencia a otro archivo. También es mejor configurando archivos de configuración complejos y personalizados de Spring Boot.
Para los proyectos de Spring Boot, el IDE ahora es compatible con la finalización de código y los usos de búsqueda para las referencias a application.yaml de @Value
, @Scheduled
y Environment.getProperty()
.
@NamedQuery
utilizado desde los repositorios de Spring Data La finalización del método de consulta ahora funciona con las consultas declaradas como @NamedQuery
en los proyectos JPA de Spring Data. También puede navegar a la definición de una @NamedQuery
a través del icono del medianil.
A partir de la v2021.3, puede utilizar todas las inspecciones CDI en los archivos Kotlin. Anteriormente, estas inspecciones solo funcionaban en archivos Java. Además, hemos añadido iconos del medianil de CDI en los archivos Kotlin. Estos le permiten navegar fácilmente a los puntos de inyección o a los candidatos a la inyección, a los creadores de beans, a los métodos de eliminación y a los eventos.
Hemos acelerado todos los procesos para los diagramas de clase UML, tanto en Java como en Kotlin. La apertura de los diagramas, el cambio en categorías, el zoom y la función de deshacer/rehacer ahora requieren mucho menos tiempo. Otros cambios notables son la nueva rejilla, el resaltado de los miembros y una vista previa rápida de la documentación.
Si necesita controlar la apariencia del diagrama, utilice el menú contextual y seleccione Appearance.
Hemos añadido la posibilidad de mostrar una vista Aggregate para un rango de celdas. Se trata de una función muy esperada que le ayudará a gestionar sus datos y le evitará tener que realizar consultas adicionales. Esto hace que el editor de datos sea más potente y fácil de usar, y lo hace más parecido a Excel y a Hojas de cálculo de Google.
Seleccione el rango de celdas para el que desea la vista, haga clic con el botón derecho y seleccione Show Aggregate View.
Esta versión es una continuación lógica de la anterior, que introdujo la posibilidad de generar una fuente de datos DDL basada en una real. Ahora, este flujo de trabajo es totalmente compatible. Puede:
Tenga en cuenta que una fuente de datos DDL es una fuente de datos virtual cuyo esquema se basa en un conjunto de scripts SQL. Almacenar dichos archivos en el sistema de control de versiones es una manera de conservar su base de datos dentro de este sistema.
Hay una nueva pestaña en las propiedades de configuración de datos, DDL mappings, donde se puede definir qué fuente de datos real se asigna a cada fuente de datos DDL.
La nueva ventana Database Diff está disponible en el menú contextual. Tiene una mejor interfaz de usuario y muestra claramente en el panel derecho el resultado que obtendrá después de realizar la sincronización.
La leyenda del panel derecho muestra el significado de los colores que pueden aparecer en los resultados:
La pestaña Script preview muestra el script resultante, que puede abrirse en la nueva consola o ejecutarse desde este cuadro de diálogo. El resultado de este script es la aplicación de cambios para que la base de datos de la derecha (destino) sea una copia de la base de datos de la izquierda (origen).
Además de la pestaña Script preview, hay dos pestañas más en el panel inferior: Object Properties Diff y DDL Diff, que muestran la diferencia entre las versiones concretas del objeto en las bases de datos de origen y de destino.
Hemos introducido tres niveles de introspección para las bases de datos Oracle:
La introspección es más rápida en el nivel 1 y más lenta en el nivel 3. Utilice el menú contextual para cambiar el nivel de introspección según convenga.
El nivel de introspección puede establecerse para un esquema o para toda la base de datos. Los esquemas heredan el nivel de introspección de la base de datos, pero este también se puede establecer de forma independiente.
El nivel de introspección está representado por los iconos con forma de píldora situados junto al icono de la fuente de datos. Cuanto más llena esté la píldora, mayor será el nivel. El icono azul indica que el nivel de introspección se establece directamente, mientras que el gris indica que este se hereda.
Una gran actualización incorporó la compatibilidad con la automatización de pruebas de IU en Selenium; el editor visual ahora puede ayudarle a mantener las clases de objetos de página existentes. Anteriormente, solo era posible generar nuevas clases de objetos de página, pero ahora puede incluso actualizar las clases de objetos de página existentes directamente sin un editor visual. IntelliJ IDEA detectará automáticamente las clases de objetos de la página y las indicará con un icono correspondiente en el panel del medianil. Al hacer clic en ese panel del medianil, el usuario puede abrir un editor visual y tomar nuevos elementos para añadirlos a la clase de objeto de la página.
El complemento más reciente del kit de automatización de pruebas contiene algunas correcciones de errores menores, pero también una funcionalidad útil en la configuración del generador de datos múltiples. Ahora puede modificar el prefijo, el sufijo y el delimitador con una definición multilínea.
Hemos implementado compatibilidad con la ejecución de pruebas multinivel. Ahora puede crear varias pruebas secundarias para dominios de funcionalidad específicos o tipos de pruebas. Cada prueba principal agrega los resultados de las pruebas secundarias y proporciona estadísticas resumidas de todas las pruebas subrelacionadas.
Si decide gestionar los casos de prueba en archivos Markdown utilizando nuestra función «TMS local», podrá declarar fácilmente los pasos de prueba y compartirlos entre varios casos de prueba. Los pasos compartidos se declaran como un caso de prueba normal con un ID numérico único. Puede hacer referencia a ese caso de prueba en otros casos de prueba e IntelliJ IDEA sustituirá esos pasos del caso de prueba referenciado cuando genere vistas previas, ejecuciones de prueba o plantillas de código para una prueba automática.
Puede formatear sus plantillas de Helm y saber con seguridad que obtendrá el resultado correcto. Hemos solucionado todos los problemas relacionados, y el formateo es ahora mucho más fiable. Para ver la mejora, vaya a Code | Reformat code or Reformat file o pulse ⌥⌘L en macOS o Ctrl+Alt+L en Windows y Linux.
Hemos añadido el resaltado de elementos de bloque como if
, else
, range
, with
y define
en las plantillas de Helm. Esto hace que sea mucho más fácil trabajar con código que contiene inclusiones de plantillas Go.
IntelliJ IDEA ahora admite inyecciones automáticas de código de varios lenguajes en recursos ConfigMap para claves con extensiones como .yaml
, .json
, .properties
, etc. Los fragmentos de código inyectados se resaltan en verde, y es posible utilizar nuestra funcionalidad de información del código dentro de ellos, incluyendo la finalización del código, el resaltado de errores y otros.
Ahora es posible volver a ejecutar su último comando de Helm desde la ventana de herramientas Services. Solo tiene que hacer clic en el nuevo icono de la esquina superior derecha. Por ejemplo, ejecute el comando helm lint y, después de que se complete, puede hacer clic en el icono para repetirlo.
Ahora es fácil conectarse a un daemon Docker desde Minikube. En Preferences/ Settings | Build, Execution, Deployment, seleccione el botón radial Minikube. En el campo adyacente, el IDE mostrará automáticamente los entornos docker-daemon de Minikube detectados que puede utilizar para conectarse.
La conexión a Docker es ahora más rápida, ya que basta con hacer doble clic en el nodo necesario o utilizar el nuevo atajo: ⌘Intro en macOS o Ctrl+Intro en Windows y Linux. La acción Start container también se puede invocar con este acceso directo.
The new Clean up action works just like the prune terminal command. Al hacer clic con el botón derecho en el nodo Networks, Volumes, Containers o Images, puede seleccionar Clean up, y el IDE eliminará los objetos no utilizados. También puede aplicar esta acción al nodo raíz de Docker para eliminar todos los objetos innecesarios en un solo clic.
IntelliJ IDEA supports Compose V2, which allows you to run Docker Compose commands as docker compose, instead of docker-compose (with a dash).
Para activar esta opción, vaya a Preferences/Settings | Build, Execution, Deployment | Docker | Tools y marque la casilla Use Compose V2.
Image layers allow you to track all the commands that are applied to images. Para acceder a ellas, seleccione una imagen y vaya a la pestaña Layers. A partir de ahí, cuando elija un comando, puede hacer clic en el enlace Analyze image for more information, situado en la parte derecha de la pantalla, para obtener información más detallada sobre los cambios aplicados a cada capa.
Si tiene un contenedor preconfigurado que desea usar más tarde, puede guardarlo como imagen localmente y hacer push para seguir usándolo remotamente cuando lo necesite. Vaya a la ventana de herramientas Services, haga clic con el botón derecho del ratón en el contenedor y seleccione Analyze image for more information.
Hemos añadido varios cambios al registro de Docker. First off, the IDE now displays all available registries in separate nodes in the Services tool window. Anteriormente solo teníamos compatibilidad con el registro de Docker Hub. En la v2021.3, hemos añadido la compatibilidad con GitLab (registry.gitlab.com) y JetBrains Space (<username>.registry.jetbrains.space).
Puede ampliar los nodos del registro en la ventana de herramientas Services, seleccionar la imagen necesaria y extraerla a la ubicación deseada. Si tiene varias conexiones Docker, el IDE le preguntará de dónde extraer la imagen. Es posible hacer push de las imágenes a cualquier registro añadido, y en el cuadro de diálogo Push el IDE detecta de forma automática los espacios de nombres disponibles en el registro indicado y le permite seleccionar uno de la lista desplegable.
Por último, pero no por ello menos importante, puede utilizar la finalización de imágenes desde los registros de JetBrains Space, GitLab y Docker Hub.
IntelliJ IDEA now supports Podman as an alternative way to manage pods, containers, and images. Before using Podman in the IDE, configure a connection yourself.
Una vez que Podman se haya instalado y configurado en su sistema operativo, puede conectarse a él a través de Preferences/Settings | Build, Execution, Deployment | Docker seleccionando el botón radial de TCP socket y rellenando los campos requeridos.
Ahora puede crear solicitudes de fusión y revisiones de código para sus proyectos en Space. Tiene dos opciones diferentes:
+
de la barra de herramientas superior de la ventana de herramientas Code Reviews y seleccione la acción que desee. Para obtener más detalles, consulte esta entrada del blog o consulte los gifs que aparecen más abajo.
Todos los archivos que aún no haya revisado al realizar una revisión del código permanecerán marcados con puntos azules hasta que los abra. De este modo, no se perderá ningún cambio esencial. Si desea volver a los cambios más adelante, puede seleccionar Mark as Not Viewed en el menú contextual. Esta funcionalidad también funciona para las solicitudes de extracción de GitHub.