From e207032589ed927a66d2f04ac3621872213c6b51 Mon Sep 17 00:00:00 2001
From: Brad Fitzpatrick
- When explicitly converting structs, tags are now ignored for structural type identity.
- See the language specification for details.
+ When explicitly converting a value from one struct type to another, as of Go 1. 8 the tags are ignored.
+ Thus two structs that differ only in their tags may be converted from one to the other:
The language specification now only requires that implementations
support up to 16-bit exponents in floating-point constants. This does not affect
@@ -65,7 +80,7 @@ Go now supports 32-bit MIPS on Linux for both big-endian
-Go now requires DragonFly BSD 4.4.4 or later.
+On DragonFly BSD, Go now requires DragonFly 4.4.4 or later.
@@ -195,11 +210,11 @@ added:
-The Vet is stricter in some ways and looser others which
- caused false positives. Vet is stricter in some ways and looser where it
+ previously caused false positives. Vet now checks copying of array of locks,
duplicate JSON and XML struct field tags,
@@ -265,7 +280,7 @@ all architectures.
The new back end, based on
-SSA,
+static single assignment form (SSA),
generates more compact, more efficient code
and provides a better platform for optimizations
such as bounds check elimination.
@@ -605,7 +620,7 @@ Optimizations and bug fixes are not listed.
the NTFS, UNIX, and Extended Time Stamp metadata fields.
When writing zip files, the Extended Time Stamp field is written
- if TODO: validate implementation.
+ for files with non-zero modification times.
Changes to the language
+func example() {
+ type T1 struct {
+ X int `json:"foo"`
+ }
+ type T2 struct {
+ X int `json:"bar"`
+ }
+ var v1 T1
+ var v2 T2
+ v1 = T1(v2) // now legal
+}
+
+
+
Yacc
yacc
tool (previously available via
+The yacc
tool (previously available by running
“go
tool
yacc
”)
has been removed. As of Go 1.7 it was no longer used by the Go compiler.
-It has moved to the “tools” repository and is and is available via
-go
get
golang.org/x/tools/cmd/goyacc
.
+It has moved to the “tools” repository and is now available at
+golang.org/x/tools/cmd/goyacc
.
Fix
@@ -243,8 +258,8 @@ cmd/trace: annotate different mark worker types (CL 30702)
Vet
-DB.BeginContext
.
An error will be returned if an isolation level is selected that the driver
does not support. A read-only attribute may also be set on the transaction
- with ReadOnlyContext
+ with ReadOnlyContext
.
Queries now expose the SQL column type information for drivers that support it.
@@ -821,7 +836,7 @@ crypto/x509: return error for missing SerialNumber (CL 27238)
Rows.Next
returns false,
Rows.NextResultSet
may be called to advance to the next result set. The existing Rows
- should be continued to be used after it advances to the next result set.
+ should continue to be used after it advances to the next result set.
NamedParam
may be used
@@ -841,7 +856,7 @@ crypto/x509: return error for missing SerialNumber (CL 27238)
The new Context
query methods work for all drivers, but
Context
cancelation is not responsive unless the driver has been
- updated to used them. The other features require driver support in
+ updated to use them. The other features require driver support in
database/sql/driver
.
Driver authors should review the new interfaces. Users of existing
driver should review the driver documentation to see what
@@ -883,9 +898,10 @@ crypto/x509: return error for missing SerialNumber (CL 27238)
- The package now supports boolean values.
- TODO: add docs in encoding/binary package, then link to package docs
- here.
+ Read
+ and
+ Write
+ now support booleans.
\\?\c:\*
",
EvalSymlinks
now
correctly handles "C:.
", and
- Clean
now properlys handles a leading "..
"
- in the path.
+ Clean
now properly
+ handles a leading "..
" in the path.