Skip to content

v1.0.0

Compare
Choose a tag to compare
@alexander-fenster alexander-fenster released this 13 Jan 00:40
0ff81ca

General Availability

The Spanner library is now considered to be General Availability (GA). This means it is stable; the code surface will not change in backwards-incompatible ways unless absolutely necessary (e.g. because of critical security issues) or with an extensive deprecation period. Issues and requests against GA libraries are addressed with the highest priority.

Breaking change

toJson() will not wrap integers and floats into objects by default. Example of the change in the JSON returned by toJson():

 {
   "boolValue": false,
   "stringValue": "Hello",
-  "intValue": {
-    "value": "42"
-  },
+  "intValue": 42,
-  "floatValue": {
-    "value": "3.14"
-  }
+  "floatValue": 3.14
 }

You can still ask toJson() to wrap numbers by providing an option object to toJSON() specifying wrapNumbers: true. You should do it if you expect that you will work with integers greater than Number.MAX_SAFE_INTEGER, as toJSON() will throw an exception if asked to convert an integer when it's not safe to do that without losing precision. See #80 for details.

Fixes

  • (#2644) Increased timeout to match timeout in config file
  • (#18) Spanner library should have a way to track leaked sessions
  • (#78) SessionPool acquireQueue concurrency limit causes sessions to pile up under load
  • (#80) RowBuilder.toJSON should return un-wrapped Floats and Ints