Consider add to documentation: Node version
xinbenlv last edited by xinbenlv
I am following https://docs.nodebb.org/installing/cloud/heroku/#keeping-it-up-to-date to install on Heroku. And at the step
It's said that
#... info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.7.0/libvips-8.7.0-darwin-x64.tar.gz prebuild-install WARN install No prebuilt binaries found (target=12.16.1 runtime=node arch=x64 libc= platform=darwin) TOUCH Release/obj.target/libvips-cpp.stamp CXX(target) Release/obj.target/sharp/src/common.o In file included from ../src/common.cc:27: ../src/common.h:78:20: error: no member named 'Handle' in namespace 'v8' bool HasAttr(v8::Handle<v8::Object> obj, std::string attr); #...
It seems because the node version I use is
12and according to https://github.com/lovell/sharp/issues/1683, node 12 removes namespace v8. Unless sharp is upated per https://github.com/lovell/sharp/issues/1683#issuecomment-497553995, we need to make sure the node version needs to be
I changed to use node
10, and it works.
This issue is technically resolved in NodeBB v1.13.2
I created a PR for updating the documentation
This is now fixed by https://github.com/NodeBB/docs/pull/36 and merged
Now I'm confused. It seems like from the issue you linked, we could have just fixed this by updating the version of sharp we use. Am I wrong?
@PitaJ I have not tried using a different sharp version, if you test it, please let me know. I have confirmed that using
node < 12works
Yes. Please update sharp. I upgrade node to 12, and I found uploading picture does not work. Then I searched the forum and
npm rebuilddid the trick, I dont know why though.
Sharp seems to have a bit of history for being somewhat of a thorn in the side....
It was confusing to me as well when I first tried taking NodeBB for a test drive. Great support here though for getting such glitches sorted.