question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Issue/Feature request: unclear error when `command` of custom script not found (manually configured node version)

See original GitHub issue

Describe the bug

Running a custom script with a configured command (node location) that does not exist results in an “undefined” error without much information. Looking at the output one can gleam that the node version does not exist, but not from the actual notification text.

To Reproduce

"frontMatter.custom.scripts": [
{
	"title": "Retrieve Unsplash image",
	"script": "./assets/config/frontmatter/scripts/retrieve-unsplash-header-image-info.js",
	"command": "~/.config/nvm/versions/node/v18.0.0/bin/node"
}
],

"~/.config/nvm/versions/node/v18.0.0/bin/node" does not exist.

shows:

Selection_003

The otuput console for frontmatter shows:

["INFO" - 18:11:19]  Receiving message from webview to panel: custom-script
["INFO" - 18:11:19]  Executing: ~/.config/nvm/versions/node/v18.0.0/bin/node /home/patrick/github.com/davidsneighbour/kollitsch.dev/assets/config/frontmatter/scripts/create-youtube-header-image.js "/home/patrick/github.com/davidsneighbour/kollitsch.dev" "/home/patrick/github.com/davidsneighbour/kollitsch.dev/content/blog/2022/music-to-program-to-8/index.md" '{"date":"2022-11-13T18:37:57+07:00","lastmod":"2022-11-13T18:44:15+07:00","title":"Music to program to","linkTitle":"PM8","tags":["programming-music","leenalchi","tok","100DaysToOffload"],"posttype":"music","resources":[{"src":"header.jpg","title":"Tiger is coming"}],"video":{"youtube":"LCZPF0eg9UA","artist":"leenalchi","title":"Tiger is coming"}}'
["ERROR" - 18:11:19]  Front Matter: Generate social image for Youtube: undefined
["INFO" - 18:11:19]  Front Matter: Generate social image for Youtube: Executed your custom script.

Running the script manually with the second line command results in:

bash: /home/patrick/.config/nvm/versions/node/v18.0.0/bin/node: No such file or directory

(due to some re-installing and moving around we are at v18.12.1 😉

You could reproduce it using my repo at github.com/davidsneighbour/kollitsch.dev - run npm install, npm build and then open the workspace file open one of the “music to program to” posts in content/2022/. Click the custom script to retrieve the youtube image.

Latest Frontmatter (non-beta), latest VSCode.

Long story short, one of the following applies 😃

  • feature: at some point Frontmatter should check, if the file in command and script exists and throw a readable error if not. I know computation time at program start is scarce (or when the configuration is reloaded), but that would be a good time to complain about this 😃
  • bug: the custom script is tried, but fails. Frontmatter should show something readable instead of “undefined” (not sure how this works “behind the curtains”)

Issue Analytics

  • State:closed
  • Created 10 months ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
davidsneighbourcommented, Nov 27, 2022

The path works in both ways. My issue was that the current version was NOT 18.0.0 but later, and the interface didn’t indicate it. Seems to be more verbose in beta now and is working when configured properly.

0reactions
rshmhrjcommented, Nov 27, 2022

Hi @estruyf , Tested again by editing the command value and was successful:

image

When I run which node, the value is /usr/local/bin/node:

  "frontMatter.custom.scripts": [
    {
      "id": "sample",
      "title": "Sample",
      "script": "./scripts/sample.js",
      "command": "/usr/local/bin/node"
    }
  ]

@davidsneighbour maybe try a full path to the executable instead of ~/.config/nvm/versions/node/v18.0.0/bin/node use /home/patrick/.config/nvm/versions/node/v18.0.0/bin/node

Read more comments on GitHub >

github_iconTop Results From Across the Web

Forever: command not found - node.js - Stack Overflow
forever: command not found error when I run a nodejs process using the forever command as a cronjob (in an amazon ec2 machine):...
Read more >
nvm-sh/nvm: Node Version Manager - POSIX-compliant bash ...
If you get nvm: command not found after running the install script, one of the following might be the reason: Since macOS 10.15,...
Read more >
A Complete Guide to Using TypeScript in Node.js - Better Stack
Executing TypeScript source files directly without compilation. Fixing errors caused by missing types. Setting up linting and formatting for TypeScript files.
Read more >
Installing a custom version of NVM and Node.js
This article walks you through installing Node.js using Node Version Manager (nvm) on a Shared, VPS or Dedicated Server.
Read more >
Ecosystem File - PM2
To generate a sample configuration file you can type this command: $ pm2 init simple. This will generate a sample ecosystem.config.js :.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found