Error messages not being displayed - Some errors are not displayed to the user in the GUI, but appear in the Javascript Console

Hello, Obsidian World!

I just moved all my notes from Evernote to Obsidian. The process was (and still is) unnecessarily VERY painful, with about a thousand issues (in about 4 thousand notes). I had to patch the importer plugin and write a somewhat large Python script to help me deal with them, but there are still hundreds of issues to solve manually…

Now that I vented a bit, I’d like to take the opportunity to report some of the issues I found after importing the notes into Obsidian.

When I used Obsidian to move some of my vault folders from a subfolder to the root, most of them were moved without any issue, but a few were not moved, and there was no error or warning message displayed to explain why those folder were not moved.

I opened the Javascript Console and found these error messages there:

Uncaught (in promise) Error: EPERM: operation not permitted, rename ‘C:\O\Evernote\Velharias’ → ‘C:\O\Velharias’
at async Object.rename (node:internal/original-fs/promises:779:10)

When I tried to move the folder Android dev.:

Uncaught (in promise) Error: File names cannot end with a dot or a space.
at Cb (app.js:1:723595)
at t.checkPath (app.js:1:731028)
at t. (app.js:1:735749)
at app.js:1:237138
at Object.next (app.js:1:237243)
at app.js:1:236159
at new Promise ()
at v (app.js:1:235904)
at t.rename (app.js:1:735623)
at app.js:1:2370934

Steps to reproduce

Here are a couple of ways to reproduce errors that appears only in the Javascript Console:

  1. Create a folder Untitled in the Obsidian Sandbox
  2. Open the Javascript Console ([Ctrl]+[Shift]+[i])
  3. Open a Command Prompt and cd into it (cd "%APPDATA%\obsidian\Obsidian Sandbox\Untitled\")
  4. Try to delete the folder (right-click > Delete)
  5. The error should appear in the Javascript Console, but not in the GUI:

node:internal/original-fs/promises:779 Uncaught (in promise) Error: EBUSY: resource busy or locked, rename ‘C:\Users\inter\AppData\Roaming\obsidian\Obsidian Sandbox\Untitled’ → ‘C:\Users\inter\AppData\Roaming\obsidian\Obsidian Sandbox.trash\Untitled’
at async Object.rename (node:internal/origin…-fs/promises:779:10)

Another one:

  1. In the Command Prompt, create a folder called folder. (ending with a period) with md "\\?\%APPDATA%\obsidian\Obsidian Sandbox\Untitled\folder."
  2. In Obsidian, try to move folder. to root (right-click folder. > Move folder to… > / )
  3. The error appears in the Javascript Console, but not in the GUI:

app.js:1 Uncaught (in promise) Error: File names cannot end with a dot or a space.

Did you follow the troubleshooting guide? [Y/N]

Yep!

Expected result

I would expect the error messages to appear in a pop-up alert, so I would not need to look for them in the Javascript Console. For instance, if I try to rename a note with an invalid character ( * " \ / ? < > : | ? ), Obsidian informs the error with a pop-up.

Actual result

No error message is displayed in the GUI.

Environment

SYSTEM INFO:
Obsidian version: v1.6.7
Installer version: v1.6.7
Operating system: Windows 11 Home 10.0.22631
Login status: not logged in
Insider build toggle: off
Live preview: on
Base theme: adapt to system
Community theme: none
Snippets enabled: 0
Restricted mode: off
Plugins installed: 1
Plugins enabled: 1
1: Importer v1.6.5


Additional information

this is intentional. Not all console error messages appear in the pop-up.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.