PowerShell Core 6.1 Preview1


Уже пару недель как вышла первая предварительная версия PowerShell Core 6.1.

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

Список изменений огромный https://github.com/PowerShell/PowerShell/releases/tag/v6.1.0-preview.1

Самое примечательное на мой взгляд:

Add ForEach and Where methods to PSCustomobject (#5756)

Add Count and Length properties to PSCustomobject (#5745)

Add -settingsfile to pwsh to support loading a custom powershell config file. (#5920)

Enable conversions from PSMethod to Delegate (#5287)

Add lambda support to -replace operator (#6029)

Set pipeline thread stack size to 10MB (#6224)

Множество дополнений в Web Cmdlets

Add standard deviation implementation on Measure-Object (#6238)

Реклама

PowerShell Core — улучшения в операторе диапазонов


Теперь вы можете делать:

'A'..'B' | ForEach-Object { $_ }

Особенность в том, что  "0".."9" ( ‘0’..’9′) будет по-прежнему возвращать числа как в Windows PowerShell — это более ожидаемое поведение, которое широко используется.

Первоисточник.

Новый Add-Type


Да, он готов. PowerShell Core 6.0 GA вышел с обрезанной версией. Сейчас ситуация улучшается. Главное изменение — Add-Type использует Roslyn со всеми его возможностями. Восстановлена работа всех параметров. Расширена функциональность: теперь можно откомпилировать не только один файл, как раньше, а любое количество файлов за один раз. Улучшена производительность: устранен один баг (повторная обработка исходного кода), добавлен контроль изменений исходного кода, т.е. командлет не будет второй раз компилировать и загружать код, если исходный код не изменился. Улучшены сообщения об ошибках возвращаемых компилятором.

Работа фактически завершена. Но! Возник один вопрос: с добавлением поддержки VisualBasic размер дистрибутива вырос сразу на 5МБ — это относительно много, и это беспокоит команду разработчиков. MSFT хочет получить обратную связь от пользователей: хотите ли вы иметь поддержку Visual Basic в Add-Type? Этот вопрос они будут задавать на всех ближайших конференциях.

Скажите нам, что вы думаете. Вы можете написать свое мнение прямо по ссылке. Кроме того, некоторые пользователи уже попросили добавить поддержку F# (что технически не сложно) и вернуть поддержку JS (пока не ясно, как это сделать). Выскажете своё мнение об этом тоже.

Test-Connect — нужна обратная связь


PowerShell Core 6.0 GA вышел без командлета Test-Connection. Причина была банальна: предыдущая реализация работала только на Windows, её удалили, а работу над новой, портированной, версией завершить не успели.

На днях новая версия Test-Connection была добавлена в основную ветку. В описании вы увидите, что это не только ping. Если будет интерес от пользователей, то продолжу добавлять новые возможности в этот командлет.

Вы можете (и сделайте это!) загрузить ночную сборку для Windows и попробовать командлет в действии (и другие новые фичи). Либо ждите Preview2, которая скоро должна выйти. Свои замечания оставляйте в обсуждении.

Нужно проверить дизайн и функиональную часть (работа в скрипте), а также высказать своё мнение, какой должен быть вывод на экран: должны ли мы использовать прогресс-бар или только текстовый вывод, какой должен быть текстовый вывод, должен ли он эмулировать вывод Windows команд, выводить шапку и завершающую статистику.

Должен отметить, что из-за ограничений в .Net Core версия командлета на Unix-ах работает пока с ограниченной функциональностью.