Skip to content

AL: Download symbols does not try to download transitive dependencies needed for AL: Publish full dependency tree for active project #8194

@ernestasju

Description

@ernestasju

1. Describe the bug

Hi, in multi-root workspaces AL: Download symbols only downloads symbols for the current workspace folder app. Symbols needed to package dependency app folders in same workspace are not downloaded and so AL: Publish full dependency tree for active project fails to package those dependency apps.

2. To Reproduce
Steps to reproduce the behavior:

This AL project does not need Business Central. The failure is on the AL Language extension side.

  1. Download Product.zip.
  2. Extract Product.zip to some folder.
  3. Open Product.code-workspace.
  4. Select A/app.json.
  5. Run VS Code command AL: Download symbols. Observe command output.
  6. Run VS Code command AL: Publish full dependency tree for active project. Observe command output.

3. Expected behavior

AL: Download symbols should download symbols app SharedLibrary.

4. Actual behavior

AL: Download symbols does not download dependencies for app B and then AL: Publish full dependency tree for active project fails.

[2026-01-31 11:24:02.59] Using reference symbols cache paths: [c:\Users\ernes\Desktop\bad publish repro\Product\A\../.alpackages]
[2026-01-31 11:24:02.60] All reference symbols are already downloaded
[2026-01-31 11:24:15.88] Preparing to publish the dependency tree with these settings:
[2026-01-31 11:24:15.88] SchemaUpdateMode: Synchronize
[2026-01-31 11:24:15.88] EnvironmentType: OnPrem
[2026-01-31 11:24:15.89] Microsoft (R) AL Compiler version 17.0.31.5536
[2026-01-31 11:24:15.89] Copyright (C) Microsoft Corporation. All rights reserved
[2026-01-31 11:24:15.89] 
[2026-01-31 11:24:15.89] Compilation started for project 'B' containing '0' files at '11:24:15.893'.
[2026-01-31 11:24:15.89] 
[2026-01-31 11:24:15.89] error AL1022: A package with publisher 'Default Publisher', name 'SharedLibrary', and a version compatible with '1.0.0.0' could not be found in the package cache folders: c:\Users\ernes\Desktop\bad publish repro\Product\B\../.alpackages

5. Versions:

  • AL Language: 17.0.2037090
  • Visual Studio Code: 1.108.2
  • Business Central: N/A
  • List of Visual Studio Code extensions that you have installed:
  • AL Language
  • Operating System:
    • Windows
    • Linux
    • MacOS

999. Workarounds

This problem existed for quite a while. Usually not annoying when you already downloaded all necessary symbols to package the apps from workspace.

The annoying part is that first step right after Git clone - this repro project has two apps, but ours have 9 or 10 if you include the test app. Naturally, to just start you need to go over each app folder and download symbols which also involves adding launch.json and waiting zillion years for AL: Language app to load the workspace folders. It takes a good 5 to 10 minutes to just make the thing compile.

More sane workaround is to add all dependencies from all workspace folders to the root app. Then the current behavior of AL: Download is enough.

Software development is super weird. We have tech to land building sized rockets from space and yet fail to build a simple recursive algorithm to download a bunch of files? :/

Also, msbuild AL support when? I am just waiting for dotnet build level of convenience.

Final Checklist

Please remember to do the following:

  • Search the issue repository to ensure you are reporting a new issue

  • Reproduce the issue after disabling all extensions except the AL Language extension

  • Simplify your code around the issue to better isolate the problem

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions