Что нового в Rider

Rider 2019.3 поддерживает шаблоны T4, предоставляет кросс-платформенный профилировщик для .NET Core и обеспечивает анализ покрытия тестами для Unity на разных платформах. Теперь IDE запускается быстрее, в отладчике поддерживается Docker Compose, а поддержка систем контроля версий и Xamarin расширена по всем направлениям.

Скачать
Бесплатная пробная версия на 30 дней

Rider 2019.3

Поддержка шаблонов T4

Поддержка шаблонов T4

Вы попросили поддержать текстовые шаблоны T4, и мы сделали это! Поддержка основана на нашем собственном генераторе и доступна в виде предустановленного плагина. 

Теперь вы можете легко выполнять, обрабатывать и отлаживать любые шаблоны T4 в Rider. Надеемся, вам понравятся и новые возможности редактора:

  • Расширенная поддержка C# в блоках кода: подсветка синтаксиса, навигация, автодополнение, рефакторинги, контекстные действия, инспекции, форматирование и многое другое.
  • Специализированные возможности для T4: инспекции, помощь при написании кода, сворачивание и подстановка фигурных скобок.
  • Расширенная поддержка директив include для максимально точного разрешения кода C#.
  • Поддержка всех видов директив: инспекции, быстрые исправления, подсветка синтаксиса, навигация и многое другое.

Все это работает на Windows, macOS и Linux.

Профилирование приложений .NET Core на разных платформах

Профилирование приложений .NET Core на разных платформах

В Rider 2019.1 профилировщик производительности уже работал на Linux и macOS, но поддерживались только приложения Mono и Unity Mono. В этой версии мы сделали большой шаг вперед: теперь можно профилировать приложения .NET Core на Linux и macOS с помощью встроенного плагина dotTrace. А значит, вы можете профилировать любые приложения .NET на Windows, macOS и Linux.

Обратите внимание, полностью поддерживаются только проекты, написанные под .NET Core 3.1. Из-за некоторых ограничений .NET Core при профилировании проектов .NET Core 3.0 и более ранних версий в редких случаях может произойти зависание или падение профилируемого приложения.

Анализ покрытия кода тестами для Unity

Анализ покрытия кода текстами для Unity

С каждым выпуском мы стараемся улучшить работу скриптов Unity и добавить полезную функциональность. На этот раз Unity-разработчиков порадуют возможности кросс-платформенного юнит-тестирования и непрерывного тестирования.

Вот еще несколько новых возможностей:

  • Поддерживаются юнит-тесты в режиме Play.
  • Rider поддерживает UIElement: доступна подсветка синтаксиса, автодополнение и проверка файлов UXML и USS на соответствие схеме.
  • Мы вернули поддержку файлов .asmdef.
  • Имя проекта отображается для редакторов Unity при перечислении процессов для отладки.
  • Ускорена обработка ассетов при первичной загрузке проекта.
  • Clear on play поддерживается в окне просмотра журнала изменений.
  • Мы исправили поведение, при котором Rider предлагал синтаксис C# 8.
  • Также исправлены различные пограничные случаи для поддержания актуальности .meta-файлов во время рефакторинга.

Это только основные улучшения. Как всегда, в этой версии есть много других исправлений и новых возможностей. Полный список — здесь.

Улучшенная производительность

Улучшенная производительность

В Rider 2019.3 вошли все улучшения, которые были добавлены в платформу IntelliJ в ходе большой совместной работы нескольких команд JetBrains по оптимизации производительности. Вот некоторые важные результаты: Rider запускается гораздо быстрее, поддержана плавная прокрутка колесом мыши, устранено множество зависаний интерфейса. Читайте об этих и многих других улучшениях производительности в блоге IntelliJ IDEA.

Поддержка Docker Compose в отладчике

Поддержка Docker Compose в отладчике

В версии 2018.2 мы добавили поддержку Docker в отладчик, чтобы отлаживать контейнеры, созданные на основе Dockerfile. Однако отлаживать контейнеры, собранные с использованием Docker Compose (docker-compose.yml), было нельзя.

Наконец поддержка Docker Compose добралась и до отладчика! Теперь вы можете отлаживать мультиконтейнерные Docker-приложения одним щелчком мыши.

Улучшенная функция Edit & Continue

Улучшенная функция Edit & Continue

С помощью Edit & Continue теперь можно вносить изменения в запущенное приложение, его не нужно останавливать в точке останова. Вы можете применить изменения в любое время, нажав Apply Changes во всплывающей подсказке в верхней части редактора. А чтобы отключить автоматическое применение изменений Edit & Continue для действий Step, Resume и Jump to Statement, перейдите в меню Settings | Build, Execution, Deployment | Debugger | Editing during debug.

Обратите внимание: Edit & Continue по-прежнему работает только на Windows.

Улучшения отладчика

Улучшения отладчика

В других частях отладчика тоже много нового. Во-первых, изменилось дерево исключений на вкладке Breakpoints:

  • Поиск теперь работает в свернутых узлах.
  • Исключения сгруппированы по типу (пользователь/система) и пространству имен.
  • Главный узел теперь называется CLR Exceptions.

Во-вторых, улучшена удаленная отладка:

  • Уведомления об ошибках, которые могут возникнуть при удаленной отладке, и их описания стали подробнее и понятнее.
  • Если для удаленной отладке не указан пароль или кодовая фраза, IDE напомнит об этом при подключении к удаленному серверу.

И наконец:

  • Мы переименовали многие действия в отладчике, чтобы было понятней, в чем их суть.
  • Функция Pin to top поддерживает рекурсивное вычисление.
  • Добавлено действие Jump to Type Source.
  • В Mono опция Just my code работает значительно лучше для точек останова, срабатывающих при исключении.
Обновленная поддержка VCS

Обновленная поддержка VCS

Мы добавили несколько улучшений интерфейса для более удобной работы с системами контроля версий, например Git. В этой версии предварительный просмотр diff открывается прямо на вкладке редактора.

Появилось новое окно коммита, которое по умолчанию отображается слева. Это позволило увеличить вертикальное пространство для списков изменений, описаний коммитов и т.д.

Если при первом запуске Rider 2019.3 вы не cможете найти вкладку Version Control, не пугайтесь: мы ее просто переименовали в Repository.

Кроме того, мы улучшили представление Compare with Current, переработали диалог Clone и добавили возможность отправлять изменения из неактивной ветки.

Подробности читайте в нашем блоге.

Плагин AWS Toolkit для Rider

Плагин AWS Toolkit для Rider

Мы приложили много усилий, чтобы оптимизировать плагин AWS Toolkit для .NET-разработчиков и обеспечить его совместимость с Rider.

  • Используйте готовый шаблон проекта для создания нового бессерверного приложения AWS.
  • Вы можете создавать, запускать и отлаживать код в AWS Lambda локально и удаленно. Причем все это можно делать прямо из редактора, используя значки на полях.
  • Вы можете развертывать бессерверные приложения в AWS.
  • Встречайте поддержку отладки в облаке! Вы можете отлаживать облачные приложения .NET Core, работающие в Amazon ECS, с помощью AWS Fargate прямо в удаленном контейнере в облаке, без локальной эмуляции.
  • Плагин доступен для Rider 2019.2 и 2019.3.

После установки плагина AWS Toolkit for Rider у вас будет все необходимое для начала работы с бессерверными приложениями.

Обновленная поддержка Xamarin

Обновленная поддержка Xamarin

Мы продолжаем улучшать поддержку Xamarin и добавили несколько полезных возможностей для Xamarin Android и Xamarin iOS:

  • Обнаружение устройств и симуляторов Apple на Mac работает эффективнее благодаря встроенным компонентам JetBrains AppCode.
  • Список подключенных устройств Apple можно найти на панели инструментов.
  • Поддерживаются сборки mtouch (Mono-компилятора для iOS).
  • Для проектов Xamarin Android доступна публикация APK (действие Archive or Publish в контекстном меню проекта).
  • Можно менять специфичные для Android свойства проекта в меню Project Properties.

Мы также не забыли о Xamarin Forms: теперь поддерживаются атрибуты x:DataType и Class.

Улучшенная поддержка C# 8

Улучшенная поддержка C# 8

В этой версии Rider мы улучшили поддержку C# 8.

  • Rider лучше понимает ссылочные типы, допускающие значение null, и поддерживает ограничения notnull.
  • Поддержаны target-typed switch-выражения.
  • Появилась поддержка методов интерфейса по умолчанию.
  • Новая инспекция с быстрым исправлением подскажет, когда локальную функцию можно объявить статической.
  • Теперь можно включить аннотации допустимости значения null и соответствующие предупреждения в файле, проекте или по всему решению.
  • Новое быстрое исправление поможет добавить атрибут EnumeratorCancellation в параметры CancellationToken асинхронных итераторов.

Кроме того, мы разбили инспекцию Type or type member is never used на две: для поиска неиспользуемых типов (Type is never used) и членов типа (Type member is never used).

Генерация кода

Генерация кода

Действие Generate лучше понимает C# 8:

  • Быстрое исправление Add missing arms проверяет все значения перечислений.
  • Добавлено быстрое исправление и контекстное действие для генерации образцов типов в switch-выражениях.
  • Допустимость значения null учитывается при генерации операторов равенства/сравнения.

Кроме того, теперь можно использовать System.HashCode для реализации GetHashCode при генерации операторов равенства и сравнения на равенство на C# и VB.NET — это поможет сделать ваш код чище.

Подсказки имен типов

Подсказки имен типов

Надеемся, вам нравятся подсказки имен параметров и аннотации кода, которые мы реализовали в Rider 2019.1. В этой версии мы пошли дальше и добавили подсказки типов. Они доступны для:

  • Параметров лямбд.
  • Всех вхождений var, включая сопоставление с образцом и деконструкцию кортежей.
  • Переменных диапазона в операторах LINQ.
  • В конце строки в цепочке вызовов методов.
Навигация и действие Find Usages

Навигация и действие Find Usages

Большинство разработчиков сталкиваются с необходимостью узнать, где в коде используются типы или члены типа, относящиеся к определенному модулю. Для этого в Rider уже давно есть действие Find dependent code. Однако у него всегда были ограничения. В этой версии мы устранили некоторые из них: теперь действие Find dependent code работает для ссылок на пакеты NuGet и может искать не только в проекте, но и по всему решению.

Вот некоторые другие нововведения:

  • Подсказка Quick definition теперь работает для любых символов в редакторе, что позволяет быстро просматривать определения, не выходя из контекста.
  • В меню Navigate to добавлена опция Consuming APIs. Она перечисляет все методы, которые принимают объекты определенного типа в своих параметрах.
  • В окне Find results действия Find dependent code появились новые фильтры.
  • Теперь можно перейти к внешним источникам пакетов NuGet, которые содержат пакет исходных символов.
Стиль кода

Стиль кода

В этой версии появилась еще одна долгожданная возможность. Настройки именования C# теперь поддерживают файлы EditorConfig.

Помимо этого, есть еще несколько небольших изменений, которые помогут вам управлять форматированием кода:

  • Для тех, кто предпочитает использовать ключевое слово var вместо явного объявления типа, только если тип выражения инициализатора очевиден, Rider поможет обнаружить более очевидные случаи. Есть также режим «совместимости», соответствующий поведению Roslyn.
  • Новая опция, совместимая с StyleCop и Roslyn, добавляет круглые скобки, чтобы уточнить приоритет для отдельной группы операторов, вложенных в другие из этой же группы. Например, если вы не помните, что должно выполняться раньше, && или ||, Rider поможет разобраться, добавив круглые скобки.
  • Comment Code теперь по умолчанию добавляет отступ к комментарию. Чтобы отключить это поведение, используйте опцию Place comments at first column when commenting out code.
  • На страницах настройки отступов теперь показывается уведомление о том, что включена опция Autodetect indent size and value.

На страницах параметров форматирования C# новая подсказка объяснит, как работают действия Configure formatting и Autodetect formatting.

Улучшения проектной модели

Проектная модель Rider теперь распространяет любые рефакторинги, которые применяются в файлах на языках веб-разработки, например TypeScript, на все файлы проекта. Например, при перемещении TS-класса в отдельный файл Rider обновит соответствующий файл .csproj. Кроме того, мы улучшили UX статуса проекта Not Built в окне Solution Explorer.

Обратите внимание, что Rider больше не поддерживает .NET Core 1.* SDK, так как срок действия этих версий истек.

Начальная поддержка MongoDB

В Rider появилась начальная поддержка MongoDB (подробнее). Кроме того, теперь поддерживается отладчик PL/SQL для Oracle, добавлены новые инспекции и предупреждения, появился индикатор выполнения запросов в редакторе и простой способ посмотреть информацию об ошибке соединения в поисковике Google.

Подробнее: Что нового в DataGrip 2019.3.

Веб-разработка

Веб-разработка

Как и всегда, веб-разработчиков ждет много нового:

  • Значительные улучшения автодополнения для Vue.js.
  • Быстрый просмотр документации в проектах Vue.js.
  • Улучшенная поддержка props в компонентах React.
  • Улучшенная поддержка Angular.
  • Поддержка TypeScript 3.7 и другие улучшения для JavaScript и TypeScript.
  • Обновленная поддержка CSS/SASS.
  • Поддержка грядущей версии Yarn 2.

Подробнее: Что нового в WebStorm 2019.3.

Другие возможности

