datum.psd1

@{

    RootModule        = 'datum.psm1'

    ModuleVersion     = '0.42.0'

    GUID              = 'e176662d-46b8-4900-8de5-e84f9b4366ee'

    Author            = 'Gael Colas'

    CompanyName       = 'SynEdgy Limited'

    Copyright         = '(c) 2020 Gael Colas. All rights reserved.'

    Description       = 'Module to manage Hierarchical Configuration Data.'

    PowerShellVersion = '5.1'

    RequiredModules   = @(
        'powershell-yaml'
    )

    ScriptsToProcess  = @(
        './ScriptsToProcess/Resolve-NodeProperty.ps1'
    )

    FunctionsToExport = @('Clear-DatumRsopCache','ConvertTo-Datum','Get-DatumRsop','Get-DatumRsopCache','Get-DatumSourceFile','Get-FileProviderData','Get-MergeStrategyFromPath','Invoke-TestHandlerAction','Merge-Datum','New-DatumFileProvider','New-DatumStructure','Resolve-Datum','Resolve-DatumPath','Test-TestHandlerFilter')

    AliasesToExport   = ''

    PrivateData       = @{

        PSData = @{

            Tags         = @('Datum', 'Hiera', 'DSC', 'DesiredStateConfiguration', 'hierarchical', 'ConfigurationData', 'ConfigData')

            LicenseUri   = 'https://github.com/gaelcolas/Datum/blob/master/LICENSE'

            ProjectUri   = 'https://github.com/gaelcolas/Datum/'

            ReleaseNotes = '## [0.42.0-preview0002] - 2026-03-05
 
### Added
 
- Add configurable `default_json_depth` setting in `Datum.yml` to
  control `ConvertTo-Json` serialization depth (default: `4`)
  ([#136](https://github.com/gaelcolas/datum/issues/136)).
- Add integration tests for deep structure merge and truncation
  warning detection
  ([#136](https://github.com/gaelcolas/datum/issues/136)).
- Added complete documentation system under `docs/` with index and
  seven reference guides:
  - `AboutDatum.md` — module overview, core concepts, and examples.
  - `CmdletReference.md` — full parameter reference for all public
    functions.
  - `DatumYml.md` — `Datum.yml` configuration reference (stores,
    resolution precedence, merge defaults, handlers).
  - `Merging.md` — merge strategies, data types, knockout prefix,
    and per-key configuration.
  - `DatumHandlers.md` — handler system, ProtectedData, InvokeCommand,
    and custom handler authoring.
  - `RSOP.md` — RSOP computation, filtering, source tracking, caching,
    and troubleshooting.
  - `CodeLayers.md` — conceptual guide to layering DSC code with Roles
    and Configurations backed by Datum data.
- Documented `$env:DatumRsopIndentation` environment variable in
  RSOP.md.
- Added AllNodes iteration examples for both flat and nested directory
  layouts in README.md, RSOP.md, and AboutDatum.md.
 
### Changed
 
- Rewrote README.md with structured sections, table of contents,
  installation guide, merge strategy reference, handler documentation,
  and public function catalogue.
 
### Fixed
 
- Fix `ConvertTo-Json` truncation warnings for deep data structures
  in `Merge-Datum`, `Merge-Hashtable`, and
  `Invoke-TestHandlerAction`
  ([#136](https://github.com/gaelcolas/datum/issues/136)).
- Fixed AllNodes iteration code samples that failed with nested
  directory layouts (e.g. `AllNodes/Dev/DSCFile01.yml`).
- Fixed `-IncludeSource` output examples to show actual right-aligned
  annotations instead of fake `__source` YAML keys.
- Fixed troubleshooting section referencing nonexistent
  `$rsop.SomeKey.__source` pattern.
- Documented `-IncludeSource`/`-RemoveSource` mutual exclusivity in
  RSOP.md and CmdletReference.md.
 
'


            Prerelease   = 'preview0002'

        }
    }
}