Hi Chris, BifroMQ is a broker/server product, not an embeddable library. Integration is achieved via plugin SPI and protocol-level interfaces; users obtain the required SPI/API artifacts from Maven to develop and integrate with the BifroMQ runtime through their own CI/CD pipelines. This architecture and integration model were discussed and decided at the very beginning of the BifroMQ project, long before entering the Apache Incubator. Existing users have been developing, building, and integrating plugins with BifroMQ in this way since then. Given this background, I don’t see a need to re-open discussion on this fundamental architectural decision as part of the Incubator transition.
Regarding the version suffix, we referenced existing Incubator projects such as Apache Polaris[1][2] and Apache GeaFlow[3][4], which adopt a similar approach. If this detail is something the community feels needs further discussion, I’m happy to start a dedicated thread. However, you mentioned that adding a suffix may make it difficult for “most tools” to detect newer versions. Could you provide specific user scenarios where this would cause an actual problem? So far, we haven’t observed such issues in BifroMQ user workflows. Thanks again for the feedback. We’ll focus on addressing the blocking compliance issues and prepare RC2 accordingly. Best regards, [1] https://dist.apache.org/repos/dist/dev/incubator/polaris/1.3.0-incubating [2] https://repository.apache.org/content/repositories/orgapachepolaris-1046 [3] https://archive.apache.org/dist/incubator/geaflow/0.7.0-incubating/ [4] https://repo.maven.apache.org/maven2/org/apache/geaflow/ On Tue, Dec 16, 2025 at 3:56 PM Christofer Dutz <[email protected]> wrote: > Hi Yonny, > > My not the main part of bifromq as maven artifacts, the only way to use > it, is to download and run the insulation package. I personally like to > integrate things. Not sure I would support such a design decision (not that > I had seen any discussion on it on any of the channels I could participate) > > Adding test at the end of the version isn't ideal as it will make most > tools not able to detect a "newer version" or see what is the latest > version. And this is another design decision I can't see having been > discussed, or I should have provided feedback earlier. > > All other projects adjust the assembly plugin to add the "incubating" into > the filename of the build output. > > Chris > > > Gesendet von Outlook für Android<https://aka.ms/AAb9ysg> > ________________________________ > From: Yonny Hao <[email protected]> > Sent: Tuesday, December 16, 2025 4:06:23 AM > To: [email protected] <[email protected]> > Subject: Re: 回复:[VOTE] Release Apache BifroMQ 4.0.0-incubating RC1 > > Hi Chris, > Thank you for the detailed review and for taking the time to document your > findings. Your feedback was very helpful. > > *On LICENSE / NOTICE (source vs. binary)* > Agreed. I mixed up the source and binary LICENSE/NOTICE requirements. > > *On Maven artifacts in the staging repository* > Apologies for not making this clear earlier. Publishing only plugin > artifacts to the Maven staging repository is intentional, not an omission. > BifroMQ is designed as a plugin-oriented system, and only the public plugin > SPI/API artifacts are intended for downstream Maven consumption. > > *On version naming (4.0.0-incubating) and version management* > The Incubator Release Checklist ([1]) suggests including the incubating > marker in JAR filenames (though not mandatory). Combined with > revision-based versioning, this allows the suffix to be managed in a single > place, simplifying the build and release logic. > Regarding version management, the use of Maven CI-friendly > ${revision}-based versioning is a deliberate design choice. The intention > is to help our users integrate more easily with their CI/CD pipelines and > achieve version contextualization. I think this approach is adopted by > multiple Apache projects with similar usage scenarios. > > Thanks again for the thorough review and constructive feedback. We will > address all the blocking issues you raised and incorporate the necessary > fixes in RC2. > > Best regards, > [1] > > https://cwiki.apache.org/confluence/display/INCUBATOR/Incubator+Release+Checklist > [2] https://lists.apache.org/thread/0xnsx6w78yp2dsbfzm8p23hjm2g18x2y > > On Mon, Dec 15, 2025 at 6:23 PM Christofer Dutz <[email protected] > > > wrote: > > > -1 (binding) > > > > Main areas for this: > > > > * > > The LICENSE and NOTICE files contain a lot of things that don’t belong > > there. > > * > > Usually, things listed in the LICENSE file, explicitly refer to files in > > the local repository which were included from other sources. > > * > > Usually, things listed in the NOTICE file, refer to things listed in the > > LICENSE file, if that license requires to, but on a much higher level. > > * > > https://github.com/apache/plc4x/blob/develop/LICENSE#L207 > > * > > https://github.com/apache/plc4x/blob/develop/NOTICE#L9 > > * > > The staging repo in Nexus doesn’t contain most of the project artifacts. > > > > > > > > Chris > > > > > > [OK] Verify the release artifacts have „incubating“ in their names > > [OK] Download all staged artifacts under the url specified in the release > > vote email. > > [MINOR] Verify the signature is correct. > > - I can’t establish a „connection of trust“ RMs should possibly think of > > attending Apache key signing „parties“ at Community over Code events. > > [OK] Check if the signature references an Apache email address. > > [OK] Verify the SHA512 hashes. > > [OK] Unzip the archive. > > [OK] Verify the existence of DISCLAIMER, LICENSE, NOTICE, README files in > > the extracted source bundle. > > [MAJOR] Verify the content of DISCLAIMER, LICENSE, NOTICE, README files > in > > the extracted source bundle. > > - LICENSE: > > - Dependencies should not be listed here. > > - Didn’t find anything needing listing in LICENSE here. > > - NOTICE: > > - Only notices for code included in the repo should be added here. > > - I couldn't spot any code included, that needed being listed here. > > [MINOR] Run RAT externally to ensure there are no surprises. > > - Many files in src/main/resources/META-INF/services don’t have Apache > > headers (Would be good to add them) > > > > * > > (Double check if it’s just a reference) EPL is only allowed to be used in > > binary form > > * > > (Double check) Bouncy Castle License not listed on > > https://www.apache.org/legal/resolved.html > > * > > Most of the license files in „/licenses“ actually should not be needed > > from my point of view. > > > > [OK] Search for SNAPSHOT references > > [OK] Search for Copyright references, and if they are in headers, make > > sure these files containing them are mentioned in the LICENSE file. > > [MINOR] Build the project according to the information in the README.md > > file. > > > > > > * > > Needed to manually run „./mvnw install“ on „testsuites“ in order to build > > „./mvnw test“ on the root (as described in the README) > > * > > As it was running including tests for more than 30 minutes and I already > > had enough to vote -1 I’m sending this email before the build is > complete. > > > > General Issues: > > > > > https://repository.apache.org/content/repositories/orgapachebifromq-1004/org/apache/bifromq/ > > Doesn’t contain any of the release artifacts, just some plugins. > > The version is currently 4.0.0-incubating, that’s not ideal. You should > > use the assembly plugin to add the „incubating“ to the archive, adding > text > > to the end of the version-number might cause issues. The version number > > should be „4.0.0“. > > Even if I just learned, that variables in parent declarations works for a > > very limited number of variable names, still I would strongly recommend > to > > not use this feature. Especially when using a maven dependency, it’s > > impossible to see which version you have, without looking at the file > name > > loaded. > > I prefer to have the full version in pom files and to rely on the release > > plugin to update these for me when cutting an RC. > > > > > > Von: 鸳鸯蝴蝶 <[email protected]> > > Datum: Donnerstag, 11. Dezember 2025 um 10:47 > > An: dev <[email protected]> > > Betreff: 回复:[VOTE] Release Apache BifroMQ 4.0.0-incubating RC1 > > > > Hi all, > > > > > > +1 (non-binding) > > I have reviewed the release artifacts and verified the build process. > > Everything looks good. > > > > > > > > > > > > Best regards, > > liaodn > > > > > > > > ------------------ 原始邮件 ------------------ > > 发件人: > > "dev" > > < > > [email protected]>; > > 发送时间: 2025年12月9日(星期二) 下午3:42 > > 收件人: "dev"<[email protected]>; > > > > 主题: [VOTE] Release Apache BifroMQ 4.0.0-incubating RC1 > > > > > > > > Hi all, > > Following the earlier discussion on the release ( > > https://github.com/apache/bifromq/discussions/192), I would like to > start > > a > > vote on the first incubator release candidate of Apache BifroMQ: > > 4.0.0-incubating RC1. > > This is the first release of BifroMQ under the Apache Incubator and an > > important milestone for the project. A large amount of refactoring and > > compliance work was completed to make this release possible. I would like > > to thank the PPMC members and mentors in advance for taking the time to > > review it. > > > > *Release Artifacts* > > Source and binary: > > > > > https://dist.apache.org/repos/dist/dev/incubator/bifromq/4.0.0-incubating-RC1/ > > > > Git tag & commit: > > Tag: v4.0.0-incubating-RC1 > > Commit: > > > > > https://github.com/apache/bifromq/commit/67eb2ff06aeb9be39e3fa2d4ddeb17098040eef6 > > > > Release notes: > > https://github.com/apache/bifromq/releases/tag/v4.0.0-incubating-RC1 > > > > Maven staging repo: > > > https://repository.apache.org/content/repositories/orgapachebifromq-1004/ > > > > PGP KEYS: > > https://dist.apache.org/repos/dist/release/incubator/bifromq/KEYS > > Signer: popduke > > > > Docker images will be published via Github Workflow > > < > > > https://github.com/apache/bifromq/blob/main/.github/workflows/docker-publish.yml> > > ; > > under the Apache org after the source release is approved. > > > > *Build Verification Guide* > > 1. Download the source archive from the dist/dev location. > > 2. Build using Maven: > > > > > ./mvnw -v > > > ./mvnw -U clean verify -DskipTests -Pbuild-release > > > > 3. Check that the build completes successfully and the expected artifacts > > are produced. > > > > Notes: > > • RAT exclusions are applied in the *build-release* profile. Please use > the > > full build command above; invoking *apache-rat:check* directly will not > > pick up these exclusions. > > • Running the complete test suites may take a significant amount of time, > > and some integration tests may fail depending on the resource constraints > > of the running environment. > > > > *Vote* > > The vote stays open for 72 hours and until three binding +1s are > received. > > [ ] +1 approve > > [ ] +0 no opinion > > [ ] -1 do not approve (please provide the reason) > > > > Quick references for Checklist > > [ ] Download links are valid > > [ ] Checksums and signatures > > [ ] LICENSE/NOTICE files exist > > [ ] No unexpected binary files > > [ ] All source files have ASF headers > > [ ] Can compile from source > > Reference: > > > > > https://cwiki.apache.org/confluence/display/INCUBATOR/Incubator+Release+Checklist > > > > Additional information about Apache BifroMQ is available at > > https://bifromq.apache.org/. > > > > Thanks > > -- > > Yonny(Yu) Hao > > > > > -- > Yonny(Yu) Hao > -- Yonny(Yu) Hao
