PowerShell 7 RC 3 доступний з такими змінами
Microsoft випускає нову версію мови сценаріїв PowerShell наступного покоління. Цікаві користувачі можуть отримати PowerShell 7 Release Candidate 3. Він містить ряд нових функцій і багато виправлень помилок як від спільноти, так і від команди PowerShell.
PowerShell — це розширена форма командного рядка. Він розширений за допомогою величезного набору готових до використання командлетів і має можливість використовувати .NET Framework/C# у різних сценаріях. Windows містить інструмент GUI PowerShell ISE, який дозволяє редагувати та налагоджувати сценарії корисним способом.
PowerShell 7 — це перша оболонка командного рядка та пакет мови сценаріїв на основі .NET Core 3.0. Він може досягти сумісності з 90+% папки "Вхідні" Windows Модулі PowerShell, використовуючи зміни в .NET Core 3.0, які повертають багато API, необхідних для модулів, створених на .NET Framework, щоб вони працювали з .NET Core час виконання.
Microsoft очікує, що загальна доступність PowerShell 7 стане їх першою версією довгострокового обслуговування в січні.
У період між випуском-кандидатом і загальною доступністю Microsoft прийматиме лише критичні виправлення помилок і не буде включено жодних нових функцій. Для цього випуску деякі Експериментальні особливості буде вважатися стабільним дизайном і більше не буде експериментальним. Це означає, що будь-які майбутні зміни в дизайні цих функцій вважатимуться кардинальними.
Основні можливості PowerShell 7
- .NET Core 3.1 (LTS)
ForEach-Object - Parallel
- Обгортка сумісності з Windows
- Повідомлення про нову версію
- Новий вигляд помилок і
Отримати помилку
командлет - Оператори ланцюга трубопроводів (
&&
і||
) - Тернарний оператор (
а? б: в
) - Оператори присвоєння нулю та об’єднання (
??
і??=
) - Кроссплатформенність
Invoke-DscResource
(експериментальний) -
Out-GridView
,- ShowWindow
та інші застарілі командлети GUI повернулися в Windows
Що нового в PowerShell 7 RC 3
Порушні зміни
- Виправити
Виклик-Команда
відсутня помилка під час завершення сесії (#11586)
Оновлення та виправлення двигуна
- Оновіть карту між кольором консолі до
VT
послідовності (#11891) - Виправити помилку віддаленого віддалення SSH на платформі Windows (#11907)
- Відновити
PowerShellStreamType
enum
зЗастарілий атрибут
(#11836) - Обробляти випадки, коли
CustomEvent
спочатку не було надіслано (#11807) - Виправлено перерахування об’єктів COM (#11795)
- Виправити
NativeDllHandler
не викидати, коли файл не знайдено (#11787) - Відновлення
Встановити точки зупинки
API (#11622) - Не передавайте без потреби
-l логін_ім'я
або-p порт
доssh
(#11518) (Дякую @LucaFilipozzi!) - Виправити для
JEA
роль користувача у віртуальному обліковому записі (#11668) - Не вирішуйте типи зі збірок, які завантажуються окремо
AssemblyLoadContext
(#11088)
Загальні оновлення та виправлення командлета
- Синхронізувати поточний каталог в
WinCompat
віддалений сеанс (#11809) - Додати
WinCompat
заборонити підтримку списку за допомогою налаштування вpowershell.config.json
(#11726) - Виправлено непотрібне обрізання рядка, що призводить до неправильного індексу
ConciseView
(#11670)
Очищення коду
- Змінити назву
ClrVersion
параметр назад, щоб повернути зміну використання великих літер (#11623)
Інструменти
- Оновити сценарій генерації журналу змін (#11736) (Дякую @xtqqczze!)
- Оновити до
CredScan v2
(#11765)
Тести
- Обов’язково перевірте, чи ми пропускаємо тест, використовуючи послідовну логіку (#11892)
- Пропустити створення каталогу в кореневому тесті на macOS (#11878)
- Оновлення
Get-PlatformInfo
помічник і тести для Debian 10, 11 і CentOS 8 (#11842) - Переконайтеся в правильності
pwsh
використовується для тестових запусків (#11486) (Дякую @iSazonov!)
Покращення конструкції та упаковки
- Додати
Випуск LTSR
значення відmetadata.json
доrelease.json
(#11897) - Шишка
Microsoft. ApplicationInsights
від2.12.1
до2.13.0
(#11894) - Зробіть пакет LTS завжди не попереднім переглядом (#11895)
- Шишка
система. Дані. SqlClient
від4.8.0
до4.8.1
(#11879) - Змінити
Випуск LTSR
значення вmetadata.json
вірно дляRC.3
випуск (внутрішній 10960) - Оновлення
LTS
від логіки залежатиmetadata.json
(#11877) - Встановити значення за замовчуванням
Випуск LTSR
на false (#11874) - Рефакторинг пакувального конвеєра (#11852)
- Переконайтеся
LTS
пакети мають символічні посилання дляpwsh
іpwsh-lts
(#11843) - Шишка
Microsoft. PowerShell. Рідний
від7.0.0-rc.2
до7.0.0
(#11839) - Оновіть генерацію пакета NuGet, щоб включити
cimcmdlet.dll
і більшість вбудованих модулів (#11832) - Шишка
Microsoft. PowerShell. Архів
від1.2.4.0
до1.2.5
(#11833) - Шишка
PSReadLine
від2.0.0-rc2
до2.0.0
(#11831) - Додати джерело трасування та примітив серіалізації до списку дозволених збірок (внутрішній 10911)
- Оновіть
NextReleaseTag
бути v7.0.0-preview.7 (#11372) - Змініть упаковку на виробництво
LTS
пакети (#11772) - Створюйте пакети tar лише під час створення на Ubuntu (#11766)
- Шишка
NJsonSchema
від10.1.4
до10.1.5
(#11730) - Виправлено створення символічного посилання в
упаковка.psm1
(#11723) - Шишка
Microsoft. ApplicationInsights
від2.12.0
до2.12.1
(#11708) - Шишка
NJsonSchema
від10.1.3
до10.1.4
(#11620) - Перейти до останніх образів агента Azure DevOps (#11704)
- Шишка
Markdig. Підписано
від0.18.0
до0.18.1
(#11641)
Документація та довідковий вміст
- Додайте посилання на відмінності на Github в журнал змін (#11652) (Дякую @xtqqczze!)
- Виправити помилку тестування посилань уцінки (#11653) (Дякую @xtqqczze!)
PowerShell 7 — це випуск, що опубліковано, що означає, що він офіційно підтримується у виробництві до випуску PowerShell 7 General Availability (GA) наступного місяця.
Джерело: Microsoft