GoLand 2022.1 Przechodzi do Bety


GoLand 2022.1 dotarł do bety, kończąc przy tym dodawanie nowych funkcji w tej wersji. Oznacza to że przyszłe wersje Beta GoLand 2022.1 skupią się na naprawach błędów, w celu przygotowania tej wersji GoLand do wydania w połowie kwietnia.

Typy ogólne

Go 1.18 został wydany w raz z typami generycznymi będącymi teraz oficjalnie częścią języka. W ciągu kilku tygodni naprawiono ponad 160 problemów związanych z generykami.

Priorytetowo naprawiono błędy dotyczące fałszywie pozytywnych i fałszywie negatywnych wartości. Dodano również kilka funkcji związanych z typami generycznymi.

Zakańczanie

W momencie otwarcia nawiasu, GoLand automatycznie doda jego zamknięcie.

GoLand pokazuje parametry typu w sugestiach uzupełnień i wstawia nawiasy, gdy jedna z sugestii zostanie wybrana.

Naprawa brakujących metod

Jeśli argument typu nie posiada wszystkich metod z interfejsu, przez który jest ograniczony, GoLand wyświetli błąd. Brakujące metody można zaimplementować, korzystając z szybkiej naprawy bezpośrednio z komunikatu o błędzie.

Obszar roboczy Go

Dodane zostało podstawowe wsparcie dla innej funkcji z Go 1.18 – obszarów roboczych. Według zespołu Go, w ankiecie użytkowników z 2021 r., najczęstszym wyzwaniem związanym z modułami była praca na wielu z nich. Według autorów Go nowy tryb przestrzeni roboczej Go ułatwi pracę z wieloma modułami.

W GoLand 2022.1 Beta można już otworzyć katalog z plikiem go.work i kontynuować rozwijanie kodu jak zwykle. Podświetlanie składni i uzupełnianie kodu w go.work nastąpi później.

Mikro serwisy

W nadchodzącym wydaniu znajduje się kilka nowych funkcji, które ułatwią pracę z mikroserwisami. Niestety, nowe funkcje działają na razie tylko ze standardowymi funkcjami bibliotecznymi. W czasie późniejszym zostanie rozważone dodanie obsługi niektórych popularnych frameworków.

Znajdowanie zastosowań oraz nawigacja

Od teraz w plikach Go, obok każdego punktu końcowego znajduje się ikona kuli ziemskiej. Po jej kliknięciu, a GoLand zaproponuje kilka opcji.

Przykładowo można teraz znaleźć wszystkie zastosowania punktu końcowego i do nich przejść. Oferuje również widok zastosowań, naciskając /Ctrl i klikając punkt końcowy.

Generowanie żądań

Drugą opcja po kliknięciu ikony kuli ziemskiej jest Generuj żądanie w kliencie HTTP. Po wybraniu odpowiedniej opcji, IDE otworzy dołączonego klienta HTTP.

Klient HTTP GoLand również otrzymał pewne aktualizacje – teraz można otrzymać uzupełnianie kodu dla punktów końcowych. Ukończenie działa dla punktów końcowych z plików Go (na razie tylko standardowa biblioteka), specyfikacji Swagger, plików .proto i plików JavaScript.

Akcja Generuj żądanie w kliencie HTTP może służyć do generowania żądania dla każdego prawidłowego adresu URL.

Okno narzędzi punktów końcowych

Trzecia opcja to Pokaż wszystkie punkty końcowe modułu. Po jej wyborze, GoLand otworzy nowe okno narzędzia Endpoints, w którym znajduje się widok wszystkich punktów końcowych projektu.

Stąd można przejść do źródła lub kliknąć każdy punkt końcowy i uruchamiać żądania bezpośrednio z karty klienta HTTP.

Uzupełnianie metod i nagłówków

Możliwe jest teraz uzupełnianie metod HTTP i nagłówków w plikach Go.

Linki i punkty końcowe są podkreślone

Wszystkie łącza i punkty końcowe w plikach Go są teraz podkreślone, dzięki czemu można je łatwo kodzie znaleźć. Linki są klikalne i można je otworzyć w przeglądarce.