Другие возможности

  • Мы улучшили поддержку файлов проекта (например, .csproj): теперь автодополнение учитывает различные элементы MSBuild. Вы также можете использовать инспекцию и быстрое исправление для валидации <TargetFramework>/<TargetFrameworks>.
  • Rider по-новому генерирует предопределенную конфигурацию запуска, чтобы ее можно было запускать без дополнительных настроек и лишних действий. Кроме того, конфигурация получает автоматически сгенерированное имя вместо скучного Default.
  • Поддержано больше свойств MSBuild, указанных в файле launchSettings.json, например $(ProjectDir).
  • Подсказка Parameter Info доступна для кортежей.
  • При удалении новых строк и при удалении символов перед новой строкой, сохраняется пробел, если нужно разделить лексемы или если того требуют правила форматирования.
Другие возможности

Другие возможности

  • Мы полностью переработали подсветку идентификаторов: для настройки цветов синтаксиса C# есть отдельная страница; для директив препроцессора, статических методов, полей и других элементов предусмотрены индивидуальные цвета.
  • Новые инспекции для NUnit охватывают комбинаторные юнит-тесты и отдельные параметры параметризованных юнит-тестов.
  • Мы вернули кнопку Expand All на левую панель инструментов.
  • В экспериментальном режиме доступен новый реактивный клиент TFS. Чтобы включить его, перейдите в меню Settings | Version Control | TFVC. Это существенно ускорит действие Checking for changes (в наших тестах оно работает в 100—1000 раз быстрее). Многие действия, например Commit и History, будут перенесены на новый клиент после официального выхода.
Скачать
Бесплатная пробная версия на 30 дней

Rider 2019.2

Отладчик

Улучшения отладчика

На вкладке Variables появилась новая опция Pin to Top. Она позволяет отметить любое свойство или поле объекта и закрепить его в верхней части списка. 

Для действий Run to Statement и Jump to Statement появились плавающие иконки прямо в редакторе.

Кроме того, мы значительно улучшили производительность при подсчете стека и пошаговой отладке.

Подробности читайте в нашем блоге (на английском языке).

Поддержка Xamarin

Поддержка Xamarin

Мы добавили несколько полезных функций для разработки Xamarin-приложений для iOS.

Теперь можно публиковать файлы .ipa (пакет iOS App Store) из iOS-проектов Xamarin на iOS-устройствах прямо из IDE. Выберите iOS-проект в представлении Solution Explorer, вызовите контекстное меню и кликните по опции Archive for Publish.

Кроме того, вы можете управлять профилями подготовки для iOS-проектов Xamarin из окна Properties (Configurations | Bundle Signing).

Конструктор Windows Forms

В Rider 2019.2 добавлена поддержка элементов управления Telerik, DevExpress, Syncfusion, ComponentOne и Infragistics. Вы можете загрузить набор элементов управления в Designer Toolbox, а затем использовать их в формах приложения и пользовательских элементах управления. Обратите внимание, что некоторые элементы управления DevExpress, которые интенсивно используют Visual Studio API, работать не будут. Мы ищем способ это обойти.

Кроме того, мы добавили поддержку 32-битных элементов управления — теперь можно использовать в конструкторе 32-битные компоненты.

Подробнее о том, как использовать сторонние элементы управления в Rider, читайте в нашем блоге.

Анализ покрытия кода для приложений Mono и юнит-тестов

Анализ покрытия кода для приложений Mono и юнит-тестов

В дополнение к поддержке тестов и приложений .NET Core, мы реализовали анализ покрытия кода для приложений Mono. Анализируйте покрытие юнит-тестов .NET Framework, используя среду выполнения Mono на Linux, macOS и Windows.

Улучшенная поддержка C#

Улучшенная поддержка C#

Используйте больше возможностей C#8 благодаря поддержке языка из ReSharper:

  • Поддержаны последние изменения в индексах и диапазонах, например, типы indexable и rangeable.
  • Контекстное действие Add range check теперь поддерживает индексацию по System.Index/System.Range и производит соответствующие проверки.
  • Поддержаны unmanaged generic structs.
  • Добавлены две новые инспекции Convert switch statement to switch expression и Convert chain of ternary expressions to switch expression с соответствующим быстрым исправлением Convert to switch expression.

Вы просили — мы сделали: контекстное действие Convert concatenation to interpolation теперь можно применять в различных масштабах (файл/проект/решение).

Поддержка F#

Поддержка F#

Code Vision теперь работает для F#! IDE показывает выведенные типы для функций, значений и членов, а также автора объявлений прямо в редакторе.

Есть и другие изменения:

  • Проверка орфографии из ReSharper теперь работает для объявлений символов, строк и комментариев на F#.
  • Escape-последовательности подсвечиваются в строках.
  • Несоответствующие правила в match-выражениях теперь подсвечиваются лучше.
  • Действия Find Usages и Go to Declaration применимы для выражений создания записей, а также для выражений копирования и обновления.
  • Вид экземпляров New Instance показывается для выражений, которые создают исключения.
  • F# Interactive можно запустить из .NET Core SDK 2.2.300+.

Подробнее об изменениях можно узнать в этом репозитории на GitHub.

Обновленный интерфейс

Обновленный интерфейс

В светлых темах мы изменили внешний вид вкладок редактора и отладчика, чтобы добиться единообразия с темными темами. Надеемся, вам понравится.

Всплывающее окно автодополнения выглядит более аккуратно, подсветка выделенного текста в светлой теме стала более выразительной.

Теперь вы можете делать коммит прямо из вкладки Local Changes — больше нет необходимости использовать отдельный диалог коммита.

Solution Explorer

Solution Explorer

В представлении Solution Explorer вас ждут следующие обновления:

  • Папки решений теперь можно переименовывать.
  • Функция Auto-scroll to source отключена для файлов проекта/решения.
  • В Rider можно открывать отфильтрованные решения (*.slnf), появившиеся в Visual Studio 2019.
Поддержка NuGet

Поддержка NuGet

Rider 2019.2 включает в себя несколько обновлений для встроенного NuGet-клиента:

  • Rider отображает файлы readme.txt, чтобы помочь вам определить следующие шаги после установки пакета.
  • При выполнении XDT-преобразований, элементы автоматически добавляются в файлы конфигурации и удаляются из них, как того требует пакет.
  • В Rider появилась поддержка нативных кросс-платформенных поставщиков учетных данных, например, для доступа к частным каналам в Azure DevOps/Artifacts.
  • Мы переработали механизм обновления нескольких пакетов в нескольких проектах, сделав его проще и эффективнее.

Подробнее об этих изменениях читайте в нашем блоге.

Реорганизация кода

