Skip to content

v8.11.0 - Item manager release.

Compare
Choose a tag to compare
@KevinJump KevinJump released this 02 Sep 05:06
· 13 commits to main since this release
9a90b69

This is a major minor release of uSync.Complete that adds functionality to make it easier extend the publish and exporter features for third party and custom developments. Its the come to the uSync party release.

Fixes

  • When syncing content where the language isn't installed on the target, fail silently for the missing languages #129
  • Exportding dictionary items from the root, doesn't offer the language selection box.
  • Add folder names to missing handler message (better detection of what bit of the config is missing)
  • Throw a better error if there are no folders in a uSync.publisher request to indicate what has gone wrong
  • don't scan for datatypes as part of a macro dependency scan (the don't work that way)
  • localization files out of date in package (zip) version of uSync.Complete #130

uSync

  • This version brings the dependent uSync version upto v8.10.x - which contains its own fixes and updates.

Updates

  • ISyncItemManager
  • Push and pull from everywhere !
    • you can now push and pull from lots more menus, such as Document Types, Data Types, Media Types, Templates, Members.

ISyncItemManager

ISyncItemManager is an enhancement to how uSync.Complete handles the UI for Publisher and Exporter meaning it is more flexible and can be used to extend the UI of uSync.Complete

ISyncManager interface is actually in the core uSync product. and looks like this :

public interface ISyncItemManager
{
    SyncEntityInfo GetSyncInfo(string entityType);
    SyncTreeType GetTreeType(SyncTreeItem treeItem);
    string[] EntityTypes { get; }
    string[] Trees { get; }
    IEnumerable<SyncItem> GetItems(SyncItem item);
    SyncLocalItem GetEntity(SyncTreeItem treeItem);
}

there is more detail on the actual file in the repo, and documentation will follow

Implementing this interface alongside uSync handlers and serializes is enough to add uSync's "Push to..." and "Pull from..." menus and add a button to the uSync.Exporter dashboard (if you have the right type of picker).

You can see an example of this in the uSync.Forms repo - which as a FormSyncManager.cs that impliments the elements required to add Push and Pull to the forms menus.

Breaking Change

ISyncItemManager already exists in uSync.Complete v8.10 - but is intended for internal use only. this update changes the interface so with the possiblity that someone might have implemented ISyncItemManager from uSync.Expansions.Core this is a breaking change as the new ISyncItemManager interface is in uSync8.Core namespace. This is the reason for the increment in version number.

All of these changes do not change the syncing process - Syncing between 8.11.x and 8.10.x installs of uSync.Complete will still work (but we recommend running everything at the same version!)


Installing

The recommended way to install uSync.Complete is via Nuget as part of your websites visual studio project:

PM> install-package uSync.Complete -version 8.11.0

Note

uSync.Complete 8.11.x will work with all version of Umbraco v8.0 upwards. However, we recommend you update your Umbraco installations to latest versions where possible, because there are a lot of performance and cache fixes in version past 8.6.x