Code Monkey home page Code Monkey logo

Comments (5)

vrtmrz avatar vrtmrz commented on September 18, 2024 1

Thank you for your very detailed report! This report quite helps me!

As you mentioned, I missed the following two logics for skipping non-changed files:

  • Checking the actual content (As you mentioned), And keeping the pair of mtime for two changes.
  • If the storage file and stored one have different mtimes, check they are already paired.

And one more thing, the differences in time are also shown correctly.

This has been fixed at v0.23.20. Would you mind if I ask you to check the fixes, please?

from obsidian-livesync.

zedtools avatar zedtools commented on September 18, 2024

Thanks for the quick update.

Yes, the mtime looked a bit odd, but I did not pay much attention to that. Now the files are showing a much more reasonable change in mtime such as several days.

image

As for the syncing of updates, I played around with it a little, and it looks like after updating the plugin I also had to click Select All Shiny and then Apply All Selected at least once, after which I no longer get the excessive notifications.

It looks like the behaviour now is:

  1. Select All Shiny shows all files where the mtime or contents have changed.
  2. Apply All Selected only applies changes where the contents have changed.
  3. After applying changes, Select All Shiny still shows files with a more recent from another device mtime.

from obsidian-livesync.

zedtools avatar zedtools commented on September 18, 2024

On a side note, from a usability perspective it would help a lot to only display files whose contents have changed. I have 21 plugins, and it takes a while to scroll down to see what files may or may not have changed.

The ideal behaviour for me would be:

  1. When opening the dialog, by default show only files whose contents have changed.
  2. If I want to see more details, I can click a button or a checkbox to show all files, including mtime changes.

This way, if I get a notification that new configuration is available, I can open the dialog and quickly see what the relevant changes were. The more plugins installed, the more useful this behaviour would be.

Is this something you would consider?

from obsidian-livesync.

zedtools avatar zedtools commented on September 18, 2024

I also have a question about the four options for each file:

  • Selective
  • Automatic
  • Ignore
  • Flagged Selective

The Automatic option does not seem to do anything. If I enable that for a file, I sometimes get a notification that a hidden file was updated, but the file contents are not changed. Any settings I changed do not propagate to a device with Automatic selected.

If I change it back to Selective, I can manually update it fine.

How is Automatic supposed to work?

from obsidian-livesync.

zedtools avatar zedtools commented on September 18, 2024

Something is still not correct with the differences in mtime.

I just updated the Tasks plugin on my Mac and iPhone, but not yet on my iPad. Customisation sync is showing the iPad as having a newer version, which is incorrect.

I used Textastic to check the file modification times and grabbed the following screenshots. Note that all dates are dd/mm/yyyy.

Screenshots

These screenshots show the contents of .obsidian/plugins/obsidian-tasks-plugin on each platform.

File modified time

Mac

image

iPhone

image

iPad

Note that these are almost one month older:

iPad-files

Customisation sync

Why are my Mac and iPhone showing that my iPad has a newer version of MAIN?

Mac

image

iPhone

image

from obsidian-livesync.

Related Issues (20)

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.