close
The Wayback Machine - https://web.archive.org/web/20140703181637/https://code.google.com/p/googleappengine/wiki/SdkForGoReleaseNotes
My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
SdkForGoReleaseNotes  
Go App Engine SDK Release notes
Go
Updated Jun 3, 2014 by richm...@google.com

Go SDK Release Notes

Version 1.9.6 - June 2014

appengine/datastore:

  • Support entity values whose underlying type is []byte.
appengine/search:
  • Implement IDsOnly and Limit options for List and Search.

Version 1.9.5 - May 2014

appengine/datastore:

  • Add Query.EventualConsistency method for ancestor queries.
  • Change GeoPoint storage to be consistent with other runtimes.
  • Data stored before this release will have Lat and Lng reversed.

Version 1.9.4 - April 2014

appengine/datastore:

  • Add Key.Namespace method.

Version 1.9.3 - April 2014

appengine/datastore:

  • Support appengine.GeoPoint as an entity property type.
appengine/aetest:
  • Removed aetest.Options.User and add aetest.Context.Login and aetest.Context.Logout.

Version 1.9.2 - April 2014

appengine:

  • Add GeoPoint type.
appengine/search:
  • Support appengine.GeoPoint as a document field type.
  • Add FieldLoadSaver interface and FieldList type.

Version 1.9.1 - March 2014

This release is based on Go 1.2.1.

appengine/log:

  • Add Record.InstanceID.

Version 1.9.0 - February 2014

This release is based on Go 1.2.

appengine/module:

  • Add SetNumInstances, Versions, DefaultVersion, Start and Stop functions.

Version 1.8.9 - January 2014

appengine/remote_api:

  • Add NewRemoteContext function.

Version 1.8.8 - November 2013

appengine/mail:

  • Add Attachment.ContentID field.

Version 1.8.7 - November 2013

appengine/socket:

  • Add SetContext method.
Other:
  • Support goapp serve and goapp deploy.

Version 1.8.6 - October 2013

appengine:

  • Add ModuleName and ModuleHostname functions.
appengine/aetest:
  • New package for testing with a local api_server.py.
appengine/module:
  • New package.
appengine/search:
  • Add Index.List method and ListOptions.StartID field.
  • Add Iterator.Count method.
Other:
  • Support "goapp build", "goapp install", and "goapp test".

Version 1.8.5 - September 2013

appengine:

  • Add PublicCertificates function.
appengine/conversion:
  • Remove package.
appengine/search:
  • Add namespace support.
appengine/taskqueue:
  • Add ErrTaskAlreadyAdded var.

Version 1.8.4 - September 2013

appengine/search:

  • New package.

Version 1.8.3 - August 2013

appengine:

  • Add IsTimeoutError function.
appengine/cloudsql:
  • New package for CloudSQL support.
appengine/datastore:
  • Reject datastore keys, property names, or property string values that are not valid UTF-8.

Version 1.8.2 - July 2013

appengine:

  • Add Timeout function for overriding the default API RPC timeout.
appengine/datastore:
  • Support Kindless queries.

Version 1.8.1 - June 2013

This release is based on Go 1.1.

appengine/blobstore:

  • Add StorageBucket to UploadURLOptions struct.
appengine/datastore:
  • Allow Property.Value to be the nil interface value, for compatibility with datastore entities created by other languages.
  • Support Projection and Distinct Projection queries.
appengine/memcache:
  • Stop populating Expiration field of fetched items.

Version 1.8.0 - May 2013

appengine/blobstore:

  • Add BlobKeyForFile function.
appengine/mail:
  • Add SendToAdmins function.
appengine/taskqueue:
  • Permit "" as an alias for the default queue throughout.
  • Deprecate the maxTasks argument of QueueStats; it is now ignored.

Version 1.7.7 - April 2013

appengine/file:

  • Add Delete function.
appengine/log:
  • Expose AppEngineRelease.

Version 1.7.6 - March 2013

appengine/datastore:

  • Support nested and embedded structs.
dev_appserver:
  • Update to version 2. Amongst other things, it can now serve concurrent HTTP requests.

