From Fedora Project Wiki


Golang 1.8

Summary

Rebase of Golang package to upcoming version 1.8 in Fedora 26, including rebuild of all dependent packages.

Owner

Current status

Detailed Description

Rebase of Golang package to upcoming version 1.8 in Fedora 26. Golang 1.8 is schedule to be released in Feb. Due to current nature of Go packages, rebuild of dependent package will be required to pick up the changes.

This will include implementing possibility to change default GOTRACEBACK level at buildtime(including reflection in to the packaging macros and guideline draft), improving inter-operation with ABRT.

Benefit to Fedora

Staying closely behind upstream by providing latest release of golang, which includes performance improvements among other bug fixes and new features. For complete list of changes see upstream change notes at https://tip.golang.org/doc/go1.8 . In result Fedora will be providing solid development platform for Go language.

Scope

  • Proposal owners: Rebase golang package in f26, help with resolving possible issues found during package rebuilds. Implement downstream GOTRACEBACK level setting at build time.
  • Other developers: fix possible issues
  • Release engineering: As there is scheduled mass-rebuild, nothing should be required.
  • Policies and guidelines: N/A
  • Trademark approval: N/A

Upgrade/compatibility impact

None

How To Test

0.
a)Install golang 1.8 and use it to build your application(s)/package(s).
b)Scratch build against the rawhide.
1.
Your application/package built using golang 1.8 should work as expected.

User Experience

None

Dependencies

