mProjectsCode / mProjectsCode/obsidian-meta-bind-plugin
Update Metadata now requires js-engine
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1k
- Forks
- 86
- PR merge metrics
- No merged PRs in 30d
Description
Please fill out these Check-boxes
- I checked for existing similar issues
- I checked that the plugin is up to date
- The issue persists with all other plugins and themes disabled
Plugin Version
1.4.10
This Issue Occurs on
- Windows
- Linux
- macOS
- Android
- iOS
Debug Info
SYSTEM INFO:
Obsidian version: 1.12.7
Installer version: 1.12.7
Operating system: Windows 11 Pro 10.0.26200
Login status: logged in
Language: en-GB
Catalyst license: insider
Insider build toggle: on
Live preview: on
Base theme: dark
Community theme: none
Snippets enabled: 23
Restricted mode: off
Plugins installed: 45
Plugins enabled: 22
1: Advanced URI v1.46.1
2: Calendar v1.5.10
3: Linter v1.31.2
4: Media DB v0.8.0
5: QuickAdd v2.12.0
6: Templater v2.20.4
7: Settings Search v1.3.10
8: ReadItLater v0.11.4
9: Meta Bind v1.4.10
10: Spaced Repetition v1.14.2
11: Map View v6.1.4
12: Force note view mode v1.2.2
13: Paste Image Into Property v1.0.6
14: Tag Wrangler v0.6.4
15: Excalidraw v2.23.2
16: Mermaid Base Views v1.0.0
17: Slides Extended v2.3.4
18: Maps v0.1.6
19: Tab Multi Select v1.0.0
20: Pretty Properties v1.10.18
21: GDScript Syntax Highlighting v1.1.0
22: Simple CanvaSearch v1.0.2
RECOMMENDATIONS:
Custom theme and snippets: for cosmetic issues, please first try updating your theme and disabling your snippets. If still not fixed, please try to make the issue happen in the Sandbox Vault or disable community theme and snippets.
Community plugins: for bugs, please first try updating all your plugins to latest. If still not fixed, please try to make the issue happen in the Sandbox Vault or disable community plugins.
Describe the Issue
After updating the plugin from 1.4.6 to 1.4.10 it seems like evaluating javascript in the "Update Metadata" action now requires the js-engine plugin. I am pretty sure it worked without it before since I don't have js-engine enabled. This drawback also isn't mentioned in the wiki.
Steps to Reproduce
- Add a meta bind button like so:
label: "Finish"
style: default
actions:
- type: updateMetadata
bindTarget: finishedDate
evaluate: true
value: moment().format()
- Click on it and see the error:
plugin:obsidian-meta-bind-plugin:38 meta-bind | ButtonMDRC >> error while running action De: [MB_DEPENDENCY] "Dependency violation detected" caused by "Plugin js-engine is required, but not installed. Please install the plugin."
at wJ.throwDependencyError (plugin:obsidian-meta-bind-plugin:130:5942)
at wJ.throwPluginNotFound (plugin:obsidian-meta-bind-plugin:130:5764)
at wJ.checkDependency (plugin:obsidian-meta-bind-plugin:130:6576)
at MY (plugin:obsidian-meta-bind-plugin:131:19308)
at YZ.jsEngineExecuteCustom (plugin:obsidian-meta-bind-plugin:134:11788)
at Tn.run (plugin:obsidian-meta-bind-plugin:38:2717)
at En.runAction (plugin:obsidian-meta-bind-plugin:38:4192)
at En.runButtonActions (plugin:obsidian-meta-bind-plugin:38:3785)
at onclick (plugin:obsidian-meta-bind-plugin:130:14425)
at f (plugin:obsidian-meta-bind-plugin:130:12815)Caused by: Plugin js-engine is required, but not installed. Please install the plugin.
Expected Behavior
The Update Metadata action should work without js-engine (as it did before), or if this changed it should be noted in the wiki.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the Update Metadata action's evaluation path, especially jsEngineExecuteCustom shown in the error stack, and compare behavior between plugin versions 1.4.6 and 1.4.10. Done when JavaScript evaluation either works without js-engine as before or the linked wiki page documents the requirement and behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 50/100