v4.2.0
Python Support
Added
-
GlobusAppand SDK client classes now support usage as context managers, and feature a newclose()method to close internal resources.close()is automatically called on exit. (#1326)-
In support of this, token storages now all feature a
close()method, which does nothing in the default implementation.
Previously, only storages with underlying resources to manage featured aclose()method. -
GlobusAppwill close any token storage viaclose()if the token storage was created by the app on init. Explicitly created storages will not be closed and must be explicitly closed via theirclose()method. -
Any class inheriting from
BaseClientfeaturesclose(), which will close any transport object created during client construction. -
Transports which are created explicitly will not be closed by their clients, and must be explicitly closed.
-
-
Add
TimersClient.add_app_flow_user_scopeforTimersClientinstances which are integrated withGlobusApp. This method registers the specific flowuserscope dependency needed for a flow timer. (#1333) -
Added automatic Globus Auth Requirements Error (GARE) redriving to GlobusApp (#1339).
- More details available at
globus_app_gare_integration - This feature is disabled by default but can be turned on by setting
auto_retry_gares=Truein a GlobusAppConfig.
- More details available at
Fixed
- Fixed a resource leak in which a
GlobusAppwould create internal client objects and never close the associated transports. (#1326)
Development
- Added a new
make installrecipe.