Minify not honoring steal dependencies

I’m on a project that is using canjs 2.1 with steal. We’re using the gridstack.js library, which depends on lodash. To indicate this dependency, we have the following in our stealconfig:

shim : {
[other stuff]
“lib/gridstack/gridstack.min.js”: {
deps: [“lib/lodash.js”]
}
}

Which is working perfectly fine in development. However, after steal minification the dependency doesn’t seem to be honored, and we get “_ is not defined” errors where we are attempting to use gridstack. Is there something wrong with our configuration of the dependency?

More info:
It looks like lodash is getting added to the minified bundle, but gridstack is being loaded before lodash is loaded. I was able to temporarily avoid the issue by setting packaged: false, but I was hoping to have it packaged and function correctly

What version of Steal? That looks like it might be legacy Steal, in which case I can’t offer much help as I haven’t looked at that code in years…

Oh sorry, should have mentioned that. Version 3.3.0pre

Hey @Tommy_Steimel I’m not sure what the problem is exactly. Have you tried removing the .js from either config?

Btw, it would be awesome if you could upgrade to the modern Steal, it would be much easier for us to help you with these issues. If you’re not able to for whatever reason let me know, we can even do it for you possibly!

Yep. Removing the js causes an issue because with no extension, steal will assume the file location differently. For example, if I had “lib/lodash” instead of “lib/lodash.js”, it will look for “lib/lodash/lodash.js”. I even tried moving lodash.js into a lodash directory, but then I had the same problem as before: works non-minified, but fails minified