Open derrell opened 3 years ago
do you mean that the list of libraries in compile.json is ignored? Please can you provide a working example?
The list isn't ignored completely. Any libraries listed there which are not installed packages are honored. But installing a package and then attempting to override it with an entry in libraries is ignored.
I think this problem may not be as severe as I'd thought. It does seem that compile.json is honored. The problem is that a misleading error message displays:
issue784: Cannot find required library 'qooxdoo/incubator.qx.io.jsonrpc'
(where issue784
is the application name)
The error should probably say,
issue784: Library (package) 'qooxdoo/incubator.qx.io.jsonrpc' will not be used; overridden by compile.json library entry '../incubator.qx.io.jsonrpc.git'
or some such thing. Masking is exactly what should occur.
Working with @cboulanger using incubator projects, I had installed a package (qx package install) and then wanted to make some local changes. I forked and checked out the code, and added that code as a library in my compile.json file. It wasn't used, however. It seems very confusing that installed packages, which don't appear in compile.json, take precedence over user-specified packages in compile.json. At present, it is required to uninstall a package before the locally-installed version is used.
In short, compile.json, which the user deals with all the time, should be the final say and have override/veto power.