aboutsummaryrefslogtreecommitdiff
path: root/content/go12.article
diff options
context:
space:
mode:
Diffstat (limited to 'content/go12.article')
-rw-r--r--content/go12.article49
1 files changed, 25 insertions, 24 deletions
diff --git a/content/go12.article b/content/go12.article
index 2516a77..4ba73c1 100644
--- a/content/go12.article
+++ b/content/go12.article
@@ -1,46 +1,47 @@
-Go 1.2 is released
+# Go 1.2 is released
1 Dec 2013
Tags: release
+Summary: We are pleased to announce the release of Go 1.2, the latest stable version of the Go Programming Language.
Andrew Gerrand
-* Introduction
+##
We are pleased to announce the release of Go 1.2, the latest stable version of
the Go Programming Language.
Binary distributions may be downloaded from the
-[[https://golang.org/doc/install][usual place]] or if you prefer to
-[[https://golang.org/doc/install/source][compile from source]] you should use
+[usual place](https://golang.org/doc/install) or if you prefer to
+[compile from source](https://golang.org/doc/install/source) you should use
the `release` or `go1.2` tags.
This new release comes nearly seven months after the release of Go 1.1 in May,
a much shorter period than the 14 months between 1.1 and 1.0.
We anticipate a comparable interval between future major releases.
-[[https://golang.org/doc/go1.2][Go 1.2]] includes a couple of minor
+[Go 1.2](https://golang.org/doc/go1.2) includes a couple of minor
language changes, several improvements to the language implementation and
tools, some performance improvements, and many additions and
(backward-compatible) changes to the standard library.
-Please read the [[https://golang.org/doc/go1.2][release notes]] for all
+Please read the [release notes](https://golang.org/doc/go1.2) for all
the details, as some changes may affect the behavior of existing (buggy) programs.
What follows is the highlights of the release.
-A new [[https://golang.org/doc/go1.2#three_index][three-index slice syntax]]
+A new [three-index slice syntax](https://golang.org/doc/go1.2#three_index)
adds the ability to specify capacity as well as length. This allows the
programmer to pass a slice value that can only access a limited portion of the
underlying array, a technique that previously required the use of the unsafe
package.
A major new feature of the tool chain is the facility to compute and display
-[[https://golang.org/doc/go1.2#cover][test coverage results]].
-See the [[https://golang.org/cmd/go/#hdr-Description_of_testing_flags][`go`test`]]
-and [[https://godoc.org/code.google.com/p/go.tools/cmd/cover/][cover tool]]
+[test coverage results](https://golang.org/doc/go1.2#cover).
+See the [`go test`](https://golang.org/cmd/go/#hdr-Description_of_testing_flags)
+and [cover tool](https://godoc.org/code.google.com/p/go.tools/cmd/cover/)
documentation for details. Later this week we will publish an article that
discusses this new feature in detail.
-Goroutines are now [[https://golang.org/doc/go1.2#preemption][pre-emptively scheduled]],
+Goroutines are now [pre-emptively scheduled](https://golang.org/doc/go1.2#preemption),
in that the scheduler is invoked occasionally upon entry to a function.
This can prevent busy goroutines from starving other goroutines on the same
thread.
@@ -49,21 +50,21 @@ An increase to the default goroutine stack size should improve the
performance of some programs. (The old size had a tendency to introduce
expensive stack-segment switching in performance-critical sections.)
On the other end, new restrictions on
-[[https://golang.org/doc/go1.2#stack_size][stack sizes]] and
-[[https://golang.org/doc/go1.2#thread_limit][the number of operating system threads]]
+[stack sizes](https://golang.org/doc/go1.2#stack_size) and
+[the number of operating system threads](https://golang.org/doc/go1.2#thread_limit)
should prevent misbehaving programs from consuming all the resources of a
machine. (These limits may be adjusted using new functions in the
-[[https://golang.org/pkg/runtime/debug][`runtime/debug` package]].)
+[`runtime/debug` package](https://golang.org/pkg/runtime/debug).)
-Finally, among the [[https://golang.org/doc/go1.2#library][many changes to the standard library]],
+Finally, among the [many changes to the standard library](https://golang.org/doc/go1.2#library),
significant changes include
-the new [[https://golang.org/doc/go1.2#encoding][`encoding` package]],
-[[https://golang.org/doc/go1.2#fmt_indexed_arguments][indexed arguments]] in `Printf` format strings, and
-some [[https://golang.org/doc/go1.2#text_template][convenient additions]] to the template packages.
+the new [`encoding` package](https://golang.org/doc/go1.2#encoding),
+[indexed arguments](https://golang.org/doc/go1.2#fmt_indexed_arguments) in `Printf` format strings, and
+some [convenient additions](https://golang.org/doc/go1.2#text_template) to the template packages.
-As part of the release, the [[http://play.golang.org/][Go Playground]] has been
+As part of the release, the [Go Playground](http://play.golang.org/) has been
updated to Go 1.2. This also affects services that use the Playground, such as
-[[http://tour.golang.org/][the Go Tour]] and this blog.
+[the Go Tour](http://tour.golang.org/) and this blog.
The update also adds the ability to use threads and the `os`, `net`, and
`unsafe` packages inside the sandbox, making it more like a real Go environment.
@@ -71,7 +72,7 @@ To everyone who helped make this release possible, from the many users who
submitted bug reports to the 116 (!) contributors who committed more than 1600
changes to the core: Your help is invaluable to the project. Thank you!
-_This_blog_post_is_the_first_of_the_
-[[http://blog.gopheracademy.com/day-01-go-1.2][Go Advent Calendar]],
-_a_series_of_daily_articles_presented_by_the_
-[[http://gopheracademy.com/][Gopher Academy]] _from_December_1_to_25._
+_This blog post is the first of the_
+[Go Advent Calendar](http://blog.gopheracademy.com/day-01-go-1.2),
+_a series of daily articles presented by the_
+[Gopher Academy](http://gopheracademy.com/) _from December 1 to 25._