0.6.7 - Oct 3, 2013

Updated Google Analytics and AdExchange Seller.

0.6.6 - Aug 15, 2013

Updated Google Analytics and Mirror.
Added Plus Domains.

0.6.5 - Jul 30, 2013

Small update to the backup cacerts.pem file to add a Geotrust CA

0.6.4 - Jul 23, 2013

- Fixed a bug breaking the OAuth2 endpoints for userinfo
- Fixed a bug with the memcache get function

0.6.3 - Jul 18, 2013

- Added Http Streams based implementation of Google_IO that can be used on
  Google AppEngine (thanks Stuart Langley!)
- Updates to several services and addition of new services

0.6.2 - Jun 3, 2013

- Updates for several API Services

0.6.1 - Feb 27, 2013

- Updates for several API Services
- Improve support for native file uploads via cURL.

0.6.0 - Oct 8, 2012

- Namespace all class names with "Google_"
- Add support for REST-Batch in the client library.
- Add support for service accounts in the PHP client.
- Remove support for OAuth 1.0a, with the introduction of service accounts.
- Add support for the adsensehost v4.1, and update the code samples.
- Add support for the Google+ sign-in button, and Google+ history
  (developer preview).
- Add support for the prn parameter in the AssertionCredentials.
- Add support for new APIs: Google Cloud Storage, Compute Engine.
- Add support for empty JSON responses.
- Improve test coverage of the API surface and API client.

0.5.0 - Mar 6, 2012

- Include certificates for validating SSL connections upon
  CURLE_SSL_CACERT errors.
- [fix  issue 81 ] Add the Google BigQuery Service.
- Safe-guard against http_build_query not being available. Ensure that the
  processed entity request was really updated
- [fix  issue 73 ] On some builds of PHP, http_build_query defaults to the
  delimiter "&amp;" instead of "&".
- Set the content-length for enclosed entity requests when the postBody is empty.
- Add support for the mediaUpload query parameter for media upload requests.
- Don't update tasks in the tasks sample.

0.4.9 (Beta) - Feb 10, 2012

- Force the delimiter used by http_build_query to be "&".
- Safe-guard against http_build_query not being available.
- Ensure that the processed  enclosed entity request was really updated.
- Expose the method for verifying id tokens.
- The token endpoint is having trouble with multipart/form-data. Switch
  to application/x-www-form-urlencoded.
- Add support for media uploads.
- Rewrite the http caching logic.

- Start to use the caching logic provided by the new apiCacheParser.php
- Introduce apiCacheParser::isRequestCacheable. Used to detect if an HTTP
  request is worth looking up in cache.
- Introduce apiCacheParser::mustRevalidate. Used to determine if a cache entry
  should be revalidated via If-None-Match or If-Modified-Since.
- Refactor apiCurlIO.php for testability.
- apiHttpRequest::getRequestHeaders() now returns an associative array.
- Strip out spurious "HTTP/1.0 200 Connection established" messages.
- Set the default content-type as application/x-www-form-urlencoded if one
  isn't provided. Transform the content to match the content-type header.

- Updated the AdSense Management API Service to the latest version and added
  code examples.
- Include the HTTP status code in rest exceptions.
- Only call date_default_timezone_set when date.timezone isnt populated.
- Clean up unit tests for Google+.
- Improved test coverage.

0.4.8.3 (Beta) - Jan 17, 2012

Features & Fixes
- Allow $optParams to be passed into all methods.
- Added support for nested resources in the generator.
- Remove the unnecessary need for $io and $auth from the generated service
  classes (Dramatically reduced the memory footprint of the client).
- Remove use of global variables in the SDK.
- Improved documentation for the SDK.
- Increase test coverage of the client library.
- Don't enforce pattern checks on parameters since the patterns in discovery
  aren't PCRE compliant.
- Update apiOAuth2 to reflect the latest changes in draft-ietf-oauth-v2-22.
  Clean up apiAuthNone.
- Expose the refreshToken method in the apiAuth interface.
- Add support for revoking OAuth2 access tokens and refresh tokens.
- Set the default timezone property as UTC, as it is required by time()
  and strtotime().

Samples
- Created a sample application for the Google Affiliate Network API.
- Created a sample application for the Google Analytics V3 API.
- Updated the batch sample application to use the Google+ APIs.
- Update the command-line OAuth2 sample to use the G+ apis, and clean it up.

0.4.8.2 - Jan 12, 2012

