GoLand 2020.2 presenta nuevas funcionalidades para Go Modules, nuevos modos de revisar y solucionar problemas de su código y toda una serie de nuevas inspecciones de código. Además, encontrará nuevas funcionalidades de edición de código, como la esperada Add Caret Per Selected Line (añadir signo de intercalación por línea seleccionada), compatibilidad experimental para genéricos, la capacidad de compartir código con Go Playground desde el editor, actualizaciones para control de versiones, incluyendo compatibilidad con WSL2 para Git en Windows, ¡y mucho más!
¿Prefiere aprender interactivamente en lugar de leer? Complete el tutorial What's New in GoLand 2020.2 dentro del IDE en la pantalla de bienvenida.
A partir de Go 1.15, puede cambiar la ubicación predeterminada de los módulos caché desde $GOPATH/pkg/mod
a otra carpeta utilizando la nueva variable de entorno GOMODCACHE.
Para ello, basta con configurar GOMODCACHE en Preferences/Settings | Go Modules | Environment. El IDE reconocerá la ubicación personalizada y la utilizará para todas las acciones subsiguientes con dependencias.
La acción Comment With Line Comment (Ctrl+/ en Windows/Linux y ⌘/ en macOS) ahora está disponible para el archivo go.mod
.
GoLand ahora añade inmediatamente una llave de cierre cuando teclea la llave de apertura para las instrucciones replace, exclude y require.
El IDE muestra referencias procedentes de comentarios en declaraciones relacionadas a nivel de paquete, y le permite navegar hasta ellas con la acción Navigate to Declaration or Usages (⌘B en macOS y Ctrl+B/ en Windows/Linux).
El nuevo widget de inspecciones muestra el número de advertencias, errores y fallos tipográficos del archivo actual en la esquina superior derecha del editor de código. Puede recorrerlos utilizando los iconos de flecha o la acción Next Error (F2).
El widget le permite configurar el nivel de resaltado (seleccione entre ninguno, solo errores o todos los problemas), cambiar el nivel de gravedad de las inspecciones y pasarlo a la vista compacta Compact View para que no le distraiga.
La ventana de herramientas Problems muestra una lista de advertencias y errores en el archivo actual, le proporciona una descripción de esos problemas y le permite solucionarlos inmediatamente utilizando Alt+Enter.
Para abrir la ventana de herramientas Problems, haga clic en el widget de inspecciones o vaya a View | Tool Window | Problems. Haga clic con el botón derecho en un problema para pasar directamente a la línea de código en que se produjo el error.
Una nueva inspección de código gestiona posibles problemas con conversiones string(int)
que devuelven la representación UTF-8 del punto de código Unicode x
en lugar de la representación con cadenas decimales de x
.
GoLand le notifica dichos errores potenciales y le ofrece arreglos rápidos específicos.
GoLand le notificará utilizaciones erróneas comunes de las pruebas y ejemplos, para que no tenga que volver a llamar explícitamente a go vet
por ese motivo. El IDE también ofrece arreglos rápidos en casos sencillos; por ejemplo, sugiere cambiar el nombre de Testme
por TestMe
.
La inspección de código Malformed struct tag comprobará que las etiquetas struct cumplen las normas de Go, y le notificará acerca de posibles problemas.
La inspección de código Impossible interface type assertion comprueba si hay aserciones de tipo v.(T)
y los correspondientes casos type-switch en los que el tipo estático V
de v
es una interfaz que no puede implementar la interfaz de destino T
.
Esto sucede cuando V
y T
contienen métodos con el mismo nombre pero firmas diferentes.
Para obtener una vista previa del resultado de una acción de intención o arreglo rápido antes de aplicarlo a su código, invoque las Show Context Actions con el atajo Alt+Enter, seleccione la acción de intención o arreglo rápido necesario y pulse ⌥+Espacio en macOS o Ctrl+Mayús+I en Windows y Linux.
La nueva acción Add Caret Per Selected Line crea símbolos de intercalación al final de cada línea seleccionada y elimina la selección de las líneas. Invóquela utilizando el atajo Alt+Mayús+G en Windows/Linux o ⌥⇧G en macOS.
Configure el ajuste de texto para argumentos de llamada, parámetros de función y elementos literales compuestos en Preferences/Settings | Editor | Code Style | Go | Wrapping and Braces.
Como alterativa, puede utilizar las acciones de intención Put arguments on separate lines y Put arguments on one line pulsando Alt+Enter para dividir y unir los elementos manualmente.
La refactorización Introduce Variable (Ctrl+Alt+V en Windows y Linux, o ⌘⌥ V en macOS) puede comprimir varios argumentos variádicos en una nueva variable de porción, mientras que Inline Variable (⌥⌘N en macOS y Ctrl+Alt+N en Linux y Windows), por el contrario, descomprime una porción en argumentos variádicos.
Además, ahora puede gestionar incidencias con argumentos variádicos descomprimidos mediante el arreglo rápido Unpack slice.
Ahora puede reutilizar proyectos o archivos guardándolos como plantillas de proyecto personalizadas. Seleccione Tools | Save Project as Template. El IDE volverá a crear el árbol del proyecto con archivos, carpetas y configuraciones de compilación.
Ahora puede compartir y ejecutar código en Go Playground haciendo doble clic dentro del editor. Basta con seleccionar Go Tools | Share in Playground en el menú desplegable o Tools | Go Tools | Share in Playground. También puede pulsar ⌥⇧⌘S en macOS o Ctrl+Alt+Mayús+S en Windows/Linux.
Esto también funciona para que los archivos go2
interactúen con los genéricos, en cuyo caso GoLand le llevará al nuevo https://go2goplay.golang.org/.
El equipo de Go anunció recientemente el borrador de un diseño para genéricos. Visite la documentación de Golang para obtener todos los detalles acerca del concepto.
GoLand 2020.2 ofrece compatibilidad experimental con genéricos, con la que puede experimentar activando la configuración Enable experimental support for generics a.k.a. type parameters en Settings/Preferences | Go.
Esta compatibilidad inicial ofrece resaltado de sintaxis y resolución de referencias básica, y funciona solo con archivos go2.
Con el modo vendoring activado, puede crear su aplicación solo con los paquetes de dependencia almacenados en la carpeta Vendor de su proyecto.
Ahora, si un proyecto tiene una carpeta Vendor y ha seleccionado el ajuste Enable vendoring mode automatically en Settings/Preferences | Go | Go Modules, la operación resolve solo utilizará la carpeta vendor/ y no consultará con la caché de módulos.
GoLand ejecuta comandos go list
de forma secuencial y ofrece una barra de progreso con información acerca de los números reales de comandos go list
en la cola.
GoLand 2020.2 le permitirá usar Git desde WSL2, que está disponible de forma nativa en la actualización de mayo de Windows 10, version 2004. Si Git no está instalado en Windows, GoLand buscará Git de forma automática en WSL y lo usará desde allí. También cambiará automáticamente a Git desde WSL para proyectos abiertos desde WSL (a través de \wsl$ path
).
Hemos rediseñado los cuadros de diálogo de Git para acciones como Merge, Pull, y Rebase, para que resulten más coherentes e informativos. También hemos hecho que resulte más fácil entender qué comando de Git se ejecutará, y hemos añadido la opción –rebase
al cuadro de diálogo Pull y la opción –no-verify
al cuadro de diálogo Merge.
¡GitHub Pull Requests está totalmente equipado! Explore, asigne, gestione e incluso combine las solicitudes de incorporación de cambios, vea la línea de tiempo y los comentarios de línea, envíe comentarios y revisiones, y acepte los cambios sin salir de GoLand.
Ahora, cuando compara dos ramas en GoLand, puede ver las confirmaciones de las ramas comparadas en una sola vista. El IDE abrirá los registros de las dos ramas que se están comparando en el editor, en lugar de en la ventana de herramientas del VCS, donde no hay suficiente espacio para mostrar toda la información.
Ahora si tiene un valor muy grande en su celda, se puede ver o editar en un panel separado. También puede cambiar entre el modo de salto de línea suave (soft wrap) utilizando la barra de herramientas de la derecha. ¡Utilice toda la potencia de nuestro editor de código para sus datos!
A partir de esta versión, puede revisar la consulta que representa sus cambios en el editor de datos. Ahora hay un botón DML que está activo si hay cambios pendientes.
Y verá un cuadro de diálogo con la vista previa DML. Esta consulta no es el SQL exacto que se ejecutará para modificar sus datos, porque GoLand utiliza un controlador JDBC para actualizar las tablas, aunque en la mayoría de los casos sí será el mismo.
Ahora hay un modo más intuitivo de ver y editar valores booleanos. Los valores True ahora se marcan con una viñeta para distinguirlos de los demás.
Hemos añadido un nuevo dialecto SQL: Google BigQuery. Todavía no ha llegado la compatibilidad total con BigQuery, pero siempre hay que empezar por algún lado. GoLand puede resaltar correctamente y ofrecerle asistencia a la codificación para sus consultas si utiliza Google BigQuery.
Las nuevas intenciones inteligentes (Alt+Enter) le ayudarán a realizar algunas acciones más rápidamente. Por ejemplo, ahora puede convertir rápidamente un bucle for con un índice numérico en un método de vector forEach. Consultar los comentarios de la documentación en archivos JavaScript y TypeScript también se ha vuelto más sencillo, ya que ahora puede mostrarlos directamente en el editor para minimizar las distracciones.