AL Developer Previews, multiple releases, and GitHub

With this blog post we would like to give a better overview of the Developer Preview program in the context of the released product versions (NAV 2018, Dynamics 365 Business Central) as well as provide more clarity on the purpose of the AL GitHub forum (https://github.com/microsoft/al/issues).

Early Preview Phase

As many of you know, in December 2016, we started a public preview program for the new development environment for Dynamics NAV/Dynamics 365 for Financials – known as the Visual Studio Code AL Language development environment and Extensions V2. The program started with a Developer Preview release available as an Azure VM and an accompanying GitHub issue tracking site (https://github.com/microsoft/al/issues). We followed up with a new Developer Preview release each month ever since.

Things were simple – if you were interested in getting the latest and greatest version of the AL development environment you would create an Azure VM from the available image, try it out, and log any questions, bugs, or suggestions on GitHub. Each monthly update would then contain fixes for reported issues as well as new features. Even better, these fixes and features would find their way into the Dynamics 365 for Financials live product updates each month. This allowed a fast feedback loop and rapid progress in creation and maturing of the AL development environment. There was only one relevant product branch and Developer Previews were just an earlier release of the codebase.

Enter Dynamics NAV 2018

With Dynamics NAV 2018 shipped in December 2017 we branched the codebase (as we always did for every release before) and went into the situation illustrated below:

As you can see the Developer Previews continued to be released from the main branch. This was also the branch in which we continued fixing all issues reported through GitHub. However, since Dynamics NAV 2018 became a different codebase, these fixes were not automatically included in the Dynamics NAV 2018 CU releases.

This is an important distinction to understand. Developer Previews will always be released from the main branch and supported directly by the development team through GitHubNAV 2018 is a released version of the product and therefore it is supported by the dedicated Support team. Therefore, it is important to remember that if you are using AL development environment on a released version and run into any issues or questions you should contact our Support team. You can open Support Request to CSS through the PartnerSource portal (https://mbs2.microsoft.com/Support/SupportRequestStep1.aspx) or contact your Service Account Manager (SAM) in the local subsidiary to understand what is included in your contract as of support incident and PAH (Partner Advisory Hours). Your SAM might also direct you step-by-step on how to open a support request or how to get credentials if this is the first time you or your company are engaging Support.

Early after NAV 2018 branched off of main a lot of issues could still be reproduced on the latest preview release and therefore we accepted these bug reports through GitHub. However, the further we go, the lower number of NAV 2018 issues reproduces on the latest Developer Preview release and therefore GitHub stops becoming the right place to report them. Instead, you should contact Support and in case of product issues this will result in a HotFix (HF) being implemented on the next NAV 2018 Cumulative Update release:

If the issue has already been reported and marked as fixed on GitHub you should feel free to include a reference to it in your support ticket. This will greatly speed up the processing of the ticket as well as make it easy to identify the relevant code that needs to be included in the HotFix.

Dynamics 365 Business Central and Developer Previews

In April 2018 we shipped Dynamics 365 Business Central. Similarly to Dynamics NAV 2018 this meant branching out from the main branch. Here is the diagram containing the full overview:

As you can notice, Business Central includes all features and fixes that went into each Developer Preview release prior to branching. As you can also see from the diagram, GitHub continues to be the support and feedback forum only for the latest Developer Preview releases from the main branch.

One important thing to mention, and a change from Dynamics 365 Finance and Operations, Business Edition, is that Business Central will ship one major release every 6 months and minor releases in between (similar to Cumulative Updates in Dynamics NAV but no predefined cadence). Therefore, fixes and features released in monthly Developer Previews will only be shipped in the live service and on-premise product in the next major release. Minor releases will only contain critical fixes and improvements – that primarily means fixes for issues affecting live customers and raised through regular support channels.

Summing up

We are grateful for the feedback that you continuously provide on GitHub to help make the AL Development the best development environment it can be. At the same time it is important to remember that anything reported and fixed as a result of a GitHub issue will be fixed only in the main branch and released in the next major product release. Hotfixes for released, supported product versions require contacting the support team through means mentioned above.