52 ms·
They should also look at deleting third_party directories and replacing them with package manager dependencies. For example Qt WebEngine embeds Chromium, which
by pabs3 4y ago
They should also look at deleting third_party directories and replacing them with package manager dependencies. For example Qt WebEngine embeds Chromium, which embeds Blink, which embeds wpt, which embeds a bunch of Python libraries and one of those Python libraries (six) is embedded in three other locations within Chromium.
https://sources.debian.org/src/qtwebengine-opensource-src/5.15.2+dfsg-3/src/3rdparty/chromium/third_party/blink/tools/blinkpy/third_party/wpt/wpt/tools/third_party/ https://sources.debian.org/src/qtwebengine-opensource-src/5....
https://codesearch.debian.net/search?q=package%3Aqtwebengine-opensource-src+Useful+for+very+coarse+version+differentiation https://codesearch.debian.net/search?q=package%3Aqtwebengine....
I wonder how many copies of the Python six module the Google monorepo contains.
- raverbashing 4y agoAnd while six is 'kinda' well behaved, trying to unify dependencies of dependencies is an exercise in frustration usually. Code repetition is cheap
- pabs3 4y agoCode repetition is only cheap if you abandon and forget about the repeated code. Any time you need to have to care about the code to fix bugs, security issues or improve performance, it is expensive do each of those things once, repeating them multiple times can mean an order of magnitude difference in the worse case.
- habosa 4y agoI’d assume one. The “one version policy” is one of the strictest codebase rules at Google. But the Chrome codebase is generally the giant exception to everything due to the major open source components (Android too).
- secondcoming 4y agoThis is a good plan but I've often found that with for example, Debian, the official packages are well behind the times compared to the direct third party code. Ubuntu is not too bad.
- pabs3 4y agoAs a mostly volunteer based distro, Debian definitely can't keep up with everything, but Ubuntu inherits the majority of their package versions directly from Debian unstable. For more core things like GNOME they can be more up to date, but they also employ people to do that work directly in Debian instead of in Ubuntu. They are also heavily moving towards dropping apt and adopting snap packages, which means faster updates because each snap package is a self-contained filesystem unconnected to the rest of the distro.