--- title: Version 0.9 to 1.0 breaking changes and upgrade guidelines slug: '383' canonical_url: https://docs.coveo.com/en/383/ collection: javascript-search-framework source_format: adoc --- # Version 0.9 to 1.0 breaking changes and upgrade guidelines The JavaScript Search Framework version 1.0 was released to be bundled with the first release of the new Salesforce integration V2. Feature wise, the June 2015 and July 31, 2016 JavaScript Search Framework version 0.9 and 1.0 releases are equivalent. While version 0.9 will be maintained for bug fixes to support existing deployments, new features are added only to version 1.0. You're therefore encouraged to use, and if applicable, upgrade to version 1.0. Coveo took advantages of the JavaScript Search Framework 1.0 release to refactor some aspects to start on cleaner grounds. The light breaking changes that come with this refactoring are described in this article for consideration when upgrading, to adjust previous JavaScript Search Framework version 0.9 deployments. ## Changes summary * Namespace simplification Eliminated namespaces such as `Coveo.Rest` and `Coveo.UI` to rather expose all components and classes directly under the `Coveo` variable (see [Namespace](#namespace)). * Template support Removed support for unused template engines. Added new HTML templates that are recommended to use rather than the still supported underscore templates (see [Templates](#templates)). * Component renaming Renamed a few components and/or some of their options to improve homogeneity (see [Components](#components)). The `FacetRange` component is the only one with more changes (see [FacetRange](#facetrange)). * HTML refactoring Eliminated many default search page divisions and wrappers to simplify the layout (see [Basic page layout and HTML markup](#basic-page-layout-and-html-markup)). * CSS refactoring Renamed and created new CSS classes to significantly reduce rule nesting and simplify style customization (see [CSS](#css)). * Font change Changed the default font from Arimo to Helvetica/Arial (see [Fonts](#fonts)). * Supported browsers Changed the list of supported browsers (see [Supported browsers](#supported-browsers)). ## Namespace The Coveo JavaScript Search Framework version 0.9 exposed most of its components and classes under the following namespaces under the global `Coveo` variable: * `Coveo.Rest` * `Coveo.Ui` * `Coveo.Events` * `Coveo.Controllers` * `Coveo.Models` In version 1.0, all those namespaces are eliminated and all classes are exposed **directly under the Coveo variable**. ### Upgrade guideline In your code editor, perform a case-sensitive replace in all files that include JavaScript Search Framework code: * Replace `Coveo.Rest`, `Coveo.Ui`, `Coveo.Events`, `Coveo.Controllers`, and `Coveo.Models` * With `Coveo` Common namespace migrations: [cols="1,1",options="header"] |=== | Version 0.9 | Version 1.0 | `Coveo.Rest.SearchEndpoint` | `Coveo.SearchEndpoint` | `Coveo.Ui.QueryController` | `Coveo.QueryController` | `Coveo.Ui.QueryBuilder` | `Coveo.QueryBuilder` |=== ## Templates In the JavaScript Search Framework version 0.9, the development led to explore and include different ways to allow you to customize search result templates. Version 1.0 introduces [HTML templates](#html-templates), which are recommended for their ease of use and flexibility, but also supports [Underscore templates](#underscore-templates). > **Note** > > **Upgrade guideline** > > * If you were using [Underscore templates](#underscore-templates) for your version 0.9 search results, they will work transparently in version 1.0. > * Instead, consider redefining your search results with [HTML templates](#html-templates) using the Interface Editor. > * If you were using [other version 0.9 template types](#other-template-types) (JsRender, Handlebars, or JSON), you must upgrade your search result templates, preferably to HTML templates. ### HTML templates [HTML templates](https://docs.coveo.com/en/413#using-the-html-engine-recommended) are a new addition to version 1.0. They allow you to easily customize search result templates using the Interface Editor. HTML templates are structured using configurable rows and cells into which you can drag search result components. Coveo now recommends that you use HTML templates because they offer the best compromise between ease of use and flexibility. In your search page, the HTML templates generated by the Interface Editor look like the following code snippet: ```xml
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | OmniBox |
Omnibox |
| CSS class name | CoveoOmniBox | CoveoOmnibox |
| Option name | omniBoxDelay | New option name: omniboxDelay |
| Option name | omniBoxTimeout | New option name: omniboxTimeout |
| Option name | omniBoxChangeLimit | New option name: omniboxChangeLimit |
| Option name | omniBoxMinimumLetters | New option name: omniboxMinimumLetters |
| Event | populateOmniBox | populateOmnibox |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: hiddenExpression | New option name: expression |
| HTML markup option name | Old option name when set through the HTML markup: data-hidden-expression Note: Was the markup name for the hiddenExpression option. |
New option name: data-expression Note: Is the markup name for the expression option. |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | SearchBox |
Searchbox |
| CSS class name | CoveoSearchBox | CoveoSearchbox |
| Option name | Old option name: activateOmniBox | New option name: enableOmnibox |
| HTML markup option name | Old option name: data-activate-omnibox |
New option name: data-enable-omnibox |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | QueryBox |
The component is now named Querybox |
| CSS class name | CoveoQueryBox | CoveoQuerybox |
Option name Default value |
Old option name: disableQuerySyntax false |
New option name: enableQuerySyntax true |
HTML markup option name Default value |
Old option name: data-disable-query-syntax false |
New option name: data-enable-query-syntax true |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: navigationButton | New option name: enableNavigationButton |
| HTML markup option name | Old option name when set through the HTML markup: data-show-previous-next Note: Was the markup name for the navigationButton option. |
New option name: data-enable-navigation-button Note: Is the markup name for the enableNavigationButton option. |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: popUp | New option name: enablePopup |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: uniqueId | New option name: id |
| Option name | Old option name: allowTogglingOperator | New option name: enableTogglingOperator |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | QuickView |
Quickview |
| CSS class name | CoveoQuickView | CoveoQuickview |
| Option name | Old option name: showLoadingAnimation |
New option name: enableLoadingAnimation |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | The component was named QuickViewDocument |
The component is now named QuickviewDocument |
| CSS class name | CoveoQuickViewDocument | CoveoQuickviewDocument |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: showInfiniteScrollWaitingAnimation |
New option name: enableInfiniteScrollWaitingAnimation |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: showOpenInOutlook |
New option name: enableOpenInOutlook |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Option name | Old option name: uniqueId |
New option name: id |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | The component was named TopAnalyticsSuggestions |
The component is now named AnalyticsSuggestions |
| CSS class name | CoveoTopAnalyticsSuggestions | CoveoAnalyticsSuggestions |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Component name | The component was named TopFieldSuggestions |
The component is now named FieldSuggestions |
| CSS class name | CoveoTopFieldSuggestions | CoveoFieldSuggestions |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Slider and graph related options | Available | Deprecated on |
| Change | Version 0.9 | Version 1.0 |
|---|---|---|
| Default font | Arimo | Helvetica, Arial |
| Font file distribution in package | .woff included | None included |
| Changed browser support | Version 0.9 | |
|---|---|---|
| Microsoft Edge | Not Supported | Supported |
| Changed mobile operating system support | Version 0.9 | |
|---|---|---|
| iOS 7 and 8 | Supported | Not supported |
iOS 8.x and 9.x |
Not Supported | Supported |
| Android 5.x | Not Supported | Supported |