Sync on iOS Removing Files Synced by Desktop (1.5.11)

Steps to reproduce

  1. Have an iOS device and a macOS desktop device. I have not got the means to see whether this is reproducible using other combinations of platforms.
  2. Create a new vault (here I will call it “test”) and set it up to sync, turning on all options to sync files. Do this on desktop.
  3. Set up this vault via sync on the mobile device, and turn on all options to sync files.
  4. Externally to Obsidian, create .obsidian/plugins/test/ on desktop, and then create test.blah in that folder.
  5. If you watch the sync log, it will be uploaded on desktop, and then pulled on the mobile device, as shown by the following logs.

Desktop:

2024-03-20 09:51 - Connecting to server
2024-03-20 09:51 - Connection successful. Detecting changes...
2024-03-20 09:51 - Fully synced
2024-03-20 09:51 - Uploading file .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Upload complete .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Fully synced

Mobile:

2024-03-20 09:51 - Fully synced
2024-03-20 09:51 - Server pushed [iounn.ara.io] .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Downloading file .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Downloading complete .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Accepted .obsidian/plugins/test/test.blah
2024-03-20 09:51 - Fully synced
  1. Now, restart the app on mobile. It will immediately delete the unrecognized file as seen in the following logs.

Mobile:

2024-03-20 09:53 - Connecting to server
2024-03-20 09:53 - Connection successful. Detecting changes...
2024-03-20 09:53 - Deleting remote file .obsidian/plugins/test/test.blah
2024-03-20 09:53 - Fully synced

Desktop:

2024-03-20 09:53 - Server pushed (deleted or renamed) [iPad] .obsidian/plugins/test/test.blah
2024-03-20 09:53 - Deleting .obsidian/plugins/test/test.blah
2024-03-20 09:53 - Accepted .obsidian/plugins/test/test.blah
2024-03-20 09:53 - Fully synced

Did you follow the troubleshooting guide?

Yes!

Expected result

Ideally, the mobile device would never delete the file. However, if this is unsupported for some reason, then I would prefer that the files be ignored from sync entirely so each device can at least have its own copy.

Actual result

The file stored in the plugin folder is deleted.

Environment

Desktop

SYSTEM INFO:
	Obsidian version: v1.5.11
	Installer version: v1.5.8
	Operating system: Darwin Kernel Version 23.4.0: Wed Feb 21 21:45:49 PST 2024; root:xnu-10063.101.15~2/RELEASE_ARM64_T6020 23.4.0
	Login status: logged in
	Catalyst license: vip
	Insider build toggle: off
	Live preview: on
	Base theme: adapt to system
	Community theme: none
	Snippets enabled: 0
	Restricted mode: on

RECOMMENDATIONS:
	none

Mobile

SYSTEM INFO:
	Operating system: ios 17.4 (Apple iPad14,6)
	Obsidian version: 1.5.11 (133)
	API version: v1.5.11
	Login status: logged in
	Catalyst license: vip
	Live preview: on
	Base theme: adapt to system
	Community theme: none
	Snippets enabled: 0
	Restricted mode: on

RECOMMENDATIONS:
	none

Additional information

I am actually seeing this happen with the typst plugin, which downloads packages and a WASM blob and stores them in the plugin folder. This is just a very minimal repro for the problem I’m having.

1 Like