Globus-sdk

Latest version: v3.50.0

Safety actively analyzes 701475 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 16

3.21.0

--------------------

Added
~~~~~

* ``AuthAPIError`` will now parse a unique ``id`` found in the error
subdocuments as the ``request_id`` attribute (:pr:`749`)

* Add a ``FlowsClient.update_run()`` method. (:pr:`744`)

* Add a ``FlowsClient.delete_run()`` method. (:pr:`747`)

* Add a ``FlowsClient.cancel_run()`` method. (:pr:`747`)

* Add an ``experimental`` subpackage. (:pr:`751`)

.. _changelog-3.20.1:

3.20.1

--------------------

Fixed
~~~~~

* Fix ``TransferClient.operation_mkdir`` and ``TransferClient.operation_rename`` to no
longer send null ``local_user`` by default (:pr:`741`)

.. _changelog-3.20.0:

3.20.0

--------------------

Added
~~~~~

* Implemented ``FlowsClient.get_run(...)`` (:pr:`721`)

* Implemented ``FlowsClient.get_run_logs(...)`` (:pr:`722`)

* Implemented ``SpecificFlowClient.resume_run(...)`` (:pr:`723`)

* ``ConsentRequiredInfo`` now accepts ``required_scope`` (singular) containing
a single string as an alternative to ``required_scopes``. However, it will
parse both formats into a ``required_scopes`` list. (:pr:`726`)

* ``FlowsClient.list_flows`` now supports passing a non-string iterable of
strings to ``orderby`` in order to indicate multiple orderings (:pr:`730`)

* Support ``pathlib.Path`` objects as filenames for the JSON and sqlite token
storage adapters. (:pr:`734`)

* Several ``TransferClient`` methods, ``TransferData``, and ``DeleteData`` now
support the ``local_user``, ``source_local_user``, and
``destination_local_user`` parameters (:pr:`736`)

Changed
~~~~~~~

* Behavior has changed slightly specifically for ``TimerAPIError``. When parsing
fails, the ``code`` will be ``Error`` and the ``messages`` will be empty. The
``detail`` field will be treated as the ``errors`` array for these errors
when it is present and contains an array of objects.

* Error parsing in the SDK has been enhanced to better support JSON:API and
related error formats with multiple sub-errors. Several attributes are
added or changed. For most SDK users, the changes will be completely
transparent or a minor improvement. (:pr:`725`)

* Error parsing now attempts to detect the format of the error data and will
parse JSON:API data differently from non-JSON:API data. Furthermore,
parsing is stricter about the expectations about fields and their types.
JSON:API parsing now has its own distinct parsing path, followed only when
the JSON:API mimetype is present.

* A new attribute is added to API error objects, ``errors``. This is a list
of subdocuments parsed from the error data, especially relevant for
JSON:API errors and similar formats. See the
:ref:`ErrorSubdocument documentation <error_subdocuments>` for details.

* A new attribute is now present on API error objects, ``messages``. This is
a list of messages parsed from the error data, for errors with multiple
messages. When there is only one message, ``messages`` will only contain
one item.

* The ``message`` field is now an alias for a joined string of
``messages``. Assigning a string to ``message`` is supported for error
subclasses, but is deprecated.

* ``message`` will now be ``None`` when no messages can be parsed from the error data.
Previously, the default for ``message`` would be an alias for ``text``.

* All error types now support ``request_id`` as an attribute, but it will
default to ``None`` for errors which do not include a ``request_id``.

* An additional field is checked by default for error message data,
``title``. This is useful when errors contain ``title`` but no
``detail`` field. The extraction of messages from errors has been made
stricter, especially in the JSON:API case.

* The ``code`` field of errors will no longer attempt to parse only the first
``code`` from multiple sub-errors. Instead, ``code`` will first parse a
top-level ``code`` field, and then fallback to checking if *all* sub-errors
have the same ``code`` value. The result is that certain errors which would
populate a non-default ``code`` value no longer will, but the ``code`` will
also no longer be misleading when multiple errors with different codes are
present in an error object.

* The ``code`` field of an error may now be ``None``. This is specifically
possible when the error format is detected to be known as JSON:API and
there is no ``code`` present in any responses.

Fixed
~~~~~