Features & Fixes
- Allow $optParams to be passed into all methods.
- Added support for nested resources in the generator.
- Remove the unnecessary need for $io and $auth from the generated service
  classes (Dramatically reduced the memory footprint of the client).
- Remove use of global variables in the SDK.
- Improved documentation for the SDK.
- Increase test coverage of the client library.
- Don't enforce pattern checks on parameters since the patterns in discovery
  aren't PCRE compliant.
- Update apiOAuth2 to reflect the latest changes in draft-ietf-oauth-v2-22.
  Clean up apiAuthNone.
- Expose the refreshToken method in the apiAuth interface.
- Add support for revoking OAuth2 access tokens and refresh tokens.
- Set the default timezone property as UTC, as it is required by time()
  and strtotime().

Samples
- Created a sample application for the Google Affiliate Network API.
- Created a sample application for the Google Analytics V3 API.
- Updated the batch sample application to use the Google+ APIs.
- Update the command-line OAuth2 sample to use the G+ apis, and clean it up.

0.4.8.1 - Jan 10, 2012

Features & Fixes
- Allow $optParams to be passed into all methods.
- Added support for nested resources in the generator.
- Remove the unnecessary need for $io and $auth from the generated service 
  classes (Dramatically reduced the memory footprint of the client).
- Remove use of global variables in the SDK.
- Improved documentation for the SDK.
- Increase test coverage of the client library.
- Don't enforce pattern checks on parameters since the patterns in discovery 
  aren't PCRE compliant.
- Update apiOAuth2 to reflect the latest changes in draft-ietf-oauth-v2-22. 
  Clean up apiAuthNone.
- Expose the refreshToken method in the apiAuth interface.
- Add support for revoking OAuth2 access tokens and refresh tokens.
- Set the default timezone property as UTC, as it is required by time() 
  and strtotime().

Samples
- Created a sample application for the Google Affiliate Network API.
- Created a sample application for the Google Analytics V3 API.
- Updated the batch sample application to use the Google+ APIs.
- Update the command-line OAuth2 sample to use the G+ apis, and clean it up.

0.4.8 - Jan 9, 2012

Features & Fixes
- Allow $optParams to be passed into all methods.
- Added support for nested resources in the generator.
- Remove the unnecessary need for $io and $auth from the generated service
  classes (Dramatically reduced the memory footprint of the client).
- Remove use of global variables in the SDK.
- Improved documentation for the SDK.
- Increase test coverage of the client library.
- Don't enforce pattern checks on parameters since the patterns in discovery
  aren't PCRE compliant.
- Update apiOAuth2 to reflect the latest changes in draft-ietf-oauth-v2-22.
  Clean up apiAuthNone.
- Expose the refreshToken method in the apiAuth interface.
- Add support for revoking OAuth2 access tokens and refresh tokens.
- Set the default timezone property as UTC, as it is required by time()
  and strtotime().

Samples
- Created a sample application for the Google Affiliate Network API.
- Created a sample application for the Google Analytics V3 API.
- Updated the batch sample application to use the Google+ APIs.
- Update the command-line OAuth2 sample to use the G+ apis, and clean it up.

0.4.7 - Nov 17, 2011

- Add support for two new parameters to the OAuth2 authorization URL.
  http://googlecode.blogspot.com/2011/10/upcoming-changes-to-oauth-20-endpoint.html
- Clean up the sample applications and upgrade the API class wrappers.
- Removed deprecated APIs.
- [fix  issue 39 ] - Fix the include path inside apiClient.php.
- [fix  issue 40 ] - Use the title property instead of name.
- Don't pretty print RPC requests by default.
- Replaces all use of gettype with is_* methods. (Performance improvement)
- Increase test coverage of apiREST.php.
- Improve documentation.
- Move common utility methods into apiUtils.php

0.4.6 - Nov 8, 2011

0.4.5 - Oct 4, 2011

- Add the Google+ example app.
- Add support for the OAuth2 state parameter.
- Update the generated Google+ wrapper.
- Fix the Google Buzz example apps.
- Remove the oauth2 standalone application in favor of the plus application,
  which demonstrates how to use oauth2.
- Clean up the client id setters.

0.4.4 - Sep 15, 2011

- Update the urlshortener example.
- Update all example apps to use the apiClient methods
  "setClientId/setClientSecret/setAuthClass".
- Update config.php to have a default value for the 'use_objects' property.
- Update the service classes to extend from apiService.
- Clean up formatting in the generated methods.
- Create a config flag to let the service classes return object classes
  (instead of arrays).
