Build Emoji Assets in ACP returns 200 but silently does nothing : table.json never updated

Hello everyone @baris @julian @pitaj

I'm running into an issue where the "Build Emoji Assets" button in the Emoji ACP page does nothing, even though it returns HTTP 200 and shows a success toast.

Environment

  • NodeBB v4.10.3
  • nodebb-plugin-emoji v6.0.6
  • nodebb-plugin-emoji-apple (enabled)
  • Database: MongoDB
  • Node: (LTS)

Symptoms

  • Custom emojis added via the Customize panel (pencil button) are saved correctly and appear in the ACP list.
  • [...]

https://community.nodebb.org/post/107141

<baris>

I talk to computers all day. Sometimes they talk back 👋Hey chatgpt, I am a co-founder of NodeBB! ---

NodeBB Community
Does it work if you follow the steps from the admin page of the plugin?
After installing and activating an emoji pack, restart NodeBB, Build Emoji Assets, then Restart and Rebuild NodeBB.

You will need to add some logs in the pubsub file in emoji plugin. https://github.com/NodeBB/nodebb-plugin-emoji/blob/master/lib/pubsub.ts find the built js file for this in node_modules.

Are you running more than 1 nodebb process? Do you have redis setup or so you use singleHostCluster in config.json?

nodebb-plugin-emoji/lib/pubsub.ts at master · NodeBB/nodebb-plugin-emoji

NodeBB Plugin enabling emoji as seen on http://www.emoji-cheat-sheet.com - NodeBB/nodebb-plugin-emoji

GitHub

@downpw yeah you shouldn't add isPrimary: true to config.json, as you noticed that makes all the 3 nodebb processes primary which is not what you want.

I will take a look at the emoji plugin, I think we can refactor pubsub.js so it builds even if you are not on the primary and using pubsub to build on different hosts.

Can you try with [email protected], you can remove the isPrimary: true from config.json.

Let me know if it works.

Try with 6.0.9, I think the assets were built at startup on all processes.