This release introduces some new features around proxy configuration and improved event API support.
New Features:
- Set a non-global proxy. New methods added to
BoxAPIConnection
allow for a non-global proxy to be set when making requests to the Box API. Basic HTTP authorization is also now support for proxies. - Improved events API support. The "created_at", "created_by", and "session_id" fields have been added to
BoxEvent
. Support was also added for some undocumented enterprise event fields. - Preflight checks. The methods
canUpload()
andcanUploadVersion()
can be used to perform a preflight check. This check helps ensure that a file can be uploaded before attempting to transfer all of its contents.
Bug Fixes:
- gzip encoded error messages are correctly handled. Previously, the bodies of error responses weren't decoded properly when gzipped.
- Groups are properly parsed when creating and retrieving collaborations. The "accessible_by" field of some collaborations was incorrectly parsed as a
BoxUser
instead of aBoxGroup
. - Fix intermittent OAuth refresh failures. Sometimes OAuth refresh would fail when performing a large number of sequential requests. This was particularly noticeable when long-polling a large number of events from the events API.
There is a known issue where calling stop()
on the EventStream
class won't immediately cancel the current long-polling request until it times out (usually after 10 minutes). This can be problematic in situations where a refresh needs to occur, since the current access token will remain locked (and unable to refresh) until the request times out.