BryanV reported that the Discourse upgrade page appeared blank after receiving a notification to upgrade, despite having recently performed a manual rebuild following the installation of a custom Onebox plugin. Initial troubleshooting suggested the issue might stem from the plugin, but even in safe mode—with themes and unofficial plugins disabled—the page remained blank. Browser console logs revealed a 500 error from an AJAX request to /admin/docker/repos. Investigating the server logs, BryanV found a NoMethodError: undefined method 'downcase' for nil:NilClass, traced to docker_manager/app/controllers/docker_manager/admin_controller.rb:40, where a plugin’s name was unexpectedly nil. Falco identified that one of BryanV’s plugins lacked a properly defined name, which caused the error. BryanV suspected his custom Onebox plugin was the culprit and, upon reviewing the code, realized plugin names in Discourse are extracted from comments in plugin.rb, not explicitly configured. After consulting an example from the docker_manager plugin, BryanV planned to update his plugin’s plugin.rb to include the required name comment and rebuild. The issue was ultimately resolved by ensuring the plugin had a valid name defined in its comment header, preventing the nil-name crash in the Docker manager controller.
I see there are several threads about this, and the concensus seems to be to manually rebuild. But the thing is I literally performed a manual rebuild two days ago, when I installed a custom Onebox plugin I just wrote:
I’d like to understand why this blank page is happening. Is there something amiss with my trivial plugin that caused this, or that I need to change? Is it unrelated to the plugin, and if so, what I can do to avoid this situation in the future?
If you untick ‘disable all plugins’, but leave the other two, it’s there. Disabling the official plugins will disable docker-manager, but you should still be able to check themes and unofficial plugins, if that’s any help?
@JammyDodger Ah, thank you. No that does not help, the upgrade page is completely blank, even in safe mode with themes and unofficial plugins disabled.
@Falco Well I guess (assume) that would be my Onebox plugin, though I am not sure why things also did not work in safe mode. In any case I cobbled this one file together from pieces, never having written any Ruby before, if you happen to know how/where I should specify the “name” that would be appreciated:
I did refer to several examples, I just would have never guessed the name was parsed out of a comment, and not configured as actual data/code. I’ll update my plugin and rebuild, thanks.