Version 1.7.5 - February 2013

appengine:

  • Add Namespace function for multitenancy support.
    • Make Context's Call method take appengine_internal.ProtoMessage arguments. This is an internal-only method, so should not affect correct applications, but will permit wrapping Context's Call method.
appengine/conversion:
  • Remove this package from the SDK following the decommissioning of the API in 1.7.4.
appengine/datastore:
  • Support multitenancy.
appengine/memcache:
  • Support multitenancy.
appengine/taskqueue:
  • Add DeleteMulti function.
  • Support multitenancy.
appengine/xmpp:
  • Add GetPresenceMulti function.

Version 1.7.4 - December 2012

appengine/log:

  • Add Query.RequestIDs field.
appengine/socket:
  • Support dialing IPv6 addresses.
  • Implement LocalAddr and RemoteAddr methods.
Other:
  • Respect $GOPATH for dev_appserver and appcfg update.

Version 1.7.3 - October 2012

appengine:

  • Add AccessToken, ServiceAccount and SignBytes functions.
appengine/log:
  • Remove the deprecated Record.APIMCycles field.
appengine/memcache:
  • Add Flush function.
appengine/socket:
  • New package.

Version 1.7.2 - September 2012

No changes.

Version 1.7.1 - August 2012

appengine:

  • Add RequestID function.
  • Make Context's Call method take proto.Message arguments. This is an internal-only method, so should not affect correct applications.
appengine/datastore:
  • Mark noindex string fields as Text so that the Datastore Viewer can display them.
  • Make GetAll not return early when encountering ErrFieldMismatch.
appengine/image:
  • New package.
appengine/log:
  • Deprecate Record.APIMCycles.
appengine/memcache:
  • Add Codec methods SetMulti, AddMulti, CompareAndSwap, CompareAndSwapMulti.
appengine/remote_api:
  • New package.
appengine/runtime:
  • Add RunInBackground function.
