qooxdoo
qooxdoo copied to clipboard
Non-elidable error message for nonexistent "extends" class
As discussed on gitter:
Derrell wrote:
When working with code from outside of the qooxdooverse, it's not uncommon to create a class that extends Object (not qx.core.Object). That works fine except that of course you don't get any qooxdoo functionality in the class. There are no warning generated, as expected. I have a need to extend a third-party class (LGraphNode). Doing so works fine, except I get an error from the compiler: Failed to load meta for LGraphNode: Error: ENOENT: no such file or directory, open 'compiled/source/transpiled/LGraphNode.json'. I get this even though I have @ignore LGraphNode in the JSDoc comment. Firstly, I don't think it should be an error (it should be a warning) unless it actually breaks something. But assuming it is really a warning, how do I prevent its display when I know this is really what I want to be doing?
John replied:
its a poor error message, because it should really just go down the “symbol not found” path instead of adding a dependency on a class that does not exist; the compiler scans the disk in advance so it does know the names of the classes which it is going to discover, so it should be able to figure out that this is a symbol reference, and not a dependency but that doesnt really help you right now because it’s a bug :( does it break your code? (ie is it just an ugly message, or does it require an urgent fix?)
Derrell concluded:
Thanks for the response. It does not seem to affect the code; AFAICT, it's just an annoying error message with no harmful effect.