From 3926f60d1029c4c53a1a636b88328300dca5516a Mon Sep 17 00:00:00 2001 From: m1yag1 <8730430+m1yag1@users.noreply.github.com> Date: Thu, 10 Jul 2025 13:37:08 -0500 Subject: [PATCH] Bump version and changelog for release --- ...specific_flow_data_access_scope_helper.rst | 7 -- ...0603_181734_sirosen_split_scope_parser.rst | 35 ------- ...n_remove_deprecated_scope_parser_alias.rst | 5 - ...cke_sc_15807_transfer_missing_defaults.rst | 4 - .../20250611_012221_sirosen_utils_cleanup.rst | 8 -- ...5_sirosen_remove_transfer_client_param.rst | 5 - ...3_112759_sirosen_auth_missing_defaults.rst | 5 - ...1204_sirosen_service_scopes_collection.rst | 13 --- ...3132_sirosen_service_scopes_collection.rst | 14 --- changelog.rst | 95 +++++++++++++++++++ pyproject.toml | 2 +- 11 files changed, 96 insertions(+), 97 deletions(-) delete mode 100644 changelog.d/20250415_155555_sirosen_add_specific_flow_data_access_scope_helper.rst delete mode 100644 changelog.d/20250603_181734_sirosen_split_scope_parser.rst delete mode 100644 changelog.d/20250605_091936_sirosen_remove_deprecated_scope_parser_alias.rst delete mode 100644 changelog.d/20250605_142657_max.tuecke_sc_15807_transfer_missing_defaults.rst delete mode 100644 changelog.d/20250611_012221_sirosen_utils_cleanup.rst delete mode 100644 changelog.d/20250620_104615_sirosen_remove_transfer_client_param.rst delete mode 100644 changelog.d/20250623_112759_sirosen_auth_missing_defaults.rst delete mode 100644 changelog.d/20250624_011204_sirosen_service_scopes_collection.rst delete mode 100644 changelog.d/20250625_123132_sirosen_service_scopes_collection.rst diff --git a/changelog.d/20250415_155555_sirosen_add_specific_flow_data_access_scope_helper.rst b/changelog.d/20250415_155555_sirosen_add_specific_flow_data_access_scope_helper.rst deleted file mode 100644 index 20f439e07..000000000 --- a/changelog.d/20250415_155555_sirosen_add_specific_flow_data_access_scope_helper.rst +++ /dev/null @@ -1,7 +0,0 @@ -Added ------ - -- ``SpecificFlowClient`` has a new method, - ``add_app_transfer_data_access_scope`` which facilitates declaration of scope - requirements when starting flows which interact with collections that need - ``data_access`` scopes. (:pr:`1166`) diff --git a/changelog.d/20250603_181734_sirosen_split_scope_parser.rst b/changelog.d/20250603_181734_sirosen_split_scope_parser.rst deleted file mode 100644 index 5b3032cbd..000000000 --- a/changelog.d/20250603_181734_sirosen_split_scope_parser.rst +++ /dev/null @@ -1,35 +0,0 @@ -Changed -------- - -- ``Scope`` objects are now immutable. (:pr:`1208`) - - - ``Scope.dependencies`` is now a tuple, not a list. - - - The ``add_dependency`` method has been removed, since mutating a ``Scope`` - is no longer possible. - - - A new evolver method, ``Scope.with_dependency`` has been added. It extends - the ``dependencies`` tuple in a new ``Scope`` object. - - - A batch version of ``Scope.with_dependency`` has been added, - ``Scope.with_dependencies``. - - - An evolver for the ``optional`` field of a ``Scope`` is also now available, - named ``Scope.with_optional``. - -- Scope parsing has been separated from the main ``Scope`` class into a - dedicated ``ScopeParser`` which provides parsing methods. (:pr:`1208`) - - - Use ``globus_sdk.scopes.ScopeParser`` for complex parsing use-cases. The - ``ScopeParser.parse`` classmethod parses strings into lists of scope - objects. - - - ``Scope.merge_scopes`` has been moved to ``ScopeParser.merge_scopes``. - - - ``Scope.parse`` is changed to call ``ScopeParser.parse`` and verify that - there is exactly one result, which it returns. This means that - ``Scope.parse`` now returns a single ``Scope``, not a ``list[Scope]``. - - - ``Scope.serialize`` and ``Scope.deserialize`` have been removed as methods. - Use ``str(scope_object)`` as a replacement for ``serialize()`` and - ``Scope.parse`` as a replacement for ``deserialize()``. diff --git a/changelog.d/20250605_091936_sirosen_remove_deprecated_scope_parser_alias.rst b/changelog.d/20250605_091936_sirosen_remove_deprecated_scope_parser_alias.rst deleted file mode 100644 index a667af94e..000000000 --- a/changelog.d/20250605_091936_sirosen_remove_deprecated_scope_parser_alias.rst +++ /dev/null @@ -1,5 +0,0 @@ -Removed -------- - -- ``globus_sdk.experimental.scope_parser`` has been removed. Use - ``globus_sdk.scopes`` instead. (:pr:`1236`) diff --git a/changelog.d/20250605_142657_max.tuecke_sc_15807_transfer_missing_defaults.rst b/changelog.d/20250605_142657_max.tuecke_sc_15807_transfer_missing_defaults.rst deleted file mode 100644 index f27b81ad4..000000000 --- a/changelog.d/20250605_142657_max.tuecke_sc_15807_transfer_missing_defaults.rst +++ /dev/null @@ -1,4 +0,0 @@ -Breaking Changes ----------------- - -- All defaults of ``None`` converted to ``globus_sdk.MISSING`` for all payload types in the Transfer client. (:pr:`1216`) diff --git a/changelog.d/20250611_012221_sirosen_utils_cleanup.rst b/changelog.d/20250611_012221_sirosen_utils_cleanup.rst deleted file mode 100644 index f036d583b..000000000 --- a/changelog.d/20250611_012221_sirosen_utils_cleanup.rst +++ /dev/null @@ -1,8 +0,0 @@ -Changed -------- - -- Payload types now inherit from ``dict`` rather than ``UserDict``. The - ``PayloadWrapper`` utility class has been replaced with ``Payload``. - (:pr:`1222`) -- Payload types are more consistent about encoding missing values using ``MISSING``. - (:pr:`1222`) diff --git a/changelog.d/20250620_104615_sirosen_remove_transfer_client_param.rst b/changelog.d/20250620_104615_sirosen_remove_transfer_client_param.rst deleted file mode 100644 index 34f23b1a4..000000000 --- a/changelog.d/20250620_104615_sirosen_remove_transfer_client_param.rst +++ /dev/null @@ -1,5 +0,0 @@ -Breaking Changes ----------------- - -- The ``transfer_client`` parameter to ``TransferData`` and ``DeleteData`` has been removed. - See the upgrading doc for transition details. (:pr:`1236`) diff --git a/changelog.d/20250623_112759_sirosen_auth_missing_defaults.rst b/changelog.d/20250623_112759_sirosen_auth_missing_defaults.rst deleted file mode 100644 index 690e66c13..000000000 --- a/changelog.d/20250623_112759_sirosen_auth_missing_defaults.rst +++ /dev/null @@ -1,5 +0,0 @@ -Breaking Changes ----------------- - -- In Globus Auth client classes, defaults of ``None`` are converted to - ``MISSING`` for optional fields. (:pr:`1236`) diff --git a/changelog.d/20250624_011204_sirosen_service_scopes_collection.rst b/changelog.d/20250624_011204_sirosen_service_scopes_collection.rst deleted file mode 100644 index d8d65c5bc..000000000 --- a/changelog.d/20250624_011204_sirosen_service_scopes_collection.rst +++ /dev/null @@ -1,13 +0,0 @@ -Changed -------- - -- The SDK's ``ScopeBuilder`` types have been replaced with - ``StaticScopeCollection`` and ``DynamicScopeCollection`` types. (:pr:`NUMBER`) - - - Scopes provided as constants by the SDK are now ``Scope`` objects, not - strings. They can be converted to strings trivially with ``str(scope)``. - - - The various scope builder types have been renamed. ``SpecificFlowScopes``, - ``GCSEndpointScopes``, and ``GCSCollectionScopes`` replace - ``SpecificFlowScopeBuilder``, ``GCSEndpointScopeBuilder``, and - ``GCSCollectionScopeBuilder``. diff --git a/changelog.d/20250625_123132_sirosen_service_scopes_collection.rst b/changelog.d/20250625_123132_sirosen_service_scopes_collection.rst deleted file mode 100644 index 03bfb40d9..000000000 --- a/changelog.d/20250625_123132_sirosen_service_scopes_collection.rst +++ /dev/null @@ -1,14 +0,0 @@ -Changed -------- - -- The ``ScopeBuilder`` types have been simplified and improved as the new - ``ScopeCollection`` types. (:pr:`NUMBER`) - - - ``ScopeBuilder`` is replaced with ``StaticScopeCollection`` and - ``DynamicScopeCollection``. The ``scopes`` attribute of client classes is - now a scope collection. - - - The attributes of ``ScopeCollection``\s are ``Scope`` objects, not strings. - - - ``ScopeCollection``\s define ``__iter__``, yielding the provided scopes, - but not ``__str__``. diff --git a/changelog.rst b/changelog.rst index b8ab4af6c..2c38c002b 100644 --- a/changelog.rst +++ b/changelog.rst @@ -12,6 +12,101 @@ to a major new version of the SDK. .. scriv-insert-here +.. _changelog-4.0.0a3: + +v4.0.0a3 (2025-07-10) +===================== + +Breaking Changes +---------------- + +- All defaults of ``None`` converted to ``globus_sdk.MISSING`` for all payload types in the Transfer client. (:pr:`1216`) + +- The ``transfer_client`` parameter to ``TransferData`` and ``DeleteData`` has been removed. + See the upgrading doc for transition details. (:pr:`1236`) + +- In Globus Auth client classes, defaults of ``None`` are converted to + ``MISSING`` for optional fields. (:pr:`1236`) + +Added +----- + +- ``SpecificFlowClient`` has a new method, + ``add_app_transfer_data_access_scope`` which facilitates declaration of scope + requirements when starting flows which interact with collections that need + ``data_access`` scopes. (:pr:`1166`) + +Removed +------- + +- ``globus_sdk.experimental.scope_parser`` has been removed. Use + ``globus_sdk.scopes`` instead. (:pr:`1236`) + +Changed +------- + +- ``Scope`` objects are now immutable. (:pr:`1208`) + + - ``Scope.dependencies`` is now a tuple, not a list. + + - The ``add_dependency`` method has been removed, since mutating a ``Scope`` + is no longer possible. + + - A new evolver method, ``Scope.with_dependency`` has been added. It extends + the ``dependencies`` tuple in a new ``Scope`` object. + + - A batch version of ``Scope.with_dependency`` has been added, + ``Scope.with_dependencies``. + + - An evolver for the ``optional`` field of a ``Scope`` is also now available, + named ``Scope.with_optional``. + +- Scope parsing has been separated from the main ``Scope`` class into a + dedicated ``ScopeParser`` which provides parsing methods. (:pr:`1208`) + + - Use ``globus_sdk.scopes.ScopeParser`` for complex parsing use-cases. The + ``ScopeParser.parse`` classmethod parses strings into lists of scope + objects. + + - ``Scope.merge_scopes`` has been moved to ``ScopeParser.merge_scopes``. + + - ``Scope.parse`` is changed to call ``ScopeParser.parse`` and verify that + there is exactly one result, which it returns. This means that + ``Scope.parse`` now returns a single ``Scope``, not a ``list[Scope]``. + + - ``Scope.serialize`` and ``Scope.deserialize`` have been removed as methods. + Use ``str(scope_object)`` as a replacement for ``serialize()`` and + ``Scope.parse`` as a replacement for ``deserialize()``. + +- Payload types now inherit from ``dict`` rather than ``UserDict``. The + ``PayloadWrapper`` utility class has been replaced with ``Payload``. + (:pr:`1222`) +- Payload types are more consistent about encoding missing values using ``MISSING``. + (:pr:`1222`) + +- The SDK's ``ScopeBuilder`` types have been replaced with + ``StaticScopeCollection`` and ``DynamicScopeCollection`` types. (:pr:`NUMBER`) + + - Scopes provided as constants by the SDK are now ``Scope`` objects, not + strings. They can be converted to strings trivially with ``str(scope)``. + + - The various scope builder types have been renamed. ``SpecificFlowScopes``, + ``GCSEndpointScopes``, and ``GCSCollectionScopes`` replace + ``SpecificFlowScopeBuilder``, ``GCSEndpointScopeBuilder``, and + ``GCSCollectionScopeBuilder``. + +- The ``ScopeBuilder`` types have been simplified and improved as the new + ``ScopeCollection`` types. (:pr:`NUMBER`) + + - ``ScopeBuilder`` is replaced with ``StaticScopeCollection`` and + ``DynamicScopeCollection``. The ``scopes`` attribute of client classes is + now a scope collection. + + - The attributes of ``ScopeCollection``\s are ``Scope`` objects, not strings. + + - ``ScopeCollection``\s define ``__iter__``, yielding the provided scopes, + but not ``__str__``. + .. _changelog-4.0.0a2: v4.0.0a2 (2025-06-05) diff --git a/pyproject.toml b/pyproject.toml index 35bbe2f9e..93ae978d4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "globus-sdk" -version = "4.0.0a2" +version = "4.0.0a3" authors = [ { name = "Globus Team", email = "support@globus.org" }, ]