Coder Social home page Coder Social logo

stravo1 / obsidian-gdrive-sync Goto Github PK

View Code? Open in Web Editor NEW
333.0 11.0 5.0 187 KB

sync notes across devices in Obsidian via Google Drive

JavaScript 11.74% TypeScript 86.48% CSS 1.78%
google-drive-api obsidian obsidian-plugin obsidian-vault typescript google-drive obsidian-sync obsidian-gdrive obsidian-google-drive

obsidian-gdrive-sync's Issues

Got a "failed to load plugin"

I did every thing after the instructions. I even created a new vault and tried it again from beginning, it always appearing the same message.

[Feature Request (kinda)] remove notifications at the bottom.

I have enjoyed using this plugin and testing it. It would be great if the notifications you get at the bottom didn't show up that say like "file has been modified externally. Updating file changes" or something like that because it can be distracting while typing. Not sure if you have control over that.

Text cursor teleports to top of page

I've only just started using your plugin, but last night it seems that occasionally when it synced, my cursor would pop to the top of page while typing. Not sure if this is because I accidentally clicked on the metadata date at one point or not, but will update if I can give more details to replicate.

Clicking "open this link to login" doesn't work

Steps to reproduce

  • Install plugin
  • Find plugin in Settings → Community plugins → Google drive sync
  • Click "Open this link to login"

Result

  • Obsidian shuts down completely
  • No additional browser window opens

Expected result

  • Google login page should appear, providing a token to use

Feature request: Disable automatic sync, full manual support

As you may already be aware, I had a bad experience with this plugin deleting half my files when I was just starting up my Obsidian vault, and although the issue has since been fixed, I'm not currently comfortable with using the plugin just yet. It's because of this error I feel that in order to truly get used to this plugin, I need it to give me more control over what is backed up and what is downloaded.

I have a couple of suggestions, but for now I will focus on one: It would be great if it was possible to disable automatic syncing for a particular Obsidian instance. That way you can specifically select what files you want to download, and upload changes at your own leisure, without needing to overwrite every single file. Files that don't exist on an Obsidian instance could be manually downloaded either through the command pallete or settings.

One last thing: if it isn't already possible, it would appreciate it if you could select multiple files in the file explorer and upload/download those only. This would let me try out the syncing with certain files, as opposed to having every file be synced (especially because I want to avoid uploading attachments while they are getting renamed to add the -synced suffix).

[Feature Request] Config Sync

It would be awesome if I could sync my config over Google Drive so I don't have a config desync on my phone and Windows.

Download updated files not working.

First, thank you for this amazing plugin. Really beautiful work.

I have the sync plugin working between my windows PC and my phone. (I uploaded everything to Drive by initializing it on the PC, then I added the plugin to my phone and it successfully downloaded everything).

Both devices successfully upload files that are changed. I checked the files in google drive, and can see the updates.

However, neither device is downloading files that have been updated. Why? Do I have to do this manually? Let me know what to do. Thanks.

Filenames with "/" issue

Filenames after upload are folder_name + "/" + note_name.md
I can't sync it with Android because of "/" in the filenames
Is there any way to create a structure with files inside folders?

Error on folder creation without notes (Sync went wrong - too many errors within a minute)

Using the latest (0.9.9) version of the plugin.

  1. I create a (empty) subfolder under a parent folder, (On Desktop/Windows)

  2. I open the Android-app > automatic sync process starts ('downloading missing files') but this causes an error instantly (Error: something went wrong. sync might be paused!)

When i do create a Note within the newly created subfolder, the sync does work.

Please see included log files

Pages created from Templates via QuickAdd are deleted immediately

I was experimenting with the QuickAdd plugin because you can set it to create a new page from a template very easily (see here). However, as soon as the new page is created by QuickAdd while this plugin is active, the page gets immediately deleted as soon as a sync happens.

Reproduction steps:

  1. Install QuickAdd
  2. Create a new template in your templates folder
  3. Set up a Template macro using the instructions provided from 1:10 - 6:00 in the above video
  4. Invoke the macro to create a new page according to the template
  5. Observe page disappearing within seconds

Additional information

If I disable the sync plugin and then create the files using the macro, then re-enable the plugin, the files are deleted immediately.

Security concern

Hi, I am very interested in your project. That is what I was looking for. I have a question about security? Isn't it vulnerability to use someones url for authorising app, I see it goes to the red-formula-303406.ue.r.appspot.com. Any plans to give user decide what app to use for auth?

Daily Note pages are deleted immediately after creation

Hello, and first of all thank you very much for maintaining this plugin.

I recently started using Obsidian and went on using your plugin for GDrive synchronization. I configured the "Daily Notes" core plugin, however the pages created by it (also on-demand by "Open today's daily note") are immediately being deleted before I can write anything.

This might be related to #30, I will try the workaround of disabling automatic sync for this folder. However I thought it might be good to know that this feature also seems to be affected.

No settings after first uploading a vault

I don't see settings button in plugin after first uploading a vault

Plugin version - 0.9.9.
On version 0.9.5 all working fine

Steps:

  1. copy .obsidian folder with plugin into Ipad
  2. enable plugin, log in and add token
  3. reload plugin via switch button (settings appears)
  4. upload vault into google drive
  5. reload plugin via switch button (settings doesn't appear)

I have tried to add some logs and see an error "unable to complete action: getFilesList BAD URL"
Could somebody help, how to fix it?

sync has issues

i believe it doesnt sync the text that come particularly at the moment it uploads the file and while syncing again at the refresh rate it deletes that particular text

same folder across pc and android

thanks for building up this app !
I'm trying to sync my android phone and desktop on the same Google Drive .. But whenever I install your plug in and initialize it , a NEW Google Drive folder is created so I end up with two separate folders : one from the computer and a different one from the phone .. how can i make one ?

and , where do i config the refresh rythm ?

thanks!
Fabio

how could i access the google-drive-sync-enabled-vault on my ipad?

I have set up the whole google sync plugin on my laptop, but how could i access the vault and sync on my ipad?
I have already created a new vault having the same name as the vault on my drive.
I tried to copy the files from the google drive of the vault to my local ipad storage, I saw 4 files show up on the Obsidian iOS app, but when I clicked 'Files', there is no files show up.

Crash during initial upload

I got the plugin working on my Mac, but after loading a bit more than 1 000 files it crashed, I just got repeated error messages. I closed Obsidian and opened it again, the plugin seems to be running but no new uploads are happening. Is there any way to restart the uploads, other than selecting "upload all", which would mean deleting the alreadu uploaded 1 000 files.

I have more than 6 000 files to upload, so this seems a bit shaky.

Also, after this the whole app started misbehaving. Impossible to display notes. When closing down the app I got following:

Uncaught Exception:
TypeError: Cannot read properties of undefined (reading 'origin')
at Function. (/Users/kalle.kniivila/Applications/Obsidian.app/Contents/Resources/obsidian.asar/main.js:27:9882)

After starting the app the problem persists, I can read one note, but when I try to switch to another one, I just get the title of the other note, with the content of the first one. Then nothing will work at all.

Turning the plugin off didn't seem to help. After removing the plugin files Obsidian seems to work normally again. But no sync :-(

The file that caused the crash might be a sound file, as that is the last file uploaded and it is zero bytes.

Newer file overwritten

I was out and listened to a presentation and took notes on my Android phone and synced. When I got back to my Mac I synced, and got a version of the note, but not the latest one, some information was missing. When I took up my phone and synced again, the fresh information disappeared from my phone and the note was replaced with an old version, the same I got in my computer.

Combined with all other problems I have experienced this makes me give up on this plugin for the time being. I'll just have to pay for Obsidian's own sync.

[Feature Request] Blacklist Files/Folders from Uploads

It would be nice if I was able to blacklist folders from uploads so I could use a tool like Obsidian Shell.

Obsidian Shell allows me to open arbitrary markdown files outside of a vault. It works by making a folder, copying the contents of the folder and then deleting it after but I don't want it to upload to Google Drive because it causes problems with it and even has caused it to delete straight up folders outside of Obsidian.

Failed to load plugin

Downloaded the beta 0.9.9 and pasted the unzipped file to my plugins, but when trying to turn the plugin on in Obsidian settings, it fails to load the plugin. What might be the problem?

Desktop and Mobile: same folder on GDrive

Hi Stravos,

I'm brand new to Obsidian. I installed the plugin on my desktop first but would like to write/edit as I go.

Do I have to install the plug-in on the mobile version of Obsidian? (I'm thinking, yes.)

How do I point the mobile plugin to the same folder I'm using for my desktop?

Thank you for any input!

sync issue: upload on desktop works great, download on android fails 3/4 through

Hello! Thank you so much for this plugin, it really is quite amazing that you're building this!

I have just tried to sync everything between my desktop:

  1. installed plugin on desktop (linux)
  2. initialised on desktop
  3. everything got pushed to drive (in mydrivefolder/obsidian/vault-name that got created automatically)
  4. created a vault on my phone called vault-name
  5. installed plugin on desktop
  6. the download started
  7. the donwload crashed on 180 files (out of ~230)

I then did some troubleshooting on my phone:

  1. disable plugin and enable; still crashed at 180 files
  2. click the download again from scratch: still crashed at 180 files
  3. deleted all files from the vault manually and clicked to download again from scratch: still crashed at 180 files

I then noticed that the files, upon initialisation, did not get the lastSync property (and the attachment names did not change).

I opened on desktop one of the files that did not sync on android. I edited it. It then added the lastSync property and uploaded it. When I then opened obsidian on android and disabled & enabled the plugin, it downloaded the 181st file (the one that I edited on desktop) and then crashed as before.

So this issue may be related to the fact that those properties are not added at initialisation time? Although it works for 180 of the files and then crashes, while none of the files have those properties added.

I am attaching the error log files here:
verbose-log-gdrive-plugin.md
error-log-gdrive-plugin.md

In other news, I wanted to ask you how this will work with the "attachment name formatting" plugin? It may be an issue given that both plugins rename attachments?

Initial upload: no folder creaded

Hi,

the login process was smooth, but I found 2 problems:

  1. I have my vault in a subfolder in Drive. For any reason, I could not install it that it would use my vault in the subfolder.
  2. When I let him use whatever folder, it created /obsidian/myVault. Fine, but when it initially uploaded, it created files with the path in the filename, joined with the slash: "MyVaoult/directory1/subdirectory1/filename1"

Thus, I am sorry, it is not usable for me.

Deleted File gets identified as missing file and downloads again

I seen the issue with not being able to sync templates to late and already created one test Template which got synced.

I then added the Template folder to the exclusion list. BTW the text field shows empty when I return to the configuration dialog, despite it being saved to the json file.

Then I deleted the template file.
It was identified as "Missing" and got downloaded again.

No matter where I delete it, once sync kicks in the file comes back.

Why isn't this in the Obsidian Plugins List

Hey! I'm wanting to use this to sync my notes, but I'm wanting to avoid manually installing it as I'd like to receive updates from Obsidian itself automatically.

I don't know a ton about Obsidian yet, but it's of my knowledge that adding this to the Plugins List would fix such. Is there any reason that hasn't been able to happen yet?

iOS broken

Unfortunately, it seems that iOS is broken. I set up the plugin on desktop on a completely blank project, then copied over the folder to iOS and opened it on Obsidian. The syncing works on Desktop just fine. I am using v0.9.9-beta-7-2.

The following errors occurred:

verbose-log-gdrive-plugin

LOG: received accessToken

LOG: getting vault id

LOG: Exited writeToErrorLogFile

LOG: Entering completeAllPendingSyncs

LOG: Entering getLatestContent

LOG: Exited getLatestContent

LOG: Exiting refreshFilesListInDriveAndStoreInSettings

LOG: Exited writeToErrorLogFile

LOG: Exited writeToErrorLogFile

LOG: Exited checkForConnectivity

LOG: Exited checkForConnectivity

LOG: Entering writeToErrorLogFile

LOG: Exited checkForConnectivity

LOG: Exited writeToErrorLogFile

LOG: Exiting refreshFilesListInDriveAndStoreInSettings

LOG: Exiting refreshFilesListInDriveAndStoreInSettings

LOG: Exited writeToErrorLogFile

LOG: Entering writeToErrorLogFile

LOG: Too many errors within a minute. Halting all operations.

error-log-gdrive-plugin

Wed Apr 24 2024 02:27:54 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:54 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:54 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:54 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:55 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:55 GMT-0500 (Central Time)-Error-ERROR: Unable to complete action: - getFilesList => Error - Request failed, status 400 - t@capacitor://localhost/app.js:1:1977943
GG@capacitor://localhost/app.js:1:1978137
@capacitor://localhost/app.js:1:1978701
@capacitor://localhost/app.js:1:237060
a@capacitor://localhost/app.js:1:235883-newError@
@

Wed Apr 24 2024 02:27:56 GMT-0500 (Central Time)-Error-FATAL ERROR: Too many errors within a minute.-@
@

Cannot read properties of undefined (reading 'modifiedTime')

Mon May 13 2024 09:36:35 GMT-0300 (Horário Padrão de Brasília)-TypeError-Cannot read properties of undefined (reading 'modifiedTime')-TypeError: Cannot read properties of undefined (reading 'modifiedTime')
at driveSyncPlugin.getLatestContent (plugin:obsidian-gdrive-sync:2990:67)

so good !!! thank you. and question on updates

god bless you man, sorry to open an issue for it but you're truly awesome :))

few questions; does it sync everything including the plugins? and how do we update it , are we notified of new updates , or do we have to manually check in github ?

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.