Kritical.UTCM.psm1
|
# Kritical.UTCM.psm1 — DEPRECATION SHIM (wave .1514). # # Kritical.UTCM was renamed to Kritical.UTCM per KRITICAL-BRAND-RENAME-PLAN.md. # This shim keeps existing `Import-Module Kritical.UTCM` calls working through # 2027-01-01 by dot-sourcing the same underlying scripts. Downstream consumers # should transition: # Install-Module Kritical.UTCM -Scope CurrentUser # Import-Module Kritical.UTCM # Set $env:KRIT_DEPRECATION_SUPPRESSED = '1' to silence the one-time WARN. if ($env:KRIT_DEPRECATION_SUPPRESSED -ne '1') { Write-Warning 'Kritical.UTCM is renamed to Kritical.UTCM (wave .1514 brand-rename). Update your Install-Module + Import-Module calls. This shim retires 2027-01-01. Set $env:KRIT_DEPRECATION_SUPPRESSED=1 to silence.' } $ErrorActionPreference = 'Stop' # Soft-load OmniFramework foundation (per Krit.OpenApi 0.1.0 resilience pattern — # never RequiredModules; prevents PSFramework AppDomain cascade). $omni = Get-Module -ListAvailable Kritical.PS.OmniFramework | Sort-Object Version -Desc | Select-Object -First 1 if ($omni) { try { Import-Module Kritical.PS.OmniFramework -Force -ErrorAction Stop -Global } catch { Write-Verbose "[Kritical.UTCM] OmniFramework soft-load skipped: $($_.Exception.Message)" } } # Dot-source Private helpers first, then Public functions (recurse to pick up # Public/<Category>/*.ps1 wrappers emitted by New-KriticalUtcmFromM365DscHelpers). $Private = @(Get-ChildItem -Path (Join-Path $PSScriptRoot 'Private') -Filter '*.ps1' -Recurse -ErrorAction SilentlyContinue) $Public = @(Get-ChildItem -Path (Join-Path $PSScriptRoot 'Public') -Filter '*.ps1' -Recurse -ErrorAction SilentlyContinue) foreach ($file in $Private + $Public) { try { . $file.FullName } catch { Write-Error "[Kritical.UTCM] Failed to dot-source $($file.FullName): $($_.Exception.Message)" } } Export-ModuleMember -Function $Public.BaseName |