$.import() is not importing nested frameworks
hhas opened this issue · comments
The parseBridgeFile()
method in import.js
relies on depends_on
elements in .bridgesupport
files to locate nested framework bundles within 'umbrella' framework bundles such as CoreServices. However, BridgeSupport (5) manpage states that 'depends_on' element is deprecated and no longer provided. Inspection of CoreServices.framework on 10.13/10.14 confirms this.
Passing a nested framework's name directly to import does not work as only top-level frameworks are on PATH
. One workaround is to pass the full path to each nested framework to $.import()
in turn, e.g.:
$.import(path.join($.resolve('CoreServices'), 'Frameworks/AE.framework'));
$.import(path.join($.resolve('Carbon'), 'Frameworks/OpenScripting.framework'));
// etc.
A permanent solution would be for parseBridgeFile()
to recursively search each framework bundle for nested frameworks itself.