En GoLand 2020.3 puede explorar el volcado de goroutines, ejecutar y desplazarse a pruebas de tablas individuales y aprovechar mejor la compatibilidad ampliada con el marco de trabajo de pruebas Testify. También encontrará muchas nuevas funcionalidades de edición de código, incluida la compatiblidad con paquete de tiempo, modos más inteligentes de gestionar paquetes, mejoras en la interfaz de usuario, diversas funcionalidades nuevas para el desarrollo web y el trabajo con bases de datos, y un nuevo servicio para el desarrollo colaborativo y la programación en pares.
¿Prefiere aprender interactivamente en lugar de leer? Complete el tutorial What's New in GoLand 2020.3 dentro del IDE en la pantalla de bienvenida.
El nuevo icono Dump Goroutines del depurador le permite encontrar fácilmente goroutines que contengan una cadena especificada en la pila durante la sesión de depuración. Solo tiene que hacer clic en el icono para abrir un volcado en otra ventana.
Para ayudarle a centrarse en la información importante, cuenta con la opción de ocultar una goroutine individual, o goroutines con la misma pila. Haga clic en una goroutine y seleccione la acción que desee, o basta con que pulse el botón de eliminar para moverla a una sección especial Hidden de la ventana de volcado, donde no le distraiga.
GoLand 2020.3 incorpora la capacidad de detener un proceso con configuración Go Remote si no se requiere una nueva conexión.
En los ajustes de configuración puede especificar el comportamiento predeterminado del depurador al desconectar, puede seleccionar Stop remote Delve processes, Leave it running o que GoLand le pregunte cómo proceder en cada momento.
Puede ejecutar pruebas de tabla individuales y desplazarse hacia ellas desde la ventana de herramientas Run.
Encontrará algunos límites:
fmt.Sprintf()
con verbos %s
y %d
. El IDE ahora reconoce la función de prueba que inicia una suite de pruebas, y ofrece un modo de iniciar un suite.Run
individual y suite.T().Run
, siempre que el nombre de subprueba sea una constante de cadena. Además, se puede ejecutar de nuevo una subprueba desde la ventana de herramientas Run para evitar ejecutar de nuevo toda la prueba de nivel superior.
Además, GoLand ya puede ejecutar suites Testify con el mismo nombre de método por separado dentro de un caso de prueba individual.
Y por último, aunque no menos importante, cuando completa una función o método que acepta testing.T
como primer argumento, GoLand aprueba ese argumento automáticamente si es posible. Esto funciona con funciones y métodos de paquetes testify/assert
, testify/require
, testify/mock
y testify/suite
.
La inspección de código Incorrect usage of Println/Printf like functions le avisará acerca de posibles problemas en paquetes github.com/pkg/errors
, github.com/sirupsen/logrus
y go.uber.org/zap
.
Además, hemos añadido destacado y plegado de marcadores de posición, así como la intención Add format string argument.
La inspección context.CancelFunc not called code informa acerca de usos potencialmente no seguros de la cancelación de contexto. Esto resulta especialmente útil cuando no se llama en todas a las rutas de ejecución a la función "cancel" devuelta por context.WithCancel
(y funciones similares).
Para obtener más información sobre este paquete, visite: https://golang.org/pkg/context/.
Hemos añadido compatibilidad con el paquete de tiempo para que pueda trabajar más fácilmente con el tiempo y la duración. GoLand sugerirá elementos de distribución predefinida a través de la finalización de código (Ctrl+Espacio), como marcadores de posición YYYY
, MM
, DD
de ISO-8601.
Pulse Ctrl+P en un token y el IDE mostrará su significado. También dispone de resaltado de sintaxis para tokens de distribución. La finalización de código también sugiere distribuciones de tiempo estándar fuera del literal de cadena.
El IDE ahora es más inteligente a la hora de priorizar los elementos de finalización para los paquetes que utiliza frecuentemente y que se declaran explícitamente en el archivo go.mod
de su proyecto.
También hemos añadido una opción para excluir paquetes por completo de su ruta de importación de proyecto y sugerencias de finalización. Puede hacerlo pulsando Alt+Enter o en la nueva ventana Exclude for import and completion en Settings | Go | Imports.
GoLand facilita la detección de sombreado de variables:
Hemos seguido las actualizaciones desde el diseño de genéricos por parte del equipo de Go y hemos añadido compatibilidad con corchetes para la sintaxis de genéricos en lugar de paréntesis, puesto que esto se implementó en la edición de la propuesta anterior.
Tenga en cuenta que el ajuste Enable generics (experimental support for type parameters) en Settings | Go está desactivado de forma predeterminada. Tiene que seleccionar explícitamente esa casilla de verificación para comenzar a usar esa funcionalidad.
Lea este artículo del blog para obtener más información acerca de los parámetros de tipo.
Al escribir func
en el archivo de prueba, GoLand sugiere de forma predeterminada las plantillas activas bench
ytest
en las opciones de finalización.
Al escribir for
dentro del punto de referencia, el IDE sugiere completarlo con un bucle "for" con b.N
.
Ahora, las sugerencias aparecen inmediatamente en el diálogo al pulsar Alt+Enter. Además, una nueva versión del motor de verificación gramatical LanguageTool incluye revisiones mejoradas del inglés y añade compatibilidad con 10 idiomas más.
GoLand 2020.3 admite Code With Me (EAP), un nuevo servicio de JetBrains para el desarrollo colaborativo y la programación en pares. Code With Me le permite compartir con otras personas el proyecto que tiene abierto en ese momento en su IDE y trabajar juntos en tiempo real.
Eche un vistazo a estas publicaciones para obtener más información al respecto.
Hemos renovado la pantalla de bienvenida para que pueda acceder directamente a:
Seleccione la opción Sync with OS en Settings | Appearance & Behavior | Appearance | Theme para cambiar automáticamente el tema de su IDE y que se adapte a sus preferencias del SO.
Divida la pantalla del editor principal horizontal o verticalmente arrastrando una pestaña a la posición que desee y soltándola allí. Cuando arrastre una pestaña, el editor destacará dónde puede soltarla.
Hemos mejorado la experiencia del usuario al trabajar con archivos desde la vista Project. Ahora, al abrir un archivo desde la vista Project, la atención se centra de forma automática en el editor para que pueda empezar a trabajar en su código de inmediato. Pulse la barra espaciadora y el IDE le mostrará una vista previa del archivo en la vista Project.
Si desea tener varios archivos abiertos en el editor simultáneamente, ahora puede hacerlo con un simple atajo de teclado. Seleccione el archivo en la vista Project y pulse Shift+Enter para que el IDE divida la ventana Editor y abra el archivo en la parte derecha.
El menú VCS ahora se adapta al sistema de control de versiones que esté utilizando actualmente, para que le resulte más sencillo acceder a funcionalidades esenciales de VCS, puesto que ya no quedan ocultas en un submenú.
¡Ahora cuenta con una genial zona de disposición de Git! Recuerde que esta funcionalidad solo está disponible para la ventana de herramientas Commit.
Marque la casilla Enable staging area de Settings | Version Control | Git para activarla. En cuanto lo haga, se deshabilitará la compatibilidad con changelists.
En la interfaz de usuario de confirmación, encontrará archivos dispuestos y no dispuestos. Cuando esté listo para disponer un archivo, solo tiene que hacer clic en el icono + situado junto a él. El archivo aparecerá en el nodo Staged. Para añadir los cambios que desee a la zona de disposición para pruebas, también puede utilizar el icono del medianil o Show Diff.
Se ha mejorado el trabajo con ramas:
Hemos añadido la posibilidad de habilitar complementos para el proyecto actual o para todos los proyectos seleccionando Enable for Current Project o Enable for All Projects. En Settings | Plugins, pulse el icono de la rueda dentada en el complemento que desea habilitar o deshabilitar y seleccione la opción que desee.
El mapa de atajos de teclado del sistema macOS (Settings | Keymap) sirve para ofrecerle un mapa de teclas de macOS alternativo que cuenta con compatibilidad ampliada con atajos del sistema para que no tenga que utilizar la teclas F para acciones esenciales.
Hemos mejorado el mecanismo de búsqueda del gráfico de llama en el perfilador, así como su visualización, para que encuentre métricas de método más rápido. Puede hacer clic en el icono de la lupa o escribir su solicitud de búsqueda dentro del panel de gráfico de llama.
También hemos añadido un campo de búsqueda, flechas arriba y abajo para una navegación rápida por los resultados de búsqueda, y la capacidad de buscar en todo el gráfico de llama o en un subárbol específico.
Gracias al equipo de WebStorn, GoLand ahora cuenta con una amplia compatibilidad con desarrollo web. Uno de los cambios inminentes en este ámbito es la capacidad de crear un componente React a partir de una referencia no resuelta. Sitúe el signo de intercalación en un componente no resuelto, pulse Alt+Enter y seleccione la inspección correspondiente.
GoLand es totalmente compatible con el gestor de paquetes pnpm, junto con npm y yarn. Al abrir un proyecto con un archivo pnpm-lock y tener pnpm instalado en su máquina GoLand cambiará automáticamente el gestor de paquetes para este proyecto a pnpm. El IDE también cuenta con una opción dedicada para pnpm en la lista de gestores de paquetes en Settings | Languages and Frameworks | Node.js and NPM.
GoLand 2020.3 le permitirá escoger entre detectar archivos de configuración webpack manualmente o automáticamente. Encontrará las nuevas opciones en Settings | Languages & Frameworks | JavaScript | Webpack.
Gracias a nuestros compañeros del equipo de DataGrip, GoLand ha ampliado la familia de bases de datos compatibles con un nuevo miembro: Couchbase. Tenga en cuenta que el IDE es compatible con el servicio Couchbase Query, pero no con el servicio Couchbase Analytics.
GoLand ahora conoce los derechos de acceso de los objetos y los muestra en el DDL de un objeto. Esto funciona con MySQL, PostgreSQL, Greenplum, Redshift y SQL Server.
Hemos mejorado el editor por separado para los valores de celda:
Hemos añadido dos nuevos extractores para que trabaje con datos con más facilidad:
INSERT
con varias filas nuevas para insertar. Además, ahora cuenta con una opción nueva en la configuración de formato CSV: "never quote values".