Netscoot.psd1

@{
    RootModule           = 'Netscoot.psm1'
    ModuleVersion        = '3.0.0'
    GUID                 = '917ef9d9-9117-4ee4-a07f-eb1c1902b9d6'
    Author               = 'kappasims'
    Description          = 'Move/restructure .NET projects (and PowerShell, Unity, native C++) from the command line without breaking references. A single bundled package: Import-Module Netscoot loads the .NET/PowerShell and Unity engines everywhere, and the native C++ (.vcxproj) engine on Windows. Independent community project; not affiliated with or endorsed by Microsoft.'
    PowerShellVersion    = '5.1'
    CompatiblePSEditions = @('Core', 'Desktop')
    # Single bundled package: the RootModule loads Shared -Global and imports each engine nested,
    # re-exporting its cmdlets (native only on Windows, best-effort). This list is the export filter
    # for those re-exported cmdlets, and the PowerShell Gallery indexes it to list the cmdlets by name.
    # tests/UmbrellaSurface.Tests.ps1 checks it against the engines' exports (Shared plumbing excluded).
    # Move-NativeProject is Windows-only at runtime but part of the package.
    FunctionsToExport    = @(
        'Clear-NetscootJournal',
        'Find-NetscootPathReference',
        'Get-NetscootCapability',
        'Get-NetscootSolutionInventory',
        'Get-NetscootUpdateChannel',
        'Get-NetscootUpdatePolicy',
        'Invoke-Netscoot',
        'Move-DotnetFile',
        'Move-DotnetFolder',
        'Move-DotnetProject',
        'Move-DotnetProjectTree',
        'Move-MSBuildImport',
        'Move-NativeProject',
        'Move-PowerShell',
        'Move-PowerShellModule',
        'Move-PowerShellScript',
        'Move-Solution',
        'Move-UnityAsset',
        'Register-NetscootGitAlias',
        'Repair-NetscootJournal',
        'Repair-NetscootSolutionReferences',
        'Resolve-MoveEngine',
        'Set-NetscootJournal',
        'Set-NetscootUpdateChannel',
        'Set-NetscootUpdatePolicy',
        'Sync-NetscootSolution',
        'Test-EditorSolutionGuard',
        'Test-NetscootSolutionConsistency',
        'Test-NetscootUpdate',
        'Test-UnityMetaIntegrity',
        'Undo-Netscoot',
        'Unregister-NetscootGitAlias',
        'Update-Netscoot'
    )
    CmdletsToExport      = @()
    VariablesToExport    = @()
    AliasesToExport      = @(
        'Find-PathReference',
        'Get-SolutionInventory',
        'Repair-SolutionReferences',
        'Scoot',
        'Sync-Solution',
        'Test-SolutionConsistency'
    )
    PrivateData          = @{
        PSData = @{
            # OS tags (Windows/Linux/macOS) surface the platform badges on the Gallery; PowerShellGet
            # adds PSEdition_Core/PSEdition_Desktop from CompatiblePSEditions. The rest aid discovery.
            Tags         = @('dotnet', 'powershell', 'unity', 'native', 'refactoring', 'restructure', 'cross-platform', 'solution', 'msbuild', 'csproj', 'slnx', 'migration', 'Windows', 'Linux', 'macOS')
            ProjectUri   = 'https://github.com/kappasims/netscoot'
            LicenseUri   = 'https://github.com/kappasims/netscoot/blob/master/LICENSE'
            ReleaseNotes = 'See https://github.com/kappasims/netscoot/releases'
            # 3.0 ships as an opt-in prerelease while it is stress-tested. `Install-Module Netscoot`
            # stays on 2.6.x stable, and `-AllowPrerelease` opts into this build. Remove this line to
            # promote 3.0.0 to stable. ModuleVersion stays 3.0.0, and the Gallery shows 3.0.0-<label>.
            Prerelease   = 'beta6'
        }
    }
}