# Release Online

When thinking about going live to a formal environment, we generally focus onVersion coverageandstabilityFor both of these problems, we offer complete solutions.

# Version coverage

Because Skyline Is it supported in the higher version of WeChat, then is the low version completely unable to run the Mini Program? The answer is no. In order to ensure that the online Mini Program can run reliably, one of the following strategies can be used

  1. increaseBase Library Minimum Available Version, set to Skyline Supported versions, the policy implies the abandonment of lower-version users.

  2. Good compatibility WebView. We'll see it in theNot support Skyline Is automatically downgraded to a version of WebView rendering

Because Skyline Supported by CSS The subset is following the Web Standard, and therefore cut to the point in terms of style WebView Rendering can also be rendered correctly. In addition, for Skyline New features, similar to other new interfaces of Mini Programs, lower versions need to be compatible, but some of our features are targeted at WebView Compatibility treatment is done, specifically refer to the following table:

Characteristic WebView compatibility Low version compatibility
worklet animation Compatible They need to be compatible.
Gesture system Equivalent to an empty node They need to be compatible.
Custom Routing No compatibility required (no action) No compatibility required (no action)
Shared elements No compatibility required (no action) No compatibility required (no action)
scroll-view Rendering on Demand No compatibility required (no optimization) No compatibility required (no optimization)
scroll-view New properties and events Not compatible They need to be compatible.
grid-view Compatible They need to be compatible.
sticky-section/header Incompatible (can be manually added position: sticky Compatible) Incompatible (can be manually added position: sticky Compatible)

# stability

In general, when code changes need to be released online, in order to ensure online stability, we will choose grayscale release. Skyline The case of related code is no exception, so we provide a complete grayscale scheme.

  1. adopt We Analysis AB Experiments were carried out on grayscale.

Skyline The default is that you need to go through We Analytical AB Experimental, that is, after the new version of the Mini Program is released, the default is still in WebView Run, need to be in the We Analytical AB ExperimentalMini Program basic library experimentGradually increase. In particular,when AB The flow of the experiment is allocated to the 100% It does not mean the full amount, but Skyline and WebView each 50%, if you want to complete the experiment, you need to end the experiment and choose a full experimental group.

  1. Release grayscale through Mini Program version management.

If the Mini Program has been fully tested, it is not necessary to run it again AB Experimental words, we also provide the following configuration items, available in app.json or page.json In terms of configuration, make Skyline Without the AB Experiments are turned on by default. In general,sdkVersion and iosVersion+androidVersion Choose one to fill in.

"rendererOptions": {
  "skyline": {
    "disableABTest": true,
    "sdkVersionBegin": "3.0.1", // Base Library Lowest Version
    "sdkVersionEnd": "15.255.255", // Fill in the maximum value, otherwise the new version will not take effect
  }
}
"rendererOptions": {
  "skyline": {
    "disableABTest": true,
    "iosVersionBegin": "x.y.z", // iOS WeChat minimum version
    "iosVersionEnd": "15.255.255", // Fill in the maximum value, otherwise the new version will not take effect
    "androidVersionBegin":  "x.y.z", // Android WeChat minimum version
    "androidVersionEnd": "15.255.255" // Fill in the maximum value, otherwise the new version will not take effect
  }
}