Skip to content

v1.2.0-alpha2

Pre-release
Pre-release

Choose a tag to compare

@joshsmithxrm joshsmithxrm released this 31 Dec 23:40
· 4 commits to main since this release

Breaking Changes

This is a major refactor. All cmdlets now wrap the ppds CLI tool instead of using native PowerShell implementation.

  • Removed DataverseConnection class - Authentication now uses CLI profiles
  • Removed -Connection parameter - Use -Profile and -Environment instead
  • Requires ppds CLI tool - Install with dotnet tool install --global PPDS.Cli

Migration Guide

v1.x Pattern v1.2.x Pattern
$conn = Connect-DataverseEnvironment -Interactive Connect-DataverseEnvironment -DeviceCode -Name "dev"
Deploy-DataversePlugins -Connection $conn ... Deploy-DataversePlugins -Profile "dev" ... or just Deploy-DataversePlugins ... (uses active profile)
-RegistrationFile parameter -ConfigPath parameter (alias preserved)
Invoke-DataverseMigration Copy-DataverseData (alias preserved)

Added

  • New cmdlets:

    • Get-DataverseProfile - Get current active authentication profile
    • Get-DataverseProfiles - List all authentication profiles
    • Get-DataversePlugins - List registered plugins in environment
    • Copy-DataverseData - Copy data between environments
  • New authentication methods via Connect-DataverseEnvironment:

    • Interactive browser (default)
    • Device code flow (-DeviceCode)
    • Client secret (-ApplicationId, -ClientSecret, -TenantId)
    • Certificate file (-CertificatePath)
    • Certificate store (-CertificateThumbprint)
    • Managed identity (-ManagedIdentity)
    • Username/password (-Username, -Password)
    • GitHub federated (-GitHubFederated)
    • Azure DevOps federated (-AzureDevOpsFederated)
    • Cloud selection (-Cloud: Public, USGov, USGovHigh, USGovDoD, China)
  • New parameters for migration cmdlets:

    • Import-DataverseData: -BypassPlugins, -BypassFlows, -ContinueOnError, -Mode, -UserMappingPath, -StripOwnerFields, -SkipMissingColumns
    • Export-DataverseData: -Parallel, -BatchSize
    • Copy-DataverseData: All source/target options

Changed

  • All cmdlets now wrap the unified ppds CLI tool
  • CLI helper renamed from Get-PpdsMigrateCli to Get-PpdsCli
  • Invoke-DataverseMigration renamed to Copy-DataverseData (alias preserved)
  • Plugin cmdlets now use -ConfigPath parameter (with -RegistrationFile alias)

Removed

  • DataverseConnection class
  • Native OAuth2 implementation (~300 lines)
  • Native Dataverse Web API implementation (~700 lines)
  • Native assembly reflection (~275 lines)

Dependencies

  • Requires: ppds CLI tool (PPDS.Cli dotnet tool)
  • Requires: PowerShell 7.0+

Installation

# Install the PowerShell module
Install-Module PPDS.Tools -Scope CurrentUser -AllowPrerelease

# Install the CLI tool (required)
dotnet tool install --global PPDS.Cli