1.0.5-beta - Sep 8, 1014

Pulls in many smaller bugfixes, and a notable change to make the collection type handling more accurate in the service classes, and better handling of HTTP proxies in some versions of cURL.


1.0.4-beta - Mar 7, 2014

Restored cURL option for IO, added support for custom certificates file, updated default certificate file, added two different configuration variables to enable/disable gzip in requests and upload requests.


1.0.3-beta - Jan 30, 2014

Fixed an issue where array types weren't converting their member objects properly that was causing major problems with the YouTube API, and an issue with errors for APIs which don't return error details. (issues reported in #52, #57).


1.0.2-beta - Jan 24, 2014

Fixes for upload issues reported in #50 and #59. Gzip is now automatically disabled for upload requests.


1.0.1-beta - Jan 22, 2014

Tagging the first beta release of the 1.0 branch of the SDK.


1.0.0-alpha - Nov 13, 2013


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
