Skip to content

[Shopify] Fix AL0132: expose ImportPayout as internal for test access#8685

Draft
Copilot wants to merge 5 commits into
releases/27.0from
copilot/fix-failing-github-actions-job
Draft

[Shopify] Fix AL0132: expose ImportPayout as internal for test access#8685
Copilot wants to merge 5 commits into
releases/27.0from
copilot/fix-failing-github-actions-job

Conversation

Copilot AI commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

PR #8683 added UnitTestImportPayoutWithExternalTraceId which calls PaymentsAPI.ImportPayout() directly, but ImportPayout was declared local — inaccessible even via internalsVisibleTo, causing AL0132 at compile time on the Shopify Connector Test app.

Changes

  • ShpfyPaymentsAPI.Codeunit.al: Changed ImportPayout from local to internal, making it accessible from the test app (which already has internalsVisibleTo access)
// Before
local procedure ImportPayout(JPayout: JsonObject)

// After  
internal procedure ImportPayout(JPayout: JsonObject)

Also includes the full API 2026-01 uptake backport (PR #8683): External Trace Id field on Shpfy Payout, inventory API idempotency/retry logic, unverified return lines, article reference metafield support, Tax Code deprecation stubs, and codeunit ID clash fix (139593 → 134248).

github-actions Bot and others added 3 commits June 19, 2026 12:04
…8) (#8548)

Codeunit 139593 `"Shpfy Inventory Subscriber"` was reintroduced on the
release branch by the API 2026-01 uptake backport (PR #8366) but clashes
with the codeunit 139593 in the BCApps Shopify Connector Test 28.0.0.0
baseline, which is checked by BuildCop and the BC platform during NAV
gate validation (`VerifyApplicationChanges` failed in job 3581772, NAV
PR 248762).

## Fix

Renumber the codeunit from 139593 to **134248** and extend the existing
`134241-134247` `idRange` in `src/Apps/W1/Shopify/Test/app.json` to
`134248`.

134248 is confirmed free across:
- NAV source (`C:\depot\NAV2\App\Apps`, `Layers`, `Internal`, `Test`,
`Extension`)
- BCApps source on `main`, `releases/27.x`, and `releases/27.5`
- All 137 `.app` baselines in NAV2 (Shopify Test 25.8 through 29.0 and
every other app)

All other references to the codeunit use the name `"Shpfy Inventory
Subscriber"` rather than the ID, so no callers need to change.

Companion fix for releases/27.x: #8547.

Fixes
[AB#638060](https://dynamicssmb2.visualstudio.com/1fcb79e7-ab07-432a-a3c6-6cf5a88ba4a5/_workitems/edit/638060)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI added 2 commits June 19, 2026 11:43
…to allow test access

The test UnitTestImportPayoutWithExternalTraceId in ShpfyPaymentsTest.Codeunit.al
calls PaymentsAPI.ImportPayout(JPayout), but ImportPayout was declared as `local procedure`,
which is not accessible outside the codeunit even via internalsVisibleTo.

Fix: Change `local procedure ImportPayout` to `internal procedure ImportPayout` in
ShpfyPaymentsAPI.Codeunit.al so the test can call it (the Shopify Connector app already
declares internalsVisibleTo for the Shopify Connector Test app).

Also merges the PR #8683 API 2026-01 uptake changes (External Trace Id field, new test,
and other API changes) into the branch.
Copilot AI changed the title [WIP] Fix failing GitHub Actions job for Build Apps [Shopify] Fix AL0132: expose ImportPayout as internal for test access Jun 19, 2026
Copilot AI requested a review from djukicmilica June 19, 2026 11:44
@github-actions github-actions Bot added the needs-approval Workflow runs require maintainer approval to start label Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-approval Workflow runs require maintainer approval to start

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants