3.9 KiB
3.9 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.6.7] - 2026-06-02
Fixed
- Missing dependencies update
[1.6.6] - 2026-06-02
Changed
- Reorganized
utils/into engine, plugin, and module layout (engines/,plugins/,modules/,tools/) with root entry scripts (Invoke-TestEngine.bat,Invoke-ReleasePackage.bat, and related launchers). - TestRunner: resolves
.csprojpaths explicitly, builds once, then runsdotnet test --no-buildto reduce file-lock failures on Windows.
Fixed
- Test engine
scriptSettings.jsonpaths corrected for theutils/engines/testlayout. - EnvVarTests: user-level environment variable tests no longer hang the xUnit test host on Windows (non-parallel collection and timeout-safe skip).
- .gitignore: added override rules so the
utils/folder is tracked despite broader ignore patterns.
[1.6.5] - 2026-03-02
Changed
- Replaced explicit
ArgumentNullExceptionthrows withArgumentNullException.ThrowIfNullinExpressionExtensions,NetworkConnection,Base32Encoder,StringExtensions.CSVToDataTable,FileLoggerProvider, andJsonFileLoggerProvider. - Base32Encoder: empty input now throws
ArgumentExceptioninstead ofArgumentNullExceptionfor clearer semantics. - StringExtensions.CSVToDataTable: null file path throws via
ThrowIfNull; empty/whitespace path throwsArgumentException. - ObjectExtensions:
DeepClonereturnsdefaultfor null input;DeepEqualexplicitly treats (null, null) as true and (null, non-null) as false. Replaced obsoleteFormatterServices.GetUninitializedObjectwithRuntimeHelpers.GetUninitializedObject. Fixed nullability inReferenceEqualityComparerto matchIEqualityComparer<object>. - TotpGenerator: recovery code generation uses range syntax (
code[..4],code[4..8]) instead ofSubstring.
Fixed
- ExceptionExtensions.ExtractMessages: null check added to avoid
NullReferenceExceptionwhen passed null. - BaseFileLogger.RemoveExpiredLogFiles: guard added before
Substring(4)so malformed log file names do not throw.
[1.6.4] - 2026-02-21
Added
- New shared utility modules under
utils/: Logging.psm1for timestamped, aligned log output.ScriptConfig.psm1for shared settings loading and command assertions.GitTools.psm1for reusable git operations.TestRunner.psm1for shared test/coverage execution.- New
Generate-CoverageBadgesutility script and settings to generate SVG coverage badges.
Changed
- Refactored release/amend/badges scripts to a modular structure with shared modules.
- Standardized script structure with regions and clearer comments.
- Switched script output to centralized logging format with timestamps (where logging module is available).
- Updated release settings comments (
_comments) for clarity and accuracy. - Updated
README.mdto show coverage badges.
Removed
- Removed legacy scripts from
src/scripts/in favor of theutils/-based toolchain. - Removed unused helper logic (including obsolete step-wrapper usage and unused csproj helper).
Fixed
- Fixed NuGet packing metadata by explicitly packing
LICENSE.md,README.md, andCHANGELOG.mdinto the package. - Fixed release pipeline packaging flow to create and resolve the
.nupkgbeforedotnet nuget push. - Added
/stagingto.gitignoreto avoid committing temporary release artifacts.
Security
- Kept release-time git checks and branch/tag validation in shared release flow to reduce accidental publish risk.