Hi devs, PPMC members and mentors, I'd like to start a discussion about creating a neutral GitHub organization, tentatively named "fluss-extensions", to host ecosystem projects around Apache Fluss (Incubating). The governance model mirrors what the Apache Flink community adopted for flink-extended.
# Motivation There are useful projects in the Fluss ecosystem that either run on a very different release cadence from Fluss core, or that are simply not JVM code and therefore cannot live inside an ASF Fluss release: 1. A dedicated RocksDB JNI fork for Fluss with symbol isolation, decoupled from Flink's frocksdb. Upgrading RocksDB in-place would cause native symbol conflicts with Flink that Java-level shading cannot resolve. A separate fork with hidden C++ symbols, renamed native libraries, and redirected JNI binding paths is the right way to do this, but it lives on RocksDB's release cadence, not on Fluss's. 2. Non-JVM ecosystem extensions, e.g. a duckdb-fluss extension that lets DuckDB query Fluss tables directly (analogous to duckdb-iceberg / duckdb-delta). This gives analysts zero-cluster, ad-hoc access to fresh Fluss data and strengthens the LTAP story. It would be C++ on DuckDB's release cycle, which the ASF Fluss release simply cannot host. 3. Connectors, CDC bridges, benchmark suites, and language bindings (e.g. a Python client) contributed by individuals or companies not ready to donate to the ASF, or that need to iterate faster than Fluss core. # How it will work - The org will be maintained by a small group of individual volunteers. Some of us happen to be Fluss committers, but we act in our personal capacity. - The org is NOT affiliated with the ASF or the Apache Fluss (Incubating) project. A prominent disclaimer will be placed on the org README and on every project's README. - When a project asks to be hosted, volunteers create a repo and hand admin rights to the project owner. The project owner is fully responsible for their code, releases, license compliance and security. - Apache License 2.0 is strongly recommended for every hosted project, so that anything which matures can later be donated to the ASF cleanly. - Because the org name contains the Apache trademark "Fluss", PPMC permission is required for the name. That will be handled in a follow-up [REQUEST] on private@. Draft README disclaimer (borrowed from flink-extended, adapted for Fluss): This GitHub organization provides a neutral place to host the code of ecosystem projects that extend the capability of Apache Fluss (Incubating). Projects in this organization are ecosystem projects submitted by third parties. They are not endorsed by the Apache Fluss project or the administrators of this GitHub organization. This GitHub organization is not affiliated with or managed by Apache Fluss, although you may recognize the name of some Apache Fluss committers. We are not checking the license of hosted projects. Please check yourself if the license of a project you intend to use or contribute to is suitable. # What's next I'm looking for: 1. Additional volunteers who are willing to be org owners (ideally 3-5 people total, with redundancy so that no single person is a bottleneck). 2. Concrete seed projects that would like to be hosted from day one. Off the top of my head, candidates include: - A Fluss-flavored RocksDB JNI fork with hidden native symbols, decoupled from Flink's frocksdb. - A duckdb-fluss extension enabling DuckDB to query Fluss tables directly. - Community-maintained connectors and CDC bridges (beyond what apache/fluss itself will ship). - A Python client / SDK. - Benchmark suites and load-generation tools. If you own or plan to work on such a project, please reply on this thread. # FAQ - Why not host under apache/fluss? IP clearance overhead, single release cadence, inability to host non-JVM (C/C++) artifacts, and an implicit ASF endorsement we cannot stand behind for third-party code. - Does this replace future Fluss donations to the ASF? No. Projects that mature can still be donated to Apache the normal way; being in fluss-extensions first actually makes that easier because everything is already Apache 2.0. - Will fluss-extensions releases be considered "official Fluss releases"? No. Only apache/fluss releases are official ASF releases. fluss-extensions artifacts are third-party artifacts, and we will make that clear in the disclaimer. Looking forward to your feedback and to hearing from potential volunteers and seed projects. Thanks, Yang
