Hi, it takes some time to understand what's happening here, and since fixing it properly will require quite some work on multiple packages, i add my notes to this bug report.
Nota Bene: i use "webpack" here but the sake of the example. # Situation Because uglify version 2 compiles software that uglify version 3 does not compile correctly, and vice-versa, there are two versions in debian: * uglifyjs-2.8.29 builds node-uglify which provides uglifyjs * uglify-js-3.4.9 builds uglifyjs # Solutions (in my order of preference, to be adapted) 1. Packages not building with uglifyjs 2 should be fixed to build with uglifyjs 3. Not a trivial thing to do and it's deep freeze now. 2. Distribute /usr/bin/uglifyjsN and fix all packages calling /usr/bin/uglifyjs to call uglifyjsN, when they can't be fixed to use latest version of /usr/bin/uglifyjs. # Slight improvement that might be done for buster IF apt behaves like i think it will, to allow both /usr/bin/uglifyjs and node-uglify package to be installed: * uglify-js-3.4.9 builds node-uglify-js which provides uglifyjs and conflicts uglifyjs (<< 3.5.0-2), and remove uglifyjs binary package (to get it to be pure virtual package). However, if dependencies both try to install node-uglify and node-uglify-js it will still fail, but it's not as bad as a direct conflict with /usr/bin/uglifyjs. It could be misleading, though, to have an unexpected version, so maybe the best thing is to do nothing for Buster. Jérémy