# # spec file for package go # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2020 Neal Gompa . # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # nodebuginfo # By default we don't include tsan. It's only supported on amd64. %define tsan_arch x86_64 %define short_version 1.22 Name: go Version: 1.22 Release: 0%{?dist} BuildRoot: %{_tmppath}/%{name}-%{version}-build Summary: A compiled, garbage-collected, concurrent programming language License: BSD-3-Clause Group: Development/Languages/Other Url: http://golang.org Source: README Recommends: go-doc = %{version} ExclusiveArch: %ix86 x86_64 %arm aarch64 ppc64 ppc64le s390x # We provide golang(API) so that projects can Prefer: go. Any project using Go # code with golang(API) BuildRequires should add Prefer: go. Provides: golang(API) = %{short_version} Requires: go%{short_version} # Fedora compatibility Provides: golang = %{short_version} %description Go is an expressive, concurrent, garbage collected systems programming language that is type safe and memory safe. It has pointers but no pointer arithmetic. Go has fast builds, clean syntax, garbage collection, methods for any type, and run-time reflection. It feels like a dynamic language but has the speed and safety of a static language. %package doc Summary: Go documentation License: BSD-3-Clause Group: Documentation/Other Requires: go = %{version} Requires: go%{short_version}-doc Provides: go-doc = %{version} # Fedora compatibility Provides: golang-doc = %{short_version} %description doc Go examples and documentation. %ifarch %{tsan_arch} # boo#1052528 %package race Summary: Go runtime race detector License: NCSA or MIT Group: Development/Languages/Other Url: https://compiler-rt.llvm.org/ Requires: go = %{version} Supplements: go = %{version} ExclusiveArch: %{tsan_arch} Requires: go%{short_version}-race # Fedora compatibility Provides: golang-race = %{short_version} %description race Go runtime race detector libraries. Install this package if you wish to use the -race option, in order to detect race conditions present in your Go programs. %endif %prep %build %install install -D -m 0644 %{S:0} %{buildroot}/usr/share/doc/packages/go/README install -D -m 0644 %{S:0} %{buildroot}/usr/share/doc/packages/go-doc/README %ifarch %{tsan_arch} install -D -m 0644 %{S:0} %{buildroot}/usr/share/doc/packages/go-race/README %endif %files %defattr(-,root,root,-) %doc /usr/share/doc/packages/go/ %files doc %defattr(-,root,root,-) %doc /usr/share/doc/packages/go-doc/ %ifarch %{tsan_arch} %files race %doc /usr/share/doc/packages/go-race/ %defattr(-,root,root,-) %endif %changelog * Thu May 30 2024 Carl George - Bump to version 1.22, see go1.22 package changelog for details * Thu Oct 12 2023 Neal Gompa - Bump to version 1.20, see go1.20 package changelog for details * Fri May 06 2022 Carl George - Bump to version 1.18, see go1.18 package changelog for details * Tue Oct 26 2021 Car George - Bump to version 1.16, see go1.16 package changelog for details * Tue May 11 2021 Neal Gompa - Bump to version 1.15, see go1.15 package changelog for details * Tue May 26 2020 Neal Gompa - Bump to version 1.14, see go1.14 package changelog for details * Mon Mar 11 2019 Marcus Rueckert - bump the package only to 1.12 for distros where this actually builds * Mon Mar 11 2019 Jeff Kowalczyk - go1.12 (released 2019/02/25) includes changes in the implementation of the toolchain, runtime, and libraries. As always, the release maintains the Go 1 promise of compatibility. Upstream expects almost all Go programs to continue to compile and run as before. * GO111MODULE=on enables module-aware operations outside of a module directory * GODEBUG=tls13=1 enables opt-in support for TLS 1.3 in the crypto/tls package per RFC 8446. Will be default in go1.13. * trace tool now supports plotting mutator utilization curves, including cross-references to the execution trace. These are useful for analyzing the impact of the garbage collector on application latency and throughput. * arm64 assembler platform register renamed from R18 to R18_PLATFORM * improvements to gc * race detector is now supported on linux/arm64 * cgo is now supported on linux/ppc64 * go1.12 is the last release that will support binary-only packages. * Thu Jan 24 2019 Jeff Kowalczyk - go1.11.5 (released 2019/01/23) security release fixes CVE-2019-6486 (bsc#1123013). * go#29903 crypto/elliptic: CPU DoS vulnerability affecting P-521 and P-384 * Sat Dec 15 2018 Jeff Kowalczyk - go1.11.4 (released 2018/12/14) includes fixes to cgo, the compiler, linker, runtime, documentation, go command, and the net/http and go/types packages. It includes a fix to a bug introduced in Go 1.11.3 that broke go get for import path patterns containing "...". See the Go 1.11.4 milestone on our issue tracker for details. https://github.com/golang/go/issues?q=milestone%%3AGo1.11.4+label%%3ACherryPickApproved * go#29272 misc/cgo/test: issue24161 tests broken on Darwin * go#29248 cmd/go: "go get" fails on import path patterns with wildcards ("...") * go#29191 cmd/go: symbolic links not dropped from repo * go#29112 cmd/link: too many open files on high object-count dependencies * go#28974 cmd/go: need to backport relaxing of go.mod go verb constraints to 1.11 series * go#28972 go/types: problem with alias type * go#28916 cmd/cgo: nested structure has too much alignment padding * go#28799 runtime: fatal error: out of memory on reslice with negative index * go#28752 reflect: scanning invalid return slots during a makeFunc call * go#28725 cmd/go: panic when argument doesn't match any packages * go#28694 cmd/compile: inline multiplication corrupts an argument on arm * go#28690 runtime: ThreadSanitizer CHECK failed * go#28673 x/net/http2: Transport is leaking streams on broken Body * go#28617 cmd/compile: panic during fuse with if true block containing a goto and a return * go#28586 cmd/compile: go binaries not working on exynos 64 bit CPUs * go#27395 cmd/cgo: typedef pointer arguments regression * go#27383 cmd/compile: failure on a function type alias * Thu Dec 13 2018 Jeff Kowalczyk - Update to Go 1.11.3 (released 2018/12/13). This includes fixes to the crypto/x509 and cmd/go packages. See the Go 1.11.3 milestone on upstream tracker for details: https://github.com/golang/go/issues?q=milestone%%3AGo1.11.3 * bsc#1118897 CVE-2018-16873 go#29230 cmd/go: remote command execution during "go get -u" * bsc#1118898 CVE-2018-16874 go#29231 cmd/go: directory traversal in "go get" via curly braces in import paths * bsc#1118899 CVE-2018-16875 go#29233 crypto/x509: CPU denial of service * Upstream is aware of a functionality regression in "go get" when executed in GOPATH mode on an import path pattern containing "..." (e.g., "go get github.com/golang/pkg/..."), when downloading packages not already present in the GOPATH workspace. This is go#29241 and will be resolved in the next minor patch release go-1.11.4 * Tue Nov 13 2018 Aleksa Sarai - Revert golang(API) removal since it turns out this breaks >= requires in certain cases. Instead we recommend that folks set Prefer: go in all of their projects. boo#1114209 * Wed Oct 31 2018 Aleksa Sarai - Remove golang(API) provides, since the go packages now provide this and providing it here causes issues when building under SLE12 (not to mention being confusing -- since golang(API) is used to pin versions). boo#1114209 * Sat Oct 6 2018 Jeff Kowalczyk - Update to version 1.11.1: * includes fixes to the compiler, documentation, go command, runtime, and the crypto/x509, encoding/json, go/types, net, net/http and reflect packages. - cmd/compile: * bad walkinrange rewrites on constant above 2**63 * function compiled without bounds checking and -1 index access * missing bounds checks in 1.11 * panic in cmd/compile/internal/gc.typecheck1 * race detector detects race with close(chan) and len(chan) - cmd/go: * 'go test -gcflags=all=-l' appears not to disable inlining * GOMIPS environment variable does not affect caching of mipsle code * TestScript/mod_install_versioned consistently failing on macOS High Sierra * build fails when setting linker to lld using ldflags * go list -json -compiled -test -e upspin.io/test fails with non-zero exit status - doc: * GOFLAGS environment variable not in 1.11 release notes * downloads page claims that Go 1.11 supports unsupported operating systems Documentation - encoding/json: * empty fields in json.UnmarshalTypeError - go/types: * assertion failure setting up composite literal with incomplete element type * some facts are missing after an error - net/http: * WASM Roundtripper crash when using "no-cors" mode - net: * LookupTXT bug * empty DNS answers should fail fast * testSpliceReaderAtEOF closed connection: got err = splice: invalid argument - reflect: * MethodByName().Interface() leads to fatal error: sweep increased allocation count - runtime: * invalid pointer found on stack * timeouts in os/signal tests * Fri Sep 28 2018 Jeff Kowalczyk - Fix stray 1.10 version reference preventing 1.11 only package solutions * Wed Sep 26 2018 Jeff Kowalczyk - Update to version 1.11: * Most of its changes are in the implementation of the toolchain, runtime, and libraries. As always, the release maintains the Go 1 promise of compatibility. We expect almost all Go programs to continue to compile and run as before. * For more details check: https://golang.org/doc/go1.11 - Use gcc8 instead of gcc7 for Factory/Tumbleweed. - Update compiler-rt TSAN binary: the precompiled versions of LLVM's compiler-rt has updated to commit fe2c72c59aa7f4afa45e3f65a5d16a374b6cce26 in go1.11 source. - Remove patch: * fix-sanitizer-build-against-latest-glibc.patch: upstream fixed. - Add patch: * gcc8-go.patch: use gcc8 instead of gcc7 for Factory/Tumbleweed. * Mon Aug 27 2018 duyizhaozj321@yahoo.com - Update to version 1.10.4: * go1.10.4 (released 2018/08/24) includes fixes to the go command, linker, and the net/http, mime/multipart, ld/macho, bytes, and strings packages. See the Go 1.10.4 milestone on our issue tracker for details. * Wed Jun 20 2018 jmassaguerpla@suse.com - Update to 1.9.7 fix bsc#1081495 (CVE-2018-7187) * Sun Jun 10 2018 duyizhaozj321@yahoo.com - Update to version1.10.3: * go1.10.3 (released 2018/06/05) includes fixes to the go command, and the crypto/tls, crypto/x509, and strings packages. In particular, it adds minimal support to the go command for the vgo transition. See the Go 1.10.3 milestone on our issue tracker for details. * Thu May 17 2018 duyizhaozj321@yahoo.com - Update to version 1.10.2: * includes fixes to the compiler, linker, and go command. - Changes in version 1.10.1: * includes fixes to the compiler, runtime, and the archive/zip, crypto/tls, crypto/x509, encoding/json, net, net/http, and net/http/pprof packages. - Changes in version 1.10: * This release improves caching of built packages, adds caching of successful test results, runs vet automatically during tests, and permits passing string values directly between Go and C using cgo. A new compiler option whitelist may cause unexpected invalid flag errors in code that built successfully with older releases. * Wed Feb 28 2018 jmassaguerpla@suse.com - Update to 1.9.4 fix bsc#1080006 (CVE-2018-6574) * Sat Feb 24 2018 jmassaguerpla@suse.com - fix bsc#1082409: Review dependencies (requires, recommends and supports) * Thu Feb 15 2018 guillaume@opensuse.org - Enable build for %%arm * Tue Feb 13 2018 dimstar@opensuse.org - Provide golang(API) = 1.9, so that this symbol can be required and provided, as preferred one, by the unversioned go package. * Thu Dec 21 2017 jmassaguerpla@suse.com - Make go be a metapackage Removed patches: * allow-binary-only-packages.patch * armv6l.patch * fix-sanitizer-build-against-latest-glibc.patch * tools-packaging.patch * go-1.5-build-dont-reinstall-stdlibs.patch * verbose-build.patch * go-1.5-install-dont-reinstall-stdlibs.patch * gcc6-go.patch * gcc7-go.patch * Thu Oct 26 2017 thipp@suse.de - Update to go1.9.2 go1.9.2 (released 2017/10/25) includes fixes to the compiler, linker, runtime, documentation, go command, and the crypto/x509, database/sql, log, and net/smtp packages. It includes a fix to a bug introduced in Go 1.9.1 that broke go get of non-Git repositories under certain conditions. See the Go 1.9.2 milestone on our issue tracker for details. * Sat Oct 21 2017 asarai@suse.com - Install $GOROOT/lib packages, to include upstream files such as the timezone database. bsc#1064522 * Thu Oct 5 2017 thipp@suse.de - Update to go1.9.1 go1.9.1 (released 2017/10/04) includes two security fixes. See the Go 1.9.1 milestone on our issue tracker for details. Fixes included: * net/smtp: fix PlainAuth to refuse to send passwords to non-TLS servers (CVE-2017-15042, bsc#1062087) * cmd/go: arbitrary code execution during “go get” or “go get -d” (CVE-2017-15041, bsc#1062085) * Mon Sep 18 2017 thipp@suse.de - Update to go1.9 There are two changes to the language: adding support for type aliases and defining when implementations may fuse floating point operations. Most of the changes are in the implementation of the toolchain, runtime, and libraries. As always, the release maintains the Go 1 promise of compatibility. We expect almost all Go programs to continue to compile and run as before. The release adds transparent monotonic time support, parallelizes compilation of functions within a package, better supports test helper functions, includes a new bit manipulation package, and has a new concurrent map type. Remove patches: - fix_certificates_lookup.patch - runtime-bump-MaxGomaxprocs.patch * Tue Sep 5 2017 thipp@suse.de - Fixed incorrectly ghosted files * Thu Aug 31 2017 thipp@suse.de - add fix-sanitizer-build-against-latest-glibc.patch which fixes the sanitizer built against certain glibc versions * Wed Aug 9 2017 asarai@suse.com - go-race: add compiler-rt TSAN binary, necessary for the race detector builds to work. This requires building compiler-rt from source (becuase upstream Go stores precompiled binaries in the tree, and we cannot use them). In addition, a %%check was added purely to ensure that we don't install the wrong version of compiler-rt. boo#1052528 - go-rpmlintrc: add some entries to address the .syso additions. * Fri Jul 21 2017 jmassaguerpla@suse.com - Remove ruby requirement. golang-macros are not ruby anymore, plus this requirement should have been in the golang-packaging package * Fri Jul 7 2017 jmassaguerpla@suse.com - Simplify all the "ifdef suse_version" by removing versions which have reach eol (13.* 42.1 sle11*) * Thu Jul 6 2017 jmassaguerpla@suse.com - Add gcc6-go.patch for sle12 and leap42.x and use binutils-gold except for s390x/s390 Remove gcc5-go.patch cause we use gcc6 for sle12 and leap42.x and gcc7 for newer versions (factory) * Sun Jun 18 2017 dmueller@suse.com - build with binutils-gold on aarch64, which is hardcoded to be used for shared linking due to bugs in BFD binutils * Fri Jun 2 2017 thipp@suse.de - Build with gcc-7 on Tumbleweed + Add gcc7-go.patch * Mon May 29 2017 thipp@suse.de - Minor update to go1.8.3 Fixes included: * go1.8.2 (released 2017/05/23) includes a security fix to the crypto/elliptic package (CVE-2017-8932, bsc#1040618). * go1.8.3 (released 2017/05/24) includes fixes to the compiler, runtime, documentation, and the database/sql package. * Thu May 11 2017 agraf@suse.com - Enable gccgo with gcc-6 for SLE12 * Wed May 3 2017 jmassaguerpla@suse.com - fix update-alternatives usage. This way, we can either use go1.7 or go 1.8 without having to change the docker spec file or any other package that requires go 1.7 but it will require go 1.8 in the future. * Thu Apr 27 2017 thipp@suse.de - Update to go1.8.1 Most of its changes are in the implementation of the toolchain, runtime, and libraries. There are two minor changes to the language specification. As always, the release maintains the Go 1 promise of compatibility. We expect almost all Go programs to continue to compile and run as before. The release adds support for 32-bit MIPS, updates the compiler back end to generate more efficient code, reduces GC pauses by eliminating stop-the-world stack rescanning, adds HTTP/2 Push support, adds HTTP graceful shutdown, adds more context support, enables profiling mutexes, and simplifies sorting slices. more at: https://golang.org/doc/go1.8 Update patches: - allow-binary-only-packages.patch - gcc5-go.patch - gcc6-go.patch * Wed Apr 26 2017 jmassaguerpla@suse.com - Remove mercurial build dependency. Mercurial is a version control system, like git. We are not using this in the build service to get the sources. - Do not set GOBIN. If GOBIN is unset, by default go assumes GOPATH/bin. This way, the user can change GOPATH without the need to change GOBIN. fix bsc#1026658 * Thu Apr 13 2017 jmassaguerpla@suse.com - minor update to go1.7.5 because this is required by docker-v17.04.00-ce (bsc#1034053) fixes included: * go1.7.1 (released 2016/09/07) includes fixes to the compiler, runtime, documentation, and the compress/flate, hash/crc32, io, net, net/http, path/filepath, reflect, and syscall packages. See the Go 1.7.1 milestone on our issue tracker for details: https://github.com/golang/go/issues?q=milestone%%3AGo1.7.1 * go1.7.2 was not released. No changelog. * go1.7.3 (released 2016/10/19) includes fixes to the compiler, runtime, and the crypto/cipher, crypto/tls, net/http, and strings packages. See the Go 1.7.3 milestone on our issue tracker for details: https://github.com/golang/go/issues?q=milestone%%3AGo1.7.3 * go1.7.4 (released 2016/12/01) includes two security fixes. See the Go 1.7.4 milestone on our issue tracker for details: https://github.com/golang/go/issues?q=milestone%%3AGo1.7.4 * go1.7.5 (released 2017/01/26) includes fixes to the compiler, runtime, and the crypto/x509 and time packages. See the Go 1.7.5 milestone on our issue tracker for details: https://github.com/golang/go/issues?q=milestone%%3AGo1.7.5 * Fri Mar 31 2017 jmassaguerpla@suse.com - Add a patch to bump _MaxGomaxprocs so that things like Docker and k8s can run properly on NUMA machines. Don't bump this number too high. bsc#1028865 + runtime-bump-MaxGomaxprocs.patch * Fri Dec 30 2016 bg@suse.com - set libdir for s390x in go.sh * Fri Dec 30 2016 bg@suse.com - define go_arch to s390x * Wed Dec 21 2016 mpost@suse.com - Added s390x to the list of architectures that get built. * Fri Nov 11 2016 asarai@suse.com - Disable stripping to fix __.PKGDEF issues. bsc#964546 There is an upstream issue about it as well, with a patch which will hopefully make Go more resilient to this issue. https://github.com/golang/go/issues/17890 * Thu Nov 3 2016 jmassaguerpla@suse.com - Make sure we build go using gcc-go in Factory cause there is no go1.4 * Mon Sep 26 2016 jmassaguerpla@suse.com - update to go1.7.0 (bsc#996303) Most of its changes are in the implementation of the toolchain, runtime, and libraries. There is one minor change to the language specification. The release adds a port to IBM LinuxOne; updates the x86-64 compiler back end to generate more efficient code; includes the context package, promoted from the x/net subrepository and now used in the standard library; and adds support in the testing package for creating hierarchies of tests and benchmarks. The release also finalizes the vendoring support started in Go 1.5, making it a standard feature. more at: https://golang.org/doc/go1.7 Review patches: - armv6l.patch - fix_certificates_lookup.patch, - go-1.5-install-dont-reinstall-stdlibs.patch - gcc5-go.patch * Fri Sep 23 2016 jmassaguerpla@suse.com - Reverting to use gcc-go instead of go1.4 for Factory and Leap The fallback boostrap method via go1.4 does not work for Factory because of a known bug with binutils 2.27 https://github.com/golang/go/issues/16906. Leap will work but we don't have go1.4 in there. * Wed Sep 21 2016 jmassaguerpla@suse.com - update to gcc6-go for Factory - add gcc6-go.patch for Factory - build with gcc-go for aarch64, ppc64le and ppc64, but for x86_64 always use go1.4, as it should be according to https://golang.org/doc/install/source#go14 * Tue Aug 30 2016 jmassaguerpla@suse.com - build ppc64le with gcc-go * Sun Aug 14 2016 i@marguerite.su - fix source location for 3rd-party libraries * Tue Jul 26 2016 jmassaguerpla@suse.com - CVE-2016-5386.patch: fixes bsc#988487 aka https://httpoxy.org/ * Tue Jul 26 2016 jmassaguerpla@suse.com - update go go1.6.3 (released 2016/07/17) includes security fixes to the net/http/cgi package and net/http package when used in a CGI environment. This release also adds support for macOS Sierra. See the Go 1.6.3 milestone on our issue tracker for details. This fixes: bsc#988487 (CVE-2016-5386), so we remove CVE-2016-5386.patch) * Tue Jul 19 2016 normand@linux.vnet.ibm.com - do not set with_shared for ppc64 (BE) * Thu Jun 23 2016 dmueller@suse.com - bootstrap aarch64 even on SLE via gcc5-go * Fri Jun 17 2016 i@marguerite.su - install shared libraries. * Fri Jun 10 2016 i@marguerite.su - update version 1.6.2 * fixes to the compiler, runtime, tools, documentation, and the mime/multipart, net/http, and sort packages. * Tue May 24 2016 jmassaguerpla@suse.com - Enable build for ppc64le on SLE12 (bsc#981432) * Tue Apr 26 2016 jmassaguerpla@suse.com - fix bsc#974232: CVE-2016-3959: go: Infinite loop in several big integer routines - Update to version 1.6 (bsc#977394) * On Linux on little-endian 64-bit PowerPC (linux/ppc64le), Go 1.6 now supports cgo with external linking and is roughly feature complete. * Vendoring support * HTTP2 transparent support * fix gc and gccgo incompatibility regarding embedded unexported struct types containing exported fields * Linux on 64-bit MIPS and Android on 32-bit x86 * enforced rules for sharing Go pointers with C * new mechanism for template reuse * performance improvements ... and more! see more in https://tip.golang.org/doc/go1.6 * Wed Apr 13 2016 jmassaguerpla@suse.com - fix bsc#974232 CVE-2016-3959: go: Infinite loop in several big integer routines * Wed Feb 10 2016 fcastelli@suse.com - Update to version 1.5.3 (bnc#968949): * CVE-2015-8618: go: Carry propagation in Int.Exp Montgomery code in math/big library (bnc#960151) * Sun Jan 10 2016 i@marguerite.su - macro.go and golang-macros.rb moved to golang-packaging * Wed Dec 30 2015 i@marguerite.su - macro.go: * added golang-macros.rb to deal with complicated macros that are hard to be written in shell script * support "--with-buildid" which is the former ugly "WITH_FAKE_BUILDID" environment variable hack * support "--shared" which is "-buildmode=shared -linkshared" in case anyone need it * add go_api_ver macro which is currently 1.5 - install shared stdlib on x86_64 - drop go-wiki-gadget.xml: it hasn't been used from the beginning - add go.gdbinit for debug friendly * Thu Dec 10 2015 matwey.kornilov@gmail.com - Updated to 1.5.2: This release includes bug fixes to the compiler, linker, and the mime/multipart, net, and runtime packages. https://golang.org/doc/devel/release.html#go1.5.minor * Sun Oct 25 2015 guoli_l@126.com - Updated to 1.5.1 This release includes bug fixes to the go command, the compiler, assembler, and the fmt, net/textproto, net/http, and runtime packages. https://golang.org/doc/devel/release.html#go1.5.minor * Wed Oct 7 2015 mlin@suse.com - Adapt to Leap * use gcc5-go than go1.4 is the proper requirement for Leap * Tue Sep 15 2015 dmueller@suse.com - go.sh, macros.go, go.spec: add missing bits for aarch64 * Fri Sep 11 2015 dmueller@suse.com - enable build for aarch64 - rediff armv6l.patch * Sat Aug 22 2015 i@marguerite.su - enable ppc64 and ppc64le * Thu Aug 20 2015 i@marguerite.su - update to version 1.5 * see https://golang.org/doc/go1.5 - add: go-1.5-build-dont-reinstall-stdlibs.patch drop: go-build-dont-reinstall-stdlibs.patch * refresh patch - add: go-1.5-install-dont-reinstall-stdlibs.patch drop: go-install-dont-reinstall-stdlibs.patch * refresh patch - drop: go-1.4.2-rel.plt-alignment.patch * fix by upstream - add gcc5-go.patch * find /usr/bin/go-5 when bootstrapping with gcc5-go - use update-alternatives for /usr/bin/go and profiles.d so it can be co-installed with go1.4 * Tue Aug 11 2015 jmassaguerpla@suse.com - fix update from 1.3.3 Update from 1.3.3 was broken in this commit https://build.opensuse.org/package/rdiff/devel:languages:go/go?linkrev=base&rev=205 That commit fixed a dangling symlink in src (src/pkg) by instead symlinking src, which broke compatibility. This commit fixes it by, instead, symlinking all the files in src. * Wed Jul 22 2015 schwab@suse.de - macros.go: fix missing quotes in %%goinstall (bsc#939067) * Sun Jul 12 2015 i@marguerite.su - macros.go: fix "summary-not-capitalized" * Thu Jul 9 2015 i@marguerite.su - macros.go: * *-doc can't properly describe what the sub-package really is, and they're mostly source codes instead of the claimed "API, documentation, and examples". so rename to *-source. and not recommend to install them to save users' disk space. * %%%%go_requires should be handled automatically by golang-packaging * not recommend to install source package any more, so %%%%go_recommmends set to nil. * Sun Jul 5 2015 i@marguerite.su - macros.go: * add a "WITH_FAKE_BUILDID" option to enable the fake build ID compution. * to fake build ID, you have to make sure your package has only one binary. it is nonsense that two or more nonidentical binaries have the same build ID. * Sat Jul 4 2015 i@marguerite.su - enable debuginfo * the strip workaround (boo#818502) does not need any more * re-enable debug_packge/debug_install_post macros - add patch: go-1.4.2-rel.plt-alignment.patch * cmd/ld: set alignment for the .rel.plt section on 32-bit architectures * https://github.com/golang/go/issues/9802 * or i586 build will fail at extracting debuginfo - macros.go: * re-enable debug_packge/debug_install_post macros from goprep() * add ldflags to gobuild() to compute BUILD ID for debuginfo package - go itself doesn't support BUILD ID yet * Thu Jun 11 2015 fcastelli@suse.com - Remove fix_certificates_lookup_on_sles11.patch: this is superseded by fix_certificates.patch - Add fix_certificates_lookup.patch: force Go to look for certificates only in the locations available on openSUSE and SLE. Also ensure certificates are found on SLE11 (previous fix_certificates_lookup_on_sles11.patch) * Thu Jun 11 2015 fcastelli@suse.com - Add fix_certificates_lookup_on_sles11.patch: this patch is required to have Go programs read the system certificates on SLE11. See issue https://github.com/golang/go/issues/6391 * Wed Apr 8 2015 fcastelli@suse.com - Fix building of all the Go packages under devel:languages:go. The %%goprep macro contained some unescaped lines, causing go install to attempt the installation of the build artifacts outside of the buildroot. * Mon Mar 30 2015 i@marguerite.su - disable debuginfo/debug package creation on all golang packages * .a files in golang doesn't contain debuginfo right now, so extract a debug package will cause "Failed to write file: invalid section alignment" and we don't need to bother stripping them. * we can't depend on good luck for all golang packages, hoping they'll pass the build and not randomly fail. * Fri Mar 20 2015 i@marguerite.su - remove "go_disable_brp_strip_static_archive" macro from macros.go, which contains redefinition of os_install_post too. - disable debug package generation for all architectures, because: * build IDs are not generated at all, even for successful builds * "Failed to write file: invalid section alignment" on arm/i586. * Thu Mar 19 2015 i@marguerite.su - remove redefinition of os_install_post macro, which was used to override brp-strip-static-archive that has been manually removed from openSUSE distribution since 2011.05. - This might fix i586 builds for openSUSE:Factory: * Too many levels of recursion in macro expansion * Failed to write file: invalid section alignment * Sat Mar 7 2015 i@marguerite.su - Added Obsoletes for go-vim/emacs, they went to separate projects * Sun Mar 1 2015 matwey.kornilov@gmail.com - Fix dangling-symlink /usr/lib64/go/src/pkg /usr/share/go/src/pkg * Sun Mar 1 2015 matwey.kornilov@gmail.com - allow-binary-only-packages.patch: Revert missed patch and update for 1.4 * Fri Feb 27 2015 matwey.kornilov@gmail.com - Updated to 1.4.2: Support of editors has been dropped * Thu Oct 30 2014 fcastelli@suse.com - Updated to 1.3.3: includes further bug fixes to cgo, the runtime package,s and the nacl port. - Changes associated with release 1.3.2: includes bug fixes to cgo and the crypto/tls packages. See the change history for details (bnc#898901 - CVE-2014-7189). * Tue Oct 21 2014 dmueller@suse.com - avoid stripping debuginfo on arm, it fails (and is not necessary) * Fri Oct 17 2014 sebastian.kratz@piraten-ahoi.de - add armv6l.patch * workaround for qemu-arm bug * under qemu on armv6 the number of unix signals isn't 64 but 63. thus there is an off-by-one error while building and testing. this fix now reduces the constant defining the number of signals by 1, but that of course means signal handling won't be 100%% correct. * https://groups.google.com/forum/#!topic/golang-nuts/MqKTX_XIOKE * Fri Sep 26 2014 cbosdonnat@suse.com - Revert the /usr/share/go/contrib symlink as it caused problems during update. Moved all go sources to /usr/share/go/contrib/src instead of /usr/share/go/contrib/src/pkg and created pkg and src symlinks in contrib to add it to GOPATH * Thu Sep 25 2014 cbosdonnat@suse.com - Fixed %%go_contribsrcdir value - Copy temporary macros.go as go.macros to avoid it to be built * Mon Sep 22 2014 jengelh@inai.de - Do not modify Source: files, because that makes the .src.rpm being tied to one specific arch. * Tue Sep 16 2014 cbosdonnat@suse.com - Removed extra src folder in /usr/share/go/contrib: the goal is to transform this folder into a proper entry for GOPATH. This folder is now linked to %%{_libdir}/go/contrib - go requires gcc to build sources using cgo - tools-packaging.patch: Allow building cover and vet tools in $GOROOT_TARGET/pkg/tool instead of $GOROOT/pkg/tool. This will allow building go tools as a separate package * Tue Sep 9 2014 i@marguerite.su - add new macro godoc_package & go_recommends to easy packaging * Sat Aug 30 2014 jfunk@funktronics.ca - Update to version 1.3.1: - bug fixes to the compiler and the runtime, net, and crypto/rsa packages * Tue Aug 12 2014 tchvatal@suse.com - Fix download url. * Thu Jul 31 2014 dimstar@opensuse.org - Rename rpmlintrc to %%{name}-rpmlintrc. Follow the packaging guidelines. * Thu Jun 19 2014 mrueckert@suse.de - Update to version 1.3: see http://golang.org/doc/go1.3 - refreshed patches to apply cleanly again: - go-build-dont-reinstall-stdlibs.patch - verbose-build.patch * Mon Dec 2 2013 speilicke@suse.com - Update to version 1.2: + No real changes since RC2 * Fri Oct 18 2013 speilicke@suse.com - Add %%go_tooldir macro and create the tools directory in %%goprep * Fri Oct 18 2013 speilicke@suse.com - Update to version 1.2rc2: + New packages: encoding, image/color/palette + Performance improvements + Three-index slices + godoc and vet commands moved to go-go.tools package * Removed godoc-path-locations.patch and godoc.service + Check golang.org/doc/go1.2 for a full list of changes - Fix go_ver macro to provide the version number again * Wed Aug 14 2013 speilicke@suse.com - Fix Factory i586 build failure by stripping binaries earlier. * Tue Aug 13 2013 speilicke@suse.com - Rework %%go_prep again, use "shopt -s dotglob" to catch hidden files - Change %%go_requires to "Require: go >= %%go_ver" instead of "Require: go-devel = %%go_ver". Go follows a stable release policy which means patch-level updates are (supposed to be) compatible. * Tue Aug 13 2013 speilicke@suse.com - Update to version 1.1.2: + includes fixes to the gc compiler and cgo, and the bufio, runtime, syscall, and time packages. See the change history for details. If you use package syscall's Getrlimit and Setrlimit functions under Linux on the ARM or 386 architectures, please note change 55ac276af5a7 that fixes issue 5949. - Fix %%go_prep again: Also move hidden files (.$BLA) * Tue Aug 13 2013 speilicke@suse.com - Also set ExclusiveArch in %%go_requires macro. Allows to drop %%go_exclusivearch again - Fix %%go_prep macro: Find directories in %%_builddir based on Go package name prefix (not exact match). * Tue Aug 13 2013 speilicke@suse.com - Fix URL - Add %%go_exclusivearch macro. It's better to only specify ExclusiveArch in the "go" package instead of all Go packages. Avoids errors once Go becomes available on more architectures * Wed Jul 10 2013 graham@andtech.eu - Fix godoc path locations patch * Thu Jun 13 2013 graham@andtech.eu - Update to Go 1.1.1 - cmd/gc: compute initialization order for top-level blank vars - cmd/gc: save local var list before inlining - cmd/gc: fix missing slice/array types in export data. - runtime: fix heap corruption during GC - runtime: zeroize g->fnstart to not prevent GC of the closure. - cmd/gc: repair make(T) in export data for inlining.i - runtime: fix GC scanning of slices - cmd/gc: do not corrupt init() with initializers of _ in closures. - runtime: introduce cnewarray() to simplify allocation of typed arrays. * Tue May 14 2013 graham@andtech.eu - Package changes - macros.go: update go version macro to cut trailing characters added by new style of "go version" identifier string - Update openSUSE specific patches to cleanly apply against Go 1.1 - Update package source and version to Go 1.1 - Full release notes for Go 1.1 can be found online here: http://golang.org/doc/go1.1 - There are too many bug fixes to list individually; details of all bugs fixed can be found on the issue tracker tagged with Go1.1 http://code.google.com/p/go/issues/list?can=1&q=label%%3AGo1.1 - Language changes which may affect your existing programmes - Integer division by zero: http://golang.org/doc/go1.1#divzero - Surrogates in unicode literals: http://golang.org/doc/go1.1#unicode_literals - Method values: http://golang.org/doc/go1.1#method_values - Return requirements: http://golang.org/doc/go1.1#return - The majority of improvements in this release are performance related with optimizations in the compiler and linker, garbage collection, goroutine scheduler, map/hashmap implementation and numerous speedups in the standard library. Please see the full release notes for details. - One noteworthy addition to the toolchain is the addition of a race detector. This should help improve the memory safety and accuracy of your concurrent Go programmes. Race detection versions of the standard library are included in this package update. You can find instructions for building librarys and programmes with race detection in the manual: http://golang.org/doc/articles/race_detector.html * Fri Mar 22 2013 hrvoje.senjan@gmail.com - Drop the go-kate package, the syntax is already shipped with libktexteditor package * Tue Nov 6 2012 saschpe@suse.de - Remove misc documentation. It doesn't contain anything really useful and several files are found in other (sub-)packages (bnc#788344) * Mon Oct 1 2012 saschpe@suse.de - Update to version 1.0.3: - Improved documentation - List of fixed issues: https://groups.google.com/forum/#!topic/golang-nuts/co3SvXbGrNk - More details can be found on this full list of changes: http://code.google.com/p/go/source/list?name=release-branch.go1 - Removed: - opensuse-vim.patch, merged upstream - Fix for bnc#686557, offending pdf was removed upstream * Wed Sep 5 2012 graham@andtech.eu - BNC#776058 - Add new patch to prevent the go install tool trying to reinstall std library packages that are dependencies of third party packages. - Using touch on the precompiled archives introdoces additional problems with the go install tool. Instead, we simply don't mark std library files as stale when a third party package is evaluated for installation. The behaviour remains unchanged for the root user and while it is inadvisable to manually reinstall standard libraries using the openSUSE packages, we do not disallow it. - Spec changes - Remove redundant requires for ed/bison - Minor tweaks for cross distro builds based on FC/Mageia/Mandriva - Macro changes - Tweak the BRP strip macro to work on RHEL based distros - Add go-wiki xml widget * Thu Aug 16 2012 graham@andtech.eu - BNC#776058 - spec changes, reverse positions of compiled items and package source in the %%install section. touch compiled package archives after source is installed for go-doc, this prevents the go tool trying to re-compile/install std libraries. * Tue Aug 14 2012 graham@andtech.eu - Patch vim Godoc and Import plugins. - Update spec file. - Instead of using tarball generated from a repo checkout, switch tarball source and use upstream official tarball. - Remove dependance on VERSION file, make spec more robust for future updates. * Mon Jul 16 2012 graham@andtech.eu - remove unavailable -x verbose flag from go fix macro * Thu Jun 14 2012 agraf@suse.com - fix some qemu-arm compilation errors by passing -x to go always * Thu Jun 14 2012 graham@andtech.eu - Update to bugfix release 1.0.2 - This fixes two major bugs: 3695 runtime: computed hash value for struct map key ignores some fields 3573 runtime: use of large map key causes crash - Additionally, this fixes numerous smaller documentation and code fixes, details can be found on this full list of changes: http://code.google.com/p/go/source/list?name=release-branch.go1 * Tue Jun 5 2012 saschpe@suse.de - Some Fedora_16 build fixes (i.e. added suse macros) * Tue Jun 5 2012 graham@andtech.eu - Fix build time path locations in macros.go for packages that depend on other Go packages. * Tue May 29 2012 agraf@suse.com - enable verbose build (fixes compilation for ARM? O_o) * Tue May 29 2012 dmueller@suse.com - fix build for ARM * Wed May 9 2012 graham@andtech.eu - Update to version 1.0.1 - fix escape analysis bug that could cause memory corruption - other minor updates see: http://code.google.com/p/go/source/list?name=release-branch.go1 - go.spec: remove arch dependent conditionals from %%files section we don't have to select these anymore. * Thu Apr 5 2012 graham@andtech.eu - spec/go.sh/macros change install location of third party libs to $GOROOT/contrib add $GOROOT/contrib as the last location in users $GOPATH - re-add sachape's typo and version check fixes - Update godoc patch and add contrib src dir * Mon Apr 2 2012 graham@andtech.eu - Add %%godoc macro to help with packaging API docs * Mon Apr 2 2012 saschpe@suse.de - Fixed some typos - Removed checks for outdated SUSE versions * Mon Apr 2 2012 graham@andtech.eu - update profile.d go.sh with $GOBIN for users * Mon Apr 2 2012 graham@andtech.eu - cmd/go - re-enable building from binary only packages we are a binary distro and the last minue change to go clean -i disabled building from third party binary packages. package management will be done via yast/zypper anyway and not go clean. * Sat Mar 31 2012 graham@andtech.eu - change provides to match go release string as per VERSION file - fix %%pre, %%post etc godoc service statement * Fri Mar 30 2012 graham@andtech.eu - Export $GOBIN for the %%gobuild() macro * Wed Mar 28 2012 graham@andtech.eu - Go version 1 http://golang.org/doc/go1.html * Tue Mar 27 2012 graham@andtech.eu - Release candidate 2 - Bug fixes and resolved issues http://weekly.golang.org/doc/devel/weekly.html#2012-03-22 * Tue Mar 13 2012 graham@andtech.eu - No language changes - Initial Go 1 beta offering - Many bug fixes and resolved issues http://weekly.golang.org/doc/devel/weekly.html#2012-03-13 * Sat Mar 10 2012 graham@andtech.eu - Add additional Go vim scripts, tweak goversion macro * Fri Mar 9 2012 graham@andtech.eu - update spec and macro file to provide working requires * Wed Mar 7 2012 graham@andtech.eu - update gotest/gofix macro * Tue Mar 6 2012 graham@andtech.eu - Update godoc & go build patches - removed dwarf pretty printer patch - add godoc systemd service file * Mon Mar 5 2012 graham@andtech.eu - Update to weekly.2012-03-04 - Changes to go/build required code refactoring see: http://weekly.golang.org/doc/devel/weekly.html#2012-03-04 * Fri Feb 24 2012 graham@andtech.eu - Wpdate to weekly.2012-02-22 - Some BC breaks and language changes, too many details to list see release announcement: http://weekly.golang.org/doc/devel/weekly.html#2012-02-22 * Fri Feb 17 2012 graham@andtech.eu - cmd/gc: fix comparison of struct with _ field fixes build of go-go-gtk and other packages that use cgo * Fri Feb 17 2012 graham@andtech.eu - Update to tip @ 2012.02017 - sync: say that Cond.Wait can not return spuriously - runtime: Permit default behaviour of SIGTSTP, SIGTTIN, SIGTTOU - cmd/gc: correctly typecheck expression lists in returns - syscall: fix bounds check in Error * Thu Feb 16 2012 graham@andtech.eu - Update to weekly.2012-02-12 http://weekly.golang.org/doc/devel/weekly.html#2012-02-12 * Wed Feb 8 2012 graham@andtech.eu This weekly snapshot includes a re-organization of the Go tools. Only the go, godoc, and gofmt tools are installed to $GOROOT/bin (or $GOBIN). The remainder are installed to $GOROOT/bin/tool. This puts the lesser-used tools (6g, cgo, govet, etc.) outside the user PATH. Instead these tools may be called through the go tool with 'go tool command'. For example, to vet hello.go you would type 'go tool vet hello.go'. Type 'go tool' see the list of available tools. With the move, some tools were given simpler names: 6cov -> cov 6nm -> nm goapi -> api gofix -> fix gopack -> pack gopprof -> pprof govet -> vet goyacc -> yacc The os/signal package has been moved to exp/signal. A new tool named 'dist' has been introduced to handle building the gc tool chain and to bootstrap the go tool. The old build scripts and make files have been removed. Full list of changes and fixes available: http://weekly.golang.org/doc/devel/weekly.html#2012-02-07 * Mon Feb 6 2012 saschpe@suse.de - Satisfy Factory-Auto (only comment out %%path, not Patch) * Sun Feb 5 2012 graham@andtech.eu - Update to latest tip - Now use cmd/dist to build toolchain, build scripts are removed build process is now as follows. build cmd/dist C based bootstrap tool - > compile C based compilers and Go based bootstrap tool - > compile Go based core commands and libraries - Remove patch that affects, cmd/go/{build,pkg}.go , this command is under active development and building against binary installs is slated to be included before Go1 release. * Tue Jan 31 2012 graham@andtech.eu - Patch: quick hack to try and get packages building against third party libs if they are installed as binary archives without source - Update some spec file entries for changing $GOROOT layout, mainly $GOROOT/bin/go-tools - Add $GOBIN back for now * Mon Jan 30 2012 graham@andtech.eu - spec tweaks, use default locations for go tooling (compilers, linkers, cgo etc all in $GOROOT now) - remove $GOBIN from /etc/profile.d/go.sh * Fri Jan 27 2012 graham@andtech.eu - Update to weekly.2012-01-27 - renamed the html package to exp/html - Many fixes: - * http://weekly.golang.org/doc/devel/weekly.html#2012-01-27 * Tue Jan 24 2012 graham@andtech.eu - Add %%goinstall() macro for new go tool - Update godoc path locations patch - Update go install patch (fixes building packages with "go install") - Update to weekly.2012-01-20 - The image package's Tiled type has been renamed to Repeated. - The encoding/xml package has been changed to make more idiomatic use of struct tags, among other things. If you use the xml package please read the change description to see if your code is affected: http://code.google.com/p/go/source/detail?r=70e914beb409 - exp/sql package to database/sql - Package net's SetTimeout methods were changed to SetDeadline. - Many functions in package os now take a os.FileMode argument instead of a plain uint32. An os.ModeSticky constant is also now defined. - The meaning of the first buffer element for image.YCbCr has changed to match the semantics of the other image types like image.RGBA. - The NewMD5, NewSHA1 and NewSHA256 functions in crypto/hmac have been deprecated. Use New instead, explicitly passing the hash function. * Fri Dec 30 2011 graham@andtech.eu - Patch new "go install" to allow -s option This prevents rebuild/reinstall of std libs and allows packages to be installed into a users $GOPATH * Fri Dec 23 2011 graham@andtech.eu - Update to weekly.2011.12.22 - changes to the images/ycbcr and testing packages * "gofix" required for code using images/ycbr * Testing package "B" (benchmark) type now has same methods as "T" - Compiler inlining: Enabled in .spec as "export GCFLAGS=-l" * Needs to be explicitly enabled at compile time with the above flag or using the "-l" compiler flag - Initial implementation of 'go' command utility - Many fixes and updates * http://weekly.golang.org/doc/devel/weekly.html#2011-12-22 * Fri Dec 16 2011 dmueller@suse.de - fix exclusivearch for %%%%arm - fix filelist for %%%%arm * Tue Dec 13 2011 saschpe@suse.de - Use $GOBIN as install target directory for binaries (Make.cmd) regardless of $TARGDIR (Second part of bnc#735320) * Tue Dec 13 2011 saschpe@suse.de - Improve macros %%go_make, %%go_make_test and %%go_make_install: * Set TARGDIR and GOBIN all macros (bnc#735320) * Make sure %%{buildroot}%%{_bindir} exists in any case - The above should simplify spec files for Go packages that use, .e.g., 'make tools' to install additional stuff (like binaries) * Wed Dec 7 2011 dmacvicar@suse.de - Set GOBIN correctly in Make.inc to point to _bindir instead of GOROOT/bin (bnc#735288) * Mon Dec 5 2011 saschpe@suse.de - Forgot to update VERSION file * Mon Dec 5 2011 saschpe@suse.de - Update to 05/12/2011 mercurial version: * No big changes * Fri Dec 2 2011 saschpe@suse.de - Update to r60.3 + weekly.2011-12-02: * crypto/tls: cleanup certificate load on windows * exp/ssh: add Std{in,out,err}Pipe methods to Session * dashboard: don't choke on weird builder names. * exp/ssh: export type signal, now Signal * os: add ModeType constant to mask file type bits * text/template: replace Add with AddParseTree. * go/doc: detect headings and format them in html - For more see http://golang.org/doc/devel/weekly.html * Tue Oct 18 2011 graham@andtech.eu - Update to r60.3 - Fixes bug in the reflect package * disallow Interface method on Value obtained via unexported name * Thu Oct 6 2011 graham@andtech.eu - Update to r60.2 - Fixes memory leak in certain map types * Wed Oct 5 2011 graham@andtech.eu - Tweaks for gdb debugging - go.spec changes: - move %%go_arch definition to %%prep section - pass correct location of go specific gdb pretty printer and functions to cpp as HOST_EXTRA_CFLAGS macro - install go gdb functions & printer - gdb-printer.patch - patch linker (src/cmd/ld/dwarf.c) to emit correct location of go gdb functions and pretty printer * Tue Sep 27 2011 saschpe@suse.de - Add file 'VERSION' which is otherwise generated at runtime to fix building * Fri Sep 2 2011 saschpe@suse.de - Update to weekly.2001-09-01 version * archive/tar: support symlinks. * big: fix nat.scan bug. (thanks Evan Shaw) * bufio: handle a "\r\n" that straddles the buffer. add openbsd. avoid redundant bss declarations. fix unused parameters. fix windows/amd64 build with newest mingw-w64. * bytes: clarify that NewBuffer is not for beginners. * cgo: explain how to free something. fix GoBytes. fixes callback for windows amd64. note that CString result must be freed. * effective_go: convert to use tmpltohtml. * exp/norm: reduced the size of the byte buffer used by reorderBuffer by half by reusing space when combining. a few minor fixes to support the implementation of norm. added implementation for []byte versions of methods. * exp/template/html: add some tests for ">" attributes. added handling for URL attributes. differentiate URL-valued attributes (such as href). reworked escapeText to recognize attr boundaries. * exp/template: moved from exp to the main tree. * exp/wingui: made compatible with windows/amd64. * flag: add Parsed, restore Usage. * gc: add openbsd. escape analysis. fix build on Plan 9. fix div bug. fix pc/line table. fix some spurious leaks. make static initialization more static. remove JCXZ; add JCXZW, JCXZL, and JCXZQ instructions. shuffle [#]includes. simplify escape analysis recursion. * go/ast cleanup: base File/PackageExports on FilterFile/FilterPackage code. adjustments to filter function. fix ast.MergePackageFiles to collect infos about imports. generalize ast.FilterFile. * go/build: add test support & use in gotest. separate test imports out when scanning. * go/parser: fix type switch scoping. fix type switch scoping. * gob: explain that Debug isn't useful unless it's compiled in. * gobuilder: increase log limit. * godashboard: fix utf-8 in user names. * godoc: first step towards reducing index size. add dummy playground.js to silence godoc warning at start-up. added systematic throttling to indexing goroutine. fix bug in zip.go. support for reading/writing (splitted) index files. use virtual file system when generating package synopses. * gofix: forgot to rename the URL type. osopen: fixed=true when changing O_CREAT. * goinstall: error out with paths that end with '/'. report lack of $GOPATH on errors. select the tag that is closest to runtime.Version. * http: add MaxBytesReader to limit request body size. add file protocol transport. adjust test threshold for larger suse buffers. delete error kludge. on invalid request, send 400 response. return 413 instead of 400 when the request body is too large. support setting Transport's TLS client config. * image/tiff: add a decode benchmark. decoder optimization. * image: add PalettedImage interface, and make image/png recognize it. * io: add TeeReader. * json: add struct tag option to wrap literals in strings. calculate Offset for Indent correctly. fix decode bug with struct tag names with ,opts being ignored. * ld: handle Plan 9 ar format. remove duplicate bss definitions. * libmach: support reading symbols from Windows .exe for nm. * math: fix Pow10 loop. (thanks Volker Dobler) * mime: ParseMediaType returns os.Error now, not a nil map. media type formatter. text charset defaults. * misc/dashboard: remove limit for json package list. * misc/emacs: refine label detection. * net: add ParseMAC function. change the internal form of IPMask for IPv4. disable "tcp" test on openbsd. fix windows build. join and leave a IPv6 group address, on a specific interface. make use of IPv4len, IPv6len. move internal string manipulation routines to parse.go. * os: disable Hostname test on OpenBSD. fix WNOHANG Waitmsg. * reflect: add Value.Bytes, Value.SetBytes methods. * rpc: add benchmark for async rpc calls. * runtime: add openbsd 386 defs.h. add runtime support for openbsd 386. add runtime prefix to showframe. ctrlhandler for windows amd64. fix stack cleanup on windows/amd64. fix void warnings. go interface to cdecl calbacks. handle string + char literals in goc2c. make arm work on Ubuntu Natty qemu. openbsd thread tweaks. simplify stack traces. speed up cgo calls. use cgo runtime functions to call windows syscalls. windows/amd64 callbacks fixed and syscall fixed to allow using it in callbacks. * strconv: put decimal on stack. * spec: update section on Implementation Differences. * syscall: SOMAXCONN should be 0x7fffffff at winsock2. add openbsd 386. handle RTM_NEWROUTE in ParseNetlinkRouteAttr on Linux. handle routing entry in ParseRoutingSockaddr on BSD variants. openbsd amd64 syscall support. use the vdso page on linux x86 for faster syscalls instead of int $0x80. * template/parse: give if, range, and with a common representation. * template: grammar fix for template documentation. range over channel. remove else and end nodes from public view. * test: put GOROOT/bin before all others in run. * time: fix Plan 9 build. fix zone during windows test. * type switches: test for pathological case. * version.bash: update VERSION on -save if already present. * websocket: implements new version of WebSocket protocol. * windows/386: clean stack after syscall. * xml: marshal "parent>child" tags correctly. * Tue Aug 2 2011 saschpe@gmx.de - Update to release r59: * Restricted usage of goto statement * Package reflect supports a new struct tag scheme that enables sharing of struct tags between multiple packages. * Package sort's IntArray type has been renamed to IntSlice, and similarly for Float64Slice and StringSlice * Package strings's Split function has itself been split into Split and SplitN. SplitN is the same as the old Split. The new Split is equivalent to SplitN with a final argument of -1. * Goinstall now installs packages and commands from arbitrary remote repositories (not just Google Code, Github, and so on). See the goinstall documentation for details. More at http://golang.org/doc/devel/release.html#r59 * Wed Jul 20 2011 saschpe@gmx.de - Update to 2011-07-20 mercurial version: * ELF section header overlap fixed, GNU strip doesn't break binaries anymore * Wed Jul 20 2011 saschpe@suse.de - Update to weekly.2011-07-19 mercurial version: * archive/zip: add Writer, add Mtime_ns function to get modified time in sensible format. * cgi: close stdout reader pipe when finished. * cgo: add missing semicolon in generated struct, * codereview: fix for Mercurial 1.9. * dashboard: list "most installed this week" with rolling count. * debug/elf: read ELF Program headers. * debug/proc: remove unused package. * doc/talks/io2010: update with gofix and handle the errors. * exp/eval, exp/ogle: remove packages eval and ogle. * exp/regexp/syntax: add Prog.NumCap. * exp/template: API changes, bug fixes, and tweaks. * flag: make -help nicer. * fmt: Scan(&int) was mishandling a lone digit. * gc: fix closure bug, fix to build with clang, make size of struct{} and [0]byte 0 bytes , some enhancements to printing debug info. * gif: fix local color map and coordinates. * go/build: include processing of .c files for cgo packages, less aggressive failure when GOROOT not found. * go/printer: changed max. number of newlines from 3 to 2. * gob: register more slice types * godoc: support for file systems stored in .zip files. * hash/crc32: add SSE4.2 support. * html: update section references in comments to the latest HTML5 spec. * http: drain the pipe output in TestHandlerPanic to avoid logging deadlock, fix Content-Type of file extension, implement http.FileSystem for zip files, let FileServer work when path doesn't begin with a slash, support for periodic flushing in ReverseProxy. * image/draw: add benchmarks. * json: add omitempty struct tag option, allow using '$' and '-' as the struct field's tag encode \r and \n in strings as e.g. "\n", not "\u000A" escape < and > in any JSON string for XSS prevention. * ld: allow seek within write buffer< add a PT_LOAD PHDR entry for the PHDR * os: plan9: add Process.Signal as a way to send notes * os: don't permit Process.Signal after a successful Wait. * reflect: add Value.NumMethod, panic if Method index is out of range for a type. * runtime: faster entersyscall, exitsyscall, fix panic for make(chan [0]byte), fix subtle select bug, make TestSideEffectOrder work twice, several parallelism-related optimizations and fixes, string-related optimizations, track running goroutine count. * strconv: handle [-+]Infinity in atof. * sync: add fast paths to WaitGroup, improve RWMutex performance. * syscall: add Flock on Linux, parse and encode SCM_RIGHTS and SCM_CREDENTIALS More at http://golang.org/doc/devel/release.html#r58.1 * Sun Jul 10 2011 saschpe@gmx.de - Update to 2011/07/10 mercurial version (post r58 and weekly.2011-07-07): * Package exec has been redesigned with a more convenient and succinct API. * Package os/signal's Signal and UnixSignal types have been moved to the os package. * Package image/draw is the new name for exp/draw. The GUI-related code from exp/draw is now located in the exp/gui package. More at http://golang.org/doc/devel/release.html#r58 * Fri Jun 24 2011 saschpe@gmx.de - No need to set $PATH before building anymore * Fri Jun 24 2011 saschpe@gmx.de - DISABLE_NET_TESTS was dropped, this causes net tests to fail on openSUSE:Factory currently. Disable tests temporarily. * Fri Jun 24 2011 saschpe@suse.de - Update to 24/06/2011 mercurial version * http: buffer Request.Write (issue 1996) * libmach: fix disassembly of FCMOVcc and FCOMI * libmach: fix tracing on linux (for cov) * ld: don't attempt to build dynamic sections unnecessarily * syscall: add tty support to StartProcess * crypto/openpgp: add ElGamal support * http: add Server.ListenAndServeTLS (issue 1964) * Thu Jun 16 2011 saschpe@suse.de - %%go_requires can't depend on %%requires_ge, it isn't available on Fedora and RHEL. * Wed Jun 15 2011 saschpe@suse.de - Really set CFLAGS through HOST_EXTRA_CFLAGS environment variable for building Go itself and for Go macros (used by Go packages) - Added go-fix-werrors.patch to fix fatal compiler warnings, not used yet as -Wno-error is passed currently - Adhere to SUSE patch comment conventions - Changed %%go_requires macro from '%%requires_eq go' to '%%requires_ge go' * Wed Jun 15 2011 saschpe@suse.de - Update to 15/06/2011 mercurial version * Increase max no of windows callbacks (issue 1912) * gc: compact stackframe * http: fix regression permitting io.Copy on HEAD response * Go memory model: minor clarification (issue 1941) * go spec: clarif rules for append, scope rules for := (issue 1936, issue 1940) * gc: handle go print() and go println() (issue 1952) * net: export all fields in Interface (issue 1942) - Spec file cleanup: * Remove *.6 and *.8 files from misc documentation * Wed Jun 8 2011 saschpe@suse.de - Added macro %%go_disable_brp_strip_static_archive to disable the strip check, it breaks on Fedora-based distros and generates a warning for SUSE-based ones. It can be removed if go binaries become really stripable * Wed Jun 8 2011 saschpe@suse.de - Update to 08/05/2011 mercurial version * ld: fix and simplify ELF symbol generation * cgo: support non intel gcc machine flags * gc: enable building under clang/2.9 * countless bugfixes, documentation and speed improvements - Don't build twice (thru all.bash and make.bash) * Mon May 23 2011 saschpe@suse.de - Generate %%go_ver macro from Go package version - Use %%requires_eq for %%go_requires * Sat May 21 2011 saschpe@gmx.de - Switch %%go_make* macros from make to gomake * Sat May 21 2011 saschpe@gmx.de - Undo not installing *.h/*.c, remove hard links - Update to 21/05/2011 mercurial version - Added macro %%go_make_test * Fri May 20 2011 saschpe@gmx.de - Package more documentation * Fri May 20 2011 saschpe@gmx.de - Moved devel package back into main package until a better solution pops up * godoc and goinstall belong to base package and need only sources in the $GOROOT/srcpkg tree * No need to install *.h/*.c files - Fixed %%{go_provides} macro to provide a specific version - Changed GOROOT path also in gotry script * Fri May 20 2011 saschpe@suse.de - Removed double provides for devel-static package - Provide a specific version for devel-static package - Less build dependencies, own directories directly - Added comments for rpmlint checks, removed old ones * Fri May 20 2011 saschpe@suse.de - Disable brp-strip-static-archive also on RHEL and CentOS * Fri May 20 2011 saschpe@suse.de - Fix %%go_make_install macro, wrong TARGDIR * Fri May 20 2011 saschpe@suse.de - Update to 20/05/2011 mercurial version - Macro %%go_arch in macros.go now properly set to correct value * Thu May 19 2011 saschpe@gmx.de - Fix RPM macros, add arm support * Thu May 19 2011 saschpe@gmx.de - Added RPM macros file to simply Go packaging - Provide devel-static file in main package - Spec file cleanup - Remove devel-file-in-non-devel-package rpmlint filter - Use proper package versioning scheme (needs reinstall) * Wed May 18 2011 saschpe@suse.de - Disable brp-strip-static-archive on Fedora * Wed May 18 2011 saschpe@suse.de - Re-add STRIP=/bin/true to fix Fedora build * Wed May 18 2011 saschpe@suse.de - Let devel package provide devel-static - Fix typo in devel package description * Wed May 18 2011 saschpe@suse.de - Update to 18/05/2011 upstream mercurial release - Rebased godoc patch - Removed doc/talks/go_talk-20091030.pdf, fixes bnc#686557 - No chrpath necessary anymore - Use fdupes - Drop executable-stack rpmlint filter, not needed anymore * Fri Apr 29 2011 saschpe@gmx.de - Update to 29/04/2011 upstream mercurial release - Changed RPM variables to macros * Mon Mar 21 2011 saschpe@suse.de - Changed license from BSD to BSD3c - Remove pkg_version macro, use %%%%{version} directly - No Requires on %%%%{release} * Tue Mar 8 2011 graham@andtech.eu - Update to 07/03/2011 .1 upstream mercurual release - Update godoc patch to reflect changes to path package * Tue Mar 1 2011 graham@andtech.eu - Update to 24/02/2011 upstream mercurial release * Wed Feb 16 2011 graham@andtech.eu - Update to 15/12/2011 upstream mercurial release - Remove redundant workarounds from .spec * Tue Feb 8 2011 graham@andtech.eu - add go-devel for pkg and cmd source installation, this is intended to support goinstall(once patched). - Move goinstall binary to go-devel package and install to %%{_sbindir} - Change the godoc patch to generate API docs from the source install location of go-devel * Tue Feb 1 2011 graham@andtech.eu - Updated to release 20/01/2011 - run full test suite (without net dependant tests) - remove redundant libcgo.so from .spec * Wed Dec 8 2010 saschpe@suse.de - Updated to 08/12/2010 mercurial version * Thu Dec 2 2010 speilicke@novell.com - Updated to 02/12/2010 mercurial version * Tue Nov 16 2010 speilicke@novell.com - Updated to 16/11/2010 mercurial version * Tue Nov 9 2010 speilicke@novell.com - Updated to 09/11/2010 mercurial version * Mon Nov 8 2010 speilicke@novell.com - Simplified spec file * Mon Nov 8 2010 speilicke@novell.com - Fixed tarball (no hg history and build files) * Mon Nov 8 2010 speilicke@novell.com - Updated to 08/11/2010 mercurial version * Thu Oct 14 2010 speilicke@novell.com - Updated to 13/08/2010 mercurial version * Mon Oct 11 2010 speilicke@novell.com - Example scripts permissions fixed * Fri Oct 8 2010 speilicke@novell.com - Updated to 10/08/2010 mercurial version * Wed Jun 16 2010 graham@andtech.eu - Initial package based on 09/06/2010 release * Thu Apr 29 2010 konrad@tylerc.org> - Initial Go hg release spec template