`appengine/user:
  • Add OAuth user support.
  • Add Admin to User struct.
appengine/xmpp:
  • Add RawXML support.
  • Add presence support.

Version 1.7.0 - June 2012

appengine/datastore:

  • Allow storage of time.Time values from before January 1, 1970, including the zero time.Time value.
appengine/delay:
  • Fix handling of nil arguments.
appengine/file:
  • New package for Google Cloud Storage.
appengine/taskqueue:
  • Add QueueStats function.

Version 1.6.6 - May 2012

appengine/delay:

  • Add Task method for finer control over execution.
appengine/mail:
  • Add support for setting mail headers.
appengine/taskqueue:
  • Observe Task.ETA field when adding a task to a push queue.
  • Enforce that a Task's Delay and ETA fields are mutually exclusive.

Version 1.6.5 - April 2012

No changes.

Version 1.6.4 - March 2012

This release is based on Go 1.

appengine:

  • Remove the AppID method on Context.
  • Add MultiError type.
  • Add InstanceID, Datacenter and ServerSoftware functions.
appengine/datastore:
  • Add cursors.
  • Add AllocateIDs function.
  • Allow (*datastore.Key)(nil) as a storable value.
  • Allow GetMulti, PutMulti and GetAll to take PropertyLoadSavers, not just structs. Their slice argument can now be a []T, not just a []interface{}.
  • Allow Iterator.Next to take a nil destination for all queries, not just keys-only queries.
  • Make queries immutable. Query methods like Filter and Order return a new value instead of modifying the receiver. Use an assignment such as q = q.Offset(1) instead of a bare statement like q.Offset(1).
  • Change the meaning of Query.Limit(0) from "unlimited" to "no results" and change the meaning of Query.Limit(-1) from being an error to "unlimited". Unlimited is still the default behavior.
  • Remove datastore.Time in favour of time.Time.
  • Remove the deprecated Map type. Use a PropertyList instead.
  • Rename Eq method of Key to Equal.
appengine/log:
  • Convert to using time.Duration and time.Time throughout.
appengine/mail:
  • Support HTML mail.
appengine/memcache:
  • Change Item.Expiration's type from int32 seconds to time.Duration. (Code may still compile, but will likely be wrong, expiring items immediately, interpreting seconds as nanoseconds)
  • Make functions uniformly return error, using appengine.MultiError for batch operations.
appengine/taskqueue:
  • Rename LeaseTasks, LeaseTasksByTag and ModifyTaskLease to Lease, LeaseByTag and ModifyLease respectively.
  • Convert to using time.Duration and time.Time throughout.
appengine/urlfetch:
  • Change Transport.DeadlineSeconds from float64 to time.Duration, and rename it to Deadline.
appengine/user:
  • Rename Id field of User struct to ID.
appengine/xmpp:
  • Remove ChatHandler, and rename RegisterChatHandler to Handle.
  • Remove SendMessageError. Use appengine.MultiError instead.

Version 1.6.3 - February 2012

No changes.

Version 1.6.2 - January 2012

appengine/taskqueue:

  • Add AddMulti function for bulk task adding.

Version 1.6.1 - December 2011

appengine/conversion:

  • New package.
appengine/delay:
  • Fix calling delayed variadic functions.
Other:
  • Explicitly break http.DefaultClient to make dev and prod consistent.

Version 1.6.0 - November 2011

This release is based on Go release.r60.3.

appengine:

  • Add backend identity functions: BackendInstance, BackendHostname.
appengine/blobstore:
  • Make ParseURL return url.Values instead of map[string][]string.
appengine/datastore:
  • Add `datastore:"name,options"` struct field tags.
  • Add Property, PropertyList and PropertyLoadSaver types.
  • Deprecate Map. Use a PropertyList instead.
  • Remove the Key field from ErrFieldMismatch.
appengine/memcache:
  • Add Increment and IncrementExisting functions.
appengine/runtime:
  • New package.
appengine/xmpp:
  • New package.
Other:
  • Support backends.

Version 1.5.5 - October 2011

This release changed to api_version 3, based on Go release.r60.2.

appengine/blobstore:

  • Add an options parameter to UploadURL for controlling maximum upload size.
appengine/datastore:
  • Add an appengine.Context argument to the NewKey and NewIncompleteKey functions.
  • Add an options parameter to RunInTransaction to allow cross-group transactions.
  • Add a parent argument to the NewIncompleteKey function.
  • Allow long slice fields. The total length of all indexed properties may now be up to 5000 elements.
appengine/log:
  • New package.
appengine/urlfetch:
  • Respect fetch deadline.

Version 1.5.4 - September 2011

appengine/blobstore:

  • Fix time units in Stat.
appengine/mail:
  • Support attachments.
Other:
  • Report duplicate package names better in go-app-builder.

Version 1.5.3 - August 2011

appengine:

  • Add app identity functions: AppID, VersionID, DefaultVersionHostname.
appengine/datastore:
  • Fix construction of incomplete keys with parents.
appengine/delay:
  • Check argument types at Call time.
  • Retry delayed functions if they return a non-nil os.Error.
Other:
- Report package dependency cycles in go-app-builder.

1.5.2 - 21 July 2011

appengine/datastore:

  • Add Python-compatible key encoding/decoding.
  • Add ancestor queries.
  • Allow GetAll to take a slice of Maps.
  • Fix handling of incomplete keys with parents during Put and PutMulti.
  • Make Key work with the gob and json packages.
appengine/memcache:
  • Add Delete and DeleteMulti functions.

1.5.1 - 20 June 2011

appengine:

  • Replace Context's Logf method with Debugf/Infof/Warningf/Errorf/Criticalf.
appengine/capability:
  • New package.
appengine/datastore:
  • Add batch operations.
  • Add transactions.
appengine/delay:
  • New package.
appengine/memcache:
  • Add GetStats function.
appengine/taskqueue:
  • Add Delay field to Task.
  • Give leased tasks a method of PULL.
  • Return the fully-populated equivalent Task from Add.
appengine/urlfetch:
  • Remove error types.
Other:
  • Set the RemoteAddr field of http.Request correctly in the dev_appserver.

Powered by Google Project Hosting