Еще одна долгожданная функция из ReSharper: шаблоны структуры файла можно редактировать через представление XAML прямо в настройках Rider (Editor | Code Style | C# | File Layout).

Поддержка ASP.NET

Мы сделали собственный генератор файлов с выделенным кодом для файлов aspx и ascx. При добавлении нового элемента управления в файл .aspx и доступе к нему из файла с выделенным кодом (.aspx.cs), генератор создаст соответствующий файл .designer.cs.

Поддержка Unity

С каждой новой версией интеграция с Unity становится все лучше. Вот что мы подготовили на этот раз:

  • Сериализованные значения полей показываются прямо в редакторе.
  • Добавлено автодополнение и валидация сцен, тегов, слоев и входных значений.
  • Новые файлы и шаблоны для создания редакторов, атрибутов и многого другого.
  • С помощью контекстного действия Alt+Enter можно сгенерировать функцию события в любом месте класса.
  • Добавлены новые контекстные действия для добавления атрибутов в панель Inspector, таких как Space, Header и Tooltip.
  • Добавлена инспекция для поиска дублированных сочетаний клавиш в атрибутах меню.
  • В меню Navigate To можно искать использования символов в Unity.
  • Значительно ускорена обработка текстовых ассетов.
  • Плагин Unity Editor теперь поставляется в комплекте с Unity 2019.2 — больше никаких DLL-файлов в проекте!

Подробнее об изменениях можно узнать в этом репозитории на GitHub.

Обновление VCS

Обновление VCS

  • IDE теперь предлагает вам добавлять в систему контроля версий файлы, которые были скопированы в проект извне.
  • IDE напоминает о файлах, которые вы могли забыть вернуть в репозиторий после правки.
  • Улучшенна обработка игнорируемых файлов.
  • Историю директории можно посмотреть через Git Log.
  • Можно просматривать файловую историю Git в нескольких директориях, выбранных в окне Project View.
  • Результаты обновления проекта отображаются в формате вкладки Log.
  • Улучшено действие Compare Branches.
  • Новое действие Show Diff with Working Tree показывает различия между файлами.
  • Улучшен режим Collapse Unchanged Fragments в окне Diff.
  • Можно выбрать отображаемые столбцы на вкладке Log.
  • Можно отменить операции merge и cherry-pick в Git.

Подробнее: Что нового в IntelliJ IDEA 2019.2.

Веб-разработка

Веб-разработка

  • Улучшенный рефакторинг Rename.
  • Поиск дубликатов в коде на JavaScript, TypeScript, CSS, Sass, SCSS и Less.
  • Улучшенная поддержка Angular.
  • Улучшенное отображение вариантов автодополнения для JavaScript.
  • Автодополнение для ключевых слов и имен, в которых есть опечатки.
  • Поддержка оператора pipeline.
  • Новые интеншены для деструктуризации в JavaScript и TypeScript.
  • Обновленная функциональность отладки Smart step into.
  • Подсказки типов в редакторе.
  • Возможность скрыть библиотечные фреймы в отладчике.

Подробнее: Что нового в WebStorm 2019.2.

Поддержка баз данных

Поддержка баз данных

  • Уведомление для установки соединения LocalDb, если в файле конфигурации есть соответствующая строка подключения.
  • Поиск по данным с предпросмотром SQL.
  • Таймер запроса.
  • Инспекция для поиска необязательного CASE.
  • Быстрое создание группы.
  • Комментарии к таблицам.
  • Новые настройки для передвижения каретки.
  • Новые элементы в списке автодополнения: IS NULL и IS NOT NULL. Раньше сравнения с NULL надо было набирать по отдельности.
  • Новые действия.
  • Действие Force Refresh.

Подробнее: Что нового в DataGrip 2019.2.

Другие возможности

Другие возможности

  • Новое окно Services — единая панель управления для всех подключений, конфигураций и многого другого.
  • Благодаря встроенной интеграции с редактором TextMate подсветка синтаксиса теперь доступна более чем для 20 языков программирования. Полный список языков вы найдете в разделе Editor | TextMate Bundles в меню Preferences/Settings.
  • Теперь можно исключать члены из предложения import namespace и списка вариантов автодополнения.
  • Новое системное уведомление сообщит вам о завершении выполнения действий Build Solution и Run Unit Tests.
Другие возможности

Другие возможности

  • Для снэпшотов хронологического профилирования доступен полный набор фильтров, включая Memory allocations, exceptions и другие.
  • В диалоговом окне Find in Path появились новые области поиска: можно искать в файлах, которые вы недавно просматривали или редактировали, а также в источниках данных.
  • На странице настроек MSTest в разделе Build, Execution, Deployment | Unit Testing | MSTest в поле Visual Studio path появились предопределенные параметры.
  • Теперь есть кнопка для отображения всех внешних типов в открытой иерархии.
Скачать
Бесплатная пробная версия на 30 дней

Rider 2019.1

Дизайнер WinForms

Дизайнер WinForms

В этой версии мы представляем конструктор WinForms, который вы давно ждали. Он поможет вам создавать, просматривать и изменять пользовательский интерфейс приложений Windows Forms.

В окне WinForms Toolbox отображаются элементы управления, которые можно поместить на форму. Панель инструментов включает в себя стандартный набор компонентов, как в Visual Studio. Вы можете копировать различные элементы управления с вкладки Toolbox и вставлять их на форму, а также менять их размеры и положение. Нужные компоненты легко находить, используя поле поиска в верхней части вкладки.

Появился новый шаблон проекта Windows Form Application, а также шаблоны файлов для форм, пользовательских элементов управления и компонентов.

Обратите внимание, что пока не поддерживаются приложения WinForms на VB.NET, перетаскивание компонентов из панели инструментов в форму и сторонние элементы управления.

Подробнее: Разработка приложений Windows Forms в Rider (на английском языке).

Функция Edit & Continue

Функция Edit & Continue

Еще одна долгожданная функция, которую мы реализовали в этой версии — Edit & Continue (только для Windows). Она помогает менять исходный код, когда выполнение программы прерывается на точке останова. После возобновления отладки Rider автоматически применит изменения. Это позволяет сэкономить много времени, поскольку вам не придется перезапускать сеанс отладки после повторной компиляции.

Подробности читайте в нашем блоге (на английском языке).

Кроссплатформенный анализ покрытия кода

Профилирование и анализ покрытия кода на платформах Linux и macOS

Отличная новость для всех, кто использует системы Unix: покрытие кода и профилирование теперь доступны на платформах Linux и macOS. Однако есть некоторые ограничения: в версии 2019.1 анализ покрытия модульных тестов, включая непрерывное тестирование, доступен для приложений .NET Core 2.0+ (не для Mono/Mono Unity). Профилировщик производительности на данный момент поддерживает приложения Mono 5.6+ и Mono Unity 2018.3+ (но не .NET Core).

Подробнее:

Breadcrumbs

Breadcrumbs

Breadcrumbs теперь работают в файлах на C#, VB.NET и F#. Эти небольшие маркеры помогают быстро понять, где вы находитесь относительно структуры текущего документа, и помогают легко перемещаться по ней.

Чтобы перейти к родительскому элементу в исходном коде, кликните по маркеру с его именем. Если кликнуть по элементу пространства имен в C#, VB.NET или F#-файле, вы сможете перейти ко всем файлам, в которых используется это пространство имен.

Breadcrumbs по умолчанию отображаются внизу, но их можно разместить и в верхней части редактора.

Подробности читайте в нашем блоге (на английском языке).

Breadcrumbs

Просмотрщик IL

Окно IL Viewer из ReSharper теперь есть и в Rider. В нем отображаются IL-инструкции для класса или метода, который в данный момент открыт в редакторе. Редактор и IL Viewer синхронизированы между собой: когда вы помещаете курсор на символ в вашем коде, подсвечивается соответствующий IL-код, и наоборот. При наведении курсора на IL-инструкцию вы увидите всплывающую подсказку с описанием, взятым из MSDN и стандарта ECMA-335 (Раздел III: Набор инструкций CIL).

Подробности читайте в нашем блоге (на английском языке).

Поддержка Xamarin

Улучшенная поддержка Xamarin

Отличная новость для всех разработчиков приложений Xamarin: мы создали свой собственный JetBrains Xamarin SDK, который позволяет разрабатывать Xamarin-приложения на Windows/macOS без необходимости владеть лицензией и устанавливать Visual Studio на вашем компьютере. JetBrains Xamarin SDK использует те же исходники, что и пакет Microsoft, — вы получите доступ ко всей оригинальной функциональности.

Еще одна хорошая новость: Rider напрямую интегрируется с Xcode. Благодаря этой интеграции вы можете использовать Interface Builder в XCode для создания пользовательских интерфейсов MacOS-проектов в Xamarin-приложении.

В поддержку Xamarin для Android внесено несколько изменений. Во-первых, мы вынесли всю функциональность в отдельный внешний плагин, который можно скачать из репозитория плагинов. Установите плагин, чтобы получить доступ ко всем полезным функциям.

Во-вторых, новый мастер Android SDK поможет вам установить все необходимые SDK для разработки под Android, если вы впервые открываете Android-проект в Rider.

Улучшения производительности

Улучшения производительности

После выхода Rider 2018.3 мы получили много комментариев, связанных с производительностью, поэтому уделили ей особое внимание:

  • Мы вынесли поддержку Xamarin для Android в отдельный внешний плагин, и теперь между нажатием на иконку Rider и отображением заставки с индикатором выполнения проходит гораздо меньше времени. А еще установщик стал легче на 150 MB.
  • В одной из предыдущих версий был сломан запуск NGen (генератора образов в машинном коде) для исполняемых файлов Rider. В результате, чтобы открыть решение в Rider на Windows, требовалось 8 дополнительных секунд, поскольку процесс JIT-компиляции необходимо было запускать во время выполнения. Теперь мы восстановили запуск NGen и отыграли 8 секунд на открытии каждого решения.
  • Мы также оптимизировали горячий запуск: перестали использовать движок ReSharper в поддержке JavaScript/TypeScript и сделали загрузку модели проекта асинхронной. В результате горячий запуск стал в два раза быстрее.
  • Мы реализовали раннюю загрузку бэкенда, и теперь языковая служба ReSharper загружается на 3 секунды быстрее. Вы заметите разницу, если используете опцию открытия последнего решения при запуске IDE или если успеваете кликнуть по решению на начальном экране быстрее чем за секунду.
Поддержка Razor

Поддержка Razor

На страницах Razor поддержка языков веб-разработки (таких как JavaScript и CSS) была переведена с движка ReSharper на движок WebStorm. А значит, вы сможете работать с самыми современными фронтэнд-технологиями и фреймворками: теперь Rider поддерживает Emmet и предоставляет все необходимое для разработки с использованием Angular, React, Vue.js и Meteor прямо в представлениях Razor.

Представления Razor были последним компонентом, в котором использовалась веб-поддержка из ReSharper, так что теперь анализ JavaScript и CSS полностью производится движком WebStorm. Поскольку связанные с ReSharper сборки больше не загружаются при открытии Rider, сократилось время запуска IDE и загрузки решений.

Поддержка IIS Express

IIS Express для ASP.NET Core

Теперь можно запускать и отлаживать приложения ASP.NET Core в IIS Express. Мы расширили launchSettings.json для поддержки IIS Express. На специальной странице настроек можно проверить, установлен ли IIS Express и выполняются ли предварительные условия.

Rider также проверит, установлен ли надежный SSL-сертификат, а если его нет, вы сможете сгенерировать сертификат самостоятельно.

Подробности читайте в нашем блоге (на английском языке).

Рефакторинг Rename для F#

Переименование F#-символов по всему решению

Рефакторинг Rename для символов, определенных на F#, теперь работает по всему решению, даже если они используются в проектах на C# и VB.NET. Rider — первая IDE, в которой реализована такая функциональность.

Помимо этого долгожданного рефакторинга, много полезных функций для F# получили и другие подсистемы, например навигация и поиск использований. Полный список обновлений вы найдете на GitHub.

Начальная поддержка C# 8

Начальная поддержка C# 8

Большинство новых возможностей языка уже поддерживаются, в том числе:

  • Диапазоны и выражения индекса с отсчетом с конца
  • Присвоение с объединением со значением NULL (null-coalescing assignment)
  • Выражения switch
  • Кортежи в операторе switch
  • Статические локальные функции
  • Асинхронные потоки
  • Ссылочные типы, допускающие значение null
  • Рекурсивные паттерны
  • Объявления using

Помощь при вводе аннотаций допустимости значения null усовершенствована и поддерживает возможности новейшей версии языка.

Обновленный редактор

Обновленный редактор

Не упустите основные изменения, которые мы внесли в редактор кода. Мы улучшили всплывающую подсказку Parameter Info: в ней стало больше цветов, и теперь отображается документация XML для выбранной перегрузки. Для файлов с языковыми вставками в меню (Alt+Enter) обосновались интеншены из WebStorm и DataGrip.

Наконец, благодаря структурной навигации, позаимствованной у ReSharper, клавиша Tab снова в деле. Чтобы быстро выделить следующий или предыдущий элемент кода, не нужно использовать мышь или клавиши управления курсором — нажмите Tab и Shift+Tab соответственно.

Форматер кода получил несколько очень полезных улучшений:

  • Появилась возможность уменьшить отступ по нажатию Backspace (как в IntelliJ IDEA).
  • Кнопка Export settings to .editorconfig позволяет сохранить настройки форматирования в файле EditorConfig, которым вы можете поделиться с коллегами, не использующими Rider.
  • Теперь можно отсортировать по алфавиту все директивы using, включая System.
  • Сортировка директив using совместима с поведением Visual Studio и StyleCop.

Подробности читайте в нашем блоге (на английском языке).

Большое обновление поддержки юнит-тестирования

Большое обновление поддержки юнит-тестирования

В каждой версии мы стараемся улучшать поддержку юнит-тестирования, и 2019.1 не исключение:

  • Юнит-тестирование теперь производится быстрее и потребляет меньше памяти.
  • Во всех окнах, связанных с юнит-тестами, появились новые правила группировки тестов в дереве.
  • В окне Sessions добавлен индикатор выполнения, а также режим отслеживания выполнения теста и возможность скрывать пустые тестовые фильтры.

Подробности читайте в нашем блоге (на английском языке).

Улучшенная поддержка Unity

Улучшенная поддержка Unity

Как и всегда, мы много работали над поддержкой Unity:

  • Профилирование производительности с помощью dotTrace теперь доступно в редакторе Unity.
  • При переименовании метода или свойства, используемого в качестве обработчика событий Unity, также обновятся его использования в текстовых сценах, ассетах и префабах.
  • Модульные тесты в режиме редактирования, запущенные в редакторе Unity, можно отлаживать в один клик.
  • Контекст и индикаторы, важные для производительности (представленные в Rider 2018.3), теперь работают в нескольких файлах. Любой метод, косвенно используемый из метода, например Update, теперь подсвечивается.
  • Индексация Unity-проектов, содержащих дополнительные папки в корне проекта, стала быстрее.
  • Поиск в файлах теперь работает внутри ссылочных пакетов.
  • Добавлена начальная поддержка ECS: типы и поля, неявно используемые ECS, теперь помечены как используемые.
  • Появились новые инспекции. Например, IDE проверит, что умножение векторов выполняется в наиболее эффективном порядке.
  • Кроме того, мы добавили много небольших улучшений и исправлений. Например, автодополнение функций событий стало более точным; при нажатии кнопки отладки автоматически запускается редактор Unity; ресурсы обновляются после получения последних данных из системы контроля версий и перед запуском тестов.

Подробнее об изменениях можно узнать здесь.

Улучшения IDE

Улучшения IDE

  • На новой странице Environment в меню Settings/Preferences можно выбрать дополнительные компоненты для загрузки и установки, например .NET Core или Mono SDK/runtimes.
  • Появились нативные диалоги для работы с файлами на Windows.
  • Rider поддерживает индивидуальную настройку тем интерфейса.
  • В новом диалоге Recent Locations отображаются места в коде, которые вы недавно посещали или редактировали. (Подробности в блоге)
  • Все настройки Rider синхронизируются через JetBrains Account Cloud.
  • Переработана страница настроек набора инструментов.
  • В настройках можно задавать глобальные свойства MSBuild.

Подробности читайте в нашем блоге (на английском языке).

Поддержка систем контроля версий

Поддержка систем контроля версий

Мы улучшили поддержку систем контроля версий по нескольким направлениям:

  • Действия Fixup и Squash теперь доступны на вкладке VCS Log.
  • В меню вкладки VCS Log доступно действие cherry-pick для отдельных файлов из коммита.
  • Можно просмотреть входящие и исходящие коммиты.
  • Удаленные отложенные файлы можно восстановить.
  • Добавлена опция Uncheck all для частичных коммитов в Git.
  • Сравниваемые файлы можно поменять местами.
Веб-разработка

Веб-разработка

Тем, кто занимается веб-разработкой, будут интересны следующие улучшения:

  • Упрощенная навигация по проектам Angular c помощью действия Related Symbol.
  • Улучшенная поддержка TypeScript в vue-файлах.
  • Обновленная консоль отладчика.
  • Поддержка Cucumber-тестов, написанных на TypeScript.
  • Улучшенная поддержка ESLint и TSLint в проектах с несколькими конфигурациями линтеров.
  • Поддержка функциональности Less 3.0.
  • Новые действия и инспекции для JavaScript и TypeScript.

Подробнее: Что нового в WebStorm 2019.1

Поддержка баз данных

Поддержка баз данных

  • Поддержаны новые базы данных: Greenplum, Vertica, Snowflake и Apache Hive.
  • Для CREATE и DROP автодополнение предлагает комбинированные варианты.
  • Добавлена опция никогда не сохранять пароль.
  • Доступны новые инспекции.
  • Обновлен проводник базы данных.

Подробнее: Что нового в DataGrip 2019.1

Функции Azure

Функции Azure

В последние недели мы работали над улучшениями в преддверии выхода Azure Toolkit для Rider. В Rider 2019.1 добавлена поддержка Функций Azure (V2) с шаблонами проектов и элементов для C# и F#, возможностями отладки и развертывания прямо из IDE.

Мы также улучшили функциональность базы данных SQL: теперь можно добавлять правила брандмауэра и создавать новые серверы баз данных и новые баз данных.

Уроки по начальному экрану

Обучение

Теперь можно познакомиться с Rider по-новому: мы подготовили серию уроков, которые помогут узнать о самых важных функциях Rider. Уроки, добавленные в этой версии, посвящены сочетаниям клавиш, отладке, конфигурациям запуска/отладки, работе с VCS и юнит-тестированию.

Перейти к урокам можно с начального экрана, если вы запускаете Rider впервые, или через меню Help | Tutorials.

Другие обновления

Другие обновления

  • Теперь можно публиковать веб-приложения ASP.NET Classic (не Core) в локальные папки или через FTP (только в Windows).
  • Rider можно установить в качестве JIT-отладчика в Windows.
  • Конфигурации запуска: статический метод и конфигурацию запуска проекта можно выполнить, используя значок на поле редактора.
  • Конфигурации профилирования стали более гибкими благодаря расширенным настройкам профилирования.
  • Улучшена поддержка веб-ссылок.
  • При создании нового проекта можно определить версию .NET Core.
  • Процесс MSBuild автоматически перезапускается, если по какой-то причине он был прекращен.

Подробности читайте в нашем блоге (на английском языке).

Скачать
Бесплатная пробная версия на 30 дней

Rider 2018.3

Code Vision - совершенно новая возможность, помогающая сосредоточиться на коде и получать дополнительную информацию о нем прямо в редакторе, без каких-либо дополнительных действий

Code Vision - совершенно новая возможность, помогающая сосредоточиться на коде и получать дополнительную информацию о нем прямо в редакторе, без каких-либо дополнительных действий

Code Vision — новый инструмент, который позволяет просматривать полезную информацию о коде непосредственно в редакторе и выполнять дополнительные действия. В этом выпуске Code Vision отображаются сведения об использовании кода, системе контроля версий, производных типах, методах расширения, опубликованных API, а также несколько метрик, специфичных для Unity. В следующих выпусках набор метрик будет расширен.

Подробнее: Code Vision в Rider: редактор с контекстной информацией и функциями навигации.

Удаленная отладка через SSH

Удаленная отладка через SSH

Rider 2018.3 позволяет выполнять удаленную отладку приложений .NET Framework, .NET Core и Mono. С помощью нового действия Attach to Remote Process... можно проcматривать все процессы, которые выполняются на удаленном компьютере. После выбора удаленного процесса Rider подключает к нему отладчик, который позволяет приостанавливать выполнение процесса, создавать точки останова и т. д.

Помимо удаленной отладки, отладчик Rider включает в себя:

  • Новый движок механизма вычисления выражений, который позволяет использовать новейший синтаксис языка C# в watches отладчика.
  • Поддержку операций с указателями в окне инструмента Watches, в том числе арифметические действия, разыменование и др.
  • При инспекции переменных контекстное меню позволяет переключаться между десятичным и шестнадцатеричным форматом числовых значений.

Подробнее: В Rider 2018.3 появилась удаленная отладка.

Рефакторинг Rename Project

Рефакторинг Rename Project

Переименовать проект вручную непросто – необходимо указать новое имя во множестве мест, и придется запомнить, где именно это делалось. Чтобы упростить решение этой задачи, мы создали абсолютно новый рефакторинг Rename Project! Теперь переименование можно выполнять автоматически с минимальными усилиями и не беспокоиться о его последствиях.

Подробнее: Легкий способ переименования проектов – новый рефакторинг в Rider 2018.3.

Менеджер сборок

Менеджер сборок

Эта долгожданная функция недавно стала доступна в ReSharper, однако до сегодняшнего дня отсутствовала в Rider. С ее помощью можно открывать несколько сборок, просматривать их и выполнять в них поиск. Эта функция доступна не только в представлениях Solution и File System, но и в представлении окна Explorer. Также обратите внимание на контекстное действие View in Assembly Explorer для сборок, на которые имеются ссылки. Это действие позволяет открывать их в представлении Assembly Explorer.

Подробнее: Менеджер сборок и кроссплатформенный декомпилятор .NET в Rider 2018.3.

Настройки запуска

Настройки запуска

Если проект включает в себя один или несколько файлов launchSettings.json, Rider 2018.3 автоматически импортирует заданные в них профили запуска и создает для них конфигурации Run/Debug.

Редактор в этой версии также поддерживает файлы launchSettings.json. Доступны функции подсветки синтаксиса, анализа и автодополнения кода.

Подробнее: Запуск и отладка приложений в Rider с использованием файла .NET Core launchSettings.json.

Обновление IDE

Всплывающее окно Search Everywhere полностью переработано и теперь выглядит более современно.

Обновленные страницы плагинов в диалоге Preferences/Settings предоставляют новые возможности:

  • Теперь с их помощью легче искать, устанавливать, обновлять и удалять плагины IDE.
  • Плагины можно искать не только по имени, но и по тегам, а также сортировать результаты по количеству скачиваний, имени, рейтингу, дате добавления или обновления.

Подробнее: Обновленный диалог Search Everywhere, плагины, шаблоны и другие возможности Rider 2018.3.

Поддержка языка C#

Поддержка языка C#

Поддержка языка C# значительно расширена:

  • Подсказки имен встроенных параметров отображаются непосредственно в редакторе, что упрощает чтение кода C#.
  • Улучшенная поддержка деконструкции C# 7 включает в себя новые/обновленные инспекции, быстрые исправления и контекстные действия. Go To Declaration/Implementation теперь поддерживает объявления деконструкций.
  • Разнообразные инспекции кода, быстрые исправления и контекстные действия для параметризованных тестов NUnit.

Подробнее: Что нового в ReSharper 2018.3.

Поддержка Visual Basic .NET

Поддержка Visual Basic .NET

Поддерживаются следующие возможности VB.NET 15.3 и 15.5:

  • Вывод именованного кортежа,
  • Начальный шестнадцатеричный/двоичный/восьмеричный разделитель.
  • Неконечные именованные аргументы,
  • Модификатор доступа к члену Private Protected.

Мы добавили подсказки имен встроенных параметров и быстрое исправление Set Visual Basic language version, которые выполняют те же функции, что и их аналоги в языке C#.

Подробнее: Что нового в ReSharper 2018.3.

Веб-разработка

Веб-разработка

В этой версии доступно множество новых возможностей для веб-разработки:

  • Улучшенная поддержка Angular.
  • Многострочные TODO-комментарии в JavaScript и TypeScript.
  • Возможности TypeScript 3.1: поддержка маппинга типов кортежей и массивов, новые присваивания свойств.
  • Улучшенные проверки на null и undefined.
  • Возможность отладки worker threads Node.js.
  • Добавлены новые интеншены: Extract ruleset, Replace var() with its fallback value и Convert a function to a variable holding arrow function.
  • Возможность назначать линтерам пользовательские уровни значимости ошибок.

Подробнее: Что нового в WebStorm 2018.3.

Поддержка систем контроля версий

Поддержка систем контроля версий

Улучшенная поддержка системы контроля версий обеспечивает следующие возможности:

  • Управление пулреквестами GitHub непосредственно в IDE.
  • Работа с подмодулями Git. В процессе обновления проекта Rider загружает в него все репозитории git одновременно.
  • Использование расширенных возможностей навигации в списке коммитов VCS.
  • Предварительный просмотр Diff на вкладке File History окна инструмента Version Control.

Подробнее: IntelliJ IDEA 2018.3: пулреквесты GitHub и другие возможности.

Android-разработка

Android-разработка

Если вы разрабатываете решения Xamarin или Unity для платформы Android, в среде Rider вы найдете все, что вам нужно! Она включает в себя разнообразные инструменты и возможности Android Studio для разработки программ для Android:

  • WYSIWYG-дизайнер и автодополнение кода для файлов манифеста AXML/Android.
  • Инструмент командной строки Logcat и Android Profiler.
  • Менеджер SDK/AVD, Device File Explorer и Layout Inspector.
Поддержка NuGet

Поддержка NuGet

Большинство улучшений поддержки NuGet в этой версии связано с внутренней реализацией. Видимыми являются следующие обновления:

  • Поддержка серверов NuGet, в которых используется аутентификация NTLM/Windows (в Windows).
  • Действие Find this type on nuget.org, которое уже знакомо вам по ReSharper, теперь доступно в меню Alt + Enter для неразрешенных символов.
  • Новое быстрое исправление Install missing .NET Core Adapter доступно в файлах юнит-тестов на случай, если вы пропустили нужный пакет.
  • Улучшенный и ускоренный поиск пакетов в окне инструмента NuGet использует возможности службы автодополнения кода NuGet.
  • В окне NuGet отображается больше папок NuGet на основе файлов NuGet.config.
  • В диалоге Properties для проекта отображается новая страница NuGet, где можно указывать всю информацию для упаковки проекта в пакет NuGet.

Ознакомьтесь со статьей в блоге: Добавление недостающих пакетов, ускоренный поиск и другие усовершенствования NuGet в Rider 2018.3

Языковые вставки

Языковые вставки

SQL, CSS, HTML, JSON, регулярные выражения, JavaScript и многие другие языковые вставки теперь поддерживают строковые литералы языка C#. Языковые вставки SQL автоматически добавляются с учетом содержимого строки. Теперь строковые литералы SQL можно вручную помечать комментариями //language=ЯЗЫК.

Подробнее: SQL в строках C#, редактор фрагментов, выполнение запросов в консоли: обновления языковых вставок в Rider 2018.3.

Встроенный профилировщик производительности

В Rider появился интегрированный профилировщик производительности. На данный момент возможности профилирования доступны в Windows, в то время как в Linux можно лишь анализировать снэпшоты производительности.

Подробнее: Профилирование производительности кода .NET в Rider с помощью интегрированного профилировщика dotTrace.

Поддержка F#

Поддержка F#

Мы создали абсолютно новые лексеры F# для фронтенда IntelliJ IDEA и бэкенда ReSharper. Эти лексеры необходимы для использования некоторых доступных возможностей, а также помогут нам в дальнейшем совершенствовании поддержки языков.

В этой версии новый бэкенд-лексер избавляет пользователей от необходимости выполнять многие действия. В нем успешно реализован ряд удобных возможностей на основе бэкенда ReSharper:

  • Новые виды поддержки редактирования для ввода круглых скобок, кавычек и автоотступов при нажатии клавиши Enter.
  • Применение рефакторинга Rename к локальным символам.
  • Новая инспекция для поиска неиспользуемых операций открытия и соответствующее быстрое исправление.

Наконец, созданы новые типы группировки в действии Find Usages: New instance creation и Pattern для поиска использований элементов размеченного объединения, а также Type specifications для поиска использований <0>типов.

Шаблоны проектов и файлов

Шаблоны проектов и файлов

Доступны новые шаблоны проектов и файлов:

  • Добавлены шаблоны проектов UWP.
  • Обновлены шаблоны проектов, относящихся к Xamarin.
  • Новые шаблоны файлов app.config / web.config / appSettings.json.

Подробнее: Обновленный диалог Search Everywhere, плагины, шаблоны и другие возможности Rider 2018.3.

Azure Toolkit для Rider

Azure Toolkit для JetBrains Rider представляет собой плагин с открытым исходным кодом, с помощью которого разработчики .NET могут легко создавать, разрабатывать, настраивать, тестировать, развертывать веб-приложения в Azure и управлять ими непосредственно из Rider, а также использовать такие ресурсы, как хранилище, кэш Redis и виртуальные машины.

Теперь доступна база данных Azure SQL и поддержка Cloud Shell.

Подробнее:

Поддержка баз данных

Поддержка баз данных

Благодаря JetBrains DataGrip расширена поддержка базы данных в Rider:

  • Добавлена поддержка еще одной базы данных NoSQL — Cassandra.
  • Генерация файлов SQL для выбранных объектов.
  • Поддержка расширений PostgreSQL.
  • Ряд усовершенствований в автодополнении кода SQL.
  • Реализовано постфиксное автодополнение кода.
  • Режим одного подключения.

Подробнее: Что нового в DataGrip 2018.3.

Другие возможности

  • Реализован ввод текста без задержки! Даже если интеллектуальные средства поддержки редактирования заняты выполнением продолжительных задач (например, переформатирование кода), интерфейс Rider не блокируется, редактор кода работает без перебоев и реагирует на все действия пользователя. Все асинхронные изменения, поступающие от бэкенда Rider, мгновенно объединяются после завершения.
  • Мы выполнили рефакторинг и оптимизацию этапа загрузки сборок, чтобы ускорить загрузку решения.
  • Добавлена высококонтрастная тема интерфейса.
  • Теперь при щелчке на объявлении объекта с одновременным удержанием клавиши Ctrl отображаются использования.
  • Добавлены четыре новых рефакторинга: Move to Resource, Inline Resource, Move Resource и Rename Resource.
  • Переменные окружения для выполнения юнит-тестов можно задавать в File | Settings | Build, Execution, Deployment | Unit Testing | Test Runner.
  • Добавлен отладчик XSLT.
  • Теперь в редакторе кода для объектов To-Do применяются настройки цветов, а также доступно группирование таких объектов по проектам.

Подробнее: Обновленный диалог Search Everywhere, плагины, шаблоны и другие возможности Rider 2018.3.

Другие возможности

Другие возможности

  • Просмотр иерархии наследования типов в Navigate | Type Hierarchy.
  • Анализаторы Roslyn корректно работают на .NET Core без установленной платформы MSBuild.
  • Подсветка синтаксиса, инспекции и другие виды анализа в файлах .editorconfig.
  • Новое действие Build only this project without dependencies удобно использовать для нестандартных систем сборки.
  • Повторная загрузка проектов при изменении импорта MSBuild.
  • Поддержка Directory.Build.props и Directory.Build.targets.
  • Copy Reference позволяет скопировать полное имя элемента кода (выберите Edit | Copy Reference).
  • Расстановка отступов клавишами Tab/ShiftTab работает так же, как в Visual Studio. При нажатии клавиши Tab или ShiftTab код выравнивается по ближайшему отступу (если отступ задается с помощью пробелов).
  • В контекстное меню File Explorer добавлено действие Open in Rider. Оно доступно только в операционной системе Windows и только при условии, что среда Rider устанавливалась с помощью установщика, а не через Toolbox App.

Подробнее: Обновления .editorconfig, дополнительные параметры сборки и улучшенная поддержка Roslyn в Rider 2018.3.

Еще одно важное обновление для Unity

Еще одно важное обновление для Unity

В этой версии мы значительно расширили поддержку Unity, добавив несколько удобных и полезных возможностей.

Во-первых, мы добавили показатели производительности. Rider подсвечивает функции событий, которые вызываются в каждом фрейме (например, Update, FixedUpdate и LateUpdate), а также корутины.

Во-вторых, мы расширили действие Find Usages за счет данных, извлекаемых из сцен, ассетов и префабов Unity. Когда вы ищете класс или метод, используемый в качестве обработчика событий, Rider показывает места его использования в ваших файлах Unity, сгруппированные по типу, наименованию компонента и родительским игровым объектам. Кроме того, при двойном клике на элементе место его использования подсвечивается непосредственно в редакторе Unity.

Теперь при извлечении этой информации из файлов Unity Rider корректно подсвечивает методы обработчика событий как неявно используемые. Мы убрали подсветку неявных использований из иконок на полях текстового редактора и заменили ее ссылками Code Vision, которые позволяют моментально определить, какие классы, методы и поля использует Unity. При нажатии на такую ссылку будут найдены все вхождения элемента, в том числе в файлах Unity.

Отладчик также получил расширенный доступ к данным о платформе Unity и теперь может отображать дополнительные сведения о ее объектах. Он также отображает данные обычных указателей: это удобно при изучении встроенных контейнеров в заданиях ECS.

Скачать
Бесплатная пробная версия на 30 дней

Rider 2018.2

Усовершенствования в отладчике

Усовершенствования в отладчике

Теперь в Rider отображаются стеки вызовов, которые используют современные функции языка C# и наглядно демонстрируют обобщенные типы, имена асинхронных функций, конструкторы, статические методы и другую информацию.

Чтобы облегчить отладку многопоточного кода, мы добавили точки останова в потоках. Можно редактировать точку останова с помощью контекстного меню и приостанавливать отдельный поток. В этом случае точка останова достигается только в выбранном потоке.

Отладчик также включает в себя ряд других обновлений:

  • Поддержка инспекций и расширения небезопасных указателей.
  • Действие Smart Step Into корректно обрабатывает методы с атрибутом [DebuggerStepThrough].
  • Реализована поддержка Debugger.NotifyOfCrossThreadDependency.
  • Мы добавили возможность автоматически обновлять все watches в окне инструмента Debugger при каждой его приостановке.
  • Теперь типы в окне Memory View форматируются в стиле C#, а не CLR

Подробнее: Информативные стеки вызовов, точки останова потоков и другие усовершенствования отладчика.

Публикация на IIS или FTP

Публикация на IIS или FTP

В Rider появились две новые конфигурации запуска: Publish to IIS и Publish to custom server. Обе эти конфигурации предназначены для развертывания веб-приложения ASP.NET Core на локальном или удаленном сервере, однако выполняют эту задачу различными способами:

  • Конфигурация Publish to IIS упаковывает и публикует приложение с использованием MSBuild и MSDeploy. Она может развертывать веб-приложение ASP.NET Core на локальном или удаленном сервере IIS и Kudu (Azure Web Apps), а также создавать пакет MSDeploy. Профили публикации хранятся в файлах .pubxml.
  • Конфигурация Publish to custom server загружает артефакты приложения с использованием встроенных инструментов платформ MSBuild и Rider. Она позволяет публиковать приложение с помощью FTP и FTPS/SFTP. Эта конфигурация запуска поддерживается в операционных системах Windows, Mac OS X и Linux.

На данный момент поддерживается только публикация веб-проектов ASP.NET Core. Кроме того, развертывание на IIS с использованием конфигурации запуска Publish to IIS доступно только в операционной системе Windows.

Подробнее: Публикация веб-приложений ASP.NET Core на IIS, FTP и других серверах с помощью платформы Rider.

Поддержка Docker добралась и до отладчика

Поддержка Docker добралась и до отладчика

Теперь Rider поддерживает отладку приложений ASP.NET Core в локальном Docker-контейнере (Linux). Подключение отладчика к Docker-контейнеру Linux позволяет выполнять локальные проверки приложения в среде, которая очень близка к производственной.

Как и при отладке на локальном компьютере, среда Rider позволяет проверять переменные, стеки вызовов и потоки, а также пошагово исполнять наш собственный код и декомпилированный сторонний код.

На данный момент в Docker-контейнерах Linux можно отлаживать только веб-приложения ASP.NET Core. Несмотря на то, что платформа Rider позволяет выполнять отладку контейнеров, созданных с помощью Dockerfile, она не поддерживает отладку контейнеров, созданных с использованием Docker compose (docker-compose.yml).

Подробнее: Отладка приложений ASP.NET Core в локальном Docker-контейнере.

Обновленный интерфейс Solution Explorer

Обновленный интерфейс Solution Explorer

В новой панели инструментов можно легко включить отображение всех файлов; при этом файлы, которые не входят в состав модели проекта, выделяются коричневым цветом. Следующие две кнопки позволяют синхронизировать Solution Explorer с редактором. Действие Autoscroll to source отображает выбранные файлы в редакторе, а Autoscroll from source выбирает файлы при переходе от одного файла к другому.

Помимо представления Solution, Rider 2018.2 включает в себя представление File-system, которое отображает реальную структуру файловой системы файла решения. Элементы без индекса не обрабатываются функциями, которые используют индексы (например, глобальный текстовый поиск или индексирование объектов To-Do). Мы также включили представление черновиков в состав представлений Solution и File-system для облегчения доступа к недавно созданным черновикам.

Мы добавили диалог, с помощью которого стало значительно удобнее настраивать пользовательские файлы-вложения. Эта функция одинаково эффективно работает с SDK-файлами проекта и файлами в более старом формате без каких-либо дополнительных условий. В Rider 2018.2 можно перетащить файл-вложение в новый родительский файл.

Новая версия дает возможность всегда отображать папки сверху, поскольку для многих пользователей такой способ представления более удобен.

Подробнее: Обновления Solution Explorer и модели проекта в Rider 2018.2.

Автодополнение

Усовершенствования в автодополнении кода

Автодополнение кода в Rider теперь выполняется с использованием статистического алгоритма оценки ReSharper. Основная идея состоит в том, что Rider теперь подсчитывает количество использований конкретного варианта автодополнения кода. Чем чаще используется вариант, тем выше вероятность его отображения в автодополнении кода.

Мы сделали автодополнение кода доступным там, где удобно использовать возможности Rider: в файлах черновиков, watches отладчика и инструменте C# Interactive. Как и при написании кода в обычном файле C# или VB.NET, среда Rider обеспечивает автодополнение кода, а также отображает сведения о методах и всплывающие подсказки параметров.

Мы также добавили удобную возможность для доступа к членам типа указателя в небезопасном контексте, когда вместо оператора . (точка) требуется использовать оператор ->. Чтобы предотвратить создание небезопасного кода, среда Rider обнаруживает использование некорректного оператора и предлагает верный оператор при автодополнении кода.

Подробнее: Усовершенствования в автодополнении кода в Rider 2018.2.

Покрытие кода в юнит-тестах и непрерывное тестирование

Покрытие кода в юнит-тестах и непрерывное тестирование

С каждым новым выпуском Rider мы стремимся восполнить пробел между Rider и пакетом ReSharper Ultimate. Безусловно, самой востребованной возможностью является интеграция Rider и dotCover. Кроме того, Rider 2018.2 поддерживает покрытие кода для юнит-тестов и непрерывное тестирование. dotCover предоставляется в виде плагина, который входит в состав среды Rider и автоматически устанавливается вместе с ней.

Доступны все критически важные функции:

  • “Классический” анализ покрытия кода для юнит-тестов с использованием дерева покрытия и подсветки кода. Интерфейс функционирует точно так же, как в Visual Studio с ReSharper Ultimate.
  • Непрерывное тестирование в Rider ничем не отличается от ReSharper Ultimate. Достаточно просто включить его в выбранном сеансе, изменить код, а затем собрать или сохранить проект (в зависимости от предпочтений пользователя).

Обратите внимание, что на данный момент поддерживается только операционная система Windows. Поддержка Mono еще находится в стадии разработки и не включена в версию 2018.2.

Подробности читайте в нашем блоге Теперь и в Rider!

Templates Explorer

Templates Explorer

Теперь в Rider доступна одна из самых востребованных возможностей ReSharper. Теперь вы сможете добавлять, изменять шаблоны Live/Surround/File Templates и управлять ими непосредственно в настройках Rider в меню Editor | Live Templates и Editor | File Templates.

Обратите внимание, что создание шаблонов из нескольких файлов пока не поддерживается.

Поддержка тачбара MacBook

Поддержка тачбара MacBook

Как и другие IDE JetBrains, среда Rider поддерживает тачбар MacBook. Непосредственно из тачбара можно выполнять самые разные действия, в том числе запуск, сборку, отладку, изменение и обновление проекта. Контекстно-зависимые кнопки отображаются в области выбранного приложения в центре интерфейса тачбара. Контексты и кнопки тачбара можно настраивать на странице Preferences | Appearance & Behavior | Menus and Toolbars | Touch Bar.

Кроме того, можно включать темные заголовки окон Rider в macOS (в меню Preferences | Appearance & Behavior | Appearance | выберите Use dark window headers).

В среде Rider также добавлены новые иконки. Они улучшают внешний вид интерфейса и делают панели и окна инструментов более удобными для чтения.

Поддержка C# 7.3

Поддержка C# 7.3

Теперь среда Rider поддерживает все возможности новейшей версии языка C# 7.3:

  • Выражения объявления в инициализаторах и запросах.
  • Равенство кортежей.
  • возможность переназначать локальные переменные ref,
  • ограничения Unmanaged, System.Delegate и System.Enum,
  • возможность использовать инициализаторы для массивов stackalloc,
  • Выражение fixed на основе шаблонов.
  • Индексирование перемещаемых буферов фиксированного размера.

Помимо поддержки синтаксиса, мы добавили новые инспекции и быстрые исправления, чтобы ваш код соответствовал C# 7.3.

Подробнее: Новые возможности C# 7.3 в Rider и ReSharper.

Возможности разработки фронтендов

Возможности разработки фронтендов

Расширенная поддержка TypeScript включает в себя все языковые возможности новейших версий TypeScript 2.9/3.0. Кроме того, теперь в Rider доступно еще больше быстрых исправлений, которые предоставляет языковая служба TypeScript.

Также добавлены следующие возможности:

  • Извлечения и конвертация компонентов React.
  • Новые интеграции с Angular CLI.
  • Автодополнение для событий в Vue.js.
  • Новые контекстные действия в меню AltEnter, в том числе Implement interface, Create derived class, Implement members of an interface or abstract class, Generate cases for switch и Iterate with for..of.

Подробнее: WebStorm 2018.2.

Встроенная проверка орфографии с помощью ReSpeller

Встроенная проверка орфографии с помощью ReSpeller

В этой версии в ReSharper добавлено расширение ReSpeller для проверки орфографии из коробки. ReSpeller ищет орфографические ошибки и опечатки в идентификаторах, комментариях, строковых литералах и т. д. Для каждой обнаруженной проблемы предлагаются быстрые исправления. Для многих поддерживаемых языков ReSpeller включен по умолчанию. Простой способ включить/отключить отдельные проверки и изменить уровень их серьезности —поискать «typo» в настройках (вы попадете в меню Code Inspection | Inspection Severity).

Затем по нажатию AltEnter вы можете вызвать меню, в котором ReSpeller предложит несколько вариантов исправления ошибки. В этом меню можно исправить опечатку или добавить новое слово в словарь ReSpeller.

По умолчанию используется встроенный словарь для английского языка. Он базируется на Hunspell, а значит при необходимости вы можете установить дополнительные языки.

Узнайте больше о встроенной проверке орфографии с помощью ReSpeller из нашего блога.

Юнит-тестирование

Юнит-тестирование

В этом выпуске мы добавили несколько новых возможностей и оптимизировали существующие:

  • Ускорено обнаружение и выполнение тестов в проектах SDK.
  • На панель инструментов Unit Test Session добавлена новая иконка lock/unlock. Теперь с ее помощью можно заблокировать сеанс юнит-тестирования, чтобы запретить добавление в него новых тестов.
  • Теперь можно выполнить запуск и отладку тестов даже на платформе Mono в операционной системе Windows.
  • Можно открыть окно Unit Test Explorer с помощью меню Navigate To
  • Действия, связанные с юнит-тестированием, добавлены в сочетания клавиш по умолчанию.
Поддержка NuGet

Поддержка NuGet

Поддержка NuGet в Rider 2018.2 включает в себя возможности индивидуальной настройки фильтров и форматов в списках коммитов NuGet, а расширенная диагностика позволяет выявить причины неполадок в пакете NuGet.

Мы также добавили поддержку пакетов AutoReferenced и NuGet-каналов, которые работают только по протоколу TLS-1.2.

Мы прекратили поддержку проектов на основе project.json: они устарели, и мы считаем, что пора двигаться дальше.

Обновление С# Interactive

Обновление С# Interactive

В контекстном меню C# Interactive среды Rider 2018.2 теперь доступно новое действие Reference для проектов и сборок. Оно создает ссылку на выбранный проект или сборку в C# Interactive. Среда Rider автоматически генерирует выражение загрузки и немедленно выполняет его. В окне инструмента C# Interactive также имеется кнопка для создания ссылок на проекты текущего решения.

Теперь среда Rider позволяет подключать отладчик к инструменту C# Interactive и пошагово выполнять вызванный код с его помощью. Для быстрой отладки сниппета кода больше не нужно создавать консольное приложение или юнит-тест. Достаточно создать ссылку на проект и запустить его отладку с помощью C# Interactive!

Подробнее: Добавление ссылок и отладка сниппетов кода в Rider C# Interactive.

Поддержка F#

Поддержка F#

Теперь можно использовать шаблоны файлов в проектах F# и генерировать файлы с помощью дублированного кода так же легко, как в C#.

В обновленную службу FSharp.Compiler.Service включены некоторые возможности/изменения F# 4.5, самыми важными из которых являются:

  • Поддержка Span.
  • Ключевое слово match!.

Еще одно важное обновление — усовершенствованное взаимодействие с проектами C#, в том числе следующие возможности F# 4.1:

  • Аннотации Struct для записей и объединений.
  • Неявный суффикс Module.
Усовершенствованная поддержка Unity

Усовершенствованная поддержка Unity

Расширенная поддержка Unity в среде Rider стала еще лучше!

Мы реализовали полную поддержку файлов определения сборки Unity (.asmdef), в том числе проверку схемы JSON, автодополнение кода, действия Find Usages, рефакторинга Rename, навигации по элементам ссылок, шаблоны файлов AsmDef и инспекции / быстрые исправления в случае несоответствия между рекурсивной ссылкой и именем файла/сборки. Кроме того, среда Rider теперь поддерживает файлы ответов компилятора C# Roslyn (csc.rsp).

Мы добавили возможность отключать перезагрузку сборок Unity, когда фокус на ней установлен в режиме воспроизведения (только для Unity версий до 2018.2, поскольку эта возможность встроена в версию 2018.2).

Теперь журнал Unity Editor/Player доступен непосредственно в Rider наряду с действиями фильтрации и сворачивания похожих записей. Все команды доступны в меню окна инструмента Unity Log

В анализ кода добавлены значительные усовершенствования. Добавлено множество инспекций и соответствующих быстрых исправлений для улучшения кода Unity. Мы также устранили ряд ошибок, в том числе некорректное предупреждение для this == null в типах Unity.

Кроме того, мы улучшили поддержку отладки удаленных игроков и добавили узлы Packages и Scratches в Unity Explorer.

Другие возможности

Другие возможности

  • Доступно новое действие Generate GUID.
  • Мы добавили начальную поддержку файлов .ruleset. Чтобы включить ее, перейдите в File | Settings | Editor | Inspection Settings и установите флажок Read settings from editorconfig and project settings.
  • Настройки, указанные в файле stylecop.json, больше не игнорируются и учитываются при анализе.
  • Добавлено несколько новых возможностей поддержки VCS, в том числе упрощенное разрешение конфликтов при объединении с помощью узла Merge Conflicts, усовершенствования вкладки VCS Log и возможность просматривать состояние репозитория для любой интересующей версии.
  • Появилась возможность указывать пользовательские инструменты для расширения файла в настройках.
  • Мы добавили новые цвета для всплывающего окна Parameter Info и Summary Tooltip для IntelliSense в C# и VB.NET
  • На панели инструментов окна Build tool доступна иконка Build settings, которая открывает страницу Build, Execution, Deployment | Toolset and Build.
  • В шаблоны Run/Debug Configuration, связанные с .NET, добавлено поле Runtime arguments для передачи пользовательских параметров в среду выполнения.
  • Действие Re-run теперь доступно на вкладке Find Usages.

Подробнее: Генерация GUID, цветное окно параметров Parameter Info и пользовательские аргументы среды выполнения в Rider 2018.2.

Скачать
Бесплатная пробная версия на 30 дней

Rider 2018.1

Поддержка анализаторов Roslyn

Анализаторы Roslyn

Среда Rider включает более 2400 инспекций на всех поддерживаемых языках, которые помогают обнаруживать ошибки и проблемы в структуре кода. Чтобы предоставить вам больше инструментов для создания высококачественного кода, мы добавили в эту версию поддержку анализаторов Roslyn. Если анализаторы Roslyn установлены в ваших проектах с помощью NuGet или ссылок .csproj, среда Rider подсвечивает их в редакторе, позволяя выполнять быстрые действия (при их наличии) через меню AltEnter.

Поддержка анализаторов Roslyn включена и по умолчанию входит в состав Solution-Wide Analysis. Соответствующие параметры можно настроить в Editor | Inspection Settings | Roslyn Analyzers. Все анализаторы имеют уровни значимости ошибок, которые можно настраивать с помощью контекстного меню или всплывающего окна AltEnter. В поле редактора находится значок лампочки с логотипом Roslyn, позволяющий различать инструменты анализа кода Roslyn и Rider.

Подробнее: Поддержка анализаторов Roslyn в Rider 2018.1 EAP.

Поддержка Entity Framework в Rider

Entity Framework

Среда Rider 2018.1 обеспечивает начальную поддержку Entity Framework в проектах .NET Framework. Она доступна в меню Tools | Entity Framework и включает в себя следующие функции:

  • Поддержка самых популярных версий Entity Framework — 6.0-6.2;
  • Действия Initial Setup, Enable Migrations, Add Migration, Get Migrations и Update Database с доступом через диалоговые окна;
  • Умное автодополнение кода для полей диалоговых окон фильтрует список предложений и отображает только применимые проекты, типы и имена.

Подробнее: Поддержка Entity Framework в Rider 2018.1.

Панель инструментов просмотра игрового процесса и окно инструментов Unity Logs

Углубленная интеграция с Unity

С каждой новой версией поддержка Unity в среде Rider становится все лучше. В этой версии мы ускорили переключение между контекстами Rider и редактора Unity.

Теперь вы можете входить в режим воспроизведения, выходить из него, приостанавливать воспроизведение и выполнять его в покадровом режиме, оставаясь в среде Rider! Новая панель инструментов включает в себя кнопки просмотра игры Play, Pause и Step, которые работают так же, как в редакторе Unity. Новая маленькая иконка Unity в строке состояния показывает, что редактор Unity подключен, обновляется или находится в режиме воспроизведения. Любые изменения, внесенные в Rider в режиме Edit, будут моментально переданы в редактор Unity.

Новое окно инструмента Unity Logs с гиперссылками на трассировки стека позволяет просматривать события, которые регистрируются в консоли редактора Unity. Оно поддерживает фильтрацию по категории (ошибка, предупреждение или сообщение), скрытие событий, зарегистрированных в конкретном режиме (воспроизведения или редактирования), и позволяет легко открыть любой исходный файл, класс, метод или свойство, указанные в записи журнала. Окно Unity Logs автоматически очищается после каждого перехода в режим Play.

Среда Rider 2018.1 также поддерживает полную интеграцию с инструментами запуска тестов Unity. Находясь в Rider, пользователь может просмотреть результаты тестов Unity, выполнить фильтрацию по результату и перейти к коду, щелкнув соответствующую трассировку стека.

Для вашего удобства мы также добавили представление Unity Explorer, которое копирует представление ассетов в редакторе Unity.

Подробнее:

Предпросмотр XAML

Предпросмотр XAML

В типе проектов WPF Application, который был реализован в среде Rider 2017.3, появился недостающий компонент — встроенный механизм предпросмотра результатов любых изменений, вносимых в код XAML.

Настройки предпросмотра XAML доступны в меню Tools | XAML Preview. Пользователь может отключать предпросмотр, задавать качество отрисовки изображения и настраивать прозрачность.

Подробнее: Окно инструмента предпросмотра XAML для WPF в Rider.

Представление Memory в отладчике

Представление Memory в отладчике

Новая функция отладчика Memory View позволяет изучать внутреннюю реализацию приложения и определять воздействие кода на память, наблюдая за управляемой кучей в процессе отладки.

Когда отладчик достигает точки останова, можно открыть Memory View в отдельной вкладке окна инструмента Debugger. Rider отображает суммарное количество объектов в куче с группировкой по имени типа и количеству потребляемых байтов. Дважды щелкните по элементу класса, чтобы показать все экземпляры в отдельном окне. Вы можете получить тот же результат с помощью редактора кода, нажав AltEnter на любом объявлении класса и выбрав Show instances of class.

Memory View работает с полнофункциональной версией .NET Framework (4.5+) и .NET Core. Поддержка Mono пока отсутствует.

Подробнее: Memory View – просмотр памяти .NET при отладке с помощью Rider 2018.1.

Всплывающее окно Exception в действии

Другие улучшения в отладчике

В отладку в среде Rider внесен ряд дополнительных полезных усовершенствований:

  • Всплывающее окно Exception делает просмотр сведений об исключении более удобным. Оно отображает основную информацию о созданном исключении и помогает пользователю быстро переходить по подсвеченным трассировкам стека исключения. В этом всплывающем окне пользователь также может изменять настройки точки останова для исключения.
  • Действие Smart Step Into объединено с действием Jump to Statement, что позволяет повторно выполнять ранее выполненные вызовы.
  • Поддержка сервера символов позволяет задавать свойства символов и серверов символов. Настройка выполняется в Build, Execution, Deployment | Debugger | Symbols.
  • Среда Rider может отображать исходный код локальных переменных возвращаемых значений в представлении Variables («локальные переменные») окна инструмента Debug.
  • В окне Attach отладчика отображаются имена, идентификаторы процессов и рекомендации по повышению прав доступа, когда оно необходимо. (Примечание. На данный момент эта возможность реализована только для .NET Framework в операционной системе Windows.)
  • Подключение к локальному процессу выполняется быстрее, чем раньше.

Подробнее: Всплывающее окно Exception, улучшенное действие Smart Step Into, серверы символов и другие обновления отладчика Rider 2018.1 EAP.

Усовершенствования NuGet

Мы внесли ряд улучшений в поддержку аутентификации в частных каналах NuGet:

  • Теперь в процессе первой загрузки решения, при которой требуется восстановление пакета, среда Rider автоматически отображает окно с запросом аутентификации и размещает учетные данные в хранилище паролей Rider.
  • В состав Rider 2018.1 входят встроенные поставщики учетных данных для популярных хостинговых решений NuGet, таких как MyGet и Visual Studio Team Services (VSTS).
  • Пользователь также может добавлять собственных поставщиков учетных данных. Чтобы помочь вам создать такого поставщика, мы опубликовали на GitHub пример плагина поставщика учетных данных NuGet для среды Rider.

Мы также добавили базовую поддержку групповых операций NuGet. Можно обновить все пакеты решения одним нажатием новой кнопки на панели инструментов на вкладке NuGet Packages, обновить любой установленный пакет во всех или в отдельных проектах до нужной версии, а также удалить пакет одним кликом.

Подробнее: Поставщики учетных данных для частных каналов NuGet в Rider 2018.1 EAP.

Пользовательская версия MSBuild в настройках набора инструментов и сборки

Получение подробной информации о проектах и решениях

В новой версии Rider доступны следующие возможности:

  • Разработка и сборка приложений полнофункционального фреймворка .NET с помощью дистрибутива JetBrains, входящего в состав платформы MSBuild, на компьютере с операционной системой Windows без установленного Visual Studio или Visual Studio Build Tools. Вы можете указать пользовательскую версию MSBuild в меню Build, Execution, Deployment | Toolset and Build | Use MSBuild version.
  • Поддержка веб-ссылок: пользователь может просматривать веб-ссылки в Solution Explorer, обнаруживать и добавлять веб-ссылки WCF с использованием URL, а также удалять существующие веб-ссылки.
  • Открытие и запуск проектов веб-сайтов с полной поддержкой (в том числе навигации, рефакторинга, анализа кода и др).
  • Интерфейс редактирования свойств проекта в решениях .NET Core.
  • Более точное обнаружение MSBuild.

Подробнее:

Solution Explorer для проекта F# в порядке зависимостей

Расширение поддержки F#

Теперь файлы проектов F# отображаются в порядке зависимости, и можно переупорядочивать их в Solution Explorer с помощью перетаскивания. Поскольку переупорядочивание применимо к нескольким файлам, можно также размещать файлы перед существующей директорией или после нее.

Также усовершенствованы функции создания скриптов F#:

  • Автодополнение, подсветка и анализ кода работают корректно.
  • Скрипты поддерживаются командами навигации Search Everywhere, Go to Symbol, Go to File Member, Find Usages и Viewing File Structure.
  • Умное автодополнение кода для файлов #r и директив #load работает со всеми подходящими файлами в подкаталогах и вставляет относительный путь.

Подробнее:

Поддержка C# 7.2

Дополнительные изменения, заимствованные из ReSharper

Среда Rider создана и продолжает развиваться на основе инструмента ReSharper. Ниже перечислены возможности, заимствованные из ReSharper 2018.1:

  • Полная поддержка C# 7.2 и улучшенная поддержка предыдущих версий языка C#.
  • Задание уровней значимости ошибок при инспекциях решений, проектов и конкретных файлов с помощью EditorConfig. Возможность использовать настройку Read settings from editorconfig и настройки проекта в меню Settings | Inspection Settings | Enable Code analysis.
  • Инспекции форматирования кода: теперь среда Rider подсвечивает некорректно отформатированный код непосредственно во время его ввода в редакторе. Поскольку такой режим работы неудобен для некоторых пользователей, указанные инспекции по умолчанию отключены. Все эти инспекции или некоторые из них можно включить в меню Editor | Inspection Settings | Inspection Severity.
  • Поддержка StyleCop , которую можно настроить в Editor | Code Style | StyleCop. Обратите внимание, что конфигурация StyleCop может переопределять собственные настройки стиля кода Rider.

Подробнее:

Службы Docker Compose

Дополнительные изменения, заимствованные из платформы IntelliJ

Следующие возможности заимствованы из платформы IntelliJ IDEA 2018.1:

  • Поддержка нескольких файлов Docker Compose (в том числе docker-compose.override.yml) и возможность выбирать службы непосредственно после выбора файлов конфигурации в конфигурации запуска.
  • Предварительный просмотр при замене регулярных выражений в диалоге Replace in Path.
  • Новое компактное и упрощенное всплывающее окно Documentation.
  • Улучшенная поддержка HiDPI на нескольких экранах для Windows.
Дополнительные возможности фронтенд-разработки

Дополнительные возможности фронтенд-разработки

Мы непрерывно совершенствуем функции «из коробки», которые Rider наследует от WebStorm.

Это обновление поддерживает новейшие возможности TypeScript 2.7, включает в себя усовершенствованное действие Implement Members и новое быстрое исправление Surround with type guard для необъявленных свойств.

Усилиями наших талантливых коллег из команды WebStorm настраивать менеджеры зависимостей в среде Rider стало значительно удобнее, чем раньше. Пользователь может выбрать npm или Yarn в настройках Node.js и npm, а затем среда Rider использует эту настройку при установке зависимостей и выполнении скриптов. При открытии нового проекта с помощью файла yarn.lock Rider будет использовать менеджер Yarn, если он установлен.

Теперь рефакторинг Rename для классов позволяет переименовать файл, если его имя совпадает с именем класса.

При нажатии клавиши Ctrl/Cmd и одновременном щелчке мышью на имени класса в HTML открывается его объявление в исходном коде Sass, SCSS или Less. Кроме того, если в связанном файле CSS отсутствуют подходящие символы, автодополнение кода предлагает классы и идентификаторы из всех файлов стилей.

Поддержка частичных коммитов Git

Улучшения в поддержке VCS

Известно, что использование небольших коммитов упрощает просмотр, отслеживание изменений и их отмену при возникновении ошибок. Частичные коммиты Git (git add -p) позволяют легко выполнять коммиты только выбранных изменений файла. Чтобы выбрать, какие фрагменты кода попадут в коммит, используйте флажки на полях панели Diff в диалоговом окне Commit Changes. Кроме того, маркеры в левом поле редактора позволяют переместить изменения в любой существующий список изменений или создать новый список.

Новая иконка Group by на вкладке Local Changes окна инструмента Version Control позволяет группировать локальные изменения по директории, модулю или репозиторию.

Кроме того, среда Rider подсвечивает хэши в сведениях о коммите и позволяет открывать его на вкладке Log в один клик.

Действия Abort Rebase, Continue Rebase и Skip Commit теперь доступны во всплывающем окне Git Branches.

Плагин Ideolog

Другие изменения

В Rider 2018.1 также реализован ряд незначительных изменений:

  • Новый диалог настроек MSTest: File | Settings | Build, Execution, Deployment | Unit Testing | MSTest.
  • Новые возможности индивидуальной настройки C# Interactive: установите фокус на окне инструмента при открытии или выполнении действия Send Line либо переместите курсор вниз на Send Line (настраивается в меню Settings | Language & Frameworks | C# Interactive).
  • Плагин Ideolog можно скачать из IDE: для этого перейдите в меню Settings | Plugins | Install JetBrains plugins…
  • Представление Scratches с полнофункциональным контекстным меню работает корректно.
Скачать
Бесплатная пробная версия на 30 дней

Rider 2017.3

Отладка стороннего кода

Отладка стороннего кода

Иногда у пользователя возникает необходимость отладить сборку без исходного кода (например, готовую библиотеку или модуль, которые работают с ошибками) либо просто более подробно изучить работу .NET Framework.

Отладка стороннего кода в среде Rider 2017.3 выполняется автоматически и беспрепятственно. Теперь вы можете пошагово выполнять сборки, которые среда Rider декомпилирует в реальном времени, и создавать в них точки останова. Отладчик и декомпилятор .NET уже были доступны в Rider ранее: мы лишь обеспечили их беспрепятственное взаимодействие.

Если вам нужно отладить только ваш собственный код, можно изменить настройки отладчика так, чтобы он пропускал все библиотечные вызовы.

Подробнее: Отладка стороннего кода с помощью Rider.

Действие Smart Step Into

Действие Smart Step Into

Новое действие Smart Step Into значительно упрощает отладку цепочек и вложенных вызовов методов.

С помощью этого действия пользователь может выбрать конкретный вызов, который будет исполнен пошагово, а все остальные вызовы, указанные в строке кода, будут пропущены. Например, при отладке строки Print(Filter(people, BuildPredicate(x => x.Feature, "smth"))); можно выбрать пошаговое выполнение метода Filter().

Подробнее: Отладка с использованием действия Smart Step Into в Rider.

Debugger отображает возвращаемые значения в представлении Variables

Возвращаемые значения в локальных переменных

По многочисленным просьбам в среде Rider реализовано отображение возвращаемых значений функции в представлении Variables («локальные переменные») окна инструмента Debug при пошаговом исполнении кода.

Это удобно в ситуациях, когда результат вызова метода не хранится в локальной переменной (например, если метод возвращает значение, возвращаемое другим методом, или при использовании цепочек методов).

Подробнее: Стек асинхронных вызовов и другие усовершенствования отладчика в Rider 2017.3.

Дополнительные усовершенствования отладчика

В среде Rider реализовано также множество других усовершенствований процедуры отладки:

  • Возможность перетаскивать указатель исполнения вперед и назад, чтобы повторно выполнить или пропустить определенные фрагменты кода, не перезапуская приложение.
  • Операторы, которые вызывают асинхронные функции, теперь отображаются в представлении Frames, восстанавливая асинхронную цепочку причинно-следственных связей.
  • Действия отладчика, такие как Force Run To Cursor и Set Next Statement, теперь можно выполнять с помощью клавиш AltEnter во время сеансов отладки.
  • Обновлен внешний вид для автодополнения кода в представлениях Variables и Watches.
  • Поддержка лямбда-выражений и методов расширения при отладке приложений на основе Mono (таких как Xamarin или Unity).
  • Значения числовых типов (decimal, float, double) оцениваются и представляются корректно.

Подробнее: Стек асинхронных вызовов и другие усовершенствования отладчика в Rider 2017.3.

Новый мастер проекта

Новый мастер проекта

В интерфейсе создания проектов и решений среды Rider реализовано множество улучшений.

  • Шаблоны проектов теперь группируются по фреймворку, и в свойствах каждого шаблона фреймворка можно выбирать языки, варианты и версии целевых фреймворков.
  • Одновременно с новыми решениями можно создавать репозитории Git или Mercurial.
  • В мастере можно выполнить поиск по конкретному типу приложения или языку программирования.
  • По умолчанию также доступны дополнительные шаблоны проектов (например, WPF Application и Unity Class Library).
  • Можно легко установить дополнительные шаблоны проектов на основе dotnet new.

Подробнее: Шаблоны проектов в Rider 2017.3.

Усовершенствования юнит-тестирования

Усовершенствования юнит-тестирования

Инструмент запуска юнит-тестов .NET в среде Rider стал значительно удобнее в использовании, а в его состав вошел ряд новых функций:

  • Стали доступны два новых действия: Repeat Tests Until Failure и Rerun Failed Tests In Current Session.
  • Все действия выполняются с учетом текущего выбранного фильтра (например, Failed tests only). Сами фильтры теперь отображаются более компактно: если статус теста не используется в текущем сеансе, фильтр для него скрывается.
  • Добавлены локальные сочетания клавиш для деревьев юнит-тестов: например, клавиша Del удаляет выбранные тесты из сеанса, а сочетание AltShiftInsert создает новый сеанс.
  • При поиске тестов в дереве юнит-тестов теперь можно находить результаты в свернутых узлах.

Подробнее: Усовершенствования юнит-тестирования в Rider 2017.3.

C# Interactive

C# Interactive

Мы создали новое окно инструмента C# Interactive, в котором можно выполнять выражения C#, не дожидаясь завершения компиляции кода. Это быстрый способ создания чернового кода и моментального вычисления конкретного выражения, основанный на REPL.

Чтобы запустить новый интерактивный сеанс, откройте непосредственно окно инструмента или отправьте выделение кода из редактора, нажав клавишу AltEnter.

Подробнее: C# Interactive в Rider.

Усовершенствования в поддержке Unity

Усовершенствования в поддержке Unity

Помимо вышеупомянутого нового шаблона проекта библиотеки классов, плагин Unity также включает в себя ряд разнообразных усовершенствований:

  • Добавлены новые контекстные действия, которые отмечают поля как сериализуемые или несериализуемые и преобразуют автоматические свойства в свойства с сериализуемыми резервными полями.
  • Добавлены новые инспекции кода для атрибутов Unity (например, проверки сигнатур в методах, помеченных [PostProcessScene]) и другими атрибутами Unity).
  • Реализовано автодополнение кода, которое отображает функции событий Unity в начале списка и выполняется повторно перед полями с атрибутами.
  • Подсветка синтаксиса и помощь при написании кода доступны не только в обычных, но и в вычислительных шейдерах.
  • Отладчик Unity, который поддерживает останов при исключениях, не обрабатываемых пользователем, оценивает локальные переменные в корутинах и задачах, а также беспрепятственно достигает точек останова в локальных процессах Unity. Благодаря интеграции инструмента pdb2mdb отладчик Mono работает со сборками, которые сопровождают файлы PDB для Windows.
  • Во всплывающем окне Quick Documentation отображаются ссылки на внешнюю документацию символов Unity.
