community postAL Developmentcommunity - not Microsoftreviewed - checked by Opus

Weekly Recap: August 14-21

This weekly recap covers AL Runner releases (v2.2-v2.3.1) with coverage reporting and watch mode improvements, CI/CD fixes for parallel dependency resolution and Linux builds, a major catch-up of bc-code-atlas's stale graphify-al fork that revealed hidden AL-specific behaviors and tree-sitter parser changes, and various smaller tool fixes. It highlights infrastructure improvements that prevent silent failures in builds and dependency resolution.

post Stefan Maron

Stefan Maron · 2026-08-21 · 1,123 words · about 5 min

"releases now gate on the test suite instead of pushing the release commit and tag before tests finish running"

Key points

  • AL Runner now gates releases on test suite completion rather than pushing tags before tests finish, preventing dead tags from failed runs
  • A PowerShell 5.1 JSON serialization quirk was silently breaking CI/CD builds by making matrix builds non-iterable; fixed with a regression test for actual JSON round-trips
  • Thread-unsafe feed-decoration code in dependency resolution was fixed by pre-populating properties before parallel workers start
  • bc-code-atlas’s fork caught up 677 commits with graphify-al, discovering and re-porting undocumented AL-specific behaviors and fixing tree-sitter 4.0 parser changes
  • vsc-lintercop extension now alerts users about LinterCop’s end-of-life with ALCops migration notice before AL Language v18

Quotes

  • “releases now gate on the test suite instead of pushing the release commit and tag before tests finish running” (This prevents dead git tags from failed releases, addressing a real problem that occurred twice in the previous week)
  • “Build/BuildLinux jobs just never spawn: no error, no skipped-job entry, nothing in the run, while PostProcess still marks the whole thing failed” (Illustrates how the PowerShell 5.1 JSON bug created silent failures that were breaking all CI/CD runs without any visible error)

AL objects mentioned

As named in the post. A name that matches one object page by exact type and name links to it; the others stay as named.

  • other “AL Runner”
  • other “AL Language Tests”
  • other “bc-code-atlas”
  • other “graphify-al”
  • other “tree-sitter-al”
  • other “vsc-lintercop”
  • other “ALCops”
  • other “BcContainerHelper”

Context

  • Features: coverage reporting, watch mode, inline execute, release gating, parallel dependency resolution, Linux fast lane CI/CD, deprecation notices
  • Versions: v2.2, v2.3, v2.3.1, tree-sitter-al 4.0, AL Language v18

Source: Stefan Maron, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.