From 64bcd077fd3308100d069d2046f42e317576515c Mon Sep 17 00:00:00 2001 From: yuzelin Date: Tue, 26 Nov 2024 19:24:43 +0800 Subject: [PATCH 1/3] [Rename] Rename module and package to pypaimon --- .../workflows/check-java-bridge-licensing.yml | 4 ++-- pypaimon/__init__.py | 24 +++++++++++++++++++ .../api}/__init__.py | 0 .../api}/catalog.py | 2 +- .../api}/commit_message.py | 0 .../api}/predicate.py | 0 .../api}/read_builder.py | 2 +- {paimon_python_api => pypaimon/api}/split.py | 0 {paimon_python_api => pypaimon/api}/table.py | 2 +- .../api}/table_commit.py | 2 +- .../api}/table_read.py | 2 +- .../api}/table_scan.py | 2 +- .../api}/table_write.py | 2 +- .../api}/write_builder.py | 2 +- .../py4j}/__init__.py | 7 +++--- .../py4j}/gateway_server.py | 4 ++-- .../py4j}/java_gateway.py | 6 ++--- .../py4j/java_implementation.py | 13 ++++++---- .../paimon-python-java-bridge/copyright.txt | 0 .../py4j}/paimon-python-java-bridge/pom.xml | 0 .../org/apache/paimon/python/BytesWriter.java | 0 .../org/apache/paimon/python/FileLock.java | 0 .../apache/paimon/python/InvocationUtil.java | 0 .../org/apache/paimon/python/NetUtils.java | 0 .../paimon/python/ParallelBytesReader.java | 0 .../apache/paimon/python/PredicationUtil.java | 0 .../apache/paimon/python/PythonEnvUtils.java | 0 .../paimon/python/PythonGatewayServer.java | 0 .../paimon/python/RecordBytesIterator.java | 0 .../org/apache/paimon/python/SchemaUtil.java | 0 .../src/main/resources/META-INF/NOTICE | 0 .../tools/ci/log4j.properties | 0 .../tools/maven/checkstyle.xml | 0 .../tools/maven/suppressions.xml | 0 .../py4j}/tests/__init__.py | 0 .../py4j}/tests/test_data_types.py | 9 ++++--- .../py4j}/tests/test_preicates.py | 8 +++---- .../py4j}/tests/test_write_and_read.py | 11 ++++----- .../py4j}/tests/utils.py | 2 +- .../py4j}/util/__init__.py | 0 .../py4j}/util/constants.py | 0 .../py4j}/util/exceptions.py | 0 .../py4j}/util/java_utils.py | 4 ++-- setup.py | 11 +++++---- setup_utils/java_setuputils.py | 2 +- tools/releasing/create_source_release.sh | 2 +- tox.ini | 2 +- 47 files changed, 76 insertions(+), 49 deletions(-) create mode 100644 pypaimon/__init__.py rename {paimon_python_api => pypaimon/api}/__init__.py (100%) rename {paimon_python_api => pypaimon/api}/catalog.py (97%) rename {paimon_python_api => pypaimon/api}/commit_message.py (100%) rename {paimon_python_api => pypaimon/api}/predicate.py (100%) rename {paimon_python_api => pypaimon/api}/read_builder.py (95%) rename {paimon_python_api => pypaimon/api}/split.py (100%) rename {paimon_python_api => pypaimon/api}/table.py (96%) rename {paimon_python_api => pypaimon/api}/table_commit.py (97%) rename {paimon_python_api => pypaimon/api}/table_read.py (98%) rename {paimon_python_api => pypaimon/api}/table_scan.py (97%) rename {paimon_python_api => pypaimon/api}/table_write.py (97%) rename {paimon_python_api => pypaimon/api}/write_builder.py (96%) rename {paimon_python_java => pypaimon/py4j}/__init__.py (84%) rename {paimon_python_java => pypaimon/py4j}/gateway_server.py (97%) rename {paimon_python_java => pypaimon/py4j}/java_gateway.py (96%) rename paimon_python_java/pypaimon.py => pypaimon/py4j/java_implementation.py (97%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/copyright.txt (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/pom.xml (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/BytesWriter.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/FileLock.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/InvocationUtil.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/NetUtils.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/ParallelBytesReader.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PredicationUtil.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonEnvUtils.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonGatewayServer.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/RecordBytesIterator.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/SchemaUtil.java (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/src/main/resources/META-INF/NOTICE (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/tools/ci/log4j.properties (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/tools/maven/checkstyle.xml (100%) rename {paimon_python_java => pypaimon/py4j}/paimon-python-java-bridge/tools/maven/suppressions.xml (100%) rename {paimon_python_java => pypaimon/py4j}/tests/__init__.py (100%) rename {paimon_python_java => pypaimon/py4j}/tests/test_data_types.py (94%) rename {paimon_python_java => pypaimon/py4j}/tests/test_preicates.py (99%) rename {paimon_python_java => pypaimon/py4j}/tests/test_write_and_read.py (98%) rename {paimon_python_java => pypaimon/py4j}/tests/utils.py (97%) rename {paimon_python_java => pypaimon/py4j}/util/__init__.py (100%) rename {paimon_python_java => pypaimon/py4j}/util/constants.py (100%) rename {paimon_python_java => pypaimon/py4j}/util/exceptions.py (100%) rename {paimon_python_java => pypaimon/py4j}/util/java_utils.py (97%) diff --git a/.github/workflows/check-java-bridge-licensing.yml b/.github/workflows/check-java-bridge-licensing.yml index 1072532..153dfeb 100644 --- a/.github/workflows/check-java-bridge-licensing.yml +++ b/.github/workflows/check-java-bridge-licensing.yml @@ -40,14 +40,14 @@ jobs: - name: Build run: | set -o pipefail - cd paimon_python_java/paimon-python-java-bridge + cd pypaimon/py4j/paimon-python-java-bridge mvn clean deploy ${{ env.MVN_COMMON_OPTIONS }} -DskipTests \ -DaltDeploymentRepository=validation_repository::default::file:${{ env.MVN_VALIDATION_DIR }} \ | tee ${{ env.MVN_BUILD_OUTPUT_FILE }} - name: Check licensing run: | - cd paimon_python_java/paimon-python-java-bridge + cd pypaimon/py4j/paimon-python-java-bridge mvn ${{ env.MVN_COMMON_OPTIONS }} exec:java@check-licensing -N \ -Dexec.args="${{ env.MVN_BUILD_OUTPUT_FILE }} $(pwd) ${{ env.MVN_VALIDATION_DIR }}" \ -Dlog4j.configurationFile=file://$(pwd)/tools/ci/log4j.properties diff --git a/pypaimon/__init__.py b/pypaimon/__init__.py new file mode 100644 index 0000000..6eff775 --- /dev/null +++ b/pypaimon/__init__.py @@ -0,0 +1,24 @@ +################################################################################ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +################################################################################# + +from .api import Schema + +__all__ = [ + 'Schema', + +] diff --git a/paimon_python_api/__init__.py b/pypaimon/api/__init__.py similarity index 100% rename from paimon_python_api/__init__.py rename to pypaimon/api/__init__.py diff --git a/paimon_python_api/catalog.py b/pypaimon/api/catalog.py similarity index 97% rename from paimon_python_api/catalog.py rename to pypaimon/api/catalog.py index a4a863f..3132159 100644 --- a/paimon_python_api/catalog.py +++ b/pypaimon/api/catalog.py @@ -18,7 +18,7 @@ from abc import ABC, abstractmethod from typing import Optional -from paimon_python_api import Table, Schema +from pypaimon.api import Table, Schema class Catalog(ABC): diff --git a/paimon_python_api/commit_message.py b/pypaimon/api/commit_message.py similarity index 100% rename from paimon_python_api/commit_message.py rename to pypaimon/api/commit_message.py diff --git a/paimon_python_api/predicate.py b/pypaimon/api/predicate.py similarity index 100% rename from paimon_python_api/predicate.py rename to pypaimon/api/predicate.py diff --git a/paimon_python_api/read_builder.py b/pypaimon/api/read_builder.py similarity index 95% rename from paimon_python_api/read_builder.py rename to pypaimon/api/read_builder.py index a031a05..68b7d46 100644 --- a/paimon_python_api/read_builder.py +++ b/pypaimon/api/read_builder.py @@ -17,7 +17,7 @@ ################################################################################# from abc import ABC, abstractmethod -from paimon_python_api import TableRead, TableScan, Predicate, PredicateBuilder +from pypaimon.api import TableRead, TableScan, Predicate, PredicateBuilder from typing import List diff --git a/paimon_python_api/split.py b/pypaimon/api/split.py similarity index 100% rename from paimon_python_api/split.py rename to pypaimon/api/split.py diff --git a/paimon_python_api/table.py b/pypaimon/api/table.py similarity index 96% rename from paimon_python_api/table.py rename to pypaimon/api/table.py index 0170cb1..7eef7b4 100644 --- a/paimon_python_api/table.py +++ b/pypaimon/api/table.py @@ -19,7 +19,7 @@ import pyarrow as pa from abc import ABC, abstractmethod -from paimon_python_api import ReadBuilder, BatchWriteBuilder +from pypaimon.api import ReadBuilder, BatchWriteBuilder from typing import Optional, List diff --git a/paimon_python_api/table_commit.py b/pypaimon/api/table_commit.py similarity index 97% rename from paimon_python_api/table_commit.py rename to pypaimon/api/table_commit.py index d76ed6a..eed8a82 100644 --- a/paimon_python_api/table_commit.py +++ b/pypaimon/api/table_commit.py @@ -17,7 +17,7 @@ ################################################################################# from abc import ABC, abstractmethod -from paimon_python_api import CommitMessage +from pypaimon.api import CommitMessage from typing import List diff --git a/paimon_python_api/table_read.py b/pypaimon/api/table_read.py similarity index 98% rename from paimon_python_api/table_read.py rename to pypaimon/api/table_read.py index f0a7b59..9fcb78c 100644 --- a/paimon_python_api/table_read.py +++ b/pypaimon/api/table_read.py @@ -22,7 +22,7 @@ from abc import ABC, abstractmethod from duckdb.duckdb import DuckDBPyConnection -from paimon_python_api import Split +from pypaimon.api import Split from typing import List, Optional diff --git a/paimon_python_api/table_scan.py b/pypaimon/api/table_scan.py similarity index 97% rename from paimon_python_api/table_scan.py rename to pypaimon/api/table_scan.py index d998462..8830676 100644 --- a/paimon_python_api/table_scan.py +++ b/pypaimon/api/table_scan.py @@ -18,7 +18,7 @@ from abc import ABC, abstractmethod from typing import List -from paimon_python_api import Split +from pypaimon.api import Split class TableScan(ABC): diff --git a/paimon_python_api/table_write.py b/pypaimon/api/table_write.py similarity index 97% rename from paimon_python_api/table_write.py rename to pypaimon/api/table_write.py index d1d39a7..8839620 100644 --- a/paimon_python_api/table_write.py +++ b/pypaimon/api/table_write.py @@ -20,7 +20,7 @@ import pyarrow as pa from abc import ABC, abstractmethod -from paimon_python_api import CommitMessage +from pypaimon.api import CommitMessage from typing import List diff --git a/paimon_python_api/write_builder.py b/pypaimon/api/write_builder.py similarity index 96% rename from paimon_python_api/write_builder.py rename to pypaimon/api/write_builder.py index 7835179..ce9cba3 100644 --- a/paimon_python_api/write_builder.py +++ b/pypaimon/api/write_builder.py @@ -17,7 +17,7 @@ ################################################################################# from abc import ABC, abstractmethod -from paimon_python_api import BatchTableCommit, BatchTableWrite +from pypaimon.api import BatchTableCommit, BatchTableWrite from typing import Optional diff --git a/paimon_python_java/__init__.py b/pypaimon/py4j/__init__.py similarity index 84% rename from paimon_python_java/__init__.py rename to pypaimon/py4j/__init__.py index 9b0d002..c3b70ff 100644 --- a/paimon_python_java/__init__.py +++ b/pypaimon/py4j/__init__.py @@ -17,9 +17,10 @@ ################################################################################ from .util import constants -from .pypaimon import (Catalog, Table, ReadBuilder, TableScan, Plan, Split, TableRead, - BatchWriteBuilder, BatchTableWrite, CommitMessage, BatchTableCommit, - Predicate, PredicateBuilder) +from .java_implementation import \ + (Catalog, Table, ReadBuilder, TableScan, Plan, Split, + TableRead, BatchWriteBuilder, BatchTableWrite, CommitMessage, + BatchTableCommit, Predicate, PredicateBuilder) __all__ = [ 'constants', diff --git a/paimon_python_java/gateway_server.py b/pypaimon/py4j/gateway_server.py similarity index 97% rename from paimon_python_java/gateway_server.py rename to pypaimon/py4j/gateway_server.py index 2061d59..9a259e0 100644 --- a/paimon_python_java/gateway_server.py +++ b/pypaimon/py4j/gateway_server.py @@ -22,7 +22,7 @@ import signal from subprocess import Popen, PIPE -from paimon_python_java import constants +from pypaimon.py4j import constants def on_windows(): @@ -74,7 +74,7 @@ def preexec_func(): stdin=PIPE, stderr=PIPE, preexec_fn=preexec_fn, env=env) -_JAVA_IMPL_MODULE = 'paimon_python_java' +_JAVA_IMPL_MODULE = 'pypaimon.py4j' _JAVA_DEPS = 'java_dependencies' _JAVA_BRIDGE = 'paimon-python-java-bridge' diff --git a/paimon_python_java/java_gateway.py b/pypaimon/py4j/java_gateway.py similarity index 96% rename from paimon_python_java/java_gateway.py rename to pypaimon/py4j/java_gateway.py index 3dabcfd..41d7a0d 100644 --- a/paimon_python_java/java_gateway.py +++ b/pypaimon/py4j/java_gateway.py @@ -26,9 +26,9 @@ CallbackServerParameters) from threading import RLock -from paimon_python_java.gateway_server import launch_gateway_server_process -from paimon_python_java import constants -from paimon_python_java.util.exceptions import install_py4j_hooks +from pypaimon.py4j.gateway_server import launch_gateway_server_process +from pypaimon.py4j import constants +from pypaimon.py4j.util.exceptions import install_py4j_hooks _gateway = None _lock = RLock() diff --git a/paimon_python_java/pypaimon.py b/pypaimon/py4j/java_implementation.py similarity index 97% rename from paimon_python_java/pypaimon.py rename to pypaimon/py4j/java_implementation.py index 803540c..17c6eda 100644 --- a/paimon_python_java/pypaimon.py +++ b/pypaimon/py4j/java_implementation.py @@ -16,17 +16,20 @@ # limitations under the License. ################################################################################ +# pypaimon.api implementation based on Java code & py4j lib + import duckdb import pandas as pd import pyarrow as pa import ray from duckdb.duckdb import DuckDBPyConnection -from paimon_python_java.java_gateway import get_gateway -from paimon_python_java.util import java_utils, constants -from paimon_python_api import (catalog, table, read_builder, table_scan, split, table_read, - write_builder, table_write, commit_message, table_commit, Schema, - predicate) +from pypaimon.py4j.java_gateway import get_gateway +from pypaimon.py4j.util import java_utils, constants +from pypaimon.api import \ + (catalog, table, read_builder, table_scan, split, + table_read, write_builder, table_write, commit_message, + table_commit, Schema, predicate) from typing import List, Iterator, Optional, Any diff --git a/paimon_python_java/paimon-python-java-bridge/copyright.txt b/pypaimon/py4j/paimon-python-java-bridge/copyright.txt similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/copyright.txt rename to pypaimon/py4j/paimon-python-java-bridge/copyright.txt diff --git a/paimon_python_java/paimon-python-java-bridge/pom.xml b/pypaimon/py4j/paimon-python-java-bridge/pom.xml similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/pom.xml rename to pypaimon/py4j/paimon-python-java-bridge/pom.xml diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/BytesWriter.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/BytesWriter.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/BytesWriter.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/BytesWriter.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/FileLock.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/FileLock.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/FileLock.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/FileLock.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/InvocationUtil.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/InvocationUtil.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/InvocationUtil.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/InvocationUtil.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/NetUtils.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/NetUtils.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/NetUtils.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/NetUtils.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/ParallelBytesReader.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/ParallelBytesReader.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/ParallelBytesReader.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/ParallelBytesReader.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PredicationUtil.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PredicationUtil.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PredicationUtil.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PredicationUtil.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonEnvUtils.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonEnvUtils.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonEnvUtils.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonEnvUtils.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonGatewayServer.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonGatewayServer.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonGatewayServer.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/PythonGatewayServer.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/RecordBytesIterator.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/RecordBytesIterator.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/RecordBytesIterator.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/RecordBytesIterator.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/SchemaUtil.java b/pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/SchemaUtil.java similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/SchemaUtil.java rename to pypaimon/py4j/paimon-python-java-bridge/src/main/java/org/apache/paimon/python/SchemaUtil.java diff --git a/paimon_python_java/paimon-python-java-bridge/src/main/resources/META-INF/NOTICE b/pypaimon/py4j/paimon-python-java-bridge/src/main/resources/META-INF/NOTICE similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/src/main/resources/META-INF/NOTICE rename to pypaimon/py4j/paimon-python-java-bridge/src/main/resources/META-INF/NOTICE diff --git a/paimon_python_java/paimon-python-java-bridge/tools/ci/log4j.properties b/pypaimon/py4j/paimon-python-java-bridge/tools/ci/log4j.properties similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/tools/ci/log4j.properties rename to pypaimon/py4j/paimon-python-java-bridge/tools/ci/log4j.properties diff --git a/paimon_python_java/paimon-python-java-bridge/tools/maven/checkstyle.xml b/pypaimon/py4j/paimon-python-java-bridge/tools/maven/checkstyle.xml similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/tools/maven/checkstyle.xml rename to pypaimon/py4j/paimon-python-java-bridge/tools/maven/checkstyle.xml diff --git a/paimon_python_java/paimon-python-java-bridge/tools/maven/suppressions.xml b/pypaimon/py4j/paimon-python-java-bridge/tools/maven/suppressions.xml similarity index 100% rename from paimon_python_java/paimon-python-java-bridge/tools/maven/suppressions.xml rename to pypaimon/py4j/paimon-python-java-bridge/tools/maven/suppressions.xml diff --git a/paimon_python_java/tests/__init__.py b/pypaimon/py4j/tests/__init__.py similarity index 100% rename from paimon_python_java/tests/__init__.py rename to pypaimon/py4j/tests/__init__.py diff --git a/paimon_python_java/tests/test_data_types.py b/pypaimon/py4j/tests/test_data_types.py similarity index 94% rename from paimon_python_java/tests/test_data_types.py rename to pypaimon/py4j/tests/test_data_types.py index 3920cd2..34f07a0 100644 --- a/paimon_python_java/tests/test_data_types.py +++ b/pypaimon/py4j/tests/test_data_types.py @@ -24,11 +24,10 @@ import pyarrow as pa import unittest -from paimon_python_api import Schema -from paimon_python_java import Catalog -from paimon_python_java.tests import utils -from paimon_python_java.util import java_utils -from setup_utils import java_setuputils +from pypaimon import Schema +from pypaimon.py4j import Catalog +from pypaimon.py4j.tests import utils +from pypaimon.py4j.util import java_utils, java_setuputils class DataTypesTest(unittest.TestCase): diff --git a/paimon_python_java/tests/test_preicates.py b/pypaimon/py4j/tests/test_preicates.py similarity index 99% rename from paimon_python_java/tests/test_preicates.py rename to pypaimon/py4j/tests/test_preicates.py index 7ee1a91..7643bb8 100644 --- a/paimon_python_java/tests/test_preicates.py +++ b/pypaimon/py4j/tests/test_preicates.py @@ -24,10 +24,10 @@ import pandas as pd import pyarrow as pa -from paimon_python_api import Schema -from paimon_python_java import Catalog -from paimon_python_java.tests import utils -from setup_utils import java_setuputils +from pypaimon import Schema +from pypaimon.py4j import Catalog +from pypaimon.py4j.tests import utils +from pypaimon.py4j.util import java_setuputils def _check_filtered_result(read_builder, expected_df): diff --git a/paimon_python_java/tests/test_write_and_read.py b/pypaimon/py4j/tests/test_write_and_read.py similarity index 98% rename from paimon_python_java/tests/test_write_and_read.py rename to pypaimon/py4j/tests/test_write_and_read.py index e2c631d..8e46693 100644 --- a/paimon_python_java/tests/test_write_and_read.py +++ b/pypaimon/py4j/tests/test_write_and_read.py @@ -24,12 +24,11 @@ import pyarrow as pa from py4j.protocol import Py4JJavaError -from paimon_python_api import Schema -from paimon_python_java import Catalog -from paimon_python_java.java_gateway import get_gateway -from paimon_python_java.tests import utils -from paimon_python_java.util import java_utils -from setup_utils import java_setuputils +from pypaimon import Schema +from pypaimon.py4j import Catalog +from pypaimon.py4j.java_gateway import get_gateway +from pypaimon.py4j.tests import utils +from pypaimon.py4j.util import java_utils, java_setuputils class TableWriteReadTest(unittest.TestCase): diff --git a/paimon_python_java/tests/utils.py b/pypaimon/py4j/tests/utils.py similarity index 97% rename from paimon_python_java/tests/utils.py rename to pypaimon/py4j/tests/utils.py index 350f80e..18d924e 100644 --- a/paimon_python_java/tests/utils.py +++ b/pypaimon/py4j/tests/utils.py @@ -19,7 +19,7 @@ import os import urllib.request -from paimon_python_java.util import constants +from pypaimon.py4j import constants def setup_hadoop_bundle_jar(hadoop_dir): diff --git a/paimon_python_java/util/__init__.py b/pypaimon/py4j/util/__init__.py similarity index 100% rename from paimon_python_java/util/__init__.py rename to pypaimon/py4j/util/__init__.py diff --git a/paimon_python_java/util/constants.py b/pypaimon/py4j/util/constants.py similarity index 100% rename from paimon_python_java/util/constants.py rename to pypaimon/py4j/util/constants.py diff --git a/paimon_python_java/util/exceptions.py b/pypaimon/py4j/util/exceptions.py similarity index 100% rename from paimon_python_java/util/exceptions.py rename to pypaimon/py4j/util/exceptions.py diff --git a/paimon_python_java/util/java_utils.py b/pypaimon/py4j/util/java_utils.py similarity index 97% rename from paimon_python_java/util/java_utils.py rename to pypaimon/py4j/util/java_utils.py index ce0404a..0beb527 100644 --- a/paimon_python_java/util/java_utils.py +++ b/pypaimon/py4j/util/java_utils.py @@ -18,8 +18,8 @@ import pyarrow as pa -from paimon_python_api import Schema -from paimon_python_java.java_gateway import get_gateway +from pypaimon import Schema +from pypaimon.py4j.java_gateway import get_gateway def to_j_catalog_context(catalog_options: dict): diff --git a/setup.py b/setup.py index 999e3c5..628a6b8 100644 --- a/setup.py +++ b/setup.py @@ -50,13 +50,14 @@ def run(self): try: PACKAGES = [ - 'paimon_python_api', - 'paimon_python_java', - 'paimon_python_java.util' + 'pypaimon', + 'pypaimon.api', + 'pypaimon.py4j', + 'pypaimon.py4j.util' ] PACKAGE_DATA = { - 'paimon_python_java': java_setuputils.get_package_data() + 'pypaimon.py4j': java_setuputils.get_package_data() } install_requires = [ @@ -72,7 +73,7 @@ def run(self): [Doc](https://paimon.apache.org/docs/master/program-api/python-api/) for usage.' setup( - name='paimon_python', + name='pypaimon', version=setup_utils.version.__version__, packages=PACKAGES, include_package_data=True, diff --git a/setup_utils/java_setuputils.py b/setup_utils/java_setuputils.py index 49e2ea9..01b02e8 100755 --- a/setup_utils/java_setuputils.py +++ b/setup_utils/java_setuputils.py @@ -22,7 +22,7 @@ from xml.etree import ElementTree -_JAVA_IMPL_MODULE = 'paimon_python_java' +_JAVA_IMPL_MODULE = 'pypaimon/py4j' _JAVA_DEPS = 'java_dependencies' _JAVA_BRIDGE = 'paimon-python-java-bridge' diff --git a/tools/releasing/create_source_release.sh b/tools/releasing/create_source_release.sh index 4d07db5..7d6a8a9 100755 --- a/tools/releasing/create_source_release.sh +++ b/tools/releasing/create_source_release.sh @@ -66,7 +66,7 @@ echo "Creating source package" git clone ${PROJECT_ROOT} ${CLONE_DIR} cd ${CLONE_DIR} -JAVA_ROOT="paimon_python_java/paimon-python-java-bridge" +JAVA_ROOT="pypaimon/py4j/paimon-python-java-bridge" rsync -a \ --exclude ".DS_Store" --exclude ".asf.yaml" --exclude ".git" \ --exclude ".github" --exclude ".gitignore" --exclude ".idea" \ diff --git a/tox.ini b/tox.ini index da9b377..8ce06f8 100644 --- a/tox.ini +++ b/tox.ini @@ -45,6 +45,6 @@ max-line-length=100 exclude=.tox/*,dev/*,build/*,dist/* [mypy] -files=paimon_python_api/*.py +files=pypaimon/api/*.py ignore_missing_imports = True strict_optional=False From 36f9af4f78cb07faa6e2727d58ef37f7b80bc1dc Mon Sep 17 00:00:00 2001 From: yuzelin Date: Tue, 26 Nov 2024 19:28:09 +0800 Subject: [PATCH 2/3] fix --- pypaimon/py4j/tests/test_data_types.py | 3 ++- pypaimon/py4j/tests/test_preicates.py | 2 +- pypaimon/py4j/tests/test_write_and_read.py | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pypaimon/py4j/tests/test_data_types.py b/pypaimon/py4j/tests/test_data_types.py index 34f07a0..5fb809e 100644 --- a/pypaimon/py4j/tests/test_data_types.py +++ b/pypaimon/py4j/tests/test_data_types.py @@ -27,7 +27,8 @@ from pypaimon import Schema from pypaimon.py4j import Catalog from pypaimon.py4j.tests import utils -from pypaimon.py4j.util import java_utils, java_setuputils +from pypaimon.py4j.util import java_utils +from setup_utils import java_setuputils class DataTypesTest(unittest.TestCase): diff --git a/pypaimon/py4j/tests/test_preicates.py b/pypaimon/py4j/tests/test_preicates.py index 7643bb8..5b63759 100644 --- a/pypaimon/py4j/tests/test_preicates.py +++ b/pypaimon/py4j/tests/test_preicates.py @@ -27,7 +27,7 @@ from pypaimon import Schema from pypaimon.py4j import Catalog from pypaimon.py4j.tests import utils -from pypaimon.py4j.util import java_setuputils +from setup_utils import java_setuputils def _check_filtered_result(read_builder, expected_df): diff --git a/pypaimon/py4j/tests/test_write_and_read.py b/pypaimon/py4j/tests/test_write_and_read.py index 8e46693..27528d1 100644 --- a/pypaimon/py4j/tests/test_write_and_read.py +++ b/pypaimon/py4j/tests/test_write_and_read.py @@ -28,7 +28,8 @@ from pypaimon.py4j import Catalog from pypaimon.py4j.java_gateway import get_gateway from pypaimon.py4j.tests import utils -from pypaimon.py4j.util import java_utils, java_setuputils +from pypaimon.py4j.util import java_utils +from setup_utils import java_setuputils class TableWriteReadTest(unittest.TestCase): From ec3d049f7bb0c03a070a89fbfc244725736a0d02 Mon Sep 17 00:00:00 2001 From: yuzelin Date: Tue, 26 Nov 2024 19:51:27 +0800 Subject: [PATCH 3/3] fix --- pypaimon/__init__.py | 5 +---- tools/releasing/create_binary_release.sh | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/pypaimon/__init__.py b/pypaimon/__init__.py index 6eff775..0cd0eb5 100644 --- a/pypaimon/__init__.py +++ b/pypaimon/__init__.py @@ -18,7 +18,4 @@ from .api import Schema -__all__ = [ - 'Schema', - -] +__all__ = ['Schema'] diff --git a/tools/releasing/create_binary_release.sh b/tools/releasing/create_binary_release.sh index f216e9a..8188fb4 100755 --- a/tools/releasing/create_binary_release.sh +++ b/tools/releasing/create_binary_release.sh @@ -60,7 +60,7 @@ source dev/.conda/bin/activate # build dev/build-wheels.sh -WHEEL_FILE_NAME="paimon_python-${RELEASE_VERSION}-py3-none-any.whl" +WHEEL_FILE_NAME="pypaimon-${RELEASE_VERSION}-py3-none-any.whl" cp "dist/${WHEEL_FILE_NAME}" "${RELEASE_DIR}/${WHEEL_FILE_NAME}" cd ${RELEASE_DIR}