- Fix a typo in the tasks sample.

0.4.3 - Sep 13, 2011

- Update the urlshortener example.
- Update all example apps to use the apiClient methods 
  "setClientId/setClientSecret/setAuthClass".
- Update config.php to have a default value for the 'use_objects' property.
- Update the service classes to extend from apiService.
- Clean up formatting in the generated methods.
- Create a config flag to let the service classes return object classes 
  (instead of arrays).
- Fix a typo in the tasks sample.

0.4.2 - Sep 12, 2011

- Update the urlshortener example.
- Update all example apps to use the apiClient methods
  "setClientId/setClientSecret/setAuthClass".
- Update config.php to have a default value for the 'use_objects' property.
- Update the service classes to extend from apiService.
- Clean up formatting in the generated methods.
- Create a config flag to let the service classes return object classes
  (instead of arrays).
- Fix a typo in the tasks sample.

0.4.1 - Sep 6, 2011

- The scope https://www.googleapis.com/auth/latitude is now deprecated.
- Add a README file for the project.
- If an access token isn't present upon signing the API request, don't attempt
  to refresh a non-existent token.
- Let applications set the application_name property inside config.php (or
  through $apiClient->setApplicationName('my_app_name')).
- Allow application names to be included in the User-Agent header in
  HTTP requests.
- Add support for valid stack parameters that are useful for debugging
  API requests.
- Support repeated parameters as an array. Modified patch from Silvano Luciani.
- The scope https://www.googleapis.com/auth/latitude is now deprecated.
- Ensure that invalid access tokens aren't returned by getAccessToken().
- Add the Google URL Shortener example application
- Update the OAuth2 endpoints from https://www.google.com/accounts/o8/oauth2 to
  the new https://accounts.google.com/o/oauth2/
- Remove unnecessary parameters in the apiAuth#authenticate method.
- Update the service classes to extend from apiService.
- Clean up formatting in the generated methods.
- Create a config flag to let the service classes return object classes instead
  of arrays. (Example: $client->setUseObjects(true))

0.4 - Sep 2, 2011

- The scope https://www.googleapis.com/auth/latitude is now deprecated.
- Add a README file for the project.
- If an access token isn't present upon signing the API request, don't attempt 
  to refresh a non-existent token.
- Let applications set the application_name property inside config.php (or 
  through $apiClient->setApplicationName('my_app_name')).
- Allow application names to be included in the User-Agent header in 
  HTTP requests.
- Add support for valid stack parameters that are useful for debugging 
  API requests.
- Support repeated parameters as an array. Modified patch from Silvano Luciani.
- The scope https://www.googleapis.com/auth/latitude is now deprecated.
- Ensure that invalid access tokens aren't returned by getAccessToken().
- Add the Google URL Shortener example application
- Update the OAuth2 endpoints from https://www.google.com/accounts/o8/oauth2 to
  the new https://accounts.google.com/o/oauth2/
- Remove unnecessary parameters in the apiAuth#authenticate method.

0.3 - Aug 10, 2011

- Decreased unnecessary cache misses.
- Fixed Issue 2: Add support for the Search API for Shopping.
- Fixed Issue 3: Generator cannot handle . characters in parameter names.
- Fixed Issue 9: Pragma no-cache ignored by apiCurlIO.php
- Added a sample application for the Books API.
- Added a sample application for the Tasks API
- Added a sample application demonstrating OAuth2.
- Use fake named parameters for optional parameters.
  - Optional parameters are put inside the $optParams array.
  - Remove individual optional parameters from the functional declaration.
- Have all generated PHP model classes extend apiModel.php to inherit the
  default constructor.
- Clean up syntax errors and typos in apiFileCache, apiMemcacheCache,
  and apiApcCache.
- Add the member variable $service since it is used implicitly.
- Ensure that boolean parameters aren't coerced to '0' or '1'.
- The method is_empty is undefined. Use empty instead.
- Allow a model (generated by the discovery schema) get initialized from
  an array.
- Separate the logic for creating the authorization url to enable command-line
  OAuth2 applications.
- Group resource methods under a resource.
  All resource methods used to be dumped under the service class. Now, resource
  methods are grouped under a resource property. Example:
  $buzzService = new apiBuzzService();
  $activity = $buzzService->activities->get($activityId);
- Added functional tests for buzz, urlshortener, tasks, pagespeed

0.2 - Nov 8, 2010

0.1 - Oct 21, 2010