repoquery -q  --releasever=rawhide --disablerepo='*' --qf='%{name}\n' --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires 'golang'
repoquery -q  --releasever=rawhide --disablerepo='*' --qf='%{name}\n' --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires 'compiler(go-compiler)'
repoquery -q  --releasever=rawhide --disablerepo='*' --qf='%{name}\n' --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires 'compiler(golang)'
atomic
cadvisor
consul
direnv
docker
docker-distribution
docker-latest
etcd
fleet
glide
go-bindata
godep
gofed
golang-bitbucket-kardianos-osext
golang-bitbucket-ww-goautoneg
golang-github-10gen-openssl
golang-github-3rf-mongo-lint
golang-github-AdRoll-goamz
golang-github-Azure-azure-sdk-for-go
golang-github-BurntSushi-toml
golang-github-DATA-DOG-go-sqlmock
golang-github-DataDog-datadog-go
golang-github-MakeNowJust-heredoc
golang-github-Masterminds-semver
golang-github-Masterminds-vcs
golang-github-RangelReale-osin
golang-github-RangelReale-osincli
golang-github-Shopify-sarama
golang-github-Shopify-toxiproxy
golang-github-abbot-go-http-auth
golang-github-agl-ed25519
golang-github-akrennmair-gopcap
golang-github-appc-spec
golang-github-armon-circbuf
golang-github-armon-go-metrics
golang-github-armon-go-radix
golang-github-auth0-go-jwt-middleware
golang-github-aws-aws-sdk-go
golang-github-beorn7-perks
golang-github-bgentry-speakeasy
golang-github-bmizerany-assert
golang-github-bmizerany-pat
golang-github-bmizerany-perks
golang-github-boltdb-bolt
golang-github-bradfitz-http2
golang-github-bugsnag-bugsnag-go
golang-github-bugsnag-panicwrap
golang-github-cenkalti-backoff
golang-github-cheggaaa-pb
golang-github-cockroachdb-cmux
golang-github-codegangsta-cli
golang-github-codegangsta-negroni
golang-github-collectd-go-collectd
golang-github-coreos-gexpect
golang-github-coreos-go-etcd
golang-github-coreos-go-iptables
golang-github-coreos-go-log
golang-github-coreos-go-oidc
golang-github-coreos-go-semver
golang-github-coreos-go-systemd
golang-github-coreos-pkg
golang-github-cpuguy83-go-md2man
golang-github-daviddengcn-go-colortext
golang-github-denverdino-aliyungo
golang-github-dgnorton-goback
golang-github-dgrijalva-jwt-go
golang-github-digitalocean-godo
golang-github-docker-go
golang-github-docker-go-connections
golang-github-docker-go-units
golang-github-docker-libcontainer
golang-github-docker-libkv
golang-github-docker-libtrust
golang-github-docker-spdystream
golang-github-dustin-go-humanize
golang-github-dvsekhvalnov-jose2go
golang-github-eapache-go-resiliency
golang-github-eapache-queue
golang-github-elazarl-go-bindata-assetfs
golang-github-emicklei-go-restful
golang-github-endophage-gotuf
golang-github-evanphx-json-patch
golang-github-fatih-pool
golang-github-fsouza-go-dockerclient
golang-github-garyburd-redigo
golang-github-gengo-grpc-gateway
golang-github-getsentry-raven-go
golang-github-ghodss-yaml
golang-github-glacjay-goini
golang-github-go-asn1-ber-asn1-ber
golang-github-go-fsnotify-fsnotify
golang-github-go-ini-ini
golang-github-go-ldap-ldap
golang-github-go-mgo-mgo
golang-github-go-sql-driver-mysql
golang-github-go-tomb-tomb
golang-github-godbus-dbus
golang-github-golang-appengine
golang-github-golang-glog
golang-github-golang-groupcache
golang-github-golang-sys
golang-github-golang-time
golang-github-gonum-blas
golang-github-gonum-floats
golang-github-gonum-graph
golang-github-gonum-internal
golang-github-gonum-lapack
golang-github-gonum-matrix
golang-github-google-btree
golang-github-google-go-querystring
golang-github-google-gofuzz
golang-github-goraft-raft
golang-github-gorilla-context
golang-github-gorilla-handlers
golang-github-gorilla-mux
golang-github-gorilla-securecookie
golang-github-gorilla-sessions
golang-github-gorilla-websocket
golang-github-gosexy-gettext
golang-github-grpc-ecosystem-grpc-gateway
golang-github-grpc-grpc-go
golang-github-hashicorp-consul-migrate
golang-github-hashicorp-errwrap
golang-github-hashicorp-go-checkpoint
golang-github-hashicorp-go-cleanhttp
golang-github-hashicorp-go-immutable-radix
golang-github-hashicorp-go-memdb
golang-github-hashicorp-go-msgpack
golang-github-hashicorp-go-multierror
golang-github-hashicorp-go-syslog
golang-github-hashicorp-golang-lru
golang-github-hashicorp-hcl
golang-github-hashicorp-logutils
golang-github-hashicorp-mdns
golang-github-hashicorp-memberlist
golang-github-hashicorp-net-rpc-msgpackrpc
golang-github-hashicorp-raft
golang-github-hashicorp-raft-boltdb
golang-github-hashicorp-scada-client
golang-github-hashicorp-serf
golang-github-hashicorp-yamux
golang-github-hawkular-hawkular-client-go
golang-github-howeyc-gopass
golang-github-imdario-mergo
golang-github-inconshreveable-mousetrap
golang-github-inconshreveable-muxado
golang-github-influxdb-hyperleveldb-go
golang-github-influxdb-influxdb
golang-github-influxdb-rocksdb
golang-github-jacobsa-oglematchers
golang-github-jessevdk-go-flags
golang-github-jfrazelle-go
golang-github-jinzhu-gorm
golang-github-jmespath-go-jmespath
golang-github-jmhodges-levigo
golang-github-jonboulle-clockwork
golang-github-jtolds-gls
golang-github-juju-ratelimit
golang-github-julienschmidt-httprouter
golang-github-kballard-go-shellquote
golang-github-kdar-factorlog
golang-github-kimor79-gollectd
golang-github-klauspost-crc32
golang-github-kr-fs
golang-github-kr-pretty
golang-github-kr-pty
golang-github-kr-text
golang-github-kubernetes-heapster
golang-github-lib-pq
golang-github-lpabon-godbc
golang-github-lsegal-gucumber
golang-github-magiconair-properties
golang-github-mattn-go-runewidth
golang-github-mattn-go-sqlite3
golang-github-matttproud-golang_protobuf_extensions
golang-github-mesos-mesos-go
golang-github-miekg-dns
golang-github-miekg-pkcs11
golang-github-mistifyio-go-zfs
golang-github-mitchellh-go-homedir
golang-github-mitchellh-goamz
golang-github-mitchellh-mapstructure
golang-github-mvo5-goconfigparser
golang-github-mvo5-uboot-go
golang-github-mxk-go-flowrate
golang-github-ncw-swift
golang-github-noahdesu-go-ceph
golang-github-olekukonko-tablewriter
golang-github-olekukonko-ts
golang-github-olivere-elastic
golang-github-opencontainers-runtime-spec
golang-github-opencontainers-specs
golang-github-peterh-liner
golang-github-pkg-profile
golang-github-pmezard-go-difflib
golang-github-prometheus-client_golang
golang-github-prometheus-common
golang-github-prometheus-procfs
golang-github-rakyll-pb
golang-github-russross-blackfriday
golang-github-seccomp-libseccomp-golang
golang-github-shiena-ansicolor
golang-github-shurcooL-sanitized_anchor_name
golang-github-smartystreets-assertions
golang-github-smartystreets-goconvey
golang-github-spacejam-loghisto
golang-github-spf13-cast
golang-github-spf13-cobra
golang-github-spf13-jWalterWeatherman
golang-github-spf13-viper
golang-github-stevvooe-resumable
golang-github-syndtr-gosnappy
golang-github-tchap-go-patricia
golang-github-urfave-cli
golang-github-vbatts-tar-split
golang-github-vjeantet-asn1-ber
golang-github-xiang90-probing
golang-github-yvasiyarov-go-metrics
golang-github-yvasiyarov-gorelic
golang-github-yvasiyarov-newrelic_platform_go
golang-googlecode-go-crypto
golang-googlecode-go-exp
golang-googlecode-gogoprotobuf
golang-googlecode-google-api-client
golang-googlecode-goprotobuf
golang-googlecode-net
golang-googlecode-text
golang-googlecode-tools
golang-googlecode-uuid
golang-gopkg-check
golang-gopkg-go-check-check
golang-gopkg-go-macaroon-macaroon
golang-gopkg-yaml
golang-launchpad-go-xdg-v0
golint
gomtree
heketi
hub
kompose
mongo-tools
oci-register-machine
ocitools
runc
skopeo
source-to-image
sscg
audit
flannel
golang
golang-github-BurntSushi-toml-test
golang-github-SeanDolphin-bqschema
golang-github-Sirupsen-logrus
golang-github-armon-gomdb
golang-github-davecgh-go-spew
golang-github-docopt-docopt-go
golang-github-hashicorp-raft-mdb
golang-github-influxdb-go-cache
golang-github-influxdb-gomdb
golang-github-mreiferson-go-httpclient
golang-github-onsi-ginkgo
golang-github-onsi-gomega
golang-github-openshift-go-json-rest
golang-github-openshift-go-systemd
golang-github-prometheus-client_model
golang-github-prometheus-prometheus
golang-github-racker-perigee
golang-github-rackspace-gophercloud
golang-github-rakyll-globalconf
golang-github-rakyll-statik
golang-github-rcrowley-go-metrics
golang-github-ryanuber-columnize
golang-github-samalba-dockerclient
golang-github-samuel-go-zookeeper
golang-github-skarademir-naturalsort
golang-github-skratchdot-open-golang
golang-github-skynetservices-skydns
golang-github-smartystreets-go-aws-auth
golang-github-spacemonkeygo-flagfile
golang-github-spacemonkeygo-spacelog
golang-github-spf13-pflag
golang-github-stathat-go
golang-github-stretchr-objx
golang-github-stretchr-testify
golang-github-syndtr-gocapability
golang-github-syndtr-goleveldb
golang-github-tent-http-link-go
golang-github-tonnerre-golang-pretty
golang-github-ugorji-go
golang-github-vaughan0-go-ini
golang-github-vishvananda-netlink
golang-github-vishvananda-netns
golang-github-vmware-govcloudair
golang-google-golangorg-cloud
golang-googlecode-gcfg
golang-googlecode-go-decimal-inf
golang-googlecode-goauth2
golang-googlecode-gomock
golang-googlecode-log4go
golang-googlecode-sqlite
gotags
kubernetes
origin
rkt
tmux-top

Not all of listed require re-build as they might not ship binaries.

Contingency Plan

  • Contingency mechanism:Reverting to golang version 1.7.X if significatnt issues are discovered.
  • Contingency deadline: Beta Freeze(?)
  • Blocks release? No
  • Blocks product? No

Documentation

https://tip.golang.org/doc/go1.8

Release Notes