Refactored spo-change-retention-labels script README.md #892
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes Made in the Refactored Script
Modular Design - Introduced a Set-RetentionLabel function to handle each list item, improving readability, testability, and ease of extension.
Retention Label Mapping Hashtable - Replaced multiple if/elseif statements with a hashtable ($RetentionLabelMapping), making it simple to add or update labels.
Early List Filtering - Only retrieves and processes lists of type GenericList or DocumentLibrary, reducing unnecessary iterations.
Improved Output Readability - Standardized Write-Host messages with consistent formatting and color coding for better visibility during execution.
Error Handling for Missing Fields - Skips lists that do not contain the _ComplianceTag field, preventing runtime errors.
Flattened Loops - Reduced nesting in loops, making the code easier to read, maintain, and debug.