* The TransferRequestsTransport will no longer automatically retry errors with a code of EndpointError

* Fix pagination on iterable gcs client routes (:pr:`738`, :pr:`739`)

* ``GCSClient.get_storage_gateway_list``

* ``GCSClient.get_role_list``

* ``GCSClient.get_collection_list``

* ``GCSClient.get_user_credential_list``


.. _changelog-3.19.0:

3.19.0

--------------------

Added
~~~~~

* Added ``FlowsClient.update_flow(...)`` (:pr:`710`)

* Support passing "include" as a transfer ``filter_rule`` method (:pr:`712`)

* Make the request-like interface for response objects and errors more uniform. (:pr:`715`)

* Both ``GlobusHTTPResponse`` and ``GlobusAPIError`` are updated to ensure
that they have the following properties in common: ``http_status``,
``http_reason``, ``headers``, ``content_type``, ``text``

* ``GlobusHTTPResponse`` and ``GlobusAPIError`` have both gained a new
property, ``binary_content``, which returns the unencoded response data as
bytes

Deprecated
~~~~~~~~~~

* ``GlobusAPIError.raw_text`` is deprecated in favor of ``text``

Fixed
~~~~~

* The return type of ``AuthClient.get_identities`` is now correctly annotated as
an iterable type, ``globus_sdk.GetIdentitiesResponse`` (:pr:`716`)

Documentation
~~~~~~~~~~~~~

* Documentation for client methods has been improved to more consistently
format and display examples and other information (:pr:`714`)

.. _changelog-3.18.0:

3.18.0

--------------------

Added
~~~~~

* ``ConfidentialAppAuthClient.oauth2_get_dependent_tokens`` now supports the
``refresh_tokens`` parameter to enable requests for dependent refresh tokens (:pr:`698`)

Changed
~~~~~~~

* Behaviors which will change in version 4.0.0 of the ``globus-sdk`` now emit
deprecation warnings.

* ``TransferData.add_item`` now defaults to omitting ``recursive`` rather than
setting its value to ``False``. This change better matches new Transfer API
behaviors which treat the absence of the ``recursive`` flag as meaning
autodetect, rather than the previous default of ``False``. Setting the
recursive flag can still have beneficial behaviors, but should not be
necessary for many use-cases (:pr:`696`)

Deprecated
~~~~~~~~~~

* Omitting ``requested_scopes`` or specifying it as ``None`` is now deprecated
and will emit a warning. In version 4, users will always be required to
specify their scopes when performing login flows. This applies to the
following methods:

* ``ConfidentialAppAuthClient.oauth2_client_credentials_tokens``
* ``AuthClient.oauth2_start_flow``

* ``SearchClient.update_entry`` and ``SearchClient.create_entry`` are
officially deprecated and will emit a warning. These APIs are aliases of
``SearchClient.ingest``, but their existence has caused confusion. Users are
encouraged to switch to ``SearchClient.ingest`` instead (:pr:`695`)

Fixed
~~~~~

* When users input empty ``requested_scopes`` values, these are now rejected
with a usage error instead of being translated into the default set of
``requested_scopes``

* Fix the type annotation for ``max_sleep`` on client transports to allow ``float``
values (:pr:`697`)

.. _changelog-3.17.0:

3.17.0

--------------------

Python Support
~~~~~~~~~~~~~~

* Remove support for python3.6 (:pr:`681`)

Added
~~~~~

* ``MutableScope`` objects can now be used in the ``oauth2_start_flow`` and
``oauth2_client_credentials_tokens`` methods of ``AuthClient`` classes as part
of ``requested_scopes`` (:pr:`689`)

Changed
~~~~~~~

* Make ``MutableScope.scope_string`` a public instance attribute (was
``_scope_string``) (:pr:`687`)

* Globus Groups methods which required enums as arguments now also accept
a variety of ``Literal`` strings in their annotations as well. This is
coupled with changes to ensure that strings and enums are always serialized
correctly in these cases. (:pr:`691`)

Fixed
~~~~~

* Fix a typo in ``TransferClient.endpoint_manager_task_successful_transfers``
which prevented calls from being made correctly (:pr:`683`)

.. _changelog-3.16.0:

Page 6 of 16

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.