Skip to content

Upgrade instructions

Mariush Minkov edited this page Jul 15, 2015 · 34 revisions

From Feather 1.2.200.1 to Feather 1.2.210.0

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder
  4. social-share-sprite.png is changed to sprite.png in Bootstrap package. If social-share-sprite.png is referenced in a custom code, the reference should be updated to point to the new file name sprite.png.

From Feather 1.2.150.0 to Feather 1.2.160.0

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder
  4. If you are using media field, you need to make following changes:
  • In your DesignerView.YourView.json file, add "sf-document-field" or "sf-video-field" to the components array:
    {
     "priority": 1,
     "components": ["sf-document-field"]
    }
  • In your designerview-yourview.js file, inject "sfFields" and "sfSelectors" modules:
   var designerModule = angular.module('designer');
   angular.module('designer').requires.push('sfFields');
   angular.module('designer').requires.push('sfSelectors');
  • In your DesignerView.YourView.cshtml file, specify media type.The value can be documents or videos:
    <sf-media-field 
        sf-auto-open-selector
        sf-media-type="documents"
        sf-model="selectedMediaId"
        sf-media="selectedMedia"
        sf-provider="mediaProvider"/>

For more details please refer to media field documentation.

From Feather 1.2.140.2 to Feather 1.2.150.0

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder
  4. If you have customized a client component javascript and you receive "404 (Not Found)" exception you need to change the extension in template URL. For example: ctrl.dialogTemplateUrl = 'client-components/selectors/dynamic-modules/sf-dynamic-items-selector.sf-cshtml'

From Feather 1.1.100.0 to Feather 1.1.110.0

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.90.2 to Feather 1.1.100.0

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.80.1 to Feather 1.1.90.2

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.70.1 to Feather 1.1.80.1

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.60.2 to Feather 1.1.70.1

There are breaking changes in the Content block widget. To upgrade to the latest feather, you need to:

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder
  4. In case you have modified the client-components/fields/html-field/sf-html-field.html template in any of the resource packages make sure the textarea is bound to sfModel.
   <textarea id="editor" style="height: 340px;"
    kendo-editor ng-model="sfModel"
    k-encoded="false"
    k-stylesheets='["/ResourcePackages/Bootstrap/assets/dist/css/styles.min.css"]',
    k-tools='[

From Feather 1.1.50.2 to Feather 1.1.60.2

There are breaking changes in the Navigation widget. To upgrade to the latest feather, you need to:

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder
  4. In case you already have Navigation widget on your pages and it is configured to use “Custom selection of pages” you should re-select the pages again or to execute the steps described in the following documentation article .

From Feather 1.1.40.0 to Feather 1.1.50.2

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.30 to Feather 1.1.40.0

There are breaking changes in the News widget. To upgrade to the latest feather, you need to:

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Manually update your custom News widget's views in order to use the ContentDetailsViewModel model. You can use the stock views of the News widget as a reference (i.e. the list view and the detail view)
  4. Restore your modified files from the backup to ResourcePackages folder

From Feather 1.1.20 to Feather 1.1.30

No breaking changes. To upgrade to the latest feather, you need to:

  1. Backup the content of ResourcePackages to another location
  2. Install Feather as a Nuget Package
  3. Restore your modified files from the backup to ResourcePackages folder

Please note that if you are using Sitefinity version, higher than 7.3.5600, you may need to configure binding redirects, as explained in the Troubleshooting Guide.

From Feather 1.0.10 to Feather 1.1.20

In this section, you can get acquainted with all API breaking changes, related to the Feather module, introduced with Sitefinity 7.3. The API changes include Feather services, selectors, and directives' names, so that name collision of the MVC widgets based on Feather framework is avoided. As a result, you now use a naming convention where services, selectors, and directives names are now prefixed with sf. You need to update the following groups of files in accordance with the naming convention, as shown below.

  1. Before Sitefinity upgrade:

  2. Backup any filed that you have modified in the ~\ResourcePackages directory.

  3. Uninstall the Feather package. Ensure widget DLLs are not in the web application's bin folder.

  4. Upgrade Sitefinity.

  5. Restore your backup up files in the resource packages folder.

  6. DesignerView.[Simple/Settings].json files Update the paths to the Feather built-in services, selectors and directives, as shown in the table below:

  • new path for "Services/services.js" is "**client-components/selectors/common/sf-**services.js"

  • new path for "Services/flat-taxon-service.js", is "**client-components/selectors/taxonomies/sf-**flat-taxon-service.js"

  • new path for "Services/taxonomy-service.js" is "**client-components/selectors/taxonomies/sf-**taxonomy-service.js"

  • new path for "Selectors/selectors.js" is "**client-components/selectors/common/sf-**selectors.js"

  • new path for "Selectors/list-selector.js" is "**client-components/selectors/common/sf-**list-selector.js"

  • new path for "Selectors/taxon-selector.js" is "**client-components/selectors/taxonomies/sf-**taxon-selector.js"

    For details, see [List of Selectors scripts](https://github.com/Sitefinity/feather/wiki/List-of-selectors-scripts)
    
  1. Replace services in the module names of Feather services with sfServices. When declaring modules requiring sfServices service, use the following code:

    angular.module('[module_name]').requires.push(‘sfServices’)

    instead of:

    angular.module('[module_name]').requires.push(‘services’)
  2. Replace selectors in the modules names of Feather selectors with sfSelectors. When declaring modules requiring sfSelectors directive, use the following code:

    angular.module('[module_name]').requires.push(‘sfSelectors’)

    instead of:

    angular.module('[module_name]').requires.push(‘selectors’)
  3. Changes in Feather directives name. In the views, use following code:

       <sf-list-selector></sf-list-selector>
       ```
    
       instead of
    
       ```html
       <list-selector></list-selector>
       ```
       
      and 
    
       ```html
    <sf-taxon-selector></sf-taxon-selector>		
       ```            
       instead of
    
       ```html
    <taxon-selector></taxon-selector>		
       ```
  4. Changes in the attributes names of the Feather directive:

Change the sfListSelector attributes as shown in the table below:

  • selectedItemId changed to sfSelectedItemId

  • selectedItem changed to sfSelectedItem

  • selectedItems changed to sfSelectedItems

  • selectedIds changed to sfSelectedIds

  • provider changed to new sfProvider

  • identifierField changed to sfIdentifierField

  • change changed to sfChange

  • sortable changed to sfSortable

  • itemType changed to sfItemType

    The list selector declaration in HTML must look as follows:


1. API changes in the “modal” directive.
  The change is related to the way the "modal" directive loads a dialog in a modal window. The old mechanism used **open-button** attribute for opening a modal window and is now deprecated. You now must use the new method **$openModalDialog** that you use to open the modal window.

  In the following example, you invoke the **$openModalDialog** method when you click the *Select* link button. As a result, the modal window that you declared in the **templateUrl** attribute of the template is opened. Following is a sample code illustrating how you open the modal window:
  ```html
       <a ng-click="$openModalDialog()">Select</a>
       <div modal template-url="/MVC/Scripts/Directives/[Template].html" existing-scope="true">
  1. Activate Feather Module .
Clone this wiki locally