Команда JetBrains представила новую версию IDE GoLand 2018.3. В этом обновлении пользователей ждут:
- рефакторинг изменением сигнатуры;дамп памяти;поддержка Testify;новые инструменты отладчика;улучшенная проверка, прогнозирование и автодополнение кода;поддержка диаграмм;обновления для VCS, Docker, Kubernetes.
Рефакторинг, отладка, тестирование
Новый метод переработки кода Change Signature позволит одним действием изменить сигнатуру функций и методов во всём рабочем пространстве. Функция покажет, что изменится в коде после применения. Инструмент Inline выделит встроенный код, а Rename уведомит о возможных конфликтах при переименовании.
Добавлена возможность локального запуска и отладки приложений Google App Engine.
Дампы памяти Go теперь доступны через Run / Open Core Dump непосредственно в IDE. Для автоматического создания дампов памяти необходимо ввести GOTRACEBACK=crash в поле Environment.
Также GoLand 2018.3 поддерживает дебаггер rr от Mozilla, который позволяет искать сбой в программе с помощью воспроизведения её выполнения.
GoLand теперь поддерживает тестирующий плагин Testify. С его помощью можно локально проводить тестовый запуск программы в IDE, а также сравнивать ожидаемые значения с действительными.
Проверка, прогнозирование и автодополнение кода
Появились новые виды проверок:
- Unhandled Error — предупреждает о функциях и методах, которые возвращают неопределяемую ошибку.Unreachable code — определяет неиспользуемые части кода.
Function Call теперь работает в совокупности с новым Finish Call Expression.
Новый инструмент Add format string argument вставляет в строку формата заполнитель, а в качестве аргумента для него использует введённое выражение.
Generate Constructor генерирует функции для создания значений типа struct. Generate setter/getter создаёт шаблонный код и позволяет настраивать тип и имя методов, принимающих или не принимающих значение по ссылке (pointer/non-pointer receiver). Оба инструмента доступны во всплывающем окне Generate.
В GoLand 2018.3 также появилось дополнение функций по типу методов. Если имеется значение t типа T, при вводе t.Foo, можно посмотреть все функции, принимающие значение типа T в качестве первого аргумента. Инструмент Complete Current Statement теперь ставит конечную запятую во все составные литералы (struct, slice и т.д.) и помещает знак вставки для следующего оператора.
Редактор кода и поддержка диаграмм
В версии GoLand 2018.3 появилась возможность выбрать определённую группу файлов, над которыми не будут выполняться действия Reformat code, Optimize imports и Rearrange. IDE поддерживает многострочные комментарии TODO для Go, JavaScript, TypeScript, CSS и SCSS.
Введена поддержка диаграмм. Они позволят визуализировать и исследовать:
- зависимости модулей Go;таблицы и отношения баз данных и SQL;импорт и экспорт контекста в проектах JavaScript и TypeScript.
Система контроля версий, инструменты
GitHub Pull Requests — новое окно инструментов, позволяющее отследить все взаимодействия с git-репозиторием. GoLand клонирует корневое хранилище вместе со всеми его подмодулями.
Плагин Kubernetes получил поддержку Helm, а Docker поддерживает опции CLI для сборки в конфигурациях запуска Docker.
Предыдущая версия GoLand 2018.2 вышла в июле 2018 года.
Источник: