From 086c9b788541c60fcb66fc45428b4f9b4ee3a94c Mon Sep 17 00:00:00 2001 From: luoyuxia Date: Mon, 9 Mar 2026 20:56:53 +0800 Subject: [PATCH] doc: optimize pyfluss description in pypi --- .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(-) delete mode 100644 bindings/python/GENERATED_README.md create mode 100644 bindings/python/PYPI_README.md delete mode 100644 bindings/python/generate_readme.py diff --git a/.github/workflows/release_python.yml b/.github/workflows/release_python.yml index 323838d5..7e579469 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 f251aab3..f35fce13 100644 --- a/.gitignore +++ b/.gitignore @@ -20,7 +20,6 @@ Cargo.lock .vscode/ # Python -bindings/python/GENERATED_README.md __pycache__/ *.py[cod] *$py.class @@ -51,4 +50,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 0a011ba6..00000000 --- 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 00000000..ee9796a4 --- /dev/null +++ b/bindings/python/PYPI_README.md @@ -0,0 +1,28 @@ + + +# 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 . + +## Get in Touch + +Join the Fluss community at . diff --git a/bindings/python/generate_readme.py b/bindings/python/generate_readme.py deleted file mode 100644 index 206f9e2a..00000000 --- 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 = """\ - -""" - -# 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 f5b0b68d..9f94faa4 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 = "dev@fluss.apache.org"}] 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 c2a61168..c4e1a763 100644 --- a/justfile +++ b/justfile @@ -26,7 +26,3 @@ release [version]: # Usage: just bump-version 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