Critical PowerShell changes, deprecations, and migrations for 2025
View on GitHubJosiahSiegel/claude-plugin-marketplace
powershell-master
plugins/powershell-master/skills/powershell-2025-changes/SKILL.md
January 20, 2026
Select agents to install to:
npx add-skill https://github.com/JosiahSiegel/claude-plugin-marketplace/blob/main/plugins/powershell-master/skills/powershell-2025-changes/SKILL.md -a claude-code --skill powershell-2025-changesInstallation paths:
.claude/skills/powershell-2025-changes/# PowerShell 2025 Breaking Changes & Migrations Critical changes, deprecations, and migration paths for PowerShell in 2025. ## PowerShell 2.0 Removal (August-September 2025) ### What's Removed PowerShell 2.0 has been **completely removed** from: - **Windows 11 version 24H2** (August 2025) - **Windows Server 2025** (September 2025) **Why:** Security improvements, reduced attack surface, legacy code cleanup ### Migration Path ```powershell # Check if PowerShell 2.0 is installed Get-WindowsOptionalFeature -Online -FeatureName MicrosoftWindowsPowerShellV2Root # If you still need PowerShell 2.0 (NOT RECOMMENDED) # - Use older Windows versions # - Use Windows containers with older base images # - Upgrade scripts to PowerShell 5.1 or 7+ # Recommended: Migrate to PowerShell 7.5+ winget install Microsoft.PowerShell ``` **Action Required:** Audit all scripts and remove `-Version 2.0` parameters from any PowerShell invocations. --- ## MSOnline & AzureAD Module Retirement ### Retirement Timeline | Module | Stop Working | Retirement Complete | |--------|--------------|---------------------| | **MSOnline** | Late May 2025 | May 31, 2025 | | **AzureAD** | March 30, 2025 | After July 1, 2025 | **Critical:** These modules will stop functioning - not just deprecated, but **completely non-functional**. ### Migration Path **From MSOnline/AzureAD to Microsoft.Graph:** ```powershell # OLD (MSOnline) - STOPS WORKING MAY 2025 Connect-MsolService Get-MsolUser Set-MsolUser -UserPrincipalName "user@domain.com" -UsageLocation "US" # NEW (Microsoft.Graph 2.32.0) Connect-MgGraph -Scopes "User.ReadWrite.All" Get-MgUser Update-MgUser -UserId "user@domain.com" -UsageLocation "US" # OLD (AzureAD) - STOPS WORKING MARCH 2025 Connect-AzureAD Get-AzureADUser New-AzureADUser -DisplayName "John Doe" -UserPrincipalName "john@domain.com" # NEW (Microsoft.Graph 2.32.0) Connect-MgGraph -Scopes "User.ReadWrite.All" Get-MgUser New-MgUser -DisplayName "John Doe" -UserPrincipalName "john@doma