Backend Performance Improvements

We've made some significant backend performance improvements to help improve page load speed and reduce elements jumping around.

The entire show/hide JS used in backend was completely rewritten from the ground up so that parameters will be hidden initially if their condition says they should be hidden. Most of you likely noticed parameters being visible then suddenly vanishing. This was due to the backend show/hide behavior being entirely handled by the JS so everything was visible then conditions took place once the page loaded. The new pre-conditioning ensures this won't happen anymore or as often. This also means the page doesn't re-render immediately after rendering. The result is a massive performance improvement on pages with a lot of conditions.

In addition to this improved show/hide usage in backend when something is hidden it no longer sends with the POST data. This ensures large forms can still be completed when they contain large amounts of show/hide usages. This was a big problem for CB Auto Actions and CB Package Builder for example which had a large amount of parameters with show/hide usages.

Next is the tab JS. Tabs are also used on frontend. Tabs originally were rendered on the page in their non-final HTML structure. This meant as soon as the page finished loading the tab JS would immediately cause the page to re-render as it moves elements around the page to construct the tabs. This has now been fixed with tabs being rendered in their final HTML structure from the start. In addition to that the tab that should be active is also rendered active from the start. The result is any page with tabs now see significant JS performance in addition to completely eliminating the jumping of the page due to the tabs suddenly becoming visible.

Several of our jQuery plugins have also received minor performance improvements. All of this is available in our latest CB build release. Please let us know if you have any issues with parameters not showing when they should or tabs not behaving correctly since both have been significantly changed.

Facebook Twitter LinkedIn