GA of many long time Preview features

How we introduce new features in Power Apps is a complicated business. We need to balance making innovative changes and iterating on your feedback with the rock-solid stability for your production apps.

With version 3.24063 we are making changes to how we do this in Canvas apps. We will now have four feature stages:

  • New: These are new features that are generally available (GA), fully supported, and documented. These will generally be on by default for new apps, but may take time to deploy everywhere. Enable for existing apps on your own schedule.
  • Preview: These features are almost done and will be New soon. But at this stage there still may be some breaking changes made. This is the last opportunity for feedback. These will generally be off by default and will be documented, although some exceptions will be made especially for fast moving AI related features. These features are not GA, should not be used in production, and are covered by our preview terms of service.
  • Experimental: An early stage “Preview,” these truly are experiments and may never reach GA. We are assessing the value proposition and design of the feature, and the feature may radically change or be removed completely at any time. These features will be off by default and will generally not be documented. These features are not GA, should not be used in production, and are covered by our preview terms of service.
  • Retired: These are GA features but are on their way to being removed from the product. They are still fully supported and document, but we either have a new, better way to do the same thing or usage is low. Disable for existing apps on your own schedule. Generally, these features are off by default.

Why did we add a fourth New category? We needed a new category that clearly indicates that features are GA and the long-term direction of the product, and yet still needed the flexibility of having a switch to control the feature. The switch allows us to slowly deploy the feature and watch for problems, and at the same time gives you control to enable the feature for your production workloads on your own schedule especially when a breaking change is involved.

GA of features moved to New

Practically what this means is that we won’t have features sit in Preview for as long as we have in the past. With this release, we are also announcing the GA of these features that have moved to New:

  • Modern controls and themes (this feature set was already GA under General settings but the switch is more appropriate here)
  • New analysis engine
  • Expanded media support for SaveData on Power Apps mobile
  • SQL Server stored procedures

GA of features with disable moved to Retired

The following features are also now officially GA and no longer have switches in Preview:

  • Delayed load
  • Formula-level error management
  • Non-blocking OnStart rule
  • Formula-level prefetching
  • New data format in Microsoft Excel Online Business connector
  • Keeping recently visited screens in memory
  • SaveData, LoadData, and ClearData in the web player
  • Simplified tab index
  • Performance optimization for hidden controls

However, you won’t find switches for these in New. These features have been in the product and on by default for a while and no longer qualify as “new.” To control these features, we have added “Disable” versions of all of the above in Retired, as the old behavior without this feature is now retired and will eventually be removed from the product.

For example, “Delayed load” has been a Preview switch for ages and has now graduated to GA. Since this has been a feature for a long time, instead of New, we added “Disable delayed load” to Retired. Using the new behavior of “Delayed load”, without a switch being toggled, is the way most apps should operate. But until we fully remove the old behavior (without “Delayed load”), there is still a way to get it through the disabled “retired” switch.

These Retired behaviors will one day be removed from the product. The timelines and process for removal will vary based on the feature, usage, and alternatives available and will be well communicated ahead of time if it involves a breaking change.

Summary

A few other notes, the “Enable improved data table control selection and Value property” feature will remain in Preview but will be disabled by default. This long running feature has been superseded by the new modern control “Table (Preview)” and we recommend that new apps use this feature instead. This change does not impact existing use of the old table control; all we have changed is the default for new apps.

As that last example demonstrates, there are still “Preview” tags throughout the product, for which there is not a Settings switch. Despite the lack of a switch, these are still “Preview” features, are not GA, and should not be used in production apps.

Alot of change. But actually, if you didn’t open Settings, the only thing that has changed is that the old table control is now disabled by default for new apps. We have mostly just done some rearranging. No existing apps will change behavior.

It is our hope that these changes will clarify that Preview features are not for production as they will generally be off by default. We will graduate features up to New and GA faster so that they can be on by default for everyone, and old behaviors that should no longer be used but are still GA will be easily identified in Retired.

You can read more about the feature stages at Understand New, Preview, Experimental, and Retired features in Canvas apps. To recap:

  • New: Good for all workloads. Generally turned on for new apps; turn on for existing apps as appropriate.
  • Preview: Almost ready to ship. Good for feedback, but not for production. Turn off by default except for what is being tested.
  • Experimental: An experiment. Good for early adopters and early feedback, but not for production. Keep all off, except for specific features that you are helping us refine.
  • Retired: Good for all workloads. But there is probably a better way and the old behavior will eventually be removed. Generally turned off for new apps; turn off for existing apps when you can.

As always, we love your feedback, please leave comments in the community forum.