Ruleset hardening: remove deprecated APIs and define app resources - #11668
Open
Jesper Schulz-Wedde (JesperSchulz) wants to merge 4 commits into
Open
Jesper Schulz-Wedde (JesperSchulz) wants to merge 4 commits into
Jesper Schulz-Wedde (JesperSchulz) wants to merge 4 commits into
Conversation
Replace deprecated compiler APIs with supported overloads and report layout metadata, remove unused attributes, and retire obsolete V1 archive cleanup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Declare AppResources folders for data exchange XML assets and remove an obsolete APIV1 test planning file. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Remove the warning overrides after fixing all live compiler sites. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Validate the default Word layout through the supported Report Metadata and Report Layout List records. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Jesper Schulz-Wedde (JesperSchulz)
requested review from
a team
as code owners
September 21, 2026 13:57
Jesper Schulz-Wedde (JesperSchulz)
deployed
to
triage
September 21, 2026 13:57 — with
GitHub Actions
Active
Jesper Schulz-Wedde (JesperSchulz)
enabled auto-merge
September 21, 2026 13:58
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What & why
Promotes exactly AL0667 and AL1025 from Warning to Error by fixing their live root causes. No analyzer pragmas or site-scoped suppressions were added.
AL0667 reconciliation
The old compiler census contained 228 records. Reconciliation against current
origin/mainfound 106 live deprecated constructs; duplicate localization/view projections and deleted source explain the difference.FindSet(..., UpdateKey)ForUpdate.[InDataSet]EditableReport.DefaultLayoutReport MetadataandReport Layout List.CurrReport.PageNoGlobals!PageNumber. Getter sites already usePageNo().NavApp.DeleteArchiveDataReport.RdlcLayoutReport Layout Listfor an RDLC layout before rendering, preserving layout type and selected/external layout behavior.OptionStringCurrReport.CreateTotalsSum(...).[Scope('Internal')]OnPremscope.NewPageAL1025 reconciliation
The old census contained 36 records across 20 projects: 32 live data-exchange XML assets are now intentionally packaged through precise
AppResourcesresourceFoldersentries in 16 apps; the obsolete APIV1 test-planning text file was deleted; three oldUTREPPurchasePayables.Codeunit.al.txtbackup paths were already absent on live main. Each XML definition was reconciled to its AL data-exchange code and project, and no runtime resource path was moved.The ruleset is now 63 total / 54 Warning / 8 None / 1 Hidden. AL0424 remains Warning unchanged.
Linked work
AB#640773
How I validated this
What I tested and the outcome
FindSet,[InDataSet], deprecated report layout API, page-number setter,CreateTotals,DeleteArchiveData, orScope('Internal')sites remain.app.json; verified all 32 XML files are covered and all four debris paths are absent after the change.Invoke-MiSnapAppwithRepoBranchName=main: no missing propagation files.git diff --check: clean; AL CRLF/BOM audit found no line-ending conversions.No new tests are needed for the mechanical overload/attribute removals. Existing report-layout tests now assert the default Word layout through the supported metadata/list model; existing RDLC
Sumand page-number expressions preserve report behavior.Risk & compatibility
The report changes preserve format/default selection and allow selected/external layouts to continue flowing through
Report.SaveAs. The QuickBooks upgrade object remains present; only the unsupported V1 archive cleanup calls are removed. Resource folders include only the existing intended assets (plus the existing AMC logo in its already dedicated folder).