Skip to content

[pull] dev from KelvinTegelaar:dev#85

Open
pull[bot] wants to merge 157 commits intoisgq-github01:devfrom
KelvinTegelaar:dev
Open

[pull] dev from KelvinTegelaar:dev#85
pull[bot] wants to merge 157 commits intoisgq-github01:devfrom
KelvinTegelaar:dev

Conversation

@pull
Copy link

@pull pull bot commented Feb 13, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot locked and limited conversation to collaborators Feb 13, 2026
@pull pull bot added the ⤵️ pull label Feb 13, 2026
kris6673 and others added 23 commits February 13, 2026 16:48
…derTVM

Changed  'affectedDevices' to create an array of objects instead of joining device names with commas. This makes them look a lot nicer in the tables.
Enhance Import-CommunityTemplate to detect duplicate templates (GroupTemplate, CATemplate, IntuneTemplate), preserve existing GUID/RowKey when updating, and skip imports when SHA matches (unless -Force). Introduce a $StatusMessage, log informative messages for create/update/skip cases, preserve Package from duplicates, and return the status string. Update callers (Invoke-ExecCommunityRepo and New-CIPPTemplateRun) to capture and use the import result (write/log it and include it in results), and pass Source where needed. These changes add feedback and prevent creating duplicate template records.
Fix(reusable-settings): Data normalizing and formatting
- Introduced logic to handle AssignmentFilterName and AssignmentFilterType.
- Updated parameters for Set-CIPPIntunePolicy to include assignment filter details if provided.
chore: Update .gitignore and improve alert device handling
…ed locations

When creating a new named location, the uncaptured Select-Object on line 198 leaked an id-less object into $LocationLookupTable. This caused duplicate lookup matches where $lookup.id resolved to @($null, "guid"), producing invalid nested-array JSON in excludeLocations/includeLocations.
Fixes KelvinTegelaar/CIPP#5368
fix: Fix named location creation in New-CIPPCAPolicy
feat: Add Invoke-ExecSyncDEP function for DEP sync
feat: Add assignment filter handling in Invoke-AddPolicy
Possibly fixes KelvinTegelaar/CIPP#5338
Sort licenses by License name by default
ADD WORD
KelvinTegelaar and others added 30 commits February 23, 2026 18:23
Add Invoke-CIPPStandardintuneDeviceRegLocalAdmins. Control whether users who register/enroll devices are granted local admin rights and whether Global Administrators are added as local admins.
Add DeviceRegLocalAdmins Standard
…viceLicenses

Fixed Standard disable self service licenses handling and logging
Fix drift comparison issue for NotifyOutboundSpamRecipients in StandardOutBoundSpamAlert
Fix in Invoke-ExecUpdateDriftDeviation.ps1: previously the 'remediate' and 'report' NoteProperties were being added to $StandardTemplate.standards.$Setting and $Settings was set to that nested object. This change adds the properties directly to $StandardTemplate and sets $Settings to $StandardTemplate, ensuring the correct object receives the flags and that downstream code receives the expected settings structure.
Replace the New-CippDbRequest call with New-ExoRequest to retrieve the transport configuration.
Update GDAP relationship check to use 15-role recommended group set
FIxes: KelvinTegelaar/CIPP#5457
Fix: Update GDAP relationship check to use 15-role recommended group set
Pass UserPrincipalName to license operations and normalize license inputs. Invoke-EditUser now includes UserPrincipalName when calling Set-CIPPUserLicense. Invoke-ExecBulkLicense normalizes userId values to strings, chunks user ID OData filters to avoid Graph OR limits, issues a bulk Graph lookup request, aggregates chunk results, and handles missing users and lookup errors. Set-CIPPUserLicense coerces AddLicenses/RemoveLicenses to string arrays, filters out empty values, defaults UserPrincipalName to UserId when missing, and sends clean arrays in assignLicense payloads to prevent null/nested skuId issues.
Fix: Normalize licenses and batch user lookups
Read defaultDomainName from request and include it when clearing offboarding defaults: build partition keys from customerId and defaultDomainName, find matching OffboardingDefaults entities, and remove each match (with improved log message). In tenant listing, prefer offboarding defaults by customerId, fall back to initialDomainName, and select the first match; adjust parse-failure logging to reference the tenant domain. These changes ensure defaults are resolved/removed for both customer and domain partition keys and avoid multiple-match ambiguity.
Fix: Handle defaultDomainName when managing defaults
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants