Please backport golang 2:1.3.3-1ubuntu4 (universe) from vivid
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
trusty-backports |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Please backport golang 2:1.3.3-1ubuntu4 (universe) from vivid to trusty.
Alright, so that one needs some further explenation.
LXD unfortunately requires Go 1.3 or higher due to the 1.2 tls stack
lacking some features required for SSL client certificate
authentication.
We'd ideally want to update to Go 1.5 from wily for support reasons (as
vivid's 1.3 will go EOL in January) but we can't because unfortunately
Go 1.5 requires Go 1.4 to bootstrap itself.
So the best we can do for now is to backport vivid's current Go 1.3 to
trusty, use that to build LXD and then figure out a way to get us to 1.5
by January.
Achieving this will likely require using a temporary Go 1.4 package in a
devirt PPA to get us from 1.3 to 1.4 and then to 1.5, once we are at
1.5, we'd binary-copy the PPA content into backports.
Doing that part of the Go backport would I suspect require TB approval
or at least consensus from the backports team that it's sane and done in
a clean environment using only source packages that have been used in
the archive to do the same Go 1.5 bootstrap in wily.
I did confirm that 1.3 backports fine to trusty unmodified and that it
works as expected. This won't affect any existing package in the archive
since Go builds things statically and so will not affect any existing
built packages.
Only packages building inside trusty-backports would be building using
the new Go compiler and as we switched to Go 1.3 shortly after trusty,
anything which we would backport would be guaranteed to build using 1.3.
Reason for the backport:
=======
This is a requirement to be able to backport LXD to trusty.
Testing:
========
Mark off items in the checklist [X] as you test them, but please leave the checklist so that backporters can quickly evaluate the state of testing.
You can test-build the backport in your PPA with backportpackage:
$ backportpackage -u ppa:<lp username>/<ppa name> -s vivid -d trusty golang
* trusty:
[x] Package builds without modification
[x] golang-
[x] golang-
[x] golang-
[x] golang-
[x] golang-go-linux-arm installs cleanly and runs
[x] golang installs cleanly and runs
[x] golang-src installs cleanly and runs
[x] vim-syntax-go installs cleanly and runs
[x] golang-mode installs cleanly and runs
[x] kate-syntax-go installs cleanly and runs
[x] golang-doc installs cleanly and runs
[x] golang-
[x] golang-go installs cleanly and runs
[x] golang-go-linux-386 installs cleanly and runs
[x] golang-
[x] golang-
[x] golang-
[x] golang-
[x] golang-
Reverse dependencies:
=======
The following reverse-
golang-
-------
golang-
-------
golang-
-------
golang-
-------
golang-
-------
golang-go-linux-arm
-------------------
golang
------
* golang-
[x] trusty (Reverse-
* docker.io
[x] trusty (Reverse-
golang-src
----------
vim-syntax-go
-------------
* vim-gocomplete
[x] trusty (Reverse-Depends)
kate-syntax-go
--------------
golang-mode
-----------
golang-
-------
golang-go
---------
* pollen
[x] trusty (Reverse-
* golang-
[x] trusty (Reverse-
* golang-dns
[x] trusty (Reverse-
* golang-goprotobuf
[x] trusty (Reverse-
* golang-gocheck
[x] trusty (Reverse-
* golang-pretty
[x] trusty (Reverse-
* usensord
[x] trusty (Reverse-
* golang-websocket
[x] trusty (Reverse-
* libguestfs
[x] trusty (Reverse-
* golang-go.tools
[x] trusty (Reverse-Breaks)
[x] trusty (Reverse-Replaces)
[x] trusty (Reverse-
* golang-termbox
[x] trusty (Reverse-
* golang-dns-dev
[x] trusty (Reverse-Depends)
* golang-thrift
[x] trusty (Reverse-
* golang-libgeoip
[x] trusty (Reverse-
* hockeypuck
[x] trusty (Reverse-
* golang-doozer
[x] trusty (Reverse-
* golang-nzaat
[x] trusty (Reverse-
* codesearch
[x] trusty (Reverse-
* golang-go-dbus
[x] trusty (Reverse-
* gocode
[x] trusty (Reverse-
* golang-bindata
[x] trusty (Reverse-
* golang-text
[x] trusty (Reverse-
* golang-goyaml
[x] trusty (Reverse-
* golang-log4go
[x] trusty (Reverse-
* ubuntu-push
[x] trusty (Reverse-
* golang-pb
[x] trusty (Reverse-
* juju-core
[x] trusty (Reverse-
* golang-vhost
[x] trusty (Reverse-
* gccgo-go
[x] trusty (Reverse-Conflicts)
* golang-go-xdg
[x] trusty (Reverse-
* goget-ubuntu-touch
[x] trusty (Reverse-
* golang-go-flags
[x] trusty (Reverse-
* golang-metrics
[x] trusty (Reverse-
* golang-openldap
[x] trusty (Reverse-
* ngrok
[x] trusty (Reverse-
golang-go-linux-386
-------------------
golang-
-------
golang-
-------
golang-
-------
golang-
-------
golang-doc
----------
Accepted in trusty-backports, powerpc and ppc64el will need to clear binary new before they're available