This is an automated email from the ASF dual-hosted git repository.

diqiu50 pushed a commit to branch branch-1.2
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/branch-1.2 by this push:
     new 30f9bba1bb [Cherry-pick to branch-1.2] [#10339] fix(python-client): 
Add missing __init__.py for package discovery (#10341) (#10353)
30f9bba1bb is described below

commit 30f9bba1bbdcd14d2606ee62fdc4054e4760d595
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Wed Mar 11 10:32:14 2026 +0800

    [Cherry-pick to branch-1.2] [#10339] fix(python-client): Add missing 
__init__.py for package discovery (#10341) (#10353)
    
    **Cherry-pick Information:**
    - Original commit: 71f9b71b4e4e6f75016b54838f27a72c1d6813b7
    - Target branch: `branch-1.2`
    - Status: ✅ Clean cherry-pick (no conflicts)
    
    Co-authored-by: Yuhui <[email protected]>
---
 .github/PULL_REQUEST_TEMPLATE                         | 10 +++++-----
 AGENTS.md                                             |  3 ++-
 .../rel/expressions/distributions/__init__.py}        | 16 ----------------
 .../api/rel/expressions/distributions/strategy.py     | 13 ++++++-------
 .../rel/partitions/__init__.py}                       | 16 ----------------
 .../api/rel/partitions/identity_partition.py          |  3 ++-
 .../gravitino/api/rel/partitions/list_partition.py    |  3 ++-
 .../gravitino/api/rel/partitions/partition.py         |  3 ++-
 .../gravitino/api/rel/partitions/range_partition.py   |  3 ++-
 .../rel/types/json_serdes/_helper/__init__.py}        | 16 ----------------
 .../gravitino/api/rel/types/json_serdes/base.py       |  2 +-
 .../api/rel/types/json_serdes/type_serdes.py          |  4 ++--
 .../json_serdes/__init__.py}                          | 16 ----------------
 .../json_serdes/_helper/__init__.py}                  | 16 ----------------
 .../expressions/json_serdes/_helper/serdes_utils.py   | 19 +++++++++++--------
 .../dto/rel/indexes/json_serdes/index_serdes.py       | 10 +++++-----
 .../dto/rel/json_serdes/distribution_serdes.py        |  8 ++++----
 .../dto/rel/json_serdes/sort_order_serdes.py          |  8 ++++----
 .../partitioning/json_serdes/partitioning_serdes.py   | 16 ++++++++--------
 .../partitions/json_serdes/partition_dto_serdes.py    |  4 ++--
 clients/client-python/pylintrc                        |  5 +++++
 21 files changed, 63 insertions(+), 131 deletions(-)

diff --git a/.github/PULL_REQUEST_TEMPLATE b/.github/PULL_REQUEST_TEMPLATE
index 82a375ac34..40407e970d 100644
--- a/.github/PULL_REQUEST_TEMPLATE
+++ b/.github/PULL_REQUEST_TEMPLATE
@@ -1,11 +1,11 @@
 <!--
 1. Title: [#<issue>] <type>(<scope>): <subject>
    Examples:
-     - "[#123] feat(operator): support xxx"
-     - "[#233] fix: check null before access result in xxx"
-     - "[MINOR] refactor: fix typo in variable name"
-     - "[MINOR] docs: fix typo in README"
-     - "[#255] test: fix flaky test NameOfTheTest"
+     - "[#123] feat(operator): Support xxx"
+     - "[#233] fix: Check null before access result in xxx"
+     - "[MINOR] refactor: Fix typo in variable name"
+     - "[MINOR] docs: Fix typo in README"
+     - "[#255] test: Fix flaky test NameOfTheTest"
    Reference: https://www.conventionalcommits.org/en/v1.0.0/
 2. If the PR is unfinished, please mark this PR as draft.
 -->
diff --git a/AGENTS.md b/AGENTS.md
index cf0c820047..1f3c67d945 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -39,7 +39,8 @@
   4. Constructors.
   5. Methods (Group by visibility, putting `private` methods at the end).
 
-## Issue and PR Guidelines
+## Create Issue and PR Guidelines
+[IMPORTANT] Before creating an issue or PR using the gh command or the GitHub 
MCP server, please show a preview of the PR/issue first. Submit it only after I 
confirm. The issue/PR format should follow the reference and keep the content 
concise and clear.
 - **Issue Templates**: Use the appropriate template from 
`.github/ISSUE_TEMPLATE/`
 - **PR Description**: Follow the template in `.github/PULL_REQUEST_TEMPLATE`
 
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 b/clients/client-python/gravitino/api/rel/expressions/distributions/__init__.py
similarity index 57%
copy from 
clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
copy to 
clients/client-python/gravitino/api/rel/expressions/distributions/__init__.py
index 030ffb5e24..13a83393a9 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ 
b/clients/client-python/gravitino/api/rel/expressions/distributions/__init__.py
@@ -14,19 +14,3 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
-from typing import Any, Dict
-
-from gravitino.api.rel.types.json_serdes.base import JsonSerializable
-from gravitino.dto.rel.partitions.json_serdes._helper.serdes_utils import 
SerdesUtils
-from gravitino.dto.rel.partitions.partition_dto import PartitionDTO
-
-
-class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
-    @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
-
-    @classmethod
-    def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
-        return SerdesUtils.read_partition(data)
diff --git 
a/clients/client-python/gravitino/api/rel/expressions/distributions/strategy.py 
b/clients/client-python/gravitino/api/rel/expressions/distributions/strategy.py
index 0ac03a1c29..f70d2504c1 100644
--- 
a/clients/client-python/gravitino/api/rel/expressions/distributions/strategy.py
+++ 
b/clients/client-python/gravitino/api/rel/expressions/distributions/strategy.py
@@ -40,13 +40,12 @@ class Strategy(Enum):
         upper_name = name.upper()
         if upper_name == "NONE":
             return Strategy.NONE
-        elif upper_name == "HASH":
+        if upper_name == "HASH":
             return Strategy.HASH
-        elif upper_name == "RANGE":
+        if upper_name == "RANGE":
             return Strategy.RANGE
-        elif upper_name in {"EVEN", "RANDOM"}:
+        if upper_name in {"EVEN", "RANDOM"}:
             return Strategy.EVEN
-        else:
-            raise ValueError(
-                f"Invalid distribution strategy: {name}. Valid values are: 
{[s.value for s in Strategy]}"
-            )
+        raise ValueError(
+            f"Invalid distribution strategy: {name}. Valid values are: 
{[s.value for s in Strategy]}"
+        )
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 b/clients/client-python/gravitino/api/rel/partitions/__init__.py
similarity index 57%
copy from 
clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
copy to clients/client-python/gravitino/api/rel/partitions/__init__.py
index 030ffb5e24..13a83393a9 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ b/clients/client-python/gravitino/api/rel/partitions/__init__.py
@@ -14,19 +14,3 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
-from typing import Any, Dict
-
-from gravitino.api.rel.types.json_serdes.base import JsonSerializable
-from gravitino.dto.rel.partitions.json_serdes._helper.serdes_utils import 
SerdesUtils
-from gravitino.dto.rel.partitions.partition_dto import PartitionDTO
-
-
-class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
-    @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
-
-    @classmethod
-    def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
-        return SerdesUtils.read_partition(data)
diff --git 
a/clients/client-python/gravitino/api/rel/partitions/identity_partition.py 
b/clients/client-python/gravitino/api/rel/partitions/identity_partition.py
index 93cb8aa12b..76e9f5e562 100644
--- a/clients/client-python/gravitino/api/rel/partitions/identity_partition.py
+++ b/clients/client-python/gravitino/api/rel/partitions/identity_partition.py
@@ -34,7 +34,8 @@ class IdentityPartition(Partition):
     its partition name is "dt=2008-08-08/country=us", field names are [["dt"], 
["country"]] and
     values are ["2008-08-08", "us"].
 
-    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature release to another (0.5.0 to 0.6.0).
+    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature
+    release to another (0.5.0 to 0.6.0).
     """
 
     @abstractmethod
diff --git 
a/clients/client-python/gravitino/api/rel/partitions/list_partition.py 
b/clients/client-python/gravitino/api/rel/partitions/list_partition.py
index 1b1dda422a..bc74da56a4 100644
--- a/clients/client-python/gravitino/api/rel/partitions/list_partition.py
+++ b/clients/client-python/gravitino/api/rel/partitions/list_partition.py
@@ -35,7 +35,8 @@ class ListPartition(Partition):
 
     its name is "p202204_California" and lists are [["2022-04-01","Los 
Angeles"], ["2022-04-01", "San Francisco"]].
 
-    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature release to another (0.5.0 to 0.6.0).
+    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature
+    release to another (0.5.0 to 0.6.0).
     """
 
     @abstractmethod
diff --git a/clients/client-python/gravitino/api/rel/partitions/partition.py 
b/clients/client-python/gravitino/api/rel/partitions/partition.py
index 7f9a0b8733..6d18c28df1 100644
--- a/clients/client-python/gravitino/api/rel/partitions/partition.py
+++ b/clients/client-python/gravitino/api/rel/partitions/partition.py
@@ -24,7 +24,8 @@ class Partition(ABC):
     A partition represents a result of partitioning a table. The partition can 
be either a
     `IdentityPartition`, `ListPartition`, or `RangePartition`. It depends on 
the `Table.partitioning()`.
 
-    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature release to another (0.5.0 to 0.6.0).
+    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature
+    release to another (0.5.0 to 0.6.0).
     """
 
     @abstractmethod
diff --git 
a/clients/client-python/gravitino/api/rel/partitions/range_partition.py 
b/clients/client-python/gravitino/api/rel/partitions/range_partition.py
index 8f3180191a..549f130554 100644
--- a/clients/client-python/gravitino/api/rel/partitions/range_partition.py
+++ b/clients/client-python/gravitino/api/rel/partitions/range_partition.py
@@ -32,7 +32,8 @@ class RangePartition(Partition):
 
     its upper bound is "2020-03-22" and its lower bound is null.
 
-    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature release to another (0.5.0 to 0.6.0).
+    APIs that are still evolving towards becoming stable APIs, and can change 
from one feature
+    release to another (0.5.0 to 0.6.0).
     """
 
     @abstractmethod
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 b/clients/client-python/gravitino/api/rel/types/json_serdes/_helper/__init__.py
similarity index 57%
copy from 
clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
copy to 
clients/client-python/gravitino/api/rel/types/json_serdes/_helper/__init__.py
index 030ffb5e24..13a83393a9 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ 
b/clients/client-python/gravitino/api/rel/types/json_serdes/_helper/__init__.py
@@ -14,19 +14,3 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
-from typing import Any, Dict
-
-from gravitino.api.rel.types.json_serdes.base import JsonSerializable
-from gravitino.dto.rel.partitions.json_serdes._helper.serdes_utils import 
SerdesUtils
-from gravitino.dto.rel.partitions.partition_dto import PartitionDTO
-
-
-class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
-    @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
-
-    @classmethod
-    def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
-        return SerdesUtils.read_partition(data)
diff --git a/clients/client-python/gravitino/api/rel/types/json_serdes/base.py 
b/clients/client-python/gravitino/api/rel/types/json_serdes/base.py
index c04f4f23ed..caba4fbe10 100644
--- a/clients/client-python/gravitino/api/rel/types/json_serdes/base.py
+++ b/clients/client-python/gravitino/api/rel/types/json_serdes/base.py
@@ -41,7 +41,7 @@ class JsonSerializable(ABC, Generic[_GravitinoTypeT]):
 
     @classmethod
     @abstractmethod
-    def serialize(cls, data_type: _GravitinoTypeT) -> Json:
+    def serialize(cls, value: _GravitinoTypeT) -> Json:
         """To serialize the given `data`.
 
         Args:
diff --git 
a/clients/client-python/gravitino/api/rel/types/json_serdes/type_serdes.py 
b/clients/client-python/gravitino/api/rel/types/json_serdes/type_serdes.py
index 8e97c54b75..8d60cba0d2 100644
--- a/clients/client-python/gravitino/api/rel/types/json_serdes/type_serdes.py
+++ b/clients/client-python/gravitino/api/rel/types/json_serdes/type_serdes.py
@@ -27,7 +27,7 @@ class TypeSerdes(JsonSerializable[Type]):
     """Custom JSON serializer for Gravitino Type objects."""
 
     @classmethod
-    def serialize(cls, data_type: Type) -> Json:
+    def serialize(cls, value: Type) -> Json:
         """Serialize the given Gravitino Type.
 
         Args:
@@ -37,7 +37,7 @@ class TypeSerdes(JsonSerializable[Type]):
             Json: The serialized data corresponding to the given Gravitino 
Type.
         """
 
-        return SerdesUtils.write_data_type(data_type)
+        return SerdesUtils.write_data_type(value)
 
     @classmethod
     def deserialize(cls, data: Json) -> Type:
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/__init__.py
similarity index 57%
copy from 
clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
copy to 
clients/client-python/gravitino/dto/rel/expressions/json_serdes/__init__.py
index 030ffb5e24..13a83393a9 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ 
b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/__init__.py
@@ -14,19 +14,3 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
-from typing import Any, Dict
-
-from gravitino.api.rel.types.json_serdes.base import JsonSerializable
-from gravitino.dto.rel.partitions.json_serdes._helper.serdes_utils import 
SerdesUtils
-from gravitino.dto.rel.partitions.partition_dto import PartitionDTO
-
-
-class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
-    @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
-
-    @classmethod
-    def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
-        return SerdesUtils.read_partition(data)
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 
b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/__init__.py
similarity index 57%
copy from 
clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
copy to 
clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/__init__.py
index 030ffb5e24..13a83393a9 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ 
b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/__init__.py
@@ -14,19 +14,3 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
-from typing import Any, Dict
-
-from gravitino.api.rel.types.json_serdes.base import JsonSerializable
-from gravitino.dto.rel.partitions.json_serdes._helper.serdes_utils import 
SerdesUtils
-from gravitino.dto.rel.partitions.partition_dto import PartitionDTO
-
-
-class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
-    @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
-
-    @classmethod
-    def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
-        return SerdesUtils.read_partition(data)
diff --git 
a/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/serdes_utils.py
 
b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/serdes_utils.py
index 53a9ec9b63..95f2252b29 100644
--- 
a/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/serdes_utils.py
+++ 
b/clients/client-python/gravitino/dto/rel/expressions/json_serdes/_helper/serdes_utils.py
@@ -73,10 +73,10 @@ class SerdesUtils(SerdesUtilsBase):
         )
         try:
             arg_type = FunctionArg.ArgType(data[cls.EXPRESSION_TYPE].lower())
-        except ValueError:
+        except ValueError as exc:
             raise IllegalArgumentException(
                 f"Unknown function argument type: {data[cls.EXPRESSION_TYPE]}"
-            )
+            ) from exc
 
         if arg_type is FunctionArg.ArgType.LITERAL:
             Precondition.check_argument(
@@ -124,9 +124,12 @@ class SerdesUtils(SerdesUtilsBase):
                 .build()
             )
 
-        if arg_type is FunctionArg.ArgType.UNPARSED:
-            Precondition.check_argument(
-                isinstance(data.get(cls.UNPARSED_EXPRESSION), str),
-                f"Cannot parse unparsed expression from missing string field 
unparsedExpression: {data}",
-            )
-            return UnparsedExpressionDTO(data[cls.UNPARSED_EXPRESSION])
+        Precondition.check_argument(
+            arg_type is FunctionArg.ArgType.UNPARSED,
+            f"Unknown function argument type: {arg_type}",
+        )
+        Precondition.check_argument(
+            isinstance(data.get(cls.UNPARSED_EXPRESSION), str),
+            f"Cannot parse unparsed expression from missing string field 
unparsedExpression: {data}",
+        )
+        return UnparsedExpressionDTO(data[cls.UNPARSED_EXPRESSION])
diff --git 
a/clients/client-python/gravitino/dto/rel/indexes/json_serdes/index_serdes.py 
b/clients/client-python/gravitino/dto/rel/indexes/json_serdes/index_serdes.py
index 5aa004eb21..6110a09409 100644
--- 
a/clients/client-python/gravitino/dto/rel/indexes/json_serdes/index_serdes.py
+++ 
b/clients/client-python/gravitino/dto/rel/indexes/json_serdes/index_serdes.py
@@ -26,11 +26,11 @@ from gravitino.utils.serdes import SerdesUtilsBase
 
 class IndexSerdes(SerdesUtilsBase, JsonSerializable[Index]):
     @classmethod
-    def serialize(cls, data_type: Index) -> dict[str, Any]:
-        result: dict[str, Any] = {cls.INDEX_TYPE: 
data_type.type().name.upper()}
-        if data_type.name() is not None:
-            result[cls.INDEX_NAME] = data_type.name()
-        result[cls.INDEX_FIELD_NAMES] = data_type.field_names()
+    def serialize(cls, value: Index) -> dict[str, Any]:
+        result: dict[str, Any] = {cls.INDEX_TYPE: value.type().name.upper()}
+        if value.name() is not None:
+            result[cls.INDEX_NAME] = value.name()
+        result[cls.INDEX_FIELD_NAMES] = value.field_names()
 
         return result
 
diff --git 
a/clients/client-python/gravitino/dto/rel/json_serdes/distribution_serdes.py 
b/clients/client-python/gravitino/dto/rel/json_serdes/distribution_serdes.py
index 196d5bfe1e..94158a9c08 100644
--- a/clients/client-python/gravitino/dto/rel/json_serdes/distribution_serdes.py
+++ b/clients/client-python/gravitino/dto/rel/json_serdes/distribution_serdes.py
@@ -30,12 +30,12 @@ class DistributionSerDes(SerdesUtilsBase, 
JsonSerializable[DistributionDTO]):
     """Custom JSON deserializer for DistributionDTO objects."""
 
     @classmethod
-    def serialize(cls, data_type: DistributionDTO) -> dict[str, Any]:
+    def serialize(cls, value: DistributionDTO) -> dict[str, Any]:
         return {
-            cls.STRATEGY: data_type.strategy().name.lower(),
-            cls.NUMBER: data_type.number(),
+            cls.STRATEGY: value.strategy().name.lower(),
+            cls.NUMBER: value.number(),
             cls.FUNCTION_ARGS: [
-                SerdesUtils.write_function_arg(arg) for arg in data_type.args()
+                SerdesUtils.write_function_arg(arg) for arg in value.args()
             ],
         }
 
diff --git 
a/clients/client-python/gravitino/dto/rel/json_serdes/sort_order_serdes.py 
b/clients/client-python/gravitino/dto/rel/json_serdes/sort_order_serdes.py
index 29d956c1bd..39a9aab2ef 100644
--- a/clients/client-python/gravitino/dto/rel/json_serdes/sort_order_serdes.py
+++ b/clients/client-python/gravitino/dto/rel/json_serdes/sort_order_serdes.py
@@ -30,7 +30,7 @@ class SortOrderSerdes(SerdesUtilsBase, 
JsonSerializable[SortOrderDTO]):
     """Custom JSON serializer/deserializer for SortOrderDTO objects."""
 
     @classmethod
-    def serialize(cls, data_type: SortOrderDTO) -> dict[str, Any]:
+    def serialize(cls, value: SortOrderDTO) -> dict[str, Any]:
         """
         Serialize the given data into a dictionary.
 
@@ -42,9 +42,9 @@ class SortOrderSerdes(SerdesUtilsBase, 
JsonSerializable[SortOrderDTO]):
         """
 
         return {
-            cls.SORT_TERM: 
SerdesUtils.write_function_arg(data_type.sort_term()),
-            cls.DIRECTION: str(data_type.direction()),
-            cls.NULL_ORDERING: str(data_type.null_ordering()),
+            cls.SORT_TERM: SerdesUtils.write_function_arg(value.sort_term()),
+            cls.DIRECTION: str(value.direction()),
+            cls.NULL_ORDERING: str(value.null_ordering()),
         }
 
     @classmethod
diff --git 
a/clients/client-python/gravitino/dto/rel/partitioning/json_serdes/partitioning_serdes.py
 
b/clients/client-python/gravitino/dto/rel/partitioning/json_serdes/partitioning_serdes.py
index da9e95701b..de2cc58c58 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitioning/json_serdes/partitioning_serdes.py
+++ 
b/clients/client-python/gravitino/dto/rel/partitioning/json_serdes/partitioning_serdes.py
@@ -68,7 +68,7 @@ class PartitioningSerdes(SerdesUtilsBase, 
JsonSerializable[Partitioning]):
     )
 
     @classmethod
-    def serialize(cls, data_type: Partitioning) -> Dict[str, Any]:
+    def serialize(cls, value: Partitioning) -> Dict[str, Any]:
         """Serialize the given PartitionDTO object.
 
         Args:
@@ -81,28 +81,28 @@ class PartitioningSerdes(SerdesUtilsBase, 
JsonSerializable[Partitioning]):
             IOError: If partitioning strategy is unknown.
         """
 
-        strategy = data_type.strategy()
+        strategy = value.strategy()
         result = {cls.STRATEGY: strategy.name.lower()}
 
         if strategy in cls._SINGLE_FIELD_PARTITIONING:
-            dto = cast(SingleFieldPartitioning, data_type)
+            dto = cast(SingleFieldPartitioning, value)
             return {**result, cls.FIELD_NAME: dto.field_name()}
         if strategy is Partitioning.Strategy.BUCKET:
-            dto = cast(BucketPartitioningDTO, data_type)
+            dto = cast(BucketPartitioningDTO, value)
             return {
                 **result,
                 cls.NUM_BUCKETS: dto.num_buckets(),
                 cls.FIELD_NAMES: dto.field_names(),
             }
         if strategy is Partitioning.Strategy.TRUNCATE:
-            dto = cast(TruncatePartitioningDTO, data_type)
+            dto = cast(TruncatePartitioningDTO, value)
             return {
                 **result,
                 cls.WIDTH: dto.width(),
                 cls.FIELD_NAME: dto.field_name(),
             }
         if strategy is Partitioning.Strategy.LIST:
-            dto = cast(ListPartitioningDTO, data_type)
+            dto = cast(ListPartitioningDTO, value)
             return {
                 **result,
                 cls.FIELD_NAMES: dto.field_names(),
@@ -112,7 +112,7 @@ class PartitioningSerdes(SerdesUtilsBase, 
JsonSerializable[Partitioning]):
                 ],
             }
         if strategy is Partitioning.Strategy.RANGE:
-            dto = cast(RangePartitioningDTO, data_type)
+            dto = cast(RangePartitioningDTO, value)
             return {
                 **result,
                 cls.FIELD_NAME: dto.field_name(),
@@ -122,7 +122,7 @@ class PartitioningSerdes(SerdesUtilsBase, 
JsonSerializable[Partitioning]):
                 ],
             }
         if strategy is Partitioning.Strategy.FUNCTION:
-            dto = cast(FunctionPartitioningDTO, data_type)
+            dto = cast(FunctionPartitioningDTO, value)
             return {
                 **result,
                 cls.FUNCTION_NAME: dto.function_name(),
diff --git 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
 
b/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
index 030ffb5e24..e81d4d3b14 100644
--- 
a/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
+++ 
b/clients/client-python/gravitino/dto/rel/partitions/json_serdes/partition_dto_serdes.py
@@ -24,8 +24,8 @@ from gravitino.dto.rel.partitions.partition_dto import 
PartitionDTO
 
 class PartitionDTOSerdes(JsonSerializable[PartitionDTO]):
     @classmethod
-    def serialize(cls, data_type: PartitionDTO) -> Dict[str, Any]:
-        return SerdesUtils.write_partition(data_type)
+    def serialize(cls, value: PartitionDTO) -> Dict[str, Any]:
+        return SerdesUtils.write_partition(value)
 
     @classmethod
     def deserialize(cls, data: Dict[str, Any]) -> PartitionDTO:
diff --git a/clients/client-python/pylintrc b/clients/client-python/pylintrc
index 6977c28efd..4adb711856 100644
--- a/clients/client-python/pylintrc
+++ b/clients/client-python/pylintrc
@@ -94,3 +94,8 @@ variable-naming-style=snake_case
 
 # Naming Style for Module
 module-naming-style=snake_case
+
+[DESIGN]
+
+# Maximum number of return / yield for a function / method body.
+max-returns=10

Reply via email to