Lepsze wsparcie dla plików .proto

Wprowadzono nową akcję intencji dla plików .proto, która dodaje brakujące instrukcje importu dla nierozwiązanych odwołań do wiadomości.

Po dodaniu brakujących instrukcji importu IDE poda sugestie uzupełnienia odwołań do komunikatów.

Obsługa uwag gRPC

Jeśli dany projekt nie ma pliku .proto, ale serwer obsługuje gRPC, będzie można uruchamiać żądania i uzyskiwać uzupełnianie nazw usług i metod bezpośrednio z działającej instancji serwera.

Edytor

Obsługa formatowania ciągów dla testowania funkcji

GoLand teraz zgłasza błędy w przypadku użycia niewłaściwych zleceń formatujących w funkcjach testify/assert.

Debugowanie

Ukryte etykiety kart

Aby zmaksymalizować użyteczną przestrzeń w oknie narzędzia debugowania, domyślnie etykiety kart zostały ukryte. Aby ponownie je wyświetlić lub dostosować ich lokalizację, wystarczy użyć opcji Pokaż etykiety kart w Ustawieniach układu.

Kubernetes

Plugin Kubernetes należy dodatkowo zainstalować używając opcji Preferences/Settings | Plugins.

Edycja zasobów w klastrze

Modyfikowanie zasobów ładowanych z klastra można teraz wykonać z poziomu zakładki edytora.

Niestandardowa ścieżka do kubectl

Można teraz ręcznie skonfigurować ścieżkę do kubectl, jeśli nie znajduje się ona w standardowej lokalizacji. Aby ustawić własną ścieżkę, wystarczy przejść do Ustawienia / Preferencje | Kompilacja, wykonanie, wdrażanie | Kubernetes | Ścieżka do pliku wykonywalnego kubectl.

Przekierowanie portów

Dodano funkcję przekierowania portów dla podów. Aby przekierować porty, należy użyć ikony na pasku narzędzi lub wybrać element menu kontekstowego.

Akcja Opisz zasób w widoku Usługi

Nowa akcja Opisz zasób jest dostępna dla wszystkich zasobów w widoku Usługi. Można go wywołać z menu kontekstowego lub użyć przycisku paska narzędzi.

Wsparcie wydarzeń w klastrze

Zdarzenia klastra są teraz wyświetlane w osobnym węźle w widoku Usługi, dostarczając dane o ostatnich zdarzeniach w systemie.

Wsparcie Werf

Wprowadzono ograniczoną obsługę edytorów dla werf.yaml i powiązanych plików szablonów Helm, w tym funkcję uzupełniania kodu, inspekcje i sugestie szybkich poprawek, refaktoryzację i zmianę nazwy dla .Values.werf.image.* oraz walidację niektórych pól, takich jak boolean i wewn.

Docker

Nowe UI Nowych serwisów

Interfejs użytkownika Dockera w oknie narzędzi usług został znacząco przerobiony. Przebudowa została wdrożona dla kontenerów, obrazów, sieci i woluminów.

Wsparcie dla celów Docker Compose

Dodano obsługę celów Docker Compose. Aby dodać cel, wystarczy przejść do Uruchom | Zarządzaj celami | Dodaj nowy cel.

Obsługa Docker Registry V2

GoLand oferuje teraz wsparcie dla Docker Registry HTTP API V2. Od teraz można tworzyć proste lub chronione hasłem rejestry Docker V2 i wykonywać wszystkie zwykłe czynności, takie jak przeglądanie, wypychanie i ściąganie obrazów.

Markdown

Ikona kopiuj kod

Dodano ikonę Kopiuj kod do bloków Markdown, aby ułatwić kopiowanie zawartości do schowka.

Uruchom polecenia

Jeśli plik Markdown zawiera instrukcje z poleceniami, które zaszła potrzeba aby wykonać w swoim terminalu, można je uruchomić bezpośrednio z pliku Markdown, używając ikony Uruchom.

Ulepszony ruchomy pasek narzędzi

