I installed VsCode and the VsCode Extension AL Language from Visual Studio Marketplace on macOS. When I try to publish my AL Solution I get the Error Message:
command 'al.resolveDebugCommand' not found
The current version is windows only. We still have a couple of wrinkles to iron out in the MacOS version.
With the AL Language Extension 0.11.14434 this error doesn't occurred anymore. In order to call the Pre-Compiler I change the extensionService.js:
serverPath = path.join(serverPath, 'Microsoft.Dynamics.Nav.EditorServices.Host');
//if (osHelpers_1.isWindows()) {
serverPath += ".exe";
//}
return 'mono ' + serverPath;
Mono can't run the Pre-Compiler on macOS because of Windows API Dependencies of Microsoft.ApplicationInsights. You get this exception:
exception inside UnhandledException handler: The type initializer for 'Microsoft.Dynamics.Nav.CodeAnalysis.Workspaces.Log.ProjectTelemetry' threw an exception.
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Microsoft.Dynamics.Nav.CodeAnalysis.Workspaces.Log.ProjectTelemetry' threw an exception. ---> System.TypeLoadException: Could not load type of field 'Microsoft.ApplicationInsights.Extensibility.Implementation.Platform.PlatformImplementation:CS$<>9__CachedAnonymousMethodDelegate1' (0) due to: Could not load file or assembly 'Windows, Version=255.255.255.255, Culture=neutral, PublicKeyToken=null' or one of its dependencies. assembly:Windows, Version=255.255.255.255, Culture=neutral, PublicKeyToken=null type:<unknown type> member:<none>
at Microsoft.ApplicationInsights.TelemetryClient..ctor (Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) [0x00026] in <bfa6064e6ad94bacb5ae41e461d83c53>:0
at Microsoft.Dynamics.Nav.Deployment.Telemetry.AppInsightsTelemetryService..ctor (System.String key) [0x00041] in <f2ab4875aab94c82a2c62df9de9111e8>:0
at Microsoft.Dynamics.Nav.Deployment.Telemetry.TelemetryServiceFactory.CreateTelemetryService () [0x00000] in <f2ab4875aab94c82a2c62df9de9111e8>:0
at Microsoft.Dynamics.Nav.CodeAnalysis.Workspaces.Log.ProjectTelemetry..cctor () [0x0000a] in <f82446c53b354bcd8a35f2cf9da8840b>:0
--- End of inner exception stack trace ---
at Microsoft.Dynamics.Nav.EditorServices.Protocol.Utility.Logger.Write (System.Exception ex) [0x00000] in <1a4c005790b246afb00433e888ef2dcc>:0
at Prod.EditorServices.Host.Program.CurrentDomain_UnhandledException (System.Object sender, System.UnhandledExceptionEventArgs e) [0x00006] in <a8d199f4ad044ba9884e635c1de864bb>:0
.NET Core would also be a possible, but I guess the Solution has to be compiled for .NET Core before.
Is there a Roadmap?
The currently released version is Windows only. We are working on a .net core version. We have it working (as shown on conferences), but we still need to finalise a number of thing before we can release it. Please be patient, we will get there.
Scott Hanselman had a nice Blog Entry yesterday about Writing smarter cross-platform .NET Core apps with the API Analyzer and Windows Compatibility Pack. There is even a .NET Portability Analyzer as Visual Studio Extension.
We are indeed utilizing .NET Core for cross-platform. The work is still in progress
Most helpful comment
The currently released version is Windows only. We are working on a .net core version. We have it working (as shown on conferences), but we still need to finalise a number of thing before we can release it. Please be patient, we will get there.