Трансформации конфигураций

Трансформации Web.config и App.config

Среда Rider поддерживает исполнение трансформаций Web.config и App.config, которые обычно используются для изменения настроек при упаковке приложений.

В контекстном меню можно добавить трансформацию, выбрать конфигурацию (Debug или Release) и указать, нужно ли вложить результирующий файл трансформации в родительский файл в Solution Explorer.

Подробнее: Трансформации конфигурации XDT в Rider.

Переработанный инструмент форматирования

Переработанный инструмент форматирования

Значительные изменения движка форматирования кода были внесены не только в инструмент ReSharper, но и в среду Rider. Теперь Rider выравнивает код в столбцах, использует другие новые стили кода, а также отключает и включает форматирование выбранных блоков кода с помощью комментариев или целых файлов посредством EditorConfig.

Подробнее:

Дополнительные изменения, заимствованные из ReSharper

В среду Rider внесен ряд изменений, заимствованных из ReSharper 2017.3:

  • Переработан рефакторинг Extract Method, который поддерживает возврат кортежей вместо параметров out при использовании C# 7.
  • Новые средства поддержки редактирования C# позволяют добавлять многострочные комментарии, использовать отступы в цепочках и окружать выделения кода.
  • Поддержка наследования кортежей и документации с помощью <inheritdoc/> в VB.NET.
