Skip to content

Conversation

@ojopiyo
Copy link
Contributor

@ojopiyo ojopiyo commented Dec 18, 2025

The script has been refactored for clarity, consistency, and maintainability. All functions now accept a connection parameter and return standardized objects with DisplayName, UserPrincipalName, Mail, Reason, and Source, simplifying output and CSV exports. Array handling and search queries have been optimized for better performance, and inactive user detection has been restructured with a configurable inactivity threshold. Results from multiple sources are now consolidated into a single report, improving usability for governance audits. Additionally, security best practices have been applied for connection handling, and modular function design supports easier testing, future enhancements, and tenant-specific customization.

The script has been refactored for clarity, consistency, and maintainability. All functions now accept a connection parameter and return standardized objects with DisplayName, UserPrincipalName, Mail, Reason, and Source, simplifying output and CSV exports. Array handling and search queries have been optimized for better performance, and inactive user detection has been restructured with a configurable inactivity threshold. Results from multiple sources are now consolidated into a single report, improving usability for governance audits. Additionally, security best practices have been applied for connection handling, and modular function design supports easier testing, future enhancements, and tenant-specific customization.
@pkbullock
Copy link
Collaborator

Hi @ojopiyo for the large refactoring of existing scripts, I'm tempted to treat as a V2, within the same file. Keeping both the original and the new version. I will reformat as an example. I do appreciate the updates :-) - will post back and process this one.

@pkbullock
Copy link
Collaborator

Thank you again for the updates, @ojopiyo - this will be live shortly 🥳🎉

@pkbullock pkbullock merged commit 48e281e into pnp:main Dec 29, 2025
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.

2 participants