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

yuxia pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/fluss-rust.git


The following commit(s) were added to refs/heads/main by this push:
     new 7666af0  doc: optimize pyfluss description in pypi (#439)
7666af0 is described below

commit 7666af0c48a1d9f974e97d4eb4046b0fe18bba86
Author: yuxia Luo <[email protected]>
AuthorDate: Fri Mar 20 15:54:56 2026 +0800

    doc: optimize pyfluss description in pypi (#439)
---
 .github/workflows/release_python.yml |   6 --
 .gitignore                           |   3 +-
 bindings/python/GENERATED_README.md  |   1 -
 bindings/python/PYPI_README.md       |  28 ++++++++++
 bindings/python/generate_readme.py   | 104 -----------------------------------
 bindings/python/pyproject.toml       |   6 +-
 justfile                             |   4 --
 7 files changed, 32 insertions(+), 120 deletions(-)

diff --git a/.github/workflows/release_python.yml 
b/.github/workflows/release_python.yml
index 323838d..7e57946 100644
--- a/.github/workflows/release_python.yml
+++ b/.github/workflows/release_python.yml
@@ -49,9 +49,6 @@ jobs:
     steps:
       - uses: actions/checkout@v4
 
-      - name: Generate Python README
-        run: python bindings/python/generate_readme.py
-
       - name: Install protoc
         run: sudo apt-get update && sudo apt-get install -y protobuf-compiler
 
@@ -81,9 +78,6 @@ jobs:
     steps:
       - uses: actions/checkout@v4
 
-      - name: Generate Python README
-        run: python3 bindings/python/generate_readme.py
-
       - name: Install protoc (Linux)
         if: runner.os == 'Linux'
         run: sudo apt-get update && sudo apt-get install -y protobuf-compiler
diff --git a/.gitignore b/.gitignore
index 5d11a1c..c821382 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,7 +20,6 @@ Cargo.lock
 .vscode/
 
 # Python
-bindings/python/GENERATED_README.md
 __pycache__/
 *.py[cod]
 *$py.class
@@ -53,4 +52,4 @@ website/package-lock.json
 website/versioned_docs
 website/versioned_sidebars
 website/versions.json
-website/pnpm-lock.yaml
\ No newline at end of file
+website/pnpm-lock.yaml
diff --git a/bindings/python/GENERATED_README.md 
b/bindings/python/GENERATED_README.md
deleted file mode 100644
index 0a011ba..0000000
--- a/bindings/python/GENERATED_README.md
+++ /dev/null
@@ -1 +0,0 @@
-This readme can be automatically generated by generate_readme.py.
\ No newline at end of file
diff --git a/bindings/python/PYPI_README.md b/bindings/python/PYPI_README.md
new file mode 100644
index 0000000..ee9796a
--- /dev/null
+++ b/bindings/python/PYPI_README.md
@@ -0,0 +1,28 @@
+<!--
+ 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.
+-->
+
+# Fluss Python Client
+
+PyFluss is a Python library for programmatic access to Apache Fluss 
(Incubating).
+It provides Python APIs to work with Fluss table metadata and read or write 
table data.
+
+The documentation is available at <https://clients.fluss.apache.org/>.
+
+## Get in Touch
+
+Join the Fluss community at <https://fluss.apache.org/community/welcome/>.
diff --git a/bindings/python/generate_readme.py 
b/bindings/python/generate_readme.py
deleted file mode 100644
index 206f9e2..0000000
--- a/bindings/python/generate_readme.py
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/usr/bin/env python3
-# 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.
-
-"""Generate bindings/python/GENERATED_README.md from the website docs.
-
-Usage:
-    python generate_readme.py          # writes GENERATED_README.md
-    python generate_readme.py --check  # exits non-zero if GENERATED_README.md 
is stale
-"""
-
-from __future__ import annotations
-
-import re
-import sys
-from pathlib import Path
-
-SCRIPT_DIR = Path(__file__).resolve().parent
-DOCS_DIR = SCRIPT_DIR / "../../website/docs/user-guide/python"
-
-LICENSE_HEADER = """\
-<!--
- 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.
--->
-"""
-
-# Files in the order they should appear in the README.
-SECTIONS: list[str] = [
-    "installation.md",
-    "example/index.md",
-    "example/configuration.md",
-    "example/admin-operations.md",
-    "example/log-tables.md",
-    "example/primary-key-tables.md",
-    "example/partitioned-tables.md",
-    "error-handling.md",
-    "data-types.md",
-    "api-reference.md",
-]
-
-FRONTMATTER_RE = re.compile(r"^---\n.*?^---\n", re.MULTILINE | re.DOTALL)
-
-
-def strip_frontmatter(text: str) -> str:
-    return FRONTMATTER_RE.sub("", text, count=1)
-
-
-def build_readme() -> str:
-    parts = [LICENSE_HEADER, "# Fluss Python Client\n"]
-
-    for section in SECTIONS:
-        path = DOCS_DIR / section
-        if not path.exists():
-            print(f"warning: {path} not found, skipping", file=sys.stderr)
-            continue
-        content = strip_frontmatter(path.read_text()).strip()
-        parts.append(content)
-
-    return "\n\n".join(parts) + "\n"
-
-
-def main() -> None:
-    readme = build_readme()
-    dest = SCRIPT_DIR / "GENERATED_README.md"
-
-    if "--check" in sys.argv:
-        if not dest.exists() or dest.read_text() != readme:
-            print("GENERATED_README.md is out of date. Run: python 
generate_readme.py")
-            sys.exit(1)
-        print("GENERATED_README.md is up to date.")
-        return
-
-    dest.write_text(readme)
-    print(f"Wrote {dest}")
-
-
-if __name__ == "__main__":
-    main()
diff --git a/bindings/python/pyproject.toml b/bindings/python/pyproject.toml
index 63af88e..1664597 100644
--- a/bindings/python/pyproject.toml
+++ b/bindings/python/pyproject.toml
@@ -21,10 +21,10 @@ build-backend = "maturin"
 
 [project]
 name = "pyfluss"
-description = "Apache Fluss (incubating) Python Binding"
+description = "Apache Fluss (incubating) Python client"
 authors = [{name = "Apache Fluss", email = "[email protected]"}]
 license = {text = "Apache-2.0"}
-readme = "GENERATED_README.md"
+readme = "PYPI_README.md"
 requires-python = ">=3.9"
 classifiers = [
     "License :: OSI Approved :: Apache Software License",
@@ -42,7 +42,7 @@ dependencies = [
 ]
 
 [project.urls]
-Homepage = "https://fluss.apache.org/";
+Homepage = "https://clients.fluss.apache.org/";
 Repository = "https://github.com/apache/fluss-rust";
 
 [project.optional-dependencies]
diff --git a/justfile b/justfile
index c2a6116..c4e1a76 100644
--- a/justfile
+++ b/justfile
@@ -26,7 +26,3 @@ release [version]:
 # Usage: just bump-version <current> <next>   e.g. just bump-version 0.1.0 
0.1.1
 bump-version from to:
     ./scripts/bump-version.sh {{from}} {{to}}
-
-# Regenerate bindings/python/GENERATED_README.md from website docs.
-generate-python-readme:
-    python bindings/python/generate_readme.py

Reply via email to