Aby ułatwić formatowanie plików Markdown, przerobiono pływający pasek narzędzi, który pojawia się podczas zaznaczania tekstu. Oprócz nowego wyglądu pasek narzędzi oferuje teraz funkcję tworzenia list i rozwijane menu, które pozwala wybrać style nagłówka.

Użytkowanie

Nowe okno narzędzia powiadomień

Instancja Dziennika zdarzeń została zastąpiona nowym oknem narzędzia Powiadomienia, aby wyróżnić ważne i pomocne powiadomienia z IDE.

Zaktualizowane okno dialogowe Wyszukiwanie strukturalne i zamienianie

Okno dialogowe Wyszukiwanie strukturalne i zamiana zostało przeprojektowane i zawiera listę wszystkich szablonów, aby ułatwić nawigację między nimi.

W przypadku funkcji Structural Search i Replace, GoLand obsługuje XML, HTML, SQL i JavaScript.

Równomiernie podzielone karty

Można teraz równomiernie rozdzielić przestrzeń roboczą między zakładkami edytora. Aby to ustawić, należy przejść do Ustawienia / Preferencje | Ustawienia zaawansowane | Karty edytora | Wyrównaj proporcje w zagnieżdżonych podziałach.

Kontrola wersji

Zaktualizowano okno szczegółów zatwierdzenia w oknie narzędzia Git

Okno szczegółów zatwierdzenia zawiera teraz dokładne informacje o podpisie GPG

Poprawione adnotacje za pomocą Git Blame

Poprawiono funkcjonalność Adnotacji za pomocą Git Blame, aby ułatwić badanie zmian. IDE podkreśla różnice w liniach bezpośrednio w edytorze po najechaniu kursorem na adnotację i otwiera okno narzędzia Git Log po kliknięciu jednej z nich.

Ulepszenia Bazy danych

Kopiowanie wielu obiektów

Można teraz wybrać wiele tabel i skopiować je do innego schematu.

W tym celu trzeba wybrać tabele i nacisnąć klawisz F5, aby otworzyć okno dialogowe eksportu. Podobnie jak w przypadku eksportu pojedynczej tabeli, można zmapować kolumny, wyświetlić DDL nowej tabeli i je zmienić.

MomgoDB: Edycja pól w widoku wyników

Można teraz edytować wyniki w kolekcjach MongoDB, tak samo jak w relacyjnych bazach danych.

Tworzenie stron

Usprawnienia dla Vue

Jeśli komponenty są zdefiniowane jako globalne, IDE rozpozna je teraz w odpowiednich plikach .vue. GoLand powinien również obsługiwać składnię createApp. Poprawnie dopasuje aplikacje stworzone za pomocą createApp do powiązanych z nimi elementów. Ta wersja zawiera również wsparcie dla Nuxt 3, nowej wersji popularnego frameworka Vue.

Aktualizacje Next.js

Naprawiona została obsługa stron. GoLand rozwiązuje ścieżki używane we właściwości href komponentów Link. Uzupełnianie kodu, nawigacja i refaktoryzacje, takie jak zmiana nazwy, również działają.

Wsparcie ESM dla konfiguracji webpack

Od teraz pomoc w kodowaniu webpack będzie działać z modułami ES w plikach webpack.config.js.

Integracja z Volta

GoLand posiada teraz integrację z Volta, menedżerem narzędzi JavaScript. Automatycznie rozpozna Yarn i npm zainstalowane przy użyciu Volta.

Ułatwienia dostępu

Aby ułatwić nawigację w zakładce Dziennik, czytnik ekranu odczytuje teraz nazwy i opisy drzew gałęzi. Zapewnia komunikat głosowy o użyciu ⌘ L (Ctrl + G) do poruszania się po innych filtrach dziennika.

Ulepszono również obsługę ułatwień dostępu dla użytkowników macOS. Rozwiązano problem VoiceOver, który powodował wiele niepotrzebnych powtórzeń elementów listy. Ponadto VoiceOver może teraz odczytywać listy pól wyboru, a także naprawiono nieprawidłowe położenie kursora podczas pracy na zewnętrznym wyświetlaczu.