Skip to content

Releases: santisq/PSADTree

v1.1.6

29 Sep 21:30
991e839

Choose a tag to compare

What's Changed

  • Fixed Cross-Store Reference Resolution Error: Resolved an issue where enumerating PrincipalSearchResult<T> caused errors in multi-domain environments. See issue #16 for details.

  • Improved Caching: Updated the caching mechanism used by the cmdlets to persist across all input objects in a single cmdlet invocation. Previously, the cache was cleared for each input object, causing redundant Active Directory queries. For example, piping the same group multiple times now queries its membership only once, unlike v1.1.5 which queried it each time:

    $group = Get-ADGroup myGroup
    $group, $group, $group | Get-ADTreeGroupMember -Recursive

    With this release, cached group hierarchies are reused for member and memberOf queries. These gains are expected to scale exponentially in larger environments with nested or overlapping groups, as the reused cache cuts down AD queries.

    Performance comparison between versions in a very small environment (reference test):

    PS C:\Users\Administrator\Documents\pwsh\PSADTree> .\tests\perf-1.1.6.ps1
    
    Test                     Average (5 invocations) RelativeSpeed
    ----                     ----------------------- -------------
    PSADTree v1.1.6-pwsh-7   00:00:11.175            1x
    PSADTree v1.1.6-pwsh-5.1 00:00:21.677            1.94x
    PSADTree v1.1.5-pwsh-7   00:00:30.029            2.69x
    PSADTree v1.1.5-pwsh-5.1 00:00:41.761            3.74x
    

Big thanks to @CrookedJ and @poshAJ for their help and patience testing this release! 😅

Full Changelog: v1.1.5...v1.1.6

v1.1.5

07 Sep 18:07

Choose a tag to compare

What's Changed

  • Adds -Credential parameter and Truncate Warning by @poshAJ in #15

Full Changelog: v1.1.4...v1.1.5

v1.1.4

03 Sep 17:29
8cf28c3

Choose a tag to compare

What's Changed

  • Adds comparer for ascending sorting of sub-trees by @santisq in #10
  • Adds -Exclude parameter to both cmdlets by @santisq in #12

Thanks to @CrookedJ and @poshAJ for testing and feedback!


Full Changelog: v1.1.3...v1.1.4

v1.1.3

11 Jul 02:31

Choose a tag to compare

What's Changed

  • Updates build to use ProjectBuilder.
  • Updates CI to v4 Actions.
  • Updates -Depth parameter type from uint to int with range validation.
  • Updates docs.

Full Changelog: v1.1.2...v1.1.3

v1.1.2

09 Sep 22:46

Choose a tag to compare

What's Changed

  • Convert function to Binary Module by @santisq in #5. The Get-Hierarchy function has been rewritten in C# and split into 2 cmdlets (Get-ADTreeGroupMember and Get-ADTreePrincipalGroupMembership).
  • Cmdlets Features:
    • Both cmdlets include a -Depth parameter to limit the level of recursion.
    • Both cmdlets support pipeline input and should support input from the Active Directory Module cmdlets.

Future Plans

  • Get-ADTreeOrganizationalUnit might be included in a future release.
  • Feel free to submit a new Issue if you want to see other features included. Feedback is appreciated.

Full Changelog: v1.0.0...v1.1.2

v1.1.1

09 Sep 22:31
a077bfd

Choose a tag to compare

What's Changed

  • Convert function to Binary Module by @santisq in #5. The Get-Hierarchy function has been rewritten in C# and split into 2 cmdlets (Get-ADTreeGroupMember and Get-ADTreePrincipalGroupMembership).
  • Cmdlets Features:
    • Both cmdlets include a -Depth parameter to limit the level of recursion.
    • Both cmdlets support pipeline input and should support input from the Active Directory Module cmdlets.

Future Plans

  • Get-ADTreeOrganizationalUnit might be included in a future release.
  • Feel free to submit a new Issue if you want to see other features included. Feedback is appreciated.

Full Changelog: v1.0.0...v1.1.1

v1.0.0

14 Aug 02:56
5a97cc6

Choose a tag to compare

What's Changed

  • Add multiple domain support by @poshAJ in #3
    • Added -Server Parameter.
    • The function no longer requires the Active Directory Module.
    • Improved hierarchy aesthetics (looks similar to PSTree).

New Contributors

  • @poshAJ made their first contribution in #3

Full Changelog: https://github.com/santisq/Get-Hierarchy/commits/v1.0.0