Git Product home page Git Product logo

jumoo.usync's Introduction

jumoo.usync's People

Contributors

kevinjump avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jumoo.usync's Issues

Umbraco 7.2 RC - Cannot sync document types

Hi KevinJump,

I want to report an issue, which happens when I use usync with Umbraco 7.2 RC.

As you might know, a new feature in Umbraco 7.2 is Compositions (which is like Mixins).
When I create a new document type, usync writes out new def.config file, with section. But when I go to another computer, pull code and run, there is error (please see attached file).
umb72_usync

After I deleted that section, usync worked again.

Please update usync to be compatible with this new feature.
Thank you.

Better diff support for Grid Layouts with CDATA and preserved line feeds for some PreValues

We've encountered an issue several times where the json for a grid layout is modified by multiple developers (even simple changes like which grid editors are allowed) on their feature branches and then merging them is difficult because the json is collapsed down to a single line. In these cases we've resorted to extracting out the raw json from both and putting them in beyond compare. It would be very nice though if instead, these values were wrapped in a CDATA and line feeds were preserved.

Here is an abbreviated example of what we see:

<DataType Name="Grid - Text Page" Key="" Id="Umbraco.Grid" DatabaseType="Ntext">
  <PreValues>
    <PreValue Id="1134" Value="{&#xD;&#xA;  &quot;styles&quot;: [&#xD;&#xA;    {&#xD;&#xA;      &quot;label&quot;: &quot;Background Image&quot;,&#xD;&#xA;      &quot;description&quot;
    ...58,000+ chars..." Alias="items" />
  </PreValues>
</DataType>

We are using LeBlender but I don't think that matters. I believe storing json in Ntext is becoming more popular too so maybe a generic fix would be best. Some suggestions:

  • Always use CDATA for PreValue so the line feeds are preserved
  • Detect when CDATA for PreValue would be better, maybe any of these:
    • First char is {
    • Value contains \n
    • Character length > 300

Thanks!

Issue when renaming a node with different case.

If you rename a node with a different character case (Example: from "Page Title" to "page title"). the function "jumoo.usync.content.ContentEvents.SaveContentItemsToDisk" raises a "Source and destination path must be different" exception.

if ( (sourceName!= null) && (item.Name != sourceName ) )
                {
                    LogHelper.Info<ContentExporter>("Rename {0}", () => item.Name);
                    w.RenameContent(item, SourceInfo.GetName(item.Key));
                }

the following condition "renames" the content even when the content name is just changed from lowercase/uppercase. because windows filesystem is case insensitive, source and destination files got exactly the same name.

Ability to Store and retrive files that are not stored in umbracoFile

it is possible for media types to associate multiple files, and for extra files to be stored in other values than umbracoFile, at the moment uSync only handles the files in umbracoFile.

extend the File Classes so when it's exporting files it prefixes them with their property ? (so umbracoFile_somelongfilename.jpg
thumbnail_somethumbnailname.jpg

then on import of the files we can take the first bit of the name, and use it to match the element back to the property within umbraco (and the code won't need to much altering on an import this way)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.