You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@paimon.apache.org by "jianguotian (via GitHub)" <gi...@apache.org> on 2026/07/06 08:14:35 UTC

[PR] Add release infrastructure for Rust/Java/Python [paimon-full-text]

jianguotian opened a new pull request, #9:
URL: https://github.com/apache/paimon-full-text/pull/9

   ## What
   
   Add the complete release infrastructure to `paimon-full-text`, fully aligned
   with `paimon-vector-index` and `paimon-mosaic`. Before this PR the repo only had
   `ci.yml`, `publish_snapshot.yml`, and `tools/update_branch_version.sh`; the
   Rust/Java/Python release pipeline and the ASF release scaffolding were missing.
   
   ## Why aligned against BOTH sibling repos
   
   The two reference repos have diverged — neither is uniformly newer — so each file
   was taken from whichever sibling carries the fix, then adapted to full-text's
   `paimon-ftindex` / `apache/paimon-full-text` naming:
   
   - Release workflows & `create_source_release.sh`: from `paimon-vector-index`
     (full-text follows its `python/paimon_ftindex/` package-dir layout).
   - `update_branch_version.sh`: from `paimon-mosaic` (#57) — its version-bump fix
     is NOT in vector-index (see pitfall #2).
   - `validate_asf_yaml.py`: from `paimon-vector-index` (lenient schema — does not
     false-reject newer ASF-infra keys, unlike mosaic's strict allow-list).
   
   ## Pitfalls fixed (each only surfaces at release time — the reason for this PR)
   
   1. **crates.io publish would fail** — `core/ffi/jni` Cargo.toml had no
      `description`. crates.io rejects publish without it; `cargo publish --dry-run`
      on the RC tag does NOT catch this, so it only blows up on the final tag.
      (Same failure paimon-vector-index hit and fixed in its #49.) → added descriptions.
   2. **`update_branch_version.sh` silently skipped Cargo.toml** on snapshot bumps
      (matched `$OLD_VERSION` incl. `-SNAPSHOT`, which Cargo.toml never carries) →
      version drift between pom and Cargo. → ported mosaic's `OLD_VERSION_CLEAN` fix.
   3. **Java staging deploy would fail** — `java/pom.xml` had no `release` profile
      (no gpg signing, no source/javadoc jars, no `nexus-staging-maven-plugin`).
      `mvn deploy -Prelease` needs it. → added profile + ASF license header.
   4. **Source release invalid** — no `LICENSE` / `NOTICE` at repo root (hard ASF
      vote requirement). → added Apache-2.0 LICENSE + NOTICE.
   5. **No dependency-license compliance** — no `deny.toml` / `dependencies.py` /
      `cargo deny check licenses` in CI. → added the full unit (allow-list only,
      no cbindgen exception since full-text doesn't use cbindgen).
   
   ## Changes
   
   - `.github/workflows/`: add `release.yml`, `release-rust.yml`, `release-java.yml`,
     `release-python.yml`, `release-python-publish.yml`; `ci.yml` gains
     `Validate .asf.yaml` + `cargo deny check licenses`.
   - `tools/`: add `create_release_branch.sh`, `create_source_release.sh`,
     `dependencies.py`, `validate_asf_yaml.py`; fix `update_branch_version.sh`.
   - `core/ffi/jni/Cargo.toml`: add `description`.
   - `java/pom.xml`: add ASF license header + `release` profile.
   - Add `LICENSE`, `NOTICE`, `deny.toml`.
   
   ## Verified locally
   
   - All 7 workflows parse as valid YAML.
   - `cargo metadata` — 3 crates now carry descriptions.
   - `java/pom.xml` well-formed; `release` profile present.
   - `tools/*.sh` pass `bash -n`; `validate_asf_yaml.py` → `.asf.yaml is valid`.
   - `cargo deny check licenses` → `licenses ok` (exit 0). Note: full-text's
     `tantivy-jieba` stack pulls Zlib-licensed crates that the sibling allow-lists
     don't cover, so `Zlib` (ASF Category A) was added — verified locally.
   - No leftover `vindex` / `vector-index` / `mosaic` strings anywhere.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@paimon.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add release infrastructure for Rust/Java/Python [paimon-full-text]

Posted by "JingsongLi (via GitHub)" <gi...@apache.org>.
JingsongLi commented on PR #9:
URL: https://github.com/apache/paimon-full-text/pull/9#issuecomment-4892911241

   +1


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@paimon.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] Add release infrastructure for Rust/Java/Python [paimon-full-text]

Posted by "JingsongLi (via GitHub)" <gi...@apache.org>.
JingsongLi merged PR #9:
URL: https://github.com/apache/paimon-full-text/pull/9


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@paimon.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org