From 8b16e799dc2963b4f739627674b4ab292ffee1f5 Mon Sep 17 00:00:00 2001 From: Peter Ombwa Date: Wed, 14 Sep 2022 11:17:42 -0700 Subject: [PATCH] Use RequiredVersion to specify dependency versions. --- src/Graph/Graph/Microsoft.Graph.nuspec | 82 +++++++++--------- src/Graph/Graph/Microsoft.Graph.psd1 | 84 +++++++++---------- src/Search/Search/Microsoft.Graph.Search.psd1 | 49 ++++++++--- tools/GenerateModules.ps1 | 4 +- tools/GenerateRollUpModule.ps1 | 4 +- tools/NuspecHelper.ps1 | 11 +-- 6 files changed, 131 insertions(+), 103 deletions(-) diff --git a/src/Graph/Graph/Microsoft.Graph.nuspec b/src/Graph/Graph/Microsoft.Graph.nuspec index 678df607bb0..68b7d25c3fb 100644 --- a/src/Graph/Graph/Microsoft.Graph.nuspec +++ b/src/Graph/Graph/Microsoft.Graph.nuspec @@ -2,7 +2,7 @@ Microsoft.Graph - 1.10.0 + 1.11.1 Microsoft Microsoft https://aka.ms/devservicesagreement @@ -11,47 +11,47 @@ true Microsoft Graph PowerShell module © Microsoft Corporation. All rights reserved. - MicrosoftGraph Microsoft Office365 Graph PowerShell Outlook OneDrive AzureAD SharePoint Intune AzureAutomationNotSupported + MicrosoftGraph Microsoft Office365 Graph PowerShell Outlook OneDrive AzureAD SharePoint Intune AzureAutomationNotSupported PSModule PSIncludes_Cmdlet - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + See https://aka.ms/GraphPowerShell-Release. diff --git a/src/Graph/Graph/Microsoft.Graph.psd1 b/src/Graph/Graph/Microsoft.Graph.psd1 index a7196e44cb5..a0c04d0aaeb 100644 --- a/src/Graph/Graph/Microsoft.Graph.psd1 +++ b/src/Graph/Graph/Microsoft.Graph.psd1 @@ -3,7 +3,7 @@ # # Generated by: Microsoft # -# Generated on: 6/29/2022 +# Generated on: 9/14/2022 # @{ @@ -12,7 +12,7 @@ # RootModule = '' # Version number of this module. -ModuleVersion = '1.10.0' +ModuleVersion = '1.11.1' # Supported PSEditions CompatiblePSEditions = 'Core', 'Desktop' @@ -51,45 +51,45 @@ DotNetFrameworkVersion = '4.7.2' # ProcessorArchitecture = '' # Modules that must be imported into the global environment prior to importing this module -RequiredModules = @(@{ModuleName = 'Microsoft.Graph.Authentication'; ModuleVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Calendar'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DeviceManagement.Functions'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Identity.Governance'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.ChangeNotifications'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Users.Actions'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.SchemaExtensions'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DeviceManagement.Enrolment'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Bookings'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Devices.CorporateManagement'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Devices.ServiceAnnouncement'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Users.Functions'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Education'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Notes'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DirectoryObjects'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Applications'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.People'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Groups'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.CrossDeviceExperiences'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Reports'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Users'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Search'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Teams'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Identity.SignIns'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Files'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.WindowsUpdates'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Compliance'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DeviceManagement'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DeviceManagement.Actions'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Planner'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Identity.DirectoryManagement'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.PersonalContacts'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Financials'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.DeviceManagement.Administration'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Mail'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Sites'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Security'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.CloudCommunications'; RequiredVersion = '1.10.0'; }, - @{ModuleName = 'Microsoft.Graph.Devices.CloudPrint'; RequiredVersion = '1.10.0'; }) +RequiredModules = @(@{ModuleName = 'Microsoft.Graph.Authentication'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Bookings'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DeviceManagement'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Financials'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DirectoryObjects'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Security'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Devices.CorporateManagement'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Users.Actions'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.CloudCommunications'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.WindowsUpdates'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Users'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Devices.ServiceAnnouncement'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Sites'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Calendar'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Users.Functions'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.SchemaExtensions'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Identity.SignIns'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Teams'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Compliance'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.People'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.ChangeNotifications'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Education'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Files'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Notes'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Identity.DirectoryManagement'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Reports'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Search'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DeviceManagement.Actions'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Planner'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Groups'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Identity.Governance'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DeviceManagement.Enrolment'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Applications'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.CrossDeviceExperiences'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DeviceManagement.Administration'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.DeviceManagement.Functions'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.PersonalContacts'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Mail'; RequiredVersion = '1.11.1'; }, + @{ModuleName = 'Microsoft.Graph.Devices.CloudPrint'; RequiredVersion = '1.11.1'; }) # Assemblies that must be loaded prior to importing this module # RequiredAssemblies = @() @@ -135,7 +135,7 @@ PrivateData = @{ # Tags applied to this module. These help with module discovery in online galleries. Tags = 'MicrosoftGraph', 'Microsoft', 'Office365', 'Graph', 'PowerShell', 'Outlook', 'OneDrive', 'AzureAD', 'SharePoint', 'Intune', - 'AzureAutomationNotSupported' + 'AzureAutomationNotSupported', 'PSModule', 'PSIncludes_Cmdlet' # A URL to the license for this module. LicenseUri = 'https://aka.ms/devservicesagreement' diff --git a/src/Search/Search/Microsoft.Graph.Search.psd1 b/src/Search/Search/Microsoft.Graph.Search.psd1 index 8a871a3a17e..24b95cf1db8 100644 --- a/src/Search/Search/Microsoft.Graph.Search.psd1 +++ b/src/Search/Search/Microsoft.Graph.Search.psd1 @@ -3,7 +3,7 @@ # # Generated by: Microsoft Corporation # -# Generated on: 8/25/2020 +# Generated on: 9/14/2022 # @{ @@ -12,13 +12,13 @@ RootModule = './Microsoft.Graph.Search.psm1' # Version number of this module. -ModuleVersion = '0.9.2' +ModuleVersion = '1.11.1' # Supported PSEditions CompatiblePSEditions = 'Core', 'Desktop' # ID used to uniquely identify this module -GUID = '994ad135-2b99-45c2-963c-a3d1eba186df' +GUID = '23722595-b623-452f-bafa-f436a7dbbff9' # Author of this module Author = 'Microsoft Corporation' @@ -51,7 +51,7 @@ DotNetFrameworkVersion = '4.7.2' # ProcessorArchitecture = '' # Modules that must be imported into the global environment prior to importing this module -RequiredModules = @(@{ModuleName = 'Microsoft.Graph.Authentication'; ModuleVersion = '0.9.1'; }) +RequiredModules = @(@{ModuleName = 'Microsoft.Graph.Authentication'; RequiredVersion = '1.11.1'; }) # Assemblies that must be loaded prior to importing this module RequiredAssemblies = './bin/Microsoft.Graph.Search.private.dll' @@ -69,10 +69,37 @@ FormatsToProcess = './Microsoft.Graph.Search.format.ps1xml' # NestedModules = @() # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. -FunctionsToExport = 'Get-MgExternal', 'Get-MgExternalConnection', 'Get-MgSearch', - 'Invoke-MgQuerySearch', 'New-MgExternalConnection', - 'Remove-MgExternalConnection', 'Update-MgExternal', - 'Update-MgExternalConnection', 'Update-MgSearch' +FunctionsToExport = 'Add-MgExternalConnectionItemActivity', 'Get-MgExternal', + 'Get-MgExternalConnection', 'Get-MgExternalConnectionGroup', + 'Get-MgExternalConnectionGroupMember', + 'Get-MgExternalConnectionItem', + 'Get-MgExternalConnectionItemActivity', + 'Get-MgExternalConnectionItemActivityPerformedBy', + 'Get-MgExternalConnectionOperation', + 'Get-MgExternalConnectionQuota', 'Get-MgExternalConnectionSchema', + 'Get-MgSearchAcronym', 'Get-MgSearchBookmark', 'Get-MgSearchEntity', + 'Get-MgSearchQna', 'Invoke-MgQuerySearch', 'New-MgExternalConnection', + 'New-MgExternalConnectionGroup', + 'New-MgExternalConnectionGroupMember', + 'New-MgExternalConnectionItem', + 'New-MgExternalConnectionItemActivity', + 'New-MgExternalConnectionOperation', 'New-MgSearchAcronym', + 'New-MgSearchBookmark', 'New-MgSearchQna', + 'Remove-MgExternalConnection', 'Remove-MgExternalConnectionGroup', + 'Remove-MgExternalConnectionGroupMember', + 'Remove-MgExternalConnectionItem', + 'Remove-MgExternalConnectionItemActivity', + 'Remove-MgExternalConnectionOperation', + 'Remove-MgExternalConnectionSchema', 'Remove-MgSearchAcronym', + 'Remove-MgSearchBookmark', 'Remove-MgSearchQna', 'Update-MgExternal', + 'Update-MgExternalConnection', 'Update-MgExternalConnectionGroup', + 'Update-MgExternalConnectionGroupMember', + 'Update-MgExternalConnectionItem', + 'Update-MgExternalConnectionItemActivity', + 'Update-MgExternalConnectionOperation', + 'Update-MgExternalConnectionSchema', 'Update-MgSearchAcronym', + 'Update-MgSearchBookmark', 'Update-MgSearchEntity', + 'Update-MgSearchQna' # Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export. CmdletsToExport = @() @@ -96,12 +123,12 @@ AliasesToExport = '*' PrivateData = @{ #Profiles of this module - Profiles = 'v1.0-beta' + Profiles = @('v1.0','v1.0-beta') PSData = @{ # Tags applied to this module. These help with module discovery in online galleries. - Tags = 'Microsoft','Office365','Graph','PowerShell' + Tags = 'Microsoft','Office365','Graph','PowerShell','PSModule','PSIncludes_Cmdlet' # A URL to the license for this module. LicenseUri = 'https://aka.ms/devservicesagreement' @@ -110,7 +137,7 @@ PrivateData = @{ ProjectUri = 'https://github.com/microsoftgraph/msgraph-sdk-powershell' # A URL to an icon representing this module. - IconUri = 'https://raw.githubusercontent.com/microsoftgraph/g-raph/master/g-raph.png' + IconUri = 'https://raw.githubusercontent.com/microsoftgraph/msgraph-sdk-powershell/master/documentation/images/graph_color256.png' # ReleaseNotes of this module ReleaseNotes = 'See https://aka.ms/GraphPowerShell-Release.' diff --git a/tools/GenerateModules.ps1 b/tools/GenerateModules.ps1 index e554bf92126..07e93641e73 100644 --- a/tools/GenerateModules.ps1 +++ b/tools/GenerateModules.ps1 @@ -93,10 +93,10 @@ if (!(Get-Module -Name $ExistingAuthModule.Name -ListAvailable)) { if ($ExistingAuthModule.Version -like '*preview*' ) { $version = $ExistingAuthModule.Version.Remove($ExistingAuthModule.Version.IndexOf('-')) Write-Warning "Required Version: $ModulePrefix.$RequiredModule Version: $version" - $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; ModuleVersion = $version } + $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; RequiredVersion = $version } } else { - $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; ModuleVersion = $ExistingAuthModule.Version } + $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; RequiredVersion = $ExistingAuthModule.Version } } if ($UpdateAutoRest) { diff --git a/tools/GenerateRollUpModule.ps1 b/tools/GenerateRollUpModule.ps1 index 9c89d8118b8..4591b4a6685 100644 --- a/tools/GenerateRollUpModule.ps1 +++ b/tools/GenerateRollUpModule.ps1 @@ -82,10 +82,10 @@ elseif ($VersionState.Equals([VersionState]::Valid) -or $VersionState.Equals([Ve Write-Host "Adding dependency: $($ExistingAuthModule.Name) $($ExistingAuthModule.Version)" -ForegroundColor Green if ($ExistingAuthModule.Version -like '*preview*' ) { $version = $ExistingAuthModule.Version.Remove($ExistingAuthModule.Version.IndexOf('-')) - $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; ModuleVersion = $version } + $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; RequiredVersion = $version } } else { - $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; ModuleVersion = $ExistingAuthModule.Version } + $RequiredGraphModules += @{ ModuleName = $ExistingAuthModule.Name ; RequiredVersion = $ExistingAuthModule.Version } } foreach ($RequiredModule in $ModuleMapping.Keys) { diff --git a/tools/NuspecHelper.ps1 b/tools/NuspecHelper.ps1 index a065678313c..3aae88626a2 100644 --- a/tools/NuspecHelper.ps1 +++ b/tools/NuspecHelper.ps1 @@ -58,10 +58,11 @@ function Set-NuSpecValuesFromManifest( function Set-ElementValue( [System.Xml.XmlDocument] $XmlDocument, [System.Xml.XmlElement] $MetadataElement, - [string] $ElementName, [string] $ElementValue) { + [string] $ElementName, + [string] $ElementValue) { if(-not $MetadataElement[$ElementName]){ $NewElement = $XmlDocument.CreateElement($ElementName, $XmlDocument.DocumentElement.NamespaceURI) - $MetadataElement.AppendChild($NewElement) + $MetadataElement.AppendChild($NewElement) | Out-Null } $MetadataElement[$ElementName].InnerText = $ElementValue } @@ -72,7 +73,7 @@ function Set-Dependencies( [hashtable[]] $Dependencies) { if(-not $MetadataElement["dependencies"]){ $NewDependenciesElement = $XmlDocument.CreateElement("dependencies", $XmlDocument.DocumentElement.NamespaceURI) - $MetadataElement.AppendChild($NewDependenciesElement) + $MetadataElement.AppendChild($NewDependenciesElement) | Out-Null } else { $MetadataElement["dependencies"].RemoveAll() } @@ -80,9 +81,9 @@ function Set-Dependencies( foreach($Dependency in $Dependencies){ $NewDependencyElement = $XmlDocument.CreateElement("dependency", $XmlDocument.DocumentElement.NamespaceURI) $NewDependencyElement.SetAttribute("id", $Dependency.ModuleName) - $NewDependencyElement.SetAttribute("version", $Dependency.ModuleVersion ?? $Dependency.RequiredVersion) + $NewDependencyElement.SetAttribute("version", $Dependency.ModuleVersion ?? "[$($Dependency.RequiredVersion)]") - $MetadataElement["dependencies"].AppendChild($NewDependencyElement) + $MetadataElement["dependencies"].AppendChild($NewDependencyElement) | Out-Null } }