@@ -11,7 +11,6 @@ A comprehensive PowerShell module for automating the build, test, package, and r
1111- NuGet package creation and publishing
1212- GitHub release creation with assets
1313- Proper line ending handling based on git config
14- - Robust version string handling with automatic whitespace trimming
1514
1615## Installation
1716
@@ -50,6 +49,21 @@ if ($result.Success) {
5049}
5150```
5251
52+ ## Object Model
53+
54+ The module consistently uses PSCustomObjects for return values and data storage, providing several benefits:
55+
56+ - Easy property access with dot notation
57+ - Better IntelliSense support in modern editors
58+ - Consistent patterns throughout the codebase
59+ - More efficient memory usage
60+ - Clearer code structure
61+
62+ Each function returns a standardized object with at least:
63+ - ` Success ` : Boolean indicating operation success
64+ - ` Error ` : Error message if operation failed
65+ - ` Data ` : Object containing function-specific results
66+
5367## Managed Files
5468
5569The module manages several metadata files in your repository:
@@ -136,6 +150,8 @@ The module provides several functions for advanced scenarios:
136150- ` Test-AnyFiles ` : Tests for existence of files matching a pattern
137151- ` Get-GitLineEnding ` : Determines correct line endings based on git config
138152- ` Set-GitIdentity ` : Configures git user identity for automated operations
153+ - ` Write-InformationStream ` : Streams output to the information stream
154+ - ` Invoke-ExpressionWithLogging ` : Executes commands with proper logging
139155
140156## Line Ending Handling
141157
@@ -145,6 +161,15 @@ The module respects git's line ending settings when generating files:
1451612 . Falls back to ` core.autocrlf ` setting
1461623 . Defaults to OS-specific line endings if no git settings are found
147163
164+ ## Git Status Handling
165+
166+ The module carefully handles git status to prevent empty commits:
167+
168+ 1 . Only attempts commits when there are actual changes
169+ 2 . Properly captures and interprets the git status output
170+ 3 . Reports clear status messages during metadata updates
171+ 4 . Preserves the correct commit hash for both success and no-change scenarios
172+
148173## Contributing
149174
1501751 . Fork the repository
0 commit comments