Выполнение тестов Karma

Дополнительные возможности фронтенд-разработки

В среде Rider становится все больше функций WebStorm «из коробки».

Эта версия включает в себя набор плагинов для фронтенд-разработчиков, которые раньше были доступны только по запросу, и найти их было нелегко. В него входит поддержка TSLint, CoffeeScript, LiveEdit, Polymer и веб-компонентов, Pug (ранее Jade), Handlebars, Karma, Stylus, AngularJS, spy-js, Gherkin и Cucumber. (Теперь по умолчанию также доступен плагин Vagrant.)

Благодаря недавним обновлениям от разработчиков WebStorm расширена поддержка JavaScript, TypeScript, CSS и Vue.js, а панель предпросмотра всегда доступна при редактировании файлов SVG.

Кроме того, мы усовершенствовали обнаружение файлов package.json в проектах, и теперь среда Rider может чаще предлагать установку и обновление пакетов npm.

Свойства проектов .NET Core

MSBuild и NuGet

Инструменты NuGet среды Rider работают с резервными папками, восстанавливают пакеты с помощью директив PackageReference в файлах .csproj и игнорируют отключенные источники пакетов NuGet.

Усовершенствования также затронули систему управления проектами среды Rider. Теперь она включает в себя интерфейс для редактирования свойств проектов .NET Core и использует дополнительные эвристические алгоритмы при работе со связанными файлами: вы можете копировать, перемещать файлы или добавлять ссылки на них при добавлении существующего элемента, а также исключать связанные файлы из проекта вместо их удаления из файловой системы.

Мы также включили поддержку IntelliSense в файлах проектов .NET Core.

Переработанные конфигурации запуска Docker

Изменения в платформе IntelliJ

В среде Rider по-прежнему активно используются возможности платформы IntelliJ. В этой версии из IntelliJ IDEA заимствованы следующие изменения:

  • REST-клиент в редакторе, использующий файлы черновиков с расширением .http. (REST-клиент с пользовательским интерфейсом доступен по-прежнему, и для него даже добавлено несколько внешних обновлений.)
  • Обновления системы контроля версий: интерактивное перебазирование из журнала Git, сохранение рабочих пространств при переключении между ветками и улучшенная обработка коммитов объединения Git и Mercurial.
  • Обновления базы данных: группировка источников данных, помощь при написании кода XQuery/XPath в файлах .sql с использованием языковых вставок и др.
  • Обновленная поддержка Docker (в первую очередь изменения в конфигурациях запуска).
Параметры проверки на null

Параметры

В настройки среды Rider внесены следующие изменения:

  • Появилась возможность надежно экспортировать и импортировать настройки Rider с помощью диалогов Import Settings, Export Settings и Manage Layers.
  • В настройки стиля кода C# добавлена вкладка Null Checking, которая позволяет выбирать стиль стандартной проверки на null в коде, генерируемом средой Rider.
  • Уровень значимости ошибок для инспекций теперь настраивается на страницах, соответствующих конкретным языкам.
  • В Inspection Settings добавлена новая страница с аннотациями JetBrains.

Другие изменения

  • Благодаря асинхронной работе действия Find Usages результаты отображаются по мере выполнения поиска. Кроме того, реализована группировка результатов по типу использования.
  • Мы добавили новое сочетание клавиш Xcode для опытных пользователей Mac.
  • Автоматическая повторная генерация файлов дизайнера при сохранении связанных файлов .resx.
  • Новая структура контекстного меню узлов Solution Explorer обеспечивает удобное и компактное представление действий.
  • Перенос аннотаций JetBrains в .NET Core повышает надежность работы целых категорий инспекций кода (допустимость значения null, LINQ, инспекции «чистоты»).

Улучшения производительности

Мы приняли ряд мер для повышения производительности, в том числе:

  • Загрузка и повторная загрузка проектов: благодаря новому асинхронному методу обработки задач MSBuild этап синхронизации при загрузке проектов теперь выполняется до 5 раз быстрее в протестированных масштабных решениях.
  • Ускорение автодополнения кода в масштабных решениях.
  • Ускорение запуска отладчика и отображения больших стеков вызовов в некоторых сценариях.
Скачать
Бесплатная пробная версия на 30 дней

Rider 2017.2

.NET Core 2.0

.NET Core 2.0

В среде Rider 2017.2, помимо поддержки .NET Core 1.1, появилась поддержка .NET Core 2.0.

Теперь все инспекции кода, действия навигации, быстрые исправления и рефакторинги Rider применимы к .NET Core 2.0. В среде Rider можно выполнять и отлаживать проекты .NET Core 2.0, управлять входящими в них пакетами NuGet и проводить юнит-тестирование с использованием xUnit, NUnit или MSTest.

Меню Inspect This для отслеживания вызовов и значений в Rider

Отслеживание вызовов и значений

Мы реализовали несколько самых полезных возможностей ReSharper: отслеживание вызовов и отслеживание значений.

Новое действие <0>Inspect This0> (<1>Ctrl1><1>Alt1><1>Shift1><1>A1>) позволяет определять, как формируется, где используется и в каких деревьях вызовов участвует интересующее значение. При объявлении членов класса и параметров можно вызвать действия Call Tracking и Value Tracking непосредственно из меню AltEnter.

На сегодняшний день обе возможности доступны в C# и VB.NET.

Выполнение юнит-тестов MSTest из редактора

Поддержка MSTest

В предыдущих версиях среды Rider инструмент запуска юнит-тестов уже поддерживал выполнение и отладку тестов xUnit и NUnit. По многочисленным просьбам пользователей в Rider 2017.2 добавлена поддержка фреймворка MSTest, которая охватывает как классический MSTest (Visual Studio Testing Framework), так и новый кроссплатформенный MSTest V2.

Фреймворк MSTest V2 полностью готов к работе в операционных системах Windows, Mac и Linux. Ввиду особенностей лицензирования классического фреймворка MSTest для выполнения его тестов в среде Rider необходимо установить на компьютер экземпляр Visual Studio и указать путь к нему в настройках Rider в меню Build, Execution, Deployment | Unit Testing | MSTest.

Открытие папки или файла с помощью Rider

Открытие папки и файла

Поскольку не весь код находится в решении или проекте, мы добавили команду, которая позволяет открывать отдельный файл или папку с помощью начального экрана среды Rider и меню File | Open.

Открывая файл или папку, вы получаете доступ к разнообразным возможностям Rider, в том числе поддержке HTML/JavaScript/TypeScript, системе контроля версий, действиям Go to File, Search Everywhere и Find in Path.

Подключение существующей папки к решению

Подключение папки к решению

Помимо открытия папок и файлов, среда Rider теперь также позволяет подключить любую папку к решению. Файлы проекта и решения при этом не изменяются — папка просто начинает отображаться в Solution Explorer рядом с текущим решением.

Эта возможность полезна при работе с веб-приложением, которое имеет выраженные фронтенд- и бэкенд-части, хранящиеся в разных репозиториях. В этом случае при подключении фронтенда к бэкенд-решению .NET можно редактировать обе части в среде Rider, не интегрируя фронтенд в структуру решения.

Parallel Stacks, вычисление лямбда-выражения и другие обновления отладчика

В окне инструмента Debug появилась новая вкладка Parallel Stacks, которая позволяет отображать активные потоки и их стек вызовов в процессе отладки многопоточных приложений. При наведении указателя мыши на поток на экране отображаются все его дочерние потоки. С помощью панели инструментов можно перейти к активному фрейму. Двойной щелчок мышью на стеке вызовов открывает источник. При пошаговом исполнении кода на диаграмме отображаются запускаемые и присоединяемые потоки.

Теперь в отладчик Rider можно добавлять лямбда-выражения в качестве watches. Отладчик вычисляет, исполняет выражение и отображает результаты.

При отладке приложения с большим количеством переменных удобно выделять переменные разными цветами. Теперь это можно делать с помощью контекстного меню или сочетания клавиш. Выделенную цветом переменную легко найти, например, в полях или других объектах.

И, наконец, мы предусмотрели возможность добавлять watches во вложенные элементы, такие как свойства свойств объектов или элементы коллекций.

Рефакторинг Transform Parameters

Обновленные рефакторинги

Мы продолжаем добавлять элементы из богатого набора рефакторингов ReSharper.

Одним из них является Transform Parameters. С его помощью можно создавать новый класс или структуру и преобразовывать параметры выбранного метода в инкапсулированные поля нового типа. После рефакторинга использования параметров преобразуются в использования свойств создаваемого типа. Этот рефакторинг также позволяет отказаться от параметров out, используя кортеж в качестве возвращаемого значения.

Еще один новый рефакторинг — Invert Boolean. Он автоматически выполняет инверсию логического члена класса, заменяя true на false, и меняет бинарную логику на противоположную во всех использованиях.

Включение поддержки C# 7.1 в Rider

Обновления анализа кода, заимствованные из ReSharper 2017.2

Среда Rider 2017.2 включает в себя инструмент ReSharper 2017.2, который используется в качестве движка поддержки .NET. Благодаря этому некоторые возможности ReSharper 2017.2 теперь доступны и в Rider.

К этим возможностям относятся улучшенная поддержка C# 7.0 (в том числе сопоставление с образцом и переменные out) и базовая поддержка C# 7.1. Теперь среда Rider поддерживает литерал default, инициализаторы проекций кортежа, метод async main и сопоставление с образцом посредством универсальных шаблонов. Достаточно просто создать ссылку на актуальный пакет компилятора и задать уровень языка в файле проекта. Обратите внимание, что среда Rider обнаруживает использование возможностей языка более высокого уровня и выполняет переключение с помощью быстрого исправления.

Rider также включает в себя несколько новых инспекций кода IEnumerable и проверяет его корректность, используя наследование документации XML. Это обеспечивает правильность документации IDE и генерируемой документации API.

Сворачивание кода и подсказки документации в F#

Расширение поддержки F#

Среда Rider 2017.2 включает в себя ряд новых возможностей и усовершенствований языка F#.

Например, в ней теперь можно работать с проектами F# .NET Core F# как для SDK 1.0, так и для SDK 2.0. Среда Rider отключает автоматическое восстановление NuGet при загрузке проектов F#, в которых вместо NuGet используется Paket. Это обеспечивает корректность загрузки в Rider таких проектов, как Fable.

Мы устранили ряд проблем, которые возникали при работе со смешанными кодовыми базами C# и F#, и обеспечили корректное отображение кода F# в проектах C#.

Среда Rider теперь поддерживает сворачивание кода в редакторе и позволяет сворачивать и разворачивать практически любые многострочные выражения.

Мы также добавили действие Comment with Block Comment, которое комментирует выделенный код с помощью символов (* and *).

Поскольку в процессе написания кода желательно сверяться с документацией, Rider отображает комментарии XML-документа в подсказке при наведении курсора мыши на документированный код.

Теперь Rider поддерживает вычисление выражений при наведении курсора мыши в процессе отладки, что позволяет пользователю просмотреть переменную непосредственно из редактора.

Улучшенная подсветка кода в шейдерах Unity

Разработка в Unity

Для разработчиков игр мы добавили поддержку отладки различных процессов Unity. Теперь вы можете создать удаленную конфигурацию Mono для удаленной отладки автономных игр (например, работающих на устройствах Android). IDE и отладчик также поддерживают использование модульных динамических библиотек UnityEngine.

Еще одно важное нововведение в поддержке Unity — значительное усовершенствование парсера ShaderLab, что позволило улучшить подсветку кода в файлах .cginc и вставленных фрагментов Cg в файлах .shader. Приятный сюрприз: теперь среда Rider выделяет цветами значения в файлах ShaderLab, и цвета можно выбрать с помощью палитры, нажав AltEnter.

Шаблоны файлов для новых скриптов MonoBehaviour, шейдеров и тестов упростили процедуру генерации кода Unity. Кроме того, в последних версиях Unity доступны автодополнение и генерация кода функций событий.

Подробнее об обновлениях Unity: блог Rider.

Настройки упорядочивания кода JavaScript в Rider

Улучшенная поддержка JavaScript и TypeScript

Новая версия среды Rider 2017.2 с WebStorm предоставляет расширенную поддержку JavaScript и TypeScript:

  • Если навести указатель мыши на объект, одновременно удерживая нажатой клавишу Ctrl, в подсказке отобразится выведенный тип объекта.
  • Переработанные настройки стиля кода JavaScript позволяют настраивать упорядочивание членов класса, в том числе конструкторов, полей и методов. Чтобы применить эти настройки, воспользуйтесь командой Code | Rearrange Code.
  • При использовании модулей CSS и их импортировании в файл JavaScript среда Rider поддерживает автодополнение кода и навигацию для имен классов в этих модулях.
  • Теперь среда Rider обнаруживает файл tsconfig.json и учитывает его при анализе файлов TypeScript.
  • Реализована поддержка автодополнения кода и навигации для атрибутов Angular Material.
  • При использовании webpack среда Rider более качественно анализирует сложные конфигурации и корректно разрешает пути в выражениях и предложениях import.
Изменение локального коммита Git

Улучшения в поддержке VCS

Теперь при работе с Git среда Rider позволяет отменять и изменять локальные коммиты. Для этого можно воспользоваться контекстным меню на вкладке Log окна инструмента Version Control.

С помощью параметров в меню Version Control | Commit Dialog можно настраивать правила сообщений коммитов и инспекции, например, разделять тему и текстовую часть пустой строкой, определить максимальную длину сообщения коммита и т. д. Кроме того, среда Rider включает в себя быстрые исправления для этих правил и позволяет переформатировать код внутри сообщения коммита.

Внесение изменений в код непосредственно из результатов поиска

Внесение изменений из результатов поиска

В среде Rider 2017.2 мы расширили возможности обработки результатов текстового поиска с использованием действия Find in Path (CtrlShiftF).

Теперь выполняется объединение результатов поиска из одинаковых строк. В левом поле редактора панели Preview отображаются номера строк, иконки навигации, контекстные действия и маркеры локальных изменений. С их помощью вы можете легко вносить незначительные изменения в код непосредственно из системы поиска.

Настройки фреймворка для юнит-тестов

Дополнительные усовершенствования в юнит-тестировании

Помимо поддержки MSTest, эта версия также включает в себя другие средства юнит-тестирования :

  • Теперь тесты NUnit поддерживаются для полнофункционального .NET Framework, .NET Core 2.0 и .NET Core 1.1.
  • У всех поставщиков юнит-тестов имеются собственные страницы параметров, на которых можно задавать настройки для конкретных фреймворков. Кроме того, можно отключать неиспользуемые фреймворки.
  • Мы также повысили производительность решений, которые содержат большие наборы тестов и тесты, генерирующие значительный объем результатов (в том числе перенос строк).
Вертикальная ориентация окна инструмента NuGet

Обновления NuGet

Клиент NuGet среды Rider включает в себя ряд обновлений. Теперь мы используем NuGet 4.3 во внутренней реализации, что гарантирует полную поддержку SemVer2 и .NET Core 2.0. В среде Rider также добавлена поддержка версий символов подстановки в ссылках на пакеты.

При создании ссылок на пакеты, которые не предназначены для фреймворка .NET Core 2.0, но совместимы с ним, можно определить «резервные» целевые фреймворки для зависимостей проекта, используя для этого свойство AssetTargetFallback. В проектах .NET Core 2.0 это свойство по умолчанию имеет значение net461, которое указывает, что любой пакет NuGet, совместимый с .NET Framework версии не ниже 4.6.1, можно использовать без дополнительной настройки. Теперь в среде Rider также доступна базовая поддержка этой возможности.

Вы можете устанавливать пакеты инструментов командной строки непосредственно из клиента NuGet, не редактируя файл .csproj вручную. Это удобно, например, при использовании команд переноса базы данных Entity Framework Core из Microsoft.EntityFrameworkCore.Tools.DotNet.

Мы также внесли ряд изменений в интерфейс. Теперь вы можете переключать положение панели с информацией о пакете. Это удобно, если вы предпочитаете ориентировать окно инструмента NuGet вертикально. Иконки пакетов по возможности отображаются в высоком разрешении, благодаря чему интерфейс выглядит более четко и лаконично.

Описания базовых членов класса в диалоге Generate

Другие изменения

Ниже приведен краткий перечень других важных изменений в этой версии Rider:

  • Повышение количества и качества вариантов автодополнения кода в файлах CSS, JavaScript, TypeScript, .config, .csproj и XML.
  • Улучшенное многострочное автодополнение кода: например, доступность импорта символов из пока что не включенных заголовочных файлов в C# при вызове автодополнения кода с несколькими установленными текстовыми курсорами.
  • При генерации кода (например, кода переопределения или реализации членов класса) среда Rider отображает описания переопределяемых или реализуемых базовых членов класса.
  • Импорт и экспорт любых глобальных параметров, в том числе настроек платформ ReSharper и IntelliJ.
  • При восстановлении NuGet анализ всего решения автоматически приостанавливается, если его выполнение не является важным.
Скачать
Бесплатная пробная версия на 30 дней