Usergrid 1.0.2
--------------------------------------------------------------------------------

Usergrid 1.0.2
--------------------------------------------------------------------------------

Usergrid 1.0.2
--------------------------------------------------------------------------------


Usergrid 1.0.2
--------------------------------------------------------------------------------

Usergrid 1.0.2 is a minor release with bug fixes and small improvements.
Here are the highlights:

Bugs fixed

* S3 upload fails on OpenJDK and Java 8 (fixed by JClouds upgrade)
* Asset data deleted when connection to Asset deleted
* Portal stores app password as clear-text

Improvements

* Cassandra key-space names are now configurable

New features

* ExportAdmins: a new tool to export Admin Users, credentials and organizations
* ImportAdmins: a new tool to import Admin Users, credentials and organizations
* Central SSO: Usergrid-Usergrid SSO via new /management/externaltoken end-point

Here's the full list of JIRA issues resolved:
https://issues.apache.org/jira/issues/?jql=project%3Dusergrid%20and%20fixVersion%3D1.0.2

Usergrid 1.0.1
--------------------------------------------------------------------------------

Except for our shiny new PHP5 SDK, Usergrid 1.0.1 is mostly a bug fix release.
Here are the highlights:

* New PHP5 SDK - new SDK is a Guzzle Web service descriptor so any Usergrid API 
  calls can be added with ease.

* Original PHP SDK - added URL endpoint update functionality.

* Node.js SDK - Bug fix: calcTimeDiff changed to return seconds correctly
* Node.js SDK - Bug fix: getOnExist was sending wrong data value to server.

* Android SDK Updated from Apigee source. Numerous bug fixes and enhancements.

* Docs moved to readthedocs.org: http://usergrid.readthedocs.org/en/latest/.

* Admin portal - Changed default config to point to localhost.
* Admin portal - Build now created as zip file during build process.

* Stack - Bug fix: Launcher now works, uses Admin portal hosted on ASF Infra.
* Stack - Bug fix: reset password will now work with or without reCaptcha keys.
* Stack - Build now works with latest versions of Maven.
* Stack - Build now supports property for configurable argline parameters. 
* Stack - Build now sets java.awt.headless to prevent forkedbooter popups.
