Skip to content

Releases: pnp/powershell

Release 3.1.0

18 Apr 09:35
772fdeb
Compare
Choose a tag to compare

Fixed

  • Fixed issues with cmdlets not being able to read embedded resources

Removed

Contributors

  • Erwin van Hunen [erwinvanhunen]
  • Bert Jansen [jansenbe]

Release 3.0.0

17 Apr 14:20
Compare
Choose a tag to compare

Added

  • Added -PersistLogin on Connect-PnPOnline which will utilize a persist cache containing your access token. The cache is encrypted and stored in a subfolder in your $HOME folder on Windows. On MacOS the cache is stored in the encrypted KeyChain. You only have to specify -PersistLogin once when doing a Connect-PnPOnline, after that the cache entry will be used. The cache is persisted between PowerShell sesions and system reboots. To clear an entry from the cache use Disconnect-PnPOnline -ClearPersistedLogin.
  • Added tab completers for all cmdlets using a ListPipeBind parameter (e.g. Get-PnPList -Identity), all cmdlets using a FieldPipeBind parameter (e.g. Get-PnPField -Identity), Get-PnPPropertyBag, ContentType related cmdlets (Get-PnPContentType etc.) and Page related (Get-PnPPage etc.) cmdlets. The argument lookup will timeout after 2 seconds. This value can controlled by setting an environment variables called "PNPPSCOMPLETERTIMEOUT" and set the value to a number specifying milliseconds (e.g. 2000 is 2 seconds). If you want to disable the completer functionality on tabs, set the timeout value to 0 (zero).
  • Added Reset-PnPDocumentID cmdlet to request resetting the document ID for a document #4238
  • Added Reset-PnPDocumentID cmdlet to request resetting the document IDs for all documents in a library using a specific content type #4755
  • Added Get-PnPPriviledgedIdentityManagementEligibleAssignment, Get-PnPPriviledgedIdentityManagementRole and Enable-PnPPriviledgedIdentityManagement cmdlets to allow scripting of enabling Privileged Identity Management roles for a user #4039
  • Added Add-PnPTenantRestrictedSearchAllowedList which allows setting up a list of allowed URLs for Restricted SharePoint Search #3993
  • Added optional -IsCopilotSearchable to Add-PnPOrgAssetsLibrary which allows for an organizational assets library to be accessible to Microsoft 365 CoPilot for searching corporate images #4254
  • Added Set-PnPOrgAssetsLibrary cmdlet which allows for updating the settings of an existing organizational assets library #4254
  • Added additional Graph permissions to the GraphPermissions parameter set. #4283
  • Added -SignInAudience parameter to Register-PnPEntraIDApp and Register-PnPEntraIDAppForInteractiveLogin which allows you to make the EntraID app support creation of multi-tenant apps. #4289
  • Added -OutputInstance parameter to Export-PnPPage cmdlet to allow export of the page as in-memory template. #4323
  • Added -X509KeyStorageFlags parameter to Connect-PnPOnline cmdlet which allows setting of how private keys are to be imported. #4324
  • Added -RestrictContentOrgWideSearch parameter to Set-PnPSite which allows for applying the Restricted Content Discoverability (RCD) setting to a site #4335
  • Added -LaunchBrowser parameter to Register-PnPEntraIDAppForInteractiveLogin and Register-PnPEntraIDApp cmdlets to open browser and continue app registration in the browser. #4347 & #4348
  • Added Get-PnPSearchExternalItem which allows retrieving the current external items for a specific external connection #4375
  • Added Remove-PnPSearchExternalItem which allows for removal of an external item from the Microsoft Search index #4378
  • Added -Scopes parameter to Get-PnPAccessToken cmdlet to retrieve access token with specific scopes. #4398
  • Added -Icon and -Color parameters to Set-PnPList cmdlet. #4409
  • Added Remove-PnPTenantRestrictedSearchAllowedList cmdlet to removes site URLs from the allowed list when Restricted SharePoint Search is enabled. #4399
  • Added Get-PnPDeletedFlow cmdlet to retrieve a list of flows which are soft deleted. #4396
  • Added Restore-PnPFlow cmdlet which allows for undeleting a flow within 21 days of deletion. #4415
  • Added -ExcludeDeprecated to Export-PnpTaxonomy which allows for deprecated terms to be excluded from the export #4053
  • Added -HidePeoplePreviewingFiles to Set-PnPSite which allows for hiding the people previewing files feature on a site #4416
  • Added -AllowWebPropertyBagUpdateWhenDenyAddAndCustomizePagesIsEnabled to Set-PnPTenant which allows for updating of web property bag when DenyAddAndCustomizePages is enabled #4508
  • Added SiteId to the output of Get-PnPTenantSite #4527
  • Added Add-PnPFileSensitivityLabel which allows for assigning sensitivity labels to SharePoint files #4538
  • Add-PnPApp , Publish-PnPApp , Remove-PnPApp and Unpublish-PnPApp now have -Force parameter to change the site to allow scripts to be temporarily enabled. #4554
  • Added -CanSyncHubSitePermissions parameter to Set-PnPSite cmdlet to set value of allowing syncing hub site permissions to this associated site. #4555
  • Added Get-PnPProfileCardProperty, New-PnPProfileCardProperty and Remove-PnPProfileCardProperty cmdlets to manage showing additional properties on the Microsoft 365 user profile #4548
  • Added Get-PnPCopilotAdminLimitedMode and Set-PnPCopilotAdminLimitedMode which allows for managing the setting that controls whether Microsoft 365 Copilot in Teams Meetings users can receive responses to sentiment-related prompts #4562
  • Added -Contributors and -Managers parameters to New-PnPTermGroup and Set-PnPTermGroup cmdlets.
  • Added -Files parameter for Send-PnPMail cmdlet to allow files to be downloaded from SharePoint and then sent as attachments.
  • Added -Force parameter to Set-PnPPropertyBagValue cmdlet to toggle NoScript status of the site.
  • Added -Batch parameter to Invoke-PnPGraphMethod cmdlet to allow adding request in a batch.
  • Added -List parameter to Get-PnPFolderItem, Get-PnPFileInFolder and Get-PnPFolderInFolder which allows them to work with a document library containing more than 5,000 items #4611
  • Added Start-PnPTraceLog, Stop-PnPTraceLog and Get-PnPTraceLog cmdlets to handle tracelogging. Removed Set-PnPTraceLog cmdlet.
  • Added -ListPermissionScopes parameter on Get-PnPAccessToken cmdlet to list the current permission scopes on the current access token.
  • Added Get-PnPCopilotAgent cmdlet that returns the Microsoft Copilot Agents in a site collection.
  • Added Get-PnPFileRetentionLabel cmdlet to fetch the file retention labels. #4603
  • Added Get/Set/Remove-PnPUserProfilePhoto cmdlets to download, upload or remove the profile photo of the specified user.
  • Added New/Get/Remove/Update-PnPTodoList cmdlets to manage Todo lists.
  • Added Set-PnPFileRetentionLabel which allows setting a retention label on a file in SharePoint or locking/unlocking it. #4457
  • Added Get-PnPFileCheckedOut cmdlet to retrieve all files that are currently checked out in a library #4682
  • Added Get-PnPTenantPronounsSetting and Set-PnPTenantPronounsSetting cmdlets to manage the availability of using pronouns in the organization #4660
  • Added HidePeopleWhoHaveListsOpen parameter to Set-PnPSite cmdlet to hide people who simultaneously have lists open #4699
  • Added -WhoCanShareAllowListInTenant, -LegacyBrowserAuthProtocolsEnabled, -EnableDiscoverableByOrganizationForVideos, -RestrictedAccessControlforSitesErrorHelpLink, -Workflow2010Disabled, -AllowSharingOutsideRestrictedAccessControlGroups, -HideSyncButtonOnDocLib, -HideSyncButtonOnODB, -StreamLaunchConfig, -EnableMediaReactions, -ContentSecurityPolicyEnforcement and -DisableSpacesActivation to Set-PnPTenant #4681
  • Added Start-PnPEnterpriseAppInsightsReport and Get-PnPEnterpriseAppInsightsReport which allow working with App Insights repors #4713
  • Added Set-PnPSiteDocumentIdPrefix which allows changing of the document id prefix on a site collection #4765
  • Added Get-PnPMicrosoft365Roadmap which allows retrieval of the Microsoft 365 Roadmap items #4764
  • Added -Name parameter to Add-PnPApplicationCustomizer cmdlet to allow for specifying the name of the application customizer #4767
  • Added Get-PnPTraceLog cmdlet which allows reading from the detailed in memory logs of the PnP PowerShell cmdlet execution [#4794](https://github.com/pnp/powershell/pull...
Read more

Release 2.12.0

09 Sep 11:32
Compare
Choose a tag to compare

Added

  • Added support for WAM login for Windows OS to support Windows Hello, FIDO keys, Conditional Access policies and other secure authentication modes.
  • Added -SkipCertCreation parameter in Register-PnPAzureADApp cmdlet to prevent creation and uploading of certificates in the Entra ID app.
  • Added support to -ValidateConnection in managed identity authentication.
  • Added New-PnPSearchExternalConnection, Get-PnPSearchExternalConnection, Set-PnPSearchExternalConnection and Remove-PnPSearchExternalConnection cmdlets to manage external connections for Microsoft Search #4231
  • Added Get-PnPSearchExternalSchema and Set-PnPSearchExternalSchema cmdlets to manage the schema for external connections for Microsoft Search #4231
  • Added OverrideSharingCapability, RequestFilesLinkExpirationInDays & RequestFilesLinkEnabled parameters to Set-PnPTenantSite cmdlet.

Changed

  • Release due to deprecation/shutdown of support for the PnP Management Shell Refer to https://pnp.github.io/powershell/articles/registerapplication.html on how to registration your own application
  • Added output for clientid/Entra App Id when using -Verbose with Connect-PnPOnline
  • Added -OutputTask switch to Add-PnPPlannerTask cmdlet which will return the just created task so inspect its ID, ETag, etc. values.
  • Improved Invoke-PnPGraphMethod cmdlet now to also support a hashtable value for the AdditionalHeaders parameter besides the current Dictionary<string,string>. See documentation.
  • Improved managed identity authentication for connecting to different M365 services.
  • Improved error message for Export-PnPPage cmdlet when the page doesn't exist.
  • Improved Register-PnPEntraIDApp & Register-PnPEntraIDAppForInteractiveLogin cmdlets to better work in non-commercial cloud environments.
  • Improved Get-PnPDiagnostics cmdlet to properly handle a scenrio where there's no correlationId.

Fixed

  • Removed version check dependency on version.txt located in Github repo. Use metadata from powershellgallery.com instead.
  • Fix issue with Get-PnPDiagnostics cmdlet not working correctly if CorrelationId is null.
  • Fix issue with App-only authentication not properly fetching tokens.
  • Fix issue with Power Platform cmdlets not working correctly in non-commercial cloud environments.
  • Fix issue with Get-PnPFlow not working correctly when -AsAdmin parameter is specified due to API changes. #4244
  • Fix Connect-PnPOnline not returning correct ClientId in the connection object.

Removed

Contributors

  • Erwin van Hunen [erwinvanhunen]
  • Giacomo Pozzoni [jackpoz]
  • Nishkalank Bezawada [NishkalankBezawada]
  • Reshmee Auckloo [reshmee011]
  • Koen Zomers [koenzomers]

Release 2.10.0

27 Aug 09:17
Compare
Choose a tag to compare

Added

  • Added Register-PnPEntraIdAppForInteractiveLogin cmdlet
  • Added in depth verbose logging to all cmdlets which is revealed by adding -Verbose to the cmdlet execution #4023
  • Added -CoreDefaultShareLinkScope and -CoreDefaultShareLinkRole parameters to Set-PnPTenant cmdlet. #4067
  • Added -Identity parameter to the Get-PnPFileSharingLink cmdlet allowing for the retrieval of sharing links based on the file's unique identifier, file instance, listitem instance, or server relative path and supporting retrieval of sharing links for multiple files, such as all in a document library #4093
  • Added Remove-PnPAzureADUser which allows removal of a user from Azure Active Directory / Entra ID #4123
  • Added support for GuestSharingGroupAllowListInTenantByPrincipalIdentity and OneDriveSharingCapability parameters in Set-PnPTenant cmdlet. #4122
  • Added -AsListItem paramter to Get-PnPFolder cmdlet to return as folder as a list item object. #4151
  • Added support for handling $ErrorActionPreference global variable to make it work with PnP PowerShell cmdlets. #4079
  • Added -Folder parameter to Add-PnPDocumentSet cmdlet to allow creation of document sets in a specific folder instead of the list root folder. #4029

Fixed

  • Fixed app registration on Windows
  • Get-PnPTeamsChannel and Get-PnPTeamsPrimaryChannel returning unknownFutureValue as MembershipType instead of shared #4054
  • Fixed using a AzureADUserPipeBind with New-PnPAzureADUserTemporaryAccessPass, Get-PnPAvailableSensitivityLabel and Set-PnPSearchExternalItem to not work when passing in the User ID GUID #4123
  • Fixed issue with Get-PnPWebHeader cmdlet not working properly in Group connected SharePoint sites. #4147
  • Fixed issue with Get-PnPTeamsChannelFilesFolder cmdlet to work properly for channels having data more than 2 GB. #4127

Changed

  • Fixed Update-PnPTeamsUser cmdlet to throw a better error message when after a user is removed from a Team but is still in the connected M365 group, for the few seconds that the 2 are out of sync. #4068
  • Changed -FileUrl on Get-PnPFileSharingLink to become obsolete. Please switch to using -Identity instead, passing in the same value #4093

Removed

Contributors

  • Dan Cecil [danielcecil]
  • Reshmee Auckloo [reshmee011]
  • Giacomo Pozzoni [jackpoz]
  • Koen Zomers [koenzomers]
  • Erwin van Hunen [erwinvanhunen]

Release 2.5.0

27 Jun 16:30
1bb29bd
Compare
Choose a tag to compare

Added

  • Added New-PnPLibraryFileVersionBatchDeleteJob and New-PnPSiteFileVersionBatchDeleteJob cmdlets to queue a job for deleting the file versions based on age. #3799
  • Added New-PnPLibraryFileVersionExpirationReportJob and New-PnPSiteFileVersionExpirationReportJob cmdlets to queue a job for generating a file version expiration report for all files in a document library or site. #3799
  • Added Remove-PnPLibraryFileVersionBatchDeleteJob and Remove-PnPSiteFileVersionBatchDeleteJob cmdlets to cancel the job for deleting file versions based on age. #3799
  • Added Get-PnPLibraryFileVersionExpirationReportJobProgress and Get-PnPSiteFileVersionExpirationReportJobProgress cmdlets to getting the progress for the job for file versions based on age. #3799
  • Added -UseVersionExpirationReport parameter to Get-PnPFileVersion cmdlet to get the version expiration report for a single file. #3799
  • Added -DelayDenyAddAndCustomizePagesEnforcement parameter to Set-PnPTenant cmdlet which allows delay of the change to custom script set on the Tenant until mid-November 2024. #3815
  • Added additional permissions for Graph application permission validate sets. #3835
  • Added the ability to upload entire local folders with files and optionally subfolders to SharePoint Online into 'Copy-PnPFolder' #3850
  • Added LoopDefaultSharingLinkRole, DefaultShareLinkScope, DefaultShareLinkRole, LoopDefaultSharingLinkScope and DefaultLinkToExistingAccessReset parameters to Set-PnPTenant cmdlet. #3874
  • Added Unlock-PnPSensitivityLabelEncryptedFile which allows the encryption to be removed from a file #3864
  • Added Get-PnPLibraryFileVersionBatchDeleteJobStatus and Get-PnPSiteFileVersionBatchDeleteJobStatus to check on the status of applying file based version expiration based on age on a library and site level #3828
  • Added support for Get-PnPSiteCollectionAppCatalog and Get-PnPTenantSite to be used with vanity domain tenants #3895
  • Added support for using vanity domain tenants with Grant-PnPTenantServicePrincipalPermission, Revoke-PnPTenantServicePrincipalPermission, Set-PnPWebTheme, Invoke-PnPListDesign, Set-PnPSite, Add-PnPSiteDesignTask, Get-PnPSiteDesignRun, Get-PnPSiteDesignTask and Invoke-PnPSiteDesign cmdlets #3898
  • Added -Detailed to Get-PnPMicrosoft365Group which allows retrieval of the AllowExternalSenders, IsSubscribedByMail and AutoSubscribeNewMembers properties of the group #3958
  • Added -RequireSenderAuthenticationEnabled and -AutoSubscribeNewMembers to Set-PnPMicrosoft365Group which allows setting these properties on a group #3958
  • Added Get-PnPContainerType cmdlet to retrieve the list of Container Types created for a SharePoint Embedded Application in the tenant. #3946
  • Added -RecycleBinRetentionPeriod,-OneDriveBlockGuestsAsSiteAdmin,-OneDriveDefaultShareLinkRole,-OneDriveDefaultShareLinkScope and -OneDriveDefaultLinkToExistingAccess parameters to the Set-PnPTenant cmdlet. #3977
  • Added Get-PnPTenantRestrictedSearchMode and Set-PnPTenantRestrictedSearchMode cmdlets to enable and set up Restricted SharePoint Search. #3976
  • Added Get-PnPTenantInternalSetting cmdlet to retrieve internal tenant settings not exposed via CSOM SDK. #3902
  • Added Add-PnPHomeSite cmdlet to add a home site to your tenant. #3989
  • Added Get-PnPPageSchedulingEnabled cmdlet to get the state of the modern page schedule feature in the library. PR
  • Added -IncludeSensitivityLabels parameter to Get-PnPMicrosoft365Group cmdlet to retrieve sensitivity labels assigned to M365 Groups. #3991
  • Added Get-PnPFileSensitivityLabelInfo cmdlet to retrieve sensitivity label information about a file in a SharePoint site. #3994
  • Added Get-PnPTenantRestrictedSearchAllowedList cmdlet to retrieve existing list of URLs in the allowed list. #3997
  • Added -IsSharePointAddInsDisabled to the Set-PnPTenant cmdlet which allows disabling SharePoint Add-ins #4032
  • Added -RestrictContentOrgWideSearch, -ReadOnlyForUnmanagedDevices and -InheritVersionPolicyFromTenant parameters to Set-PnPTenantSite cmdlet. #4024

Fixed

  • Fixed Get-PnPChangeLog -Version 2.3.0 not returning the changelog for that version #3804
  • Fixed Get-PnPFlow cmdlet throwing time out error due to incorrect URL used in HTTP request. #3820
  • Fixed Copy-PnPList cmdlet to better handle lookup columns. #3870
  • Fixed NullDereferenceException happening when an exception is logged in PnPConnectedCmdlet but the connection passed through -Connection parameter is not the last one. #3885
  • Fixed NullDereferenceException in Get-PnPUserProfileProperty cmdlet when the user profile doesn't exist, showing a better error message. #3891
  • Fixed the dev build process on Mac OS devices. #3907
  • Fixed Get-PnPContainer cmdlet to also handle pagination in case of large no. of containers in a tenant. #3990
  • Fixed New-PnPTeamsTeam cmdlet to better handle error specifically such as Conflict (409): Team already exists. #3992
  • Fixed Remove-PnPTeamsChannel issue where it was throwing incorrect exception. #4036

Changed

  • Renamed Get-PnPSiteFileVersionExpirationReportJobProgress to Get-PnPSiteFileVersionExpirationReportJobStatus #3828
  • Renamed Get-PnPSiteVersionPolicyProgress to Get-PnPSiteVersionPolicyStatus #3828
  • Remove-PnPGroupMember cmdlet now supports removing members from pipeline. #3955
  • Changed Set-PnPTenantCdnPolicy cmdlet to allow PolicyValue parameter to be an empty string or $null, while still being mandatory. #3937
  • Marked UserVoiceForFeedbackEnabled as obsolete in Set-PnPTenant cmdlet as Microsoft doesn't support this. #3985
  • Get-PnPTenantSite cmdlet now returns additional properties like ArchiveStatus, EnableAutoExpirationVersionTrim and many more. #3987
  • Add-PnPListFoldersToSiteTemplate cmdlet now wont export RoleBindings which are Limited Access. It caused issues while applying the template. #3918

Removed

  • Removed UserVoiceForFeedbackEnabled property from Get-PnPTenant as it is deprecated. PR

Contributors

  • Maxime Hazebroucq [mhazebroucq]
  • Paolo Pialorsi [PaoloPia]
  • Marc Studer [Studermarc]
  • Mark Gort [markgort86]
  • Christian Veenhuis [ChVeen]
  • Tobias Maestrini [tmaestrini]
  • WCONFR [WCONFR]
  • Jenny Wu [msjennywu]
  • Reshmee Auckloo [reshme011]
  • Aimery Thomas [a1mery]
  • Arleta Wanat [PowershellScripts]
  • Giacomo Pozzoni [jackpoz]
  • [blarrywangmsft]
  • Koen Zomers [koenzomers]
  • Erwin van Hunen [erwinvanhunen]

Release 2.4.0

01 Mar 16:10
349dfaf
Compare
Choose a tag to compare

Added

  • Added -IsDataAccessInCardDesignerEnabled to Set-PnPTenant which allows for configuring Viva Connections Adaptive Cards to connect to backend services for their data #3635
  • Added Remove-PnPContainer cmdlet to remove the SharePoint embed container. #3629
  • Added Convert-PnPFile cmdlet which allows for a file to be converted to from one format to another. #3435 & #3643
  • Added Merge-PnPTerm cmdlet which allows merging of one term into another. #3638
  • Added Get-PnPDeletedContainer cmdlet which returns a list of all deleted Containers in the recycle bin. #3648
  • Added -Batch parameter to Add-PnPGroupMember cmdlet which allows adding members to a SharePoint group in a batch. #3651
  • Added Get-PnPContainerTypeConfiguration cmdlet which fetches the container type configuration values. #3660
  • Added -AppBypassInformationBarriers and -DefaultOneDriveInformationBarrierMode parameters to Set-PnPTenant cmdlet. #3679
  • Added Get-PnPFileAnalyticsData cmdlet to allow retrieval of file analytics data. #3644
  • Added Get-PnPSiteAnalyticsData cmdlet to allow retrieval of site analytics data. #3645
  • Added Get-PnPPowerPlatformSolution cmdlet to Power Platform solutions. #3675
  • Added New-PnPContainerType cmdlet to create a new SharePoint container type. #3669
  • Added Remove-PnPContainerType cmdlet which removes a specific container type. #3689
  • Added Restore-PnPDeletedContainer cmdlet which recovers a deleted Container from the Recycle Bin. #3661
  • Added the ModerationSettings to be returned with Get-PnPTeamsChannel when passing in -IncludeModerationSettings and using -Identity <channelId> #3580
  • Added AllowNewMessageFromBots, AllowNewMessageFromConnectors, ReplyRestriction and UserNewMessageRestriction to Set-PnPTeamsChannel which allows setting the moderation settings on a Teams channel #3580
  • Added Get-PnPWebPermission cmdlet which retrieves permission given by user for specific web. #3685
  • Added -HorizontalQuickLaunch parameter to Set-PnPWeb cmdlet to allow navigation orientation to be horizontal. #3722
  • Added support for different sovereign cloud environment for Power Platform related cmdlets #3725
  • Added Set-PnPRetentionLabel and Reset-PnPRetentionLabel cmdlets to support setting a retention label on one or more items #3599
  • Added -SiteThumbnailUrl parameter to Set-PnPWebHeader cmmdlet to support setting thumbnail of the site. #3746
  • Added -Like parameter to Set-PnPPage cmdlet to support liking/unliking a modern page. #3788
  • Added Get-PnPPageLikedByInformation cmdlet to retrieve list of users who liked a modern page. #3781

Fixed

  • Fixed Grant-PnPAzureADAppSitePermission cmdlet which allows it to work in multi-geo environment. #3658
  • Fixed Get-PnPTeamsChannelMessageReply cmdlet which didn't work correctly when -IncludeDeleted parameter was not specified. #3676
  • Fixed Add-PnPNavigationNode cmdlet to also search for nodes in child navigation items. #3625
  • Fixed Get-PnPFlow cmdlet to use the newer Flow URLs instead of the old ARM URLs. #3677
  • Fixed Get-PnPPowerPlatformConnector, Get-PnPPowerPlatformEnvironment, Get-PnPPowerApp, Add-PnPFlowOwner, Disable-PnPFlow, Enable-PnPFlow, Export-PnPFlow, Get-PnPFlowOwner, Get-PnPFlowRun, Remove-PnPFlow, Remove-PnPFlowOwner , Restart-PnPFlow and Stop-PnPFlowRun cmdlets to use the new HTTP endpoints. #3687
  • Fixed Add-PnPHubSiteAssociation cmdlet to allow support for multi-geo scenario. #3568
  • Fixed Enable/Disable-PnPPageScheduling cmdlet to also work with Viva connections enabled site. #3713
  • Fixed Register-PnPManagementShellAccess and Register-PnPAzureADApp cmdlets to also work with custom environment. #3763
  • Fixed Set-PnPPPage cmdlet to only change layout of the page if the parameter is specified. #3777
  • Fixed New-PnPGroup cmdlet to correctly show the group description with HTML making it similar to Set-PnPGroup.

Changed

  • -IsFavoriteByDefault parameter is now obsolete in Add-PnPTeamsChannel cmdlet due to deprecation by Microsoft Graph API. #3712
  • Get-PnPSiteTemplate will now only contain PersistPublishingFiles, IncludeNativePublishingFiles, IncludeTermGroupsSecurity, IncludeSearchConfiguration, SkipVersionCheck and PersistMultiLanguageResources if these are provided with the cmdlet as switch parameters #3715
  • Due to backend changes in Microsoft Graph, Get-PnPUnifiedAuditLog cmdlet requires some more permissions. Updated the cmdlet to handle that. #3745

Contributors

  • Arleta Wanat [PowershellScripts]
  • Jenny Wu [msjennywu]
  • Aimery Thomas [a1mery]
  • Nils Andresen [nils-a]
  • Gautam Sheth [gautamdsheth]
  • Nishkalank Bezawada [NishkalankBezawada]
  • Leon Armston [LeonArmston]
  • Daniel Cecil [danielcecil]
  • Rohit Devmore [rohit404404]
  • Konrad K. [wilecoyotegenius]
  • Kunj Balkrishna Sangani [kunj-sangani]
  • Koen Zomers [koenzomers]
  • Reshmee Auckloo [reshme011]
  • Jørgen Wiik [joHKwi]
  • Siddharth Vaghasia [siddharth-vaghasia]
  • Jürgen Rosenthal-Buroh [JuergenRB]

Release 2.3.0

12 Dec 15:35
c215d5d
Compare
Choose a tag to compare

Added

  • Added -MediaTranscription and -MediaTranscriptionAutomaticFeatures to Set-PnPTenant which allows for configuring the media transcription settings. #3238
  • Added -Includes option to Get-PnPListItem which allows for specifying additional fields to be retrieved. #3270
  • Added -AllowCommentsTextOnEmailEnabled parameter to Set-PnPTenant which allows including the surrounding document context in email notification when user is mentioned in document comments. #3268
  • Added Export-PnPPowerApp cmdlet which will export a specified PowerApp as zip package. #2990
  • Added AzureADLoginEndPoint and MicrosoftGraphEndPoint parameters to Connect-PnPOnline cmdlet for use in custom Azure environments. #2925
  • Added Get-PnPFolder cmdlet without any parameters to return the folder representing the root of the current web #3319
  • Added Get-PnPFileInFolder cmdlet which allows retrieval of all files in a folder or site and optionally request additional properties from them #3319
  • Added Get-PnPFolderInFolder cmdlet which allows retrieval of all folders in a folder or site and optionally request additional properties from them #3319
  • Added -SharingStatus parameter to Get-PnPFlow which allows for filtering flows based on their sharing status. #3287
  • Added -AzureADLoginEndPoint and -MicrosoftGraphEndPoint parameters to Connect-PnPOnline cmdlet for use in custom Azure environments. #2925
  • Added SiteOwnerManageLegacyServicePrincipalEnabled parameter to Set-PnPTenant cmdlet. With this parameter site owners will not be able to register/update apps unless the tenant admin explicitly allows it. #3318
  • Added -EnableAutoExpirationVersionTrim, -ExpireVersionsAfterDays, -MajorVersions, -MinorVersions, -InheritTenantVersionPolicySettings, -StartApplyVersionPolicySettingToExistingDocLibs and -CancelApplyVersionPolicySettingToExistingDocLibs to Set-PnPSite to allow for time based version expiration on the site level #3373
  • Added -ReduceTempTokenLifetimeEnabled, -ReduceTempTokenLifetimeValue, -ViewersCanCommentOnMediaDisabled, -AllowGuestUserShareToUsersNotInSiteCollection, -ConditionalAccessPolicyErrorHelpLink, -CustomizedExternalSharingServiceUrl, -IncludeAtAGlanceInShareEmails and -MassDeleteNotificationDisabled to Set-PnPTenant #3348
  • Added Add-PnPFlowOwner and Remove-PnPFlowOwner cmdlets which allow granting or removing permissions to a Power Automate flow #3343
  • Added Get-PnPFlowOwner cmdlet which allows retrieving the owners of a Power Automate flow #3314
  • Added -AvailableForTagging to Set-PnPTerm which allows the available for tagging property on a Term to be set #3321
  • Added Get-PnPPowerPlatformConnector cmdlet which allows for all custom connectors to be retrieved #3309
  • Added Set-PnPSearchExternalItem cmdlet which allows ingesting external items into the Microsoft Search index for custom connectors. #3420
  • Added Get-PnPTenantInfo which allows retrieving tenant information by its Id or domain name #3414
  • Added option to create a Microsoft 365 Group with dynamic membership by passing in -DynamicMembershipRule #3426
  • Added option to pass in a Stream or XML string to Read-PnPTenantTemplate allowing the tenant template to be modified before being applied. #3431
  • Added Get-PnPTenantInfo which allows retrieving tenant information by its Id or domain name. #3414
  • Added option to create a Microsoft 365 Group with dynamic membership by passing in -DynamicMembershipRule #3426
  • Added Get-PnPSiteVersionPolicy which allows retrieval of the version policy settings for a site #3470
  • Added RestrictedAccessControl, ClearRestrictedAccessControl, RemoveRestrictedAccessControlGroups, AddRestrictedAccessControlGroups and RestrictedAccessControlGroups parameters to Set-PnPTenantSite cmdlet to handle restricted access control. #3463
  • Added Get-PnPRetentionLabel cmdlet to retrieve Purview retention labels. #3459
  • Added GCC support for Get-PnPAzureADUser , Add-PnPFlowOwner , Remove-PnPFlowOwner, Sync-PnPSharePointUserProfilesFromAzureActiveDirectory, New-PnPAzureADUserTemporaryAccessPass and Get-PnPAvailableSensitivityLabel cmdlets. #3484
  • Added -Detailed option to Get-PnPTenantDeletedSite to optionally fetch more information on the deleted sites #3550
  • Added a devcontainer for easily building a minimal environment necessary to contribute to the project. #3497
  • Added -RelativeUrl parameter to Connect-PnPOnline cmdlet to allow specifying custom URLs for usage with -WebLogin method. #3530
  • Added -RetryCount to Submit-PnPSearchQuery which allows for specifying the number of retries to perform when an exception occurs #3528
  • Added -MailNickname parameter to Set-PnPMicrosoft365Group cmdlet to allow changing of this property on a Microsoft 365 Group #3529
  • Added -SanNames to New-PnPAzureCertificate which allows for controlling the Subject Alternative Names set on the generated certificate #3555
  • Added Information Barriers information to the output of Get-PnPTenantSite #3556
  • Added RequestFilesLinkEnabled and RequestFilesLinkExpirationInDays to the output of Get-PnPSite #3557
  • Added CoreRequestFilesLinkEnabled, CoreRequestFilesLinkExpirationInDays, OneDriveRequestFilesLinkEnabled, OneDriveRequestFilesLinkExpirationInDays, BusinessConnectivityServiceDisabled to the output of Get-PnPTenant #3557
  • Added -BusinessConnectivityServiceDisabled parameter to Set-PnPTenant cmdlt to allow disabling the Business Connectivity Service #3562
  • Added support for executing the 'Invoke-PnPSPRestMethod' cmdlet in a batch #3565
  • Added Get-PnPSiteSetVersionPolicyProgress cmdlet which allows for getting the progress of setting a version policy for existing document libraries on a site #3564
  • Added EnableSensitivityLabelForPDF to Set-PnPTenant and Get-PnPTenant #3581
  • Added the ability to set Manage and FullControl permissions directly when using Sites.Selected with Grant-PnPAzureADAppSitePermission #3617
  • Added Remove-PnPMicrosoft365GroupPhoto cmdlet which allows removal of profile picture of M365 Group. #3607

Fixed

  • Fixed Add-PnPContentTypeToList cmdlet to better handle piped lists. #3244
  • Fixed Get-PnPUserProfileProperty cmdlet not allowing basic user profile properties to be retrieved using -Properties #3247
  • Fixed Export-PnPTermGroupToXml cmdlet issue with exporting site collection term groups. #3256
  • Fixed Register-PnPAzureADApp cmdlet issue with creation of Azure AD application. #3265
  • Fixed Get-PnPServiceHealthIssue cmdlet issue with null reference objection. #3286
  • Fixed New-PnPSite cmdlet issue with team site creation when using a connection object. #3285
  • Fixed issue with colliding assemblies when using PnP PowerShell with other modules. #3280
  • Fixed issue with -ArchiveRedirectUrl parameter not working correctly in Set-PnPTenant cmdlet. #3289
  • Fixed New-PnPAzureADGroup cmdlet throwing null reference error when owners and members are not specified. #3308
  • Fixed New-PnPTeamsTeam cmdlet, it will now throw error if it fails to teamify a Microsoft 365 group. #3310
  • Fixed Get-PnPFolderItem cmdlet not accepting piping a folder instance to it #3319
  • Fixed Get-PnPFolderItem cmdlet not working well with the -Recursive and -Identity parameters provided together #3319
  • F...
Read more

Release 2.2.0

30 Jun 13:35
d486336
Compare
Choose a tag to compare

Added

  • Added DisableDocumentLibraryDefaultLabeling, DisableListSync, IsEnableAppAuthPopUpEnabled, ExpireVersionsAfterDays, MajorVersionLimit and EnableAutoExpirationVersionTrim, OneDriveLoopSharingCapability, OneDriveLoopDefaultSharingLinkScope, OneDriveLoopDefaultSharingLinkRole, CoreLoopSharingCapability, CoreLoopDefaultSharingLinkScope, CoreLoopDefaultSharingLinkRole , DisableVivaConnectionsAnalytics , CoreDefaultLinkToExistingAccess, HideSyncButtonOnTeamSite , CoreBlockGuestsAsSiteAdmin, IsWBFluidEnabled, IsCollabMeetingNotesFluidEnabled, AllowAnonymousMeetingParticipantsToAccessWhiteboards, IBImplicitGroupBased, ShowOpenInDesktopOptionForSyncedFiles , OneDriveRequestFilesLinkExpirationInDays and ShowPeoplePickerGroupSuggestionsForIB parameters to the Set-PnPTenant cmdlet. #2979 and #3015
  • Added -OutFile to Invoke-PnPGraphMethod which allows for the response to be written to a file #2971
  • Added -OutStream to Invoke-PnPGraphMethod which allows for the response to be written to a memory stream #2976
  • Added -PreviousNode to Add-PnPNavigationNode which allows for adding a navigation node after a specific node #2940
  • Added EnableAzureADB2BIntegration to be returned by Get-PnPTenant #3022
  • Added -SkipUrlValidation to Get-PnPSiteCollectionAppCatalog which allows for skipping the URL validation when retrieving the site collection app catalog making it faster but potentially returning URLs that have been renamed #2305
  • Added Get-PnPLargeListOperationStatus cmdlet to retrieve the status of a large list operation. #3033
  • Added -BlockDownloadFileTypePolicy, -BlockDownloadFileTypeIds and -ExcludedBlockDownloadGroupIds parameters to Set-PnPTenant cmdlet. #3081
  • Added -BlockDownloadPolicy, -ExcludeBlockDownloadPolicySiteOwners and ExcludedBlockDownloadGroupIds parameters to Set-PnPTenantSite and Set-PnPSite cmdlets. #3084
  • Added -OpenInNewTab parameter to Add-PnPNavigationNode cmdlet to allow links to be opened in a new tab. #3094
  • Added -ArchiveRedirectUrl to Set-PnPTenant allowing the configuration of a custom page to be shown when navigating to an archived SharePoint Online site #3100
  • Added -BlockSendLabelMismatchEmail to Set-PnPTenant allowing the warning e-mail being sent when uploading a file with a higher sensitivity label than the site it is being uploaded to to be disabled. #3113
  • Added Move-PnPTerm and Move-PnPTermSet cmdlets to allow moving the terms and termsets. #2989
  • Added -VerticalZoneEmphasis parameter to Add-PnPPageSection cmdlet to allow setting the emphasis value for vertical columns. #3129
  • Added -AllowDeletion parameter to Set-PnPList cmdlet to allow or prevent deletion of list from the SharePoint UI. #3142
  • Added EnableClassicAudienceTargeting and EnableModernAudienceTargeting parameters to Set-PnPList cmdlet to enable audience targeting in lists. #3153
  • Added -Attachments parameter to Send-PnPMail cmdlet to allow sending attachments via Microsoft Graph API. #3157
  • Added cmdlets for list item version history: Get-PnPListItemVersion, Restore-PnPListItemVersion and Remove-PnPListItemVersion. #3086
  • Added Add-PnPFileOrganizationalSharingLink and Add-PnPFolderOrganizationalSharingLink cmdlets to allow creating organizational sharing links for files and folders. #3177
  • Added Add-PnPFileUserSharingLink and Add-PnPFolderUserSharingLink cmdlets to allow creating sharing links for files and folders to share them with specified list of users. #3178
  • Added Get-PnPFileSharingLink and Get-PnPFolderSharingLink cmdlets to retrieve sharing links for files and folders respectively. #3181
  • Added Add-PnPFileAnonymousSharingLink and Add-PnPFolderAnonymousSharingLink cmdlets to create anonymous sharing links. #3198
  • Added Add-PnPFileSharingInvite and Add-PnPFolderSharingInvite cmdlets to invite users to a file or a folder. #3199
  • Added Remove-PnPFileSharingLink and Remove-PnPFolderSharingLink cmdlets to delete sharing links associated with files and folders. #3200
  • Added Get-PnPUnfurlLink cmdlet to support unfurling a link to get more information about the link. #3224
  • Added ListsShowHeaderAndNavigation parameter to always show lists with site elements intact when specified in Set-PnPTenantSite and Set-PnPSite cmdlets. #3233

Fixed

  • Fixed issue with Grant-PnPAzureADAppSitePermission cmdlet where users are not able to set selected site in the Sites.Selected permission. #2983
  • Fixed issue with Get-PnPList cmdlet not working with site-relative URL as identity. #3005
  • Fixed issue with Add-PnPNavigationNode cmdlet where the target audience would not correctly be set when creating a node as a child of a parent node #2940
  • Fixed regressions within the following cmdlets Get-PnPTenantCdnEnabled, Get-PnPTenantCdnOrigin, Get-PnPTenantCdnPolicies, Get-PnPTenantDeletedSite, Get-PnPTenantInstance #3030
  • Fixed issue where Add-PnPSiteCollectionAdmin -PrimarySiteCollectionAdmin <user> would require owners to be specified as well. #3035
  • Fixed Get-PnPAzureADGroup returns only 100 results even if there are more groups present in Azure AD. #3085
  • Fixed Get-PnPAccessToken cmdlet to correctly retrieve the access token for the specified resource URL. #3091
  • Fixed issue with Get-PnPTenantSyncClientRestriction cmdlet not populating the necessary properties. #3099
  • Fixed Add/Set/Get-PnPPage cmdlets when using multilingual translation parameters which caused some exceptions. #3120
  • Fixed New-PnPSite cmdlet now supports creating Team site in non-commercial cloud environments. #885
  • Fixed issue where Get-PnPField cmdlet was throwing error in case -Includes parameter was used. #3225
  • Fixed issue with Add-PnPDataRowsToSiteTemplate cmdlet where it would throw property not initialized error when using -IncludeSecurity parameter. #3226

Changed

  • Improved Set-PnPSite cmdlet when using the ScriptSafeDomainName parameter. If a domain is already existing, it will now throw a warning. #3073
  • Change Set-PnPWebhookSubscription to use the same default expiration date as Add-PnPWebhookSubsription cmdlet which is 180 days instead of 6 months.#3106
  • Improved Set-PnPHomePage cmdlet to handle forward slash issue. #3128
  • Improved Connect-PnPOnline cmdlet to handle ping on the destination server to check if it exists. PR and #3154
  • Improved Invoke-PnPGraphMethod cmdlet to show a better error message when sufficient permissions are not available. #3133
  • Improved Add-PnPDataRowsToSiteTemplate cmdlet to retrieve list item with pagination. #3152
  • Improved error message when caused using Graph endpoints used via PnP Core SDK. #3179
  • Improved Add-PnPDataRowsToSiteTemplate cmdlet performance to not load and execute every list item. #3226

Removed

  • Removed alias Get-PnPSiteCollectionAppCatalogs for Get-PnPSiteCollectionAppCatalog #2305
  • Removed alias Export-PnPClientSidePage, please use Export-PnPPage cmdlet. #3158
  • Removed alias Export-PnPClientSidePageMapping, please use Export-PnPPageMapping cmdlet. #3158
  • Removed alias Get-PnPClientSideComponent, please use Get-PnPPageComponent cmdlet. #3158
  • Removed alias Remove-PnPClientSideComponent, please use Remove-PnPPageComponent cmdlet. #3158
  • Removed alias Set-PnPClientSideText...
Read more

Release 2.1.1

31 Mar 15:42
4e9ba28
Compare
Choose a tag to compare

Fixed signing issue in release process.

Release 2.1.0

31 Mar 14:05
3dbb6ff
Compare
Choose a tag to compare

Added

  • Added support for .NET 6.0 since .NET Core 3.1 support is getting deprecated. We have removed support for .NET Core 3.1, so users will have to update from PowerShell 7.0.x to PowerShell 7.2.x or later #2292
  • Added default table formatted output for Get-PnPVivaConnectionsDashboardACE
  • Added Get-PnPAzureADServicePrincipal which allows for service principals/application registrations to be retrieved from Azure Active Directory #2551
  • Added Get-PnPAzureADServicePrincipalAssignedAppRole which allows for the assigned app roles of a service principal/application registration to be retrieved from Azure Active Directory #2551
  • Added Get-PnPAzureADServicePrincipalAvailableAppRole which allows for the available app roles of a service principal/application registration to be retrieved from Azure Active Directory #2551
  • Added Add-PnPAzureADServicePrincipalAppRole which allows for app roles to be assigned to a service principal/application registration in Azure Active Directory #2551
  • Added Remove-PnPAzureADServicePrincipalAppRole which allows for app roles to be removed from a service principal/application registration in Azure Active Directory #2551
  • Added latest added SharePoint Online Site Templates to Set-PnPBuiltInSiteTemplateSettings allowing them to be hidden or shown #2586
  • Added -EnableAzureADB2BIntegration and -SyncAadB2BManagementPolicy parameters to Set-PnPTenant #2631
  • Added -ShowInFiltersPane to Set-PnPField which allows fields to be shown or hidden in the filters pane #2623
  • Added -KeyColumn to Add-PnPDataRowsToSiteTemplate which allows for overwriting existing list items in a site template #2616
  • Added Get-PnPFolderStorageMetric which allows storage usage of a specific folder to be retrieved #2646
  • Added IsTeamsConnected, IsTeamsChannelConnected and TeamChannelType to be returned when Get-PnPTenantSite cmdlet is executed. #2656
  • Added HTTP/2 support for all HTTP requests to improve performance for HTTP requests. #2687
  • Added -EnvironmentVariable parameter to Connect-PnPOnline to connect using Azure environment variables. #2681
  • Added ResponseHeadersVariable parameter to the Invoke-PnPSPRestMethod which if specified will store the response headers values in the PowerShell variable name that is specified. #2711
  • Added -Filter parameter to Get-PnPAzureADServicePrincipal cmdlet to retrieve specific application registrations based on filter conditions. It supports simple and advanced queries. #2710
  • Added -Filter parameter to Get-PnPMicrosoft365Group cmdlet to retrieve specific M365 groups based on filter conditions. It supports simple and advanced queries. #2709
  • Added -CoreRequestFilesLinkExpirationInDays and -CoreRequestFilesLinkEnabled to Set-PnPTenant and -RequestFilesLinkExpirationInDays to Set-PnPSite to allow configuration of the new receive files to SharePoint Online folder feature #2719
  • Added PSVersion tracking, which tracks the PowerShell version being used. #Commit
  • Added -Bcc option to Send-PnPMail #2726
  • Added -AudienceIds option to Add-PnPNavigationNode to allow setting the audience for a navigation node #2736
  • Added -PrimarySiteCollectionAdmin to Add-PnPSiteCollectionAdmin to allow for the primary site collection admin to be set on the current site #2750
  • Added -PrimarySiteCollectionAdmin to Set-PnPTenantSite to allow for the primary site collection admin to be set on a provided site #2750
  • Added additional fallback logic for retrieving tokens in Azure VM scenario using well-know endpoint when using Managed Identity authentication. #2761
  • Added -IsVivaConnectionsDefaultStartForCompanyPortalSiteEnabled parameter to Get-PnPHomeSite which returns information on whether Viva Connections landing experience is set to the SharePoint home site. #2779
  • Added -VivaConnectionsDefaultStart parameter to Set-PnPHomeSite which sets the home site to the provided site collection url and keeps the Viva Connections landing experience to the SharePoint home site. #2779
  • Added -LargeList parameter to Remove-PnPList cmdlet which improves the list recycling experience for Lists containing huge number of items. #2778
  • Added support for specifying the ContentUrl and WebsiteUrl configuration in Add-PnPTeamsTab cmdlet when trying to add a SharePoint page or list as a tab in Teams channel. #2807
  • Added -CheckinType parameter to Add-PnPFile cmdlet which provides the option to specify the checkin type for a file. The default value is set to MinorCheckIn. #2806
  • Added -DefaultSensitivityLabelForLibrary to Set-PnPList which allows setting the default sensitivity label for a library. #2825
  • Added -ApplicationId as alias for -ClientId in Connect-PnPOnline and Request-PnPAccessToken cmdlets. #2805
  • Added -Connection option to Connect-PnPOnline which allows of reusing an authenticated connection to connect to a different site #2821
  • Added -UserAssignedManagedIdentityAzureResourceId and -UserAssignedManagedIdentityClientId as alternatives to -UserAssignedManagedIdentityObjectId for Connect-PnPOnline -ManagedIdentity to provide an user managed identity to authenticate with. #2813
  • Added clearer error message when connecting using an expired client secret and trying to execute a command.#2828
  • Added Undo-PnPFileCheckedOut which allows a checked out file to discard its changes and revert to the last checked in version. #2837
  • Added option for sending e-mail using Microsoft Graph and through a SMTP server of choice in the Send-PnPMail cmdlet #2880
  • Added -OpenDocumentsMode option to Set-PnPList which allows configuring if documents should be opened in the browser or in the local client #2873
  • Added -Properties parameter to Get-PnPUserProfileProperty cmdlet which allows retrieval of specific properties if specified. #2840
  • Added support for specifying the -ContentUrl configuration in Add-PnPTeamsTab cmdlet when trying to add a Planner as a tab in Teams channel. #2850
  • Added Get-PnPSharePointAddIn cmdlet to retrive list of SharePoint addins installed in the site collection. #2920
  • Added Get-PnPAzureACSPrincipal cmdlet to retrieve list of installed Azure ACS Principals in the site collection or tenant. #2920
  • Added -LogoFilePath parameter to Register-PnPAzureADApp cmdlet to allow setting the logo for the Azure AD app. #2881
  • Added support for -Verbose in Move-PnPFile which will show if it has problems determining if the destination location is a folder or a file #2888
  • Added CalendarMemberReadOnly and ConnectorsDisabled as -ResourceBehaviorOptions to New-PnPMicrosoft365Group #2929
  • Added -Identity option to Get-PnPPowerPlatformEnvironment which allows retrieval of one specific environment by its displayname or id. #2794
  • Added Get-PnPPowerApp which allows PowerApps to be retrieved #2794
  • Added -DisableCommenting to Set-PnPList which allows enabling or disabling commenting on a list. #2939
  • Added -EnableAutoExpirationVersionTrim and -ExpireVersionsAfterDays to Set-PnPList which allows enabling or disabling auto expiration of versions on a list or library based on the days passed. #2869
  • Added -Detailed parameter to Get-PnPHomeSite which will return detailed information on all home sites configured on the tenant #2954

Changed

  • Update-PnPVivaConnectionsDashboardACE is now called Set-PnPVivaConnectionsDashboardACE but Update-PnPVivaConnectionsDashboardACE will still work as an alias.
  • All `Set|Get|Remove-PnPVivaConnection...
Read more