I've been investigating the vendorized dependencies in runc and below you can find my notes so far:
# RunC - vendorized dependencies ## Summary: - Total of 17 vendorized deps + None of them has a correspondent package in main - 1 vendorized deps without correspondent package in the archive - 5 vendorized deps match version with packages in universe - 3 vendorized deps with version greater than the correspondent package in universe + Those packages might need update - 8 vendorized deps with version lower than the correspondent package in universe ## Build information about Go executables The runc package (1.0.0~rc8+git20190923.3e425f80) was rebuilt (go build -tags "seccomp") with Go 1.13 and the command bellow was executed to get information about embedded modules of each executable: ~/go/src/github.com/opencontainers/runc$ go version -m ./runc ./runc: go1.13.4 path github.com/opencontainers/runc mod github.com/opencontainers/runc (devel) dep github.com/checkpoint-restore/go-criu v0.0.0-20181120144056-17b0214f6c48 h1:AQMF0Xixllgf29MKlx/TGEhRk7bEDX5kxz8Ui8lOvEs= dep github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50 h1:WMpHmC6AxwWb9hMqhudkqG7A/p14KiMnl6d3r1iUMjU= dep github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e h1:Wf6HqHfScWJN9/ZjdUKyjop4mf3Qdd+1TvvltAvM3m8= dep github.com/cyphar/filepath-securejoin v0.2.2 h1:jCwT2GTP+PY5nBz3c/YL5PAIbusElVrPujOBSCj8xRg= dep github.com/docker/go-units v0.3.3 h1:Xk8S3Xj5sLGlG5g67hJmYMmUgXv5N4PhkjJHHqrwnTk= dep github.com/godbus/dbus v0.0.0-20181101234600-2ff6f7ffd60f h1:zlOR3rOlPAVvtfuxGKoghCmop5B0TRyu/ZieziZuGiM= dep github.com/golang/protobuf v1.0.0 h1:lsek0oXi8iFE9L+EXARyHIjU5rlWIhhTkjDz3vHhWWQ= dep github.com/mrunalp/fileutils v0.0.0-20171103030105-7d4729fb3618 h1:7InQ7/zrOh6SlFjaXFubv0xX0HsuC9qJsdqm7bNQpYM= dep github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559 h1:Cef96rKLuXxeGzERI/0ve9yAzIeTpx0qz9JKFDZALYw= dep github.com/opencontainers/selinux v1.2.2 h1:Kx9J6eDG5/24A6DtUquGSpJQ+m2MUTahn4FtGEe8bFg= dep github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= dep github.com/seccomp/libseccomp-golang v0.9.1 h1:NJjM5DNFOs0s3kYE1WUOr6G8V97sdt46rlXTMfXGWBo= dep github.com/sirupsen/logrus v1.4.1 h1:GL2rEmy6nsikmW0r8opw9JIRScdMF5hA8cOYLH7In1k= dep github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2 h1:b6uOv7YOFK0TYG7HtkIgExQo+2RdLuwRft63jn2HWj8= dep github.com/urfave/cli v1.20.0 h1:fDqGv3UG/4jbVl/QkFwEdddtEDjh/5Ov6X+0B/3bPaw= dep github.com/vishvananda/netlink v0.0.0-20150820014904-1e2e08e8a2dc h1:0HAHLwEY4k1VqaO1SzBi4XxT0KA06Cv+QW2LXknBk9g= dep golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e h1:TsjK5I7fXk8f2FQrgu6NS7i5Qih3knl2FL1htyguLRE= ~/go/src/github.com/opencontainers/runc/contrib/cmd/recvtty$ go version -m ./recvtty ./recvtty: go1.13.4 path github.com/opencontainers/runc/contrib/cmd/recvtty mod github.com/opencontainers/runc (devel) dep github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50 h1:WMpHmC6AxwWb9hMqhudkqG7A/p14KiMnl6d3r1iUMjU= dep github.com/urfave/cli v1.20.0 h1:fDqGv3UG/4jbVl/QkFwEdddtEDjh/5Ov6X+0B/3bPaw= dep golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e h1:TsjK5I7fXk8f2FQrgu6NS7i5Qih3knl2FL1htyguLRE= ~/go/src/github.com/opencontainers/runc$ go mod graph github.com/opencontainers/runc github.com/checkpoint-restore/go-criu@v0.0.0-20181120144056-17b0214f6c48 github.com/opencontainers/runc github.com/containerd/console@v0.0.0-20181022165439-0650fd9eeb50 github.com/opencontainers/runc github.com/coreos/go-systemd@v0.0.0-20190321100706-95778dfbb74e github.com/opencontainers/runc github.com/cyphar/filepath-securejoin@v0.2.2 github.com/opencontainers/runc github.com/docker/go-units@v0.3.3 github.com/opencontainers/runc github.com/godbus/dbus@v0.0.0-20181101234600-2ff6f7ffd60f github.com/opencontainers/runc github.com/golang/protobuf@v1.0.0 github.com/opencontainers/runc github.com/mrunalp/fileutils@v0.0.0-20171103030105-7d4729fb3618 github.com/opencontainers/runc github.com/opencontainers/runtime-spec@v1.0.2-0.20190207185410-29686dbc5559 github.com/opencontainers/runc github.com/opencontainers/selinux@v1.2.2 github.com/opencontainers/runc github.com/pkg/errors@v0.8.1 github.com/opencontainers/runc github.com/seccomp/libseccomp-golang@v0.9.1 github.com/opencontainers/runc github.com/sirupsen/logrus@v1.4.1 github.com/opencontainers/runc github.com/syndtr/gocapability@v0.0.0-20180916011248-d98352740cb2 github.com/opencontainers/runc github.com/urfave/cli@v1.20.0 github.com/opencontainers/runc github.com/vishvananda/netlink@v0.0.0-20150820014904-1e2e08e8a2dc github.com/opencontainers/runc golang.org/x/sys@v0.0.0-20190812073006-9eafafc0a87e github.com/sirupsen/logrus@v1.4.1 github.com/davecgh/go-spew@v1.1.1 github.com/sirupsen/logrus@v1.4.1 github.com/konsorten/go-windows-terminal-sequences@v1.0.1 github.com/sirupsen/logrus@v1.4.1 github.com/pmezard/go-difflib@v1.0.0 github.com/sirupsen/logrus@v1.4.1 github.com/stretchr/objx@v0.1.1 github.com/sirupsen/logrus@v1.4.1 github.com/stretchr/testify@v1.2.2 github.com/sirupsen/logrus@v1.4.1 golang.org/x/sys@v0.0.0-20180905080454-ebe1bf3edb33 ## Details per dependency Each of these dependencies were obtained from upstream vendor.conf file in runc source package version 1.0.0~rc8+git20190923.3e425f80-0ubuntu1: * github.com/opencontainers/runtime-spec 29686dbc5559d93fb1ef402eeda3e35c38d75af4 # v1.0.1-59-g29686db -> package version in the archive is newer -> diff: https://github.com/opencontainers/runtime-spec/compare/29686d..a1b50f6 golang-github-opencontainers-specs | 1.0.1+git20190408.a1b50f6-1 | focal/universe | source * github.com/checkpoint-restore/go-criu 17b0214f6c48980c45dc47ecb0cfd6d9e02df723 # v3.11 -> missing package -> it is available in Debian experimental * github.com/mrunalp/fileutils 7d4729fb36185a7c1719923406c9d40e54fb93c7 -> package needs update -> diff: https://github.com/mrunalp/fileutils/compare/4ee1cc9...7d4729f golang-github-mrunalp-fileutils-dev | 0.0~git20160930.0.4ee1cc9-1 | focal/universe | all * github.com/opencontainers/selinux 3a1f366feb7aecbf7a0e71ac4cea88b31597de9e # v1.2.2 -> package version in the archive is newer -> diff: https://github.com/opencontainers/selinux/compare/v1.2.2...v1.3.0 golang-github-opencontainers-selinux-dev | 1.3.0-2 | focal/universe | all * github.com/seccomp/libseccomp-golang 689e3c1541a84461afc49c1c87352a6cedf72e9c # v0.9.1 -> versions match golang-github-seccomp-libseccomp-golang-dev | 0.9.1-1 | focal/universe | all * github.com/sirupsen/logrus 8bdbc7bcc01dcbb8ec23dc8a28e332258d25251f # v1.4.1 -> package version in the archive is newer (proposed) -> diff: https://github.com/sirupsen/logrus/compare/v1.4.1...v1.4.2 golang-github-sirupsen-logrus-dev | 1.3.0-1 | focal/universe | all golang-github-sirupsen-logrus-dev | 1.4.2-1 | focal-proposed/universe | all * github.com/syndtr/gocapability d98352740cb2c55f81556b63d4a1ec64c5a319c2 -> versions match golang-gocapability-dev | 0.0+git20180916.d983527-1 | focal/universe | source, all * github.com/vishvananda/netlink 1e2e08e8a2dcdacaae3f14ac44c5cfa31361f270 # v1.0.0 -> package version in the archive is newer -> diff: https://github.com/vishvananda/netlink/compare/1e2e08e...023a6da golang-github-vishvananda-netlink-dev | 1.0.0+git20181030.023a6da-1 | focal/universe | all * github.com/coreos/go-systemd 95778dfbb74eb7e4dbaf43bf7d71809650ef8076 # v19 -> package version in the archive is newer (proposed) -> diff: https://github.com/coreos/go-systemd/compare/v19...v22.0.0 golang-github-coreos-go-systemd-dev | 22.0.0-1 | focal/universe | all * github.com/godbus/dbus 2ff6f7ffd60f0f2410b3105864bdd12c7894f844 # v5.0.1 -> package version in the archive is newer (proposed) -> diff: https://github.com/godbus/dbus/compare/v5.0.1...v5.0.3 golang-dbus-dev | 5.0.3-1 | focal/universe | all * github.com/golang/protobuf 925541529c1fa6821df4e44ce2723319eb2be768 # v1.0.0 -> package version in the archive is newer -> diff: https://github.com/golang/protobuf/compare/v1.0.0...v1.3.2 golang-goprotobuf-dev | 1.3.2-2 | focal/universe | amd64, arm64, armhf, i386, ppc64el, s390x * github.com/cyphar/filepath-securejoin a261ee33d7a517f054effbf451841abaafe3e0fd # v0.2.2 -> versions match golang-github-cyphar-filepath-securejoin-dev | 0.2.2-1 | focal/universe | all * github.com/docker/go-units 47565b4f722fb6ceae66b95f853feed578a4a51c # v0.3.3 -> package version in the archive is newer -> diff: https://github.com/docker/go-units/compare/v0.3.3...v0.4.0 golang-github-docker-go-units-dev | 0.4.0-1 | focal/universe | all * github.com/urfave/cli cfb38830724cc34fedffe9a2a29fb54fa9169cd1 # v1.20.0 -> versions match golang-github-urfave-cli-dev | 1.20.0-1 | focal/universe | all * golang.org/x/sys 9eafafc0a87e0fd0aeeba439a4573537970c44c7 https://github.com/golang/sys -> package needs update -> diff: https://github.com/golang/sys/compare/fc99dfb...9eafafc golang-golang-x-sys-dev | 0.0~git20190726.fc99dfb-1ubuntu2 | focal/universe | all * github.com/containerd/console 0650fd9eeb50bab4fc99dceb9f2e14cf58f36e7f -> package needs update -> diff: https://github.com/containerd/console/compare/84eeaae...0650fd9 golang-github-containerd-console-dev | 0.0~git20170925.84eeaae-1 | focal/universe | all * github.com/pkg/errors ba968bfe8b2f7e042a574c888954fccecfa385b4 # v0.8.1 -> versions match golang-github-pkg-errors-dev | 0.8.1-1 | focal/universe | all ## De-vendorized package version The only vendorized dep in this package is go-criu: https://launchpad.net/~lucaskanashiro/+archive/ubuntu/focal-runc- devendorized The DEP-8 tests are also successfully passing with this package version: autopkgtest [00:22:34]: @@@@@@@@@@@@@@@@@@@@ summary basic-smoke PASS dh-golang-autopkgtest PASS You can also find a branch containing this de-vendorized version here: https://code.launchpad.net/~lucaskanashiro/ubuntu/+source/runc/+git/runc/+ref /devendorize-deps ## go-criu - Missing package * It is a Go binding for CRIU (Checkpoint/Restore In Userspace) - https://github.com/checkpoint-restore/go-criu - https://github.com/checkpoint-restore/criu - https://criu.org/Main_Page * CRIU is available only in Debian experimental - https://tracker.debian.org/pkg/criu - Maintainer argues that the project moves fast and it is not ready for a stable release, and also needs more work on the packaging + https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796536 + Pinged the maintainer and he said that nowadays releases are more stable and he needs to think again if it is suitable for a stable release. Also offered some help if he needs it. * The go-criu binding is called in libcontainer/container_linux.go quite some times ** Bug watch added: Debian Bug tracker #796536 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796536 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1817336 Title: [MIR] runc To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/runc/+bug/1817336/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs