diff --git a/ChangeLog.md b/ChangeLog.md index a074d6dcedd1..407d6c4e5d70 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,4 +1,6 @@ ## 6.0.0 - May 2021 +Az 6.0.0 (Az.Accounts 2.3.0) is only supported on Windows PowerShell 5.1, PowerShell 7.0 version 7.0.6 or greater and PowerShell 7.1 version 7.1.3 or greater, open https://aka.ms/install-powershell to learn how to upgrade. For further information, go to http://aka.ms/azpslifecyle. + #### Az.Accounts * Upgraded Azure.Identity to 1.4 and MSAL to 4.30.1 * Removed obsolete parameters 'ManagedServiceHostName', 'ManagedServicePort' and 'ManagedServiceSecret' of cmdlet 'Connect-AzAccount', environment variables 'MSI_ENDPOINT' and 'MSI_SECRET' could be used instead diff --git a/README.md b/README.md index 418470322dea..4b059117658f 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Run the following command in an elevated PowerShell session to install the rollu Install-Module -Name Az ``` -This module runs on Windows PowerShell with [.NET Framework 4.7.2][DotNetFramework] or greater, or [PowerShell Core][PowerShellCore]. The `Az` module replaces `AzureRM`. You should not install `Az` side-by-side with `AzureRM`. +This module runs on Windows PowerShell with [.NET Framework 4.7.2][DotNetFramework] or greater, or [the latest version of PowerShell 7][PowerShellCore]. The `Az` module replaces `AzureRM`. You should not install `Az` side-by-side with `AzureRM`. If you have an earlier version of the Azure PowerShell modules installed from the PowerShell Gallery and would like to update to the latest version, run the following commands in an elevated PowerShell session: diff --git a/documentation/announcing-az-module.md b/documentation/announcing-az-module.md index 49eef362a909..0a9bf18a5c24 100644 --- a/documentation/announcing-az-module.md +++ b/documentation/announcing-az-module.md @@ -1,13 +1,13 @@ # Announcing New Module 'Az' -In August 2018 we released a new module, 'Az' which combines the functionality of the AzureRM and AzureRM.Netcore modules. Az will go to version 1.0 on 12/18/2018. Az runs on both Windows PowerShell 5.1 and PowerShell Core. 'Az' ensures that the Windows PowerShell and PowerShell Core cmdlets for managing Azure resources will always be in sync and up to date. In addition, Az will simplify and regularize the naming of Azure cmdlets, and the organization of Azure modules. Az is intended as a replacement for the AzureRM.Netcore and AzureRM modules. +In August 2018 we released a new module, 'Az' which combines the functionality of the AzureRM and AzureRM.Netcore modules. Az goes to version 1.0 on 12/18/2018. Az runs on both Windows PowerShell 5.1 and PowerShell 7. 'Az' ensures that the Windows PowerShell and PowerShell 7 cmdlets for managing Azure resources will always be in sync and up to date. In addition, Az will simplify and regularize the naming of Azure cmdlets, and the organization of Azure modules. Az is intended as a replacement for the AzureRM.Netcore and AzureRM modules. Az currently ships in Cloud Shell, and can be found on the PowerShell Gallery [here](https://www.powershellgallery.com/packages/Az/) Az is a new module, and reorganizing and simplifying cmdlet names involves breaking changes, so we have [added features to Az to make it easier to transition to the simplified, normalized names in your existing scripts](#migrating-from-azurerm). ## New Features - - Windows PowerShell 5.1 and PowerShell Core support in the same module - - PowerShell Core and Windows PowerShell cmdlets are always in sync and up to date with latest Azure capabilities + - Windows PowerShell 5.1 and PowerShell 7 support in the same module + - PowerShell 7 and Windows PowerShell cmdlets are always in sync and up to date with latest Azure capabilities - Shortened and normalized cmdlet names - all cmdlets use the noun prefix 'Az' - Simplified and normalized module organization - data plane and management plane cmdlets in the same module for each service - Enhanced authentication for Netcore @@ -17,8 +17,7 @@ Az is a new module, and reorganizing and simplifying cmdlet names involves break ## Supported Platforms - PowerShell 5.1 with .Net Framework 4.7.2 or later [Windows only] - - PowerShell Core 6.0 - Windows, Linux, macOS - - PowerShell Core 6.1 - Windows, Linux, macOS + - PowerShell 7 - Windows, Linux, macOS ## Timeline @@ -170,12 +169,12 @@ For scripts that import modules directly, or use ```#Requires``` statements to s ### Installing Az and AzureRM Side-by-Side Az and AzureRM cannot be imported side-by-side into the same PowerShell session. If you do not want to migrate your scripts from AzureRM to Az right away, there are two main options: -- Install Az in PowerShell Core, and leave AzureRM in Windows PowerShell +- Install Az in PowerShell 7, and leave AzureRM in Windows PowerShell - Install Az and AzureRM side-by-side in Windows PowerShell and ensure scripts do not mix the modules -#### Install Az in PowerShell Core -You can follow the instructions in [Installing PowerShell Core on Windows](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-windows?view=powershell-6 -) to install PowerShell Core, then use ```Install-Module Az``` in PowerShell Core to acquire the Az module. Since Windows PowerShell and PowerShell Core can exist side-by-side and do not share module directories, this will effectively isolate the two modules. +#### Install Az in PowerShell 7 +You can follow the instructions in [Installing PowerShell 7 on Windows](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-windows +) to install PowerShell 7, then use ```Install-Module Az``` in PowerShell 7 to acquire the Az module. Since Windows PowerShell and PowerShell 7 can exist side-by-side and do not share module directories, this will effectively isolate the two modules. #### Install Az and AzureRM Side-by-Side If you need to have both modules installed: diff --git a/documentation/development-docs/azure-powershell-developer-guide.md b/documentation/development-docs/azure-powershell-developer-guide.md index d2c50c1ab55c..3bc04665f615 100644 --- a/documentation/development-docs/azure-powershell-developer-guide.md +++ b/documentation/development-docs/azure-powershell-developer-guide.md @@ -48,7 +48,7 @@ The following prerequisites should be completed before contributing to the Azure - Install the latest version of [Git](https://git-scm.com/downloads) - Install the [`platyPS` module](help-generation.md#Installing-platyPS) - Install the latest [**.NET Core SDK** and **.NET Framework Dev Pack 4.7.2**](https://dotnet.microsoft.com/download) or greater -- Install [PowerShell Core](https://github.com/PowerShell/PowerShell/releases/latest) +- Install [PowerShell 7](https://github.com/PowerShell/PowerShell/releases/latest) - Set the PowerShell [execution policy](https://technet.microsoft.com/en-us/library/ee176961.aspx) to **Unrestricted** for the following versions of PowerShell: - `C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe` - `C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe` @@ -92,7 +92,7 @@ After cloning the repository to your local machine, you want to ensure that you msbuild build.proj ``` -Alternatively, you can open any command prompt (Command Prompt, Windows PowerShell, or PowerShell Core), navigate to the root of the repository, and run: +Alternatively, you can open any command prompt (Command Prompt, Windows PowerShell, or PowerShell 7), navigate to the root of the repository, and run: ```powershell PS C:\azure-powershell> dotnet msbuild build.proj @@ -124,7 +124,7 @@ Launch `VS Developer Command Prompt` and run the following command (from the roo msbuild build.proj /t:Test ``` -Alternatively, you can open any command prompt (Command Prompt, Windows PowerShell, or PowerShell Core), navigate to the root of the repository, and run: +Alternatively, you can open any command prompt (Command Prompt, Windows PowerShell, or PowerShell 7), navigate to the root of the repository, and run: ```powershell PS C:\azure-powershell> dotnet msbuild build.proj /t:Test diff --git a/documentation/migration-guides/Az.1.0.0-migration-guide.md b/documentation/migration-guides/Az.1.0.0-migration-guide.md index 5a24eee3fac2..46ab606c7a38 100644 --- a/documentation/migration-guides/Az.1.0.0-migration-guide.md +++ b/documentation/migration-guides/Az.1.0.0-migration-guide.md @@ -142,7 +142,7 @@ RequiredModules = @(@{ModuleName="Az.Accounts"; ModuleVersion="1.0.0"}) The tooling for these services are no longer actively supported. Customers are encouraged to move to alternative services as soon as it is convenient. ### Windows PowerShell 5.1 and .NET Framework 4.7.2 -- Using Az with Windows PowerShell 5.1 requires the installation of .NET Framework 4.7.2. However, using Az with PowerShell Core does not require .NET Framework 4.7.2. +- Using Az with Windows PowerShell 5.1 requires the installation of .NET Framework 4.7.2. However, using Az with PowerShell 7 does not require .NET Framework 4.7.2. ### Temporary removal of User login using PSCredential - Due to changes in the authentication flow for .NET Standard, we are temporarily removing user login via PSCredential. This capability will be re-introduced in the 1/15/2019 release for Windows PowerShell 5.1. This is discussed in detail in [this issue.](https://github.com/Azure/azure-powershell/issues/7430) diff --git a/documentation/troubleshoot-module-load.md b/documentation/troubleshoot-module-load.md index e3448faa2710..c6d01770cdef 100644 --- a/documentation/troubleshoot-module-load.md +++ b/documentation/troubleshoot-module-load.md @@ -38,7 +38,7 @@ At line:1 char:1 If you are receiving type loading errors when trying to import/run Az modules in Windows PowerShell, you'll need to install [.NET Framework 4.7.2](https://dotnet.microsoft.com/download) or greater. This is required as Windows PowerShell does not natively support .NET Standard. -You can also avoid this issue by using [PowerShell Core](https://github.com/PowerShell/PowerShell/releases/latest). PowerShell Core natively supports .NET Standard assemblies. PowerShell Core also works cross platform, so Linux and Mac can use Az modules in PowerShell Core. +You can also avoid this issue by using [PowerShell 7](https://github.com/PowerShell/PowerShell/releases/latest). PowerShell 7 natively supports .NET Standard assemblies. PowerShell 7 also works cross platform, so Linux and Mac can use Az modules in PowerShell 7. ## Symptom: Prompt for Login When a Cmdlet is Executed After a Previous Login @@ -162,6 +162,6 @@ This underlying problem is solved in Az by requiring all authentication types us The library `Newtonsoft.Json` is used throughout our cmdlets to handle JSON information. However, we do not have control of the version of this library that is loaded in PowerShell. To troubleshoot serialization issues, here is a table of the versions of `Newtonsoft.Json` that are loaded by the various editions of PowerShell. -| | Windows PowerShell 5.1 | PowerShell Core 6.0 | PowerShell Core 6.1 | PowerShell Core 6.2 -| - | - | - | - | - | -| **Newtonsoft.Json** | 6.0.8 | 10.0.3 | 11.0.2 | 12.0.1 +| | Windows PowerShell 5.1 | PowerShell 7.0 | PowerShell 7.1 +| - | - | - | - | +| **Newtonsoft.Json** | 6.0.8 | 12.0.0 | 12.0.0