chrisgrieser / shimmering-obsidian

Alfred Workflow with dozens of features for controlling your Obsidian vault.
https://alfred.app/workflows/chrisgrieser/shimmering-obsidian/
MIT License
830 stars 41 forks source link

[Bug]: Update from 2.x to 3.x: Errors if you do not set any custom preferences #104

Closed notDavid closed 1 year ago

notDavid commented 1 year ago

Bug Description

Hi there,

fyi, i just updated from a '2.x' version to the latest version, and then for example the 'o' keyword to search notes, 'osetup', etc. etc. didn't work anymore;

Turns out, if the Alfred prefs.plist is missing because you did not set any custom preferences in the Alfred workflow, you get all kinds of errors.

Solution: set at least 1 Alfred Workflow setting, so prefs.plist will be created.

Hope that helps :-)

Relevant Screenshot

No response

To Reproduce

See description and debug log...

Debugging Log

debug.log ``` [11:49:22.450] Shimmering Obsidian[Script Filter] Queuing argument '(null)' [11:49:22.593] Shimmering Obsidian[Script Filter] Queuing argument '(null)' [11:49:23.325] Shimmering Obsidian[Script Filter] Queuing argument '(null)' [11:49:23.450] Shimmering Obsidian[Script Filter] Script with argv '(null)' finished [11:49:23.455] Shimmering Obsidian[Script Filter] {"items":[{"title":"Obsidian.David","subtitle":"Control this vault with Alfred","arg":"/Users/david/Documents/Obsidian/Obsidian.David"},{"title":"Obsidian.xxxxxxxxxxxxxxxxx","subtitle":"Control this vault with Alfred","arg":"/Users/david/Documents/Obsidian/Obsidian.xxxxxxxxxxxxx"},{"title":"Obsidian.xxxxxxxx","subtitle":"Control this vault with Alfred","arg":"/Users/david/Documents/Obsidian/Obsidian.xxxxxxxxxxxxxxx"}]} [11:49:25.141] Shimmering Obsidian[Script Filter] Processing complete [11:49:25.144] Shimmering Obsidian[Script Filter] Passing output '/Users/david/Documents/Obsidian/Obsidian.David' to Run Script [11:49:25.325] Shimmering Obsidian[Run Script] Processing complete [11:49:25.331] Shimmering Obsidian[Run Script] Passing output ' ' to Conditional [11:49:25.332] Shimmering Obsidian[Conditional] Processing complete [11:49:25.332] Shimmering Obsidian[Conditional] Passing output ' ' to Post Notification [11:49:25.333] Shimmering Obsidian[Post Notification] Processing complete [11:49:25.333] Shimmering Obsidian[Post Notification] Passing output ' ' to Write Text File [11:49:25.333] ERROR: Shimmering Obsidian[Write Text File] Unable to write file '/.obsidian/plugins/metadata-extractor/data.json' as unable to create folder [11:49:25.334] Shimmering Obsidian[Write Text File] Processing complete [11:49:25.334] Shimmering Obsidian[Write Text File] Passing output '' to Run Script [11:49:33.151] Shimmering Obsidian[Run Script] Processing complete [11:49:33.162] Shimmering Obsidian[Run Script] Passing output '' to Run Script [11:49:33.553] Shimmering Obsidian[Run Script] Processing complete [11:49:33.559] Shimmering Obsidian[Run Script] Passing output '⚠️ Metadata wasn't written properly.;;Run `oupdate` ➞ `Manually Refresh Metadata` to complete setup. ' to Split Arg [11:49:33.560] Shimmering Obsidian[Split Arg] Processing complete [11:49:33.560] Shimmering Obsidian[Split Arg] Passing output '⚠️ Metadata wasn't written properly.;;Run `oupdate` ➞ `Manually Refresh Metadata` to complete setup. ' to Post Notification [11:49:33.561] Shimmering Obsidian[Post Notification] Processing complete [11:49:33.561] Shimmering Obsidian[Post Notification] Passing output '⚠️ Metadata wasn't written properly.;;Run `oupdate` ➞ `Manually Refresh Metadata` to complete setup. ' to Play Sound [11:56:02.136] Shimmering Obsidian[Script Filter] Queuing argument '(null)' [11:56:02.301] Shimmering Obsidian[Script Filter] Script with argv '(null)' finished [11:56:02.303] ERROR: Shimmering Obsidian[Script Filter] Code 1: /Users/david/Alfred.alfredpreferences/workflows/user.workflow.181501DB-11D5-4AC9-AC6E-9A12056BAE46/scripts/o_search.js: execution error: Error: SyntaxError: JSON Parse error: Unexpected EOF (-2700) [11:56:06.006] Shimmering Obsidian[List Filter] Processing complete [11:56:06.012] Shimmering Obsidian[List Filter] Passing output 'manual_metadata' to Conditional [11:56:06.013] Shimmering Obsidian[Conditional] Processing complete [11:56:06.014] Shimmering Obsidian[Conditional] Passing output 'manual_metadata' to Run Script [11:56:08.781] Shimmering Obsidian[Run Script] Processing complete [11:56:08.786] Shimmering Obsidian[Run Script] Passing output '' to Post Notification [11:56:08.810] Shimmering Obsidian[Post Notification] Processing complete [11:56:08.811] Shimmering Obsidian[Post Notification] Passing output '' to Play Sound [11:56:08.835] Shimmering Obsidian[Play Sound] Processing complete [11:56:08.839] Shimmering Obsidian[Play Sound] Passing output '' to Call External Trigger [11:56:08.839] Shimmering Obsidian[External] Processing complete [11:56:08.840] Shimmering Obsidian[External] Passing output '' to Conditional [11:56:08.841] Shimmering Obsidian[Conditional] Processing complete [11:56:08.841] Shimmering Obsidian[Conditional] Passing output '' to Conditional [11:56:08.842] Shimmering Obsidian[Conditional] Processing complete [11:56:08.843] Shimmering Obsidian[Conditional] Passing output '' to Run Script ```

Workflow Configuration 1

It did not exist...

Workflow Configuration 2

Not relevant...

Version & System Information

version info ``` ------------------------------- Metadata JSONs: 3/3 Metadata String Length: 32075 ------------------------------- WORKSPACE DATA 'workspace' exists 'workspace.json' exists ------------------------------- INSTALLED VERSION macOS: 13.0.1 Alfred: 5.0.5 --- Obsidian: 1.0.3 This Workflow: 3.2.3 Advanced URI Plugin: 1.31.1 Metadata Extractor: 1.0.2 ------------------------------- LATEST VERSION Obsidian: 1.0.3 (Insider: 1.0.3) This Workflow: 3.2.3 Advanced URI Plugin: 1.31.1 Metadata Extractor: 1.0.2 ------------------------------- INTERNAL WORKFLOW CONFIGURATION Vault Path: /Users/david/Documents/Obsidian/Obsidian.David Vault Name (encoded): Obsidian.David ------------------------------- ```

Make sure you have done the following

chrisgrieser commented 1 year ago

That is indeed weird. I can only guess that this is some sort issue with how Alfred migrates to Alfred 5. (Therefore most likely unrelated to this workflow, so I am closing this, but thx for the report.)

notDavid commented 1 year ago

@chrisgrieser fyi, I completely deleted and reinstalled the Workflow: same issue happens as described above.

chrisgrieser commented 1 year ago

hmm, will have to look into it at some point then

chrisgrieser commented 1 year ago

Could you try a "dummy" prefs.plist with the following save it the workflow folder after installation?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

and have a look whether this will make it work?

chrisgrieser commented 1 year ago

tested and does not occur anymore with recent versions. :)