Sampler.psd1

@{
    # Script module or binary module file associated with this manifest.
    RootModule        = 'Sampler.psm1'

    # Version number of this module.
    ModuleVersion     = '0.115.0'

    # Supported PSEditions
    # CompatiblePSEditions = @('Desktop','Core') # Removed to support PS 5.0

    # ID used to uniquely identify this module
    GUID              = 'b59b8442-9cf9-4c4b-bc40-035336ace573'

    # Author of this module
    Author            = 'Gael Colas'

    # Company or vendor of this module
    CompanyName       = 'SynEdgy Limited'

    # Copyright statement for this module
    Copyright         = '(c) Gael Colas. All rights reserved.'

    # Description of the functionality provided by this module
    Description       = 'Sample Module with Pipeline scripts and its Plaster template to create a module following some of the community accepted practices.'

    # Minimum version of the Windows PowerShell engine required by this module
    PowerShellVersion = '5.0'

    # Modules that must be imported into the global environment prior to importing this module
    RequiredModules   = @(
        'Plaster'
    )

    # Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
    NestedModules     = @()

    # Functions to export from this module
    FunctionsToExport = @('Add-Sample','Convert-SamplerHashtableToString','Get-BuildVersion','Get-BuiltModuleVersion','Get-ClassBasedResourceName','Get-CodeCoverageThreshold','Get-MofSchemaName','Get-OperatingSystemShortName','Get-PesterOutputFileFileName','Get-SamplerAbsolutePath','Get-SamplerBuiltModuleBase','Get-SamplerBuiltModuleManifest','Get-SamplerCodeCoverageOutputFile','Get-SamplerCodeCoverageOutputFileEncoding','Get-SamplerModuleInfo','Get-SamplerModuleRootPath','Get-SamplerProjectName','Get-SamplerSourcePath','Invoke-SamplerGit','Merge-JaCoCoReport','New-SampleModule','New-SamplerJaCoCoDocument','New-SamplerPipeline','Out-SamplerXml','Split-ModuleVersion','Update-JaCoCoStatistic')

    # Cmdlets to export from this module
    CmdletsToExport   = ''

    # Variables to export from this module
    VariablesToExport = ''

    # Aliases to export from this module
    AliasesToExport   = '*'

    # List of all modules packaged with this module
    ModuleList        = @()

    # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
    PrivateData       = @{
        PSData = @{
            # Extension for Plaster Template discoverability with `Get-PlasterTemplate -IncludeInstalledModules`
            Extensions   = @(
                @{
                    Module         = 'Plaster'
                    minimumVersion = '1.1.3'
                    Details        = @{
                        TemplatePaths = @(
                            'Templates\Classes'
                            'Templates\ClassResource'
                            'Templates\Composite'
                            'Templates\Enum'
                            'Templates\MofResource'
                            'Templates\PrivateFunction'
                            'Templates\PublicCallPrivateFunctions'
                            'Templates\PublicFunction'
                            'Templates\Sampler'
                        )
                    }
                }
            )

            # Tags applied to this module. These help with module discovery in online galleries.
            Tags         = @('Template', 'pipeline', 'plaster', 'DesiredStateConfiguration', 'DSC', 'DSCResourceKit', 'DSCResource', 'Windows', 'MacOS', 'Linux')

            # A URL to the license for this module.
            LicenseUri   = 'https://github.com/gaelcolas/Sampler/blob/main/LICENSE'

            # A URL to the main website for this project.
            ProjectUri   = 'https://github.com/gaelcolas/Sampler'

            # A URL to an icon representing this module.
            IconUri      = 'https://raw.githubusercontent.com/gaelcolas/Sampler/main/Sampler/assets/sampler.png'

            # ReleaseNotes of this module
            ReleaseNotes = '## [0.115.0-preview0005] - 2022-05-29
 
### Added
 
- Supports using a private Nuget repository, e.g. a _Azure DevOps Server_
  _Pipelines_ feed that is using Windows integrated security, or a feed with
  no security.
- Now supports getting module version from `dotnet-gitversion` if it is available.
- Tests now run in Pester 5.
- Added task `Create_Release_Git_Tag` to create a Git tag for a preview release.
  Fixes [#351](https://github.com/gaelcolas/Sampler/issues/351)
- Added task `Create_Release_Branch` to push a branch containing the updated
  change log after release. Fixes [#351](https://github.com/gaelcolas/Sampler/issues/351)
 
### Changed
 
- The QA test that verifies that a change log entry has been added to CHANGELOG.md
  will no longer fail if the CHANGELOG.md has not been committed but is staged
  or unstaged. This makes it possible to get the QA tests to pass without having
  to first commit changes.
 
### Fixed
 
- Task `package_module_nupkg` now correctly adds the release notes to the
  Nuget package. Fixes [#373](https://github.com/gaelcolas/Sampler/issues/373)
- Task `publish_module_to_gallery` now correctly adds the release notes to
  the published module. Fixes [#373](https://github.com/gaelcolas/Sampler/issues/373)
- Fix a evaluation in the script `Set-SamplerTaskVariable` so it can be tested
  individually outside of the pipeline (using `Invoke-Pester`).
- Fix all source files to UTF8 to comply with the HQRM tests (_due to a bug_
  _in the HQRM tests that runs in Pester 4 this has not been detected until_
  _moving to Pester 5_).
- Remove HQRM rule suppression in source file for `New-SamplerJaCoCoDocument`
  since it no longer required.
- Fixed QA test that was breaking release.
 
'


            Prerelease   = 'preview0005'
        } # End of PSData hashtable
    } # End of PrivateData hashtable
}