Snapd is a complex application that is constantly evolving (new features are being added in nearly every release made) and it is unreasonable to create something like snapd without depending on a new library or new version of a library as the need arises. Bringing each and every dependency back to 14.04, 16.04, 16.10 and 17.04 on an on-going basis is unrealistic as it would easily consume the time of a full-time engineer that we cannot allocate at this time. During the way the Debian and Ubuntu policy is structured this would also delay (possibly each new release) by weeks at a time.
Snapd has been granted exceptional SRU process in recognition of the unique role it plays in stable distributions and the unique shift in process it represents. While one could easily do everything "the old way", packaging each small golang library, going through weeks in NEW or in SRU (for every Ubuntu release around) this would severely compromise our mission to deliver a fantastic new package manager to everyone. At the same time you must realize that it would just be a specific class of busy work. There's no final difference if snapd copies a .go file into the vendor tree (which is managed automatically with go vendor), into some other directory or if we put it in Ubuntu. This all results in the exact same effect. We choose to recognize this fact and spend our resources resourcefully to maximize the effect our efforts have on the world. One more significant argument is on the QA effort. A snap (not snapd) delivered to 14.04, 16.04, 16.10 and any other (non-ubuntu distribution) is the exact same binary object. QA effort spent on one release has non- zero, valuable measure on every other release. To maintain our aggressive release schedule we at the very least wish to build the exact same source everywhere (we cannot yet use the exact same binary but that would be even better for the reason outlined above). I hope that this explanation makes sense and that we can all see the big picture. Having said that I would like to work with you to improve whatever we can as long as it doesn't severely stretch our resources. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1658181 Title: snapd bundles golang dependencies despite being in main To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1658181/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs