Skip to content

chore(release): 0.4.0#78

Merged
HeyItsGilbert merged 2 commits into
mainfrom
release/0.4.0
May 14, 2026
Merged

chore(release): 0.4.0#78
HeyItsGilbert merged 2 commits into
mainfrom
release/0.4.0

Conversation

@HeyItsGilbert
Copy link
Copy Markdown
Owner

[0.4.0] 2026-05-14

Changed

  • Logging configuration key renamed from Warning to Warn to match
    the Effect enum. Update any Configuration.psd1 logging section
    that uses Warning = @{ ... } to Warn = @{ ... }.
  • FunctionsToExport in the module manifest now enumerates all 19
    public functions explicitly instead of using a wildcard.
  • ConvertFrom-JsonToHashtable moved to ScriptsToProcess to
    eliminate circular class-loading dependencies.

Fixed

  • Test-Condition now captures the result of property validation,
    enforcing the fail-closed contract — a context value violating
    constraints now correctly returns $false instead of continuing
    evaluation.
  • PropertyValidation threshold fields (Minimum, Maximum,
    MinLength, MaxLength) changed to Nullable[int] so an unconfigured
    constraint is no longer treated as zero.
  • PropertyValidation.ToHashtable now omits null/unset fields to
    prevent invalid entries in serialized JSON during Save/FromFile
    round-trips.
  • ConditionGroup constructor now treats JSON-serialized null-valued
    keys as absent, and uses Property presence (not Operator) as the
    canonical discriminator for leaf vs. group conditions.
  • FeatureFlag constructor now handles Version deserialized as a
    dictionary from ConvertTo-Json round-trips.
  • Convert-ToTypedValue now correctly coerces string values to boolean.
  • PropertyDefinition.Validate now applies a regex timeout to prevent
    catastrophic backtracking on untrusted input.
  • Argument transform attributes now reject path traversal sequences.
  • Logging script execution hardened against misconfigured or missing
    scripts in Configuration.psd1.
  • ConditionGroup now exposes a FromJson static method.
  • ConditionGroup now detects mutually exclusive group keys set simultaneously.
  • PropertySet.AddProperty now keys the property hashtable by name correctly.
  • PropertySet uses GetFileNameWithoutExtension for cross-platform compatibility.
  • New-FeatureFlag $Rules parameter is no longer Mandatory.
  • Feature flag evaluation now applies DefaultEffect when no terminal rule fires.
  • Feature flag evaluation uses a labeled break to exit on Allow/Deny.
  • Convert-ToTypedValue source file renamed to match the function name.
  • psake dependency updated to 5.0.4.

🤖 Generated with Claude Code

HeyItsGilbert and others added 2 commits May 14, 2026 08:55
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

Test Results

    4 files    448 suites   13s ⏱️
  379 tests   374 ✅  5 💤 0 ❌
1 492 runs  1 469 ✅ 23 💤 0 ❌

Results for commit 72ae8e0.

@HeyItsGilbert HeyItsGilbert merged commit d87e5a5 into main May 14, 2026
6 of 7 checks passed
@HeyItsGilbert HeyItsGilbert deleted the release/0.4.0 branch May 14, 2026 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant