Azure / Azure/azure-powershell

Remove superseded modules from PowerShell Gallery

Open
#24,027 2 comments 0 reactions 0 assignees View on GitHub
customer-reported needs-triage question
Dominant language
C#
Stars
4.8k
Forks
4.3k
Avg merge
3d 14h
Merged PRs (30d)
54

Description

### Description

There's currently no way of telling that superseded modules like `Az.Profile` (now `Az.Accounts`) or `Az.Insights` (now `Az.Monitor`) are deprecated, superseded in the PowerShell Gallery. Please do something to make it easier for PowerShell users to find out that such modules shouldn't be used, and whether a replacement exists.

Related issue from `PSResourceGet` with more details:

* 2023-07-28: https://github.com/PowerShell/PSResourceGet/issues/1314
* 2024-01-23: https://github.com/PowerShell/PSResourceGet/issues/1537

Docs on Az modules name changes:

* https://learn.microsoft.com/en-us/powershell/azure/migrate-az-1.0.0#module-name-changes

### Script or Debug output

#### Input

```powershell
Find-PSResource -Repository 'PSGallery' -Type 'Module' -Name 'Az.Profile' | ConvertTo-Json | Set-Clipboard
```

#### Output

Click to expand

```json
{
"AdditionalMetadata": {
"NormalizedVersion": "0.7.0"
},
"Author": "Microsoft Corporation",
"CompanyName": "Microsoft Corporation",
"Copyright": "Microsoft Corporation. All rights reserved.",
"Dependencies": [],
"Description": "Microsoft Azure PowerShell - Profile credential management cmdlets for Azure Resource Manager in PowerShell and PowerShell Core",
"IconUri": null,
"Includes": {
"Cmdlet": [
"Disable-AzDataCollection",
"Disable-AzContextAutosave",
"Enable-AzDataCollection",
"Enable-AzContextAutosave",
"Remove-AzEnvironment",
"Get-AzEnvironment",
"Set-AzEnvironment",
"Add-AzEnvironment",
"Get-AzSubscription",
"Connect-AzAccount",
"Get-AzContext",
"Set-AzContext",
"Import-AzContext",
"Save-AzContext",
"Get-AzTenant",
"Send-Feedback",
"Resolve-AzError",
"Select-AzContext",
"Rename-AzContext",
"Remove-AzContext",
"Clear-AzContext",
"Disconnect-AzAccount",
"Get-AzContextAutosaveSetting",
"Set-AzDefault",
"Get-AzDefault",
"Clear-AzDefault",
"Enable-AzureRmAlias",
"Disable-AzureRmAlias",
"Uninstall-AzureRm"
],
"Command": [
"Disable-AzDataCollection",
"Disable-AzContextAutosave",
"Enable-AzDataCollection",
"Enable-AzContextAutosave",
"Remove-AzEnvironment",
"Get-AzEnvironment",
"Set-AzEnvironment",
"Add-AzEnvironment",
"Get-AzSubscription",
"Connect-AzAccount",
"Get-AzContext",
"Set-AzContext",
"Import-AzContext",
"Save-AzContext",
"Get-AzTenant",
"Send-Feedback",
"Resolve-AzError",
"Select-AzContext",
"Rename-AzContext",
"Remove-AzContext",
"Clear-AzContext",
"Disconnect-AzAccount",
"Get-AzContextAutosaveSetting",
"Set-AzDefault",
"Get-AzDefault",
"Clear-AzDefault",
"Enable-AzureRmAlias",
"Disable-AzureRmAlias",
"Uninstall-AzureRm"
],
"DscResource": [],
"Function": null,
"RoleCapability": null,
"Workflow": null
},
"InstalledDate": null,
"InstalledLocation": "",
"IsPrerelease": false,
"LicenseUri": "https://aka.ms/azps-license",
"Name": "Az.Profile",
"Prerelease": "",
"ProjectUri": "https://github.com/Azure/azure-powershell",
"PublishedDate": "2018-12-04T18:35:28.683",
"ReleaseNotes": "Update release with latest service features and serialization fixes",
"Repository": "PSGallery",
"RepositorySourceLocation": "https://www.powershellgallery.com/api/v2",
"Tags": [
"Azure",
"ResourceManager",
"ARM",
"Profile",
"Authentication",
"Environment",
"Subscription",
"PSModule",
"PSEdition_Core",
"PSEdition_Desktop",
"PSCmdlet_Disable-AzDataCollection",
"PSCommand_Disable-AzDataCollection",
"PSCmdlet_Disable-AzContextAutosave",
"PSCommand_Disable-AzContextAutosave",
"PSCmdlet_Enable-AzDataCollection",
"PSCommand_Enable-AzDataCollection",
"PSCmdlet_Enable-AzContextAutosave",
"PSCommand_Enable-AzContextAutosave",
"PSCmdlet_Remove-AzEnvironment",
"PSCommand_Remove-AzEnvironment",
"PSCmdlet_Get-AzEnvironment",
"PSCommand_Get-AzEnvironment",
"PSCmdlet_Set-AzEnvironment",
"PSCommand_Set-AzEnvironment",
"PSCmdlet_Add-AzEnvironment",
"PSCommand_Add-AzEnvironment",
"PSCmdlet_Get-AzSubscription",
"PSCommand_Get-AzSubscription",
"PSCmdlet_Connect-AzAccount",
"PSCommand_Connect-AzAccount",
"PSCmdlet_Get-AzContext",
"PSCommand_Get-AzContext",
"PSCmdlet_Set-AzContext",
"PSCommand_Set-AzContext",
"PSCmdlet_Import-AzContext",
"PSCommand_Import-AzContext",
"PSCmdlet_Save-AzContext",
"PSCommand_Save-AzContext",
"PSCmdlet_Get-AzTenant",
"PSCommand_Get-AzTenant",
"PSCmdlet_Send-Feedback",
"PSCommand_Send-Feedback",
"PSCmdlet_Resolve-AzError",
"PSCommand_Resolve-AzError",
"PSCmdlet_Select-AzContext",
"PSCommand_Select-AzContext",
"PSCmdlet_Rename-AzContext",
"PSCommand_Rename-AzContext",
"PSCmdlet_Remove-AzContext",
"PSCommand_Remove-AzContext",
"PSCmdlet_Clear-AzContext",
"PSCommand_Clear-AzContext",
"PSCmdlet_Disconnect-AzAccount",
"PSCommand_Disconnect-AzAccount",
"PSCmdlet_Get-AzContextAutosaveSetting",
"PSCommand_Get-AzContextAutosaveSetting",
"PSCmdlet_Set-AzDefault",
"PSCommand_Set-AzDefault",
"PSCmdlet_Get-AzDefault",
"PSCommand_Get-AzDefault",
"PSCmdlet_Clear-AzDefault",
"PSCommand_Clear-AzDefault",
"PSCmdlet_Enable-AzureRmAlias",
"PSCommand_Enable-AzureRmAlias",
"PSCmdlet_Disable-AzureRmAlias",
"PSCommand_Disable-AzureRmAlias",
"PSCmdlet_Uninstall-AzureRm",
"PSCommand_Uninstall-AzureRm",
"PSIncludes_Cmdlet"
],
"Type": 1,
"UpdatedDate": null,
"Version": {
"Major": 0,
"Minor": 7,
"Build": 0,
"Revision": -1,
"MajorRevision": -1,
"MinorRevision": -1
}
}
```

### Environment data

Not relevant.

### Module versions

`Microsoft.PowerShell.PSResourceGet` v1.0.1

### Error output

None.

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked PSResourceGet issues 1314 and 1537, then review the Azure module name-change documentation and the example Find-PSResource output. Define how the PowerShell Gallery should expose deprecation and replacement information for modules such as Az.Profile and Az.Insights; done means users can identify the superseded module and its replacement.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, powershell
Domain
release, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.