PwSh.Fw.GenericPackageEngine.psd1

#
# Manifeste du module « PSGet_PwSh.Fw.GenericPackageEngine »
#
# Généré par : Charles-Antoine Degennes
#
# Généré le : 05/10/2026
#

@{

# Module de script ou fichier de module binaire associé à ce manifeste.
RootModule = 'PwSh.Fw.GenericPackageEngine.psm1'

# Numéro de version de ce module.
ModuleVersion = '0.1.0'

# Éditions PowerShell prises en charge
# CompatiblePSEditions = @()

# ID utilisé pour identifier ce module de manière unique
GUID = '05bdd564-770b-431d-b89a-075b53e8f8f0'

# Auteur de ce module
Author = 'Charles-Antoine Degennes'

# Société ou fournisseur de ce module
CompanyName = 'Inconnu'

# Déclaration de copyright pour ce module
Copyright = '(c) 2026 Charles-Antoine Degennes. All rights reserved.'

# Description de la fonctionnalité fournie par ce module
Description = 'Declarative software package definitions engine'

# Version minimale du moteur PowerShell requise par ce module
# PowerShellVersion = ''

# Nom de l’hôte PowerShell requis par ce module
# PowerShellHostName = ''

# Version minimale de l’hôte PowerShell requis par ce module
# PowerShellHostVersion = ''

# Version minimale de Microsoft .NET Framework requise par ce module. Cette condition préalable est valide uniquement pour l’édition PowerShell Desktop.
# DotNetFrameworkVersion = ''

# Version minimale du CLR (Common Language Runtime) requise par ce module. Cette condition préalable est valide uniquement pour l’édition PowerShell Desktop.
# ClrVersion = ''

# Architecture du processeur (None, X86, Amd64) requise par ce module
# ProcessorArchitecture = ''

# Modules qui doivent être importés dans l’environnement global avant l’importation de ce module
RequiredModules = @('PwSh.Fw.Core', 
               'PwSh.Fw.Web')

# Assemblys qui doivent être chargés avant l’importation de ce module
# RequiredAssemblies = @()

# Fichiers de script (.ps1) exécutés dans l’environnement de l’appelant avant l’importation de ce module.
# ScriptsToProcess = @()

# Fichiers de type (.ps1xml) à charger lors de l’importation de ce module
# TypesToProcess = @()

# Fichiers de format (.ps1xml) à charger lors de l’importation de ce module
# FormatsToProcess = @()

# Modules à importer en tant que modules imbriqués du module spécifié dans RootModule/ModuleToProcess
# NestedModules = @()

# Fonctions à exporter à partir de ce module. Pour de meilleures performances, n’utilisez pas de caractères génériques et ne supprimez pas l’entrée. Utilisez un tableau vide s’il n’y a aucune fonction à exporter.
FunctionsToExport = 'Download-GenericPackageAsset', 'Expand-GenericPackageTargets', 
               'Get-GenericPackageAssetInfo', 'Install-GenericPackage', 
               'Resolve-GenericPackageDefinition', 'Test-GenericPackageDefinition'

# Cmdlets à exporter à partir de ce module. Pour de meilleures performances, n’utilisez pas de caractères génériques et ne supprimez pas l’entrée. Utilisez un tableau vide s’il n’y a aucune cmdlet à exporter.
CmdletsToExport = '*'

# Variables à exporter depuis ce module
VariablesToExport = '*'

# Les alias à exporter à partir de ce module. Pour de meilleures performances, n’utilisez pas de caractères génériques et ne supprimez pas l’entrée. Utilisez un tableau vide s’il n’y a aucun alias à exporter.
AliasesToExport = @()

# Ressources DSC à exporter depuis ce module
# DscResourcesToExport = @()

# Liste de tous les modules empaquetés avec ce module
# ModuleList = @()

# Liste de tous les fichiers empaquetés avec ce module
# FileList = @()

# Données privées à transmettre au module spécifié dans RootModule/ModuleToProcess. Cela peut également contenir une table de hachage PSData avec des métadonnées de module supplémentaires utilisées par PowerShell.
PrivateData = @{

    PSData = @{

        # Tags applied to this module. These help with module discovery in online galleries.
        Tags = 'PSEdition_Core','Windows','Linux','MacOS','PwSh.Fw','packages'

        # A URL to the license for this module.
        LicenseUri = 'https://gitlab.com/pwsh.fw/pwsh.fw.genericpackage/raw/master/LICENSE'

        # A URL to the main website for this project.
        # ProjectUri = ''

        # A URL to an icon representing this module.
        # IconUri = ''

        # ReleaseNotes of this module
        ReleaseNotes = '## [unreleased]
### Added
- pkgdef v2 specification : `schemas/pkgdef.schema.json` (JSON Schema 2020-12),
  `doc/pkgdef.md` reference, four living examples in `examples/`.
- `PwSh.Fw.GenericPackageEngine` module :
  - `Resolve-GenericPackageDefinition` : resolve a product definition for one
    target (key-by-key download merge, install/post replacement, version
    override, consumer placeholders preserved).
  - `Expand-GenericPackageTargets` : expand a definition into one resolved
    file per target (CI matrix).
  - `Test-GenericPackageDefinition` : semantic validation on top of the JSON
    Schema (unique target ids, regex validity, provider coherence, payload /
    pattern mismatch, upload coherence).
  - `Download-GenericPackageAsset` / `Get-GenericPackageAssetInfo` : providers
    github, gitlab, gitlab-artifact, url, webscrapper ; digest and
    signature-file verification ; consistent caching.
  - `Install-GenericPackage` : full pipeline resolve → download → verify →
    install → post → upload.
- `version: latest` support : literal token for the `url` provider (rendered
  into the URL), highest-version selection via a `(?<ver>…)` capture group in
  the pattern for the `webscrapper` provider (feeds VERSION / TAGNAME).
- Ported from the `Generic.Package` prototype with its known defects fixed
  (broken wrapper, dead webscrapper provider, inconsistent provider caches).
'


        # Prerelease string of this module
        Prerelease = 'pre04'

        # Flag to indicate whether the module requires explicit user acceptance for install/update/save
        # RequireLicenseAcceptance = $false

        # External dependent modules of this module
        # ExternalModuleDependencies = @()

    } # End of PSData hashtable

 } # End of PrivateData hashtable

# URI HelpInfo de ce module
# HelpInfoURI = ''

# Préfixe par défaut des commandes exportées à partir de ce module. Remplacez le préfixe par défaut à l’aide de Import-Module -Prefix.
# DefaultCommandPrefix = ''

}