From 92313f7c07d6206620f7178b14f269db86cd70bb Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 17:05:38 -0500 Subject: [PATCH 1/7] Chore: Bump dependency versions This patch bumps the dependency versions of BDE, ntf-core, and BlazingMQ/libbmq to the most recent released versions. ntf-core has gained support for transport-level compression using zlib, lz4, and zstd, but since BlazingMQ does not use this and since we do not want a runtime dependency on the lz4 or zstd libraries, we disable these while building ntf-core. Signed-off-by: Patrick M. Niedzielski --- bin/build-macos-universal.sh | 2 ++ bin/build-manylinux.sh | 2 ++ bin/clone-dependencies.sh | 8 ++++---- news/62.misc.rst | 1 + 4 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 news/62.misc.rst diff --git a/bin/build-macos-universal.sh b/bin/build-macos-universal.sh index 4168945..03efb62 100755 --- a/bin/build-macos-universal.sh +++ b/bin/build-macos-universal.sh @@ -68,6 +68,8 @@ if [ ! -e "${DIR_BUILD}/ntf-core/.complete" ]; then --output "${DIR_BUILD}/ntf-core" \ --ufid opt_64_pic_cpp17 \ --generator "Ninja" \ + --without-lz4 \ + --without-zstd \ --without-warnings-as-errors \ --without-usage-examples \ --without-applications diff --git a/bin/build-manylinux.sh b/bin/build-manylinux.sh index 7ec89d6..7f69af5 100755 --- a/bin/build-manylinux.sh +++ b/bin/build-manylinux.sh @@ -106,6 +106,8 @@ if [ ! -e "${DIR_BUILD}/ntf-core/.complete" ]; then --output "${DIR_BUILD}/ntf-core" \ --ufid opt_64_pic_cpp17 \ --generator "Ninja" \ + --without-lz4 \ + --without-zstd \ --without-warnings-as-errors \ --without-usage-examples \ --without-applications diff --git a/bin/clone-dependencies.sh b/bin/clone-dependencies.sh index 78f95ff..b961855 100755 --- a/bin/clone-dependencies.sh +++ b/bin/clone-dependencies.sh @@ -12,10 +12,10 @@ set -u # These are the release tags for each of the dependencies we manually clone. # Update these to update the version of each dependency we build against. -BDE_TOOLS_TAG=4.8.0.0 -BDE_TAG=4.8.0.0 -NTF_CORE_TAG=2.4.2 -BLAZINGMQ_TAG=BMQBRKR_0.92.5 +BDE_TOOLS_TAG=4.32.0.0 +BDE_TAG=4.32.0.0 +NTF_CORE_TAG=2.6.6 +BLAZINGMQ_TAG=BMQBRKR_0.94.8 if [ ! -d "${DIR_THIRDPARTY}/bde-tools" ]; then diff --git a/news/62.misc.rst b/news/62.misc.rst new file mode 100644 index 0000000..8f370cf --- /dev/null +++ b/news/62.misc.rst @@ -0,0 +1 @@ +Bump build dependency versions of BDE, ntf-core, and BlazingMQ/libbmq From d182018e23e72a431d5e157fa10d876112c1b155 Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 17:42:07 -0500 Subject: [PATCH 2/7] Chore: Bump version to 1.2.3 Signed-off-by: Patrick M. Niedzielski --- src/blazingmq/_about.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/blazingmq/_about.py b/src/blazingmq/_about.py index 3e8b186..873278d 100644 --- a/src/blazingmq/_about.py +++ b/src/blazingmq/_about.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.2.2" +__version__ = "1.2.3" From c8795923c5a07174a242ac1a3afe282a91916b03 Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 18:18:19 -0500 Subject: [PATCH 3/7] Fix: Remove duplicate dpkg installation Signed-off-by: Patrick M. Niedzielski --- .github/workflows/build.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 853d956..bcce83e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -120,7 +120,6 @@ jobs: gdb \ curl \ cmake \ - cmake \ ninja-build \ pkg-config \ bison \ From b9af6cf3a60d81edbcd985e01af492aa147aab35 Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 18:19:26 -0500 Subject: [PATCH 4/7] ci: Separate build and test steps Signed-off-by: Patrick M. Niedzielski --- .github/workflows/build.yaml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index bcce83e..2fa446a 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -126,6 +126,14 @@ jobs: libfl-dev \ libbenchmark-dev \ libz-dev + - name: Build and test install + env: + PREFIX: blazingmq_artifacts + PYTHON: ./venv/bin/python + PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig:/opt/bb/lib64/pkgconfig:./blazingmq_artifacts/lib64/pkgconfig + run: | + make test-build + make test-install - name: Run tests env: BMQ_BROKER_URI: tcp://localhost:30114 @@ -136,7 +144,8 @@ jobs: mkdir -p bmq/logs mkdir -p bmq/storage/archive ./blazingmq_artifacts/bin/bmqbrkr.tsk ./tests/broker-config & - (sleep 5; make test-build && make test-install && make check) + sleep 5 + make check lint-docs: name: Lint and Docs From c56a0e3420017a8de38676968dd77359e84d70c3 Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 18:19:56 -0500 Subject: [PATCH 5/7] ci: Generate documentation artifact Signed-off-by: Patrick M. Niedzielski --- .github/workflows/build.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 2fa446a..37cb789 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -194,6 +194,12 @@ jobs: env: PYTHON: ./venv/bin/python SPHINXBUILD: ../venv/bin/sphinx-build + - name: Package docs + uses: actions/upload-artifact@v4 + with: + name: api-docs + path: docs/_build/html + compression-level: 9 coverage: name: Coverage From 9a043de095838ca54d8b62ac8c96e258a738e232 Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 18:26:49 -0500 Subject: [PATCH 6/7] ci: Use all dependencies versions as cache key Signed-off-by: Patrick M. Niedzielski --- .github/workflows/build.yaml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 37cb789..317b809 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -19,13 +19,9 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Checkout BlazingMQ - run: git clone --depth 1 https://github.com/bloomberg/blazingmq - - - name: Get latest BlazingMQ commit SHA + - name: Compute hash of dependency versions id: get-sha - working-directory: blazingmq - run: echo "blazingmq_sha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + run: echo "blazingmq_sha=$(sha1sum bin/clone-dependencies.sh | awk '{ print $1 }')" >> $GITHUB_OUTPUT - name: Try to get cached BlazingMQ build artifacts id: cache-restore From fe60477254ee6ccba8c2774ec55b21d1c51c42af Mon Sep 17 00:00:00 2001 From: "Patrick M. Niedzielski" Date: Wed, 10 Dec 2025 18:29:35 -0500 Subject: [PATCH 7/7] ci: Rename cache key Signed-off-by: Patrick M. Niedzielski --- .github/workflows/build.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 317b809..6bff4f6 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -15,7 +15,7 @@ jobs: name: Build BlazingMQ as a dependency runs-on: ubuntu-24.04 outputs: - blazingmq_sha: ${{ steps.get-sha.outputs.blazingmq_sha }} + cache_key: ${{ steps.get-sha.outputs.blazingmq_sha }} steps: - uses: actions/checkout@v4 @@ -95,7 +95,7 @@ jobs: uses: actions/cache/restore@v4 with: path: blazingmq_artifacts.tar.gz - key: ${{ needs.blazingmq-dependency.outputs.blazingmq_sha }} + key: ${{ needs.blazingmq-dependency.outputs.cache_key }} - name: Restore cached BlazingMQ build artifacts run: tar xzf blazingmq_artifacts.tar.gz - name: Set up Python ${{ matrix.python-version }} @@ -154,7 +154,7 @@ jobs: uses: actions/cache/restore@v4 with: path: blazingmq_artifacts.tar.gz - key: ${{ needs.blazingmq-dependency.outputs.blazingmq_sha }} + key: ${{ needs.blazingmq-dependency.outputs.cache_key }} - name: Restore cached BlazingMQ build artifacts run: tar xzf blazingmq_artifacts.tar.gz - name: Set up Python 3.9 @@ -208,7 +208,7 @@ jobs: uses: actions/cache/restore@v4 with: path: blazingmq_artifacts.tar.gz - key: ${{ needs.blazingmq-dependency.outputs.blazingmq_sha }} + key: ${{ needs.blazingmq-dependency.outputs.cache_key }} - name: Restore cached BlazingMQ build artifacts run: tar xzf blazingmq_artifacts.tar.gz - name: Set up Python