From e8511789b59398ea6010010c465cf749a665bf2a Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 11:45:59 +0100 Subject: [PATCH 01/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 6e0f94d64..ff82911f4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -43,8 +43,8 @@ def build(self): if self.options.build: cmake.build() if self.options.doc: - cmake.build(target="ipc_doc_public") - cmake.build(target="ipc_doc_full") + cmake.build(target="ipc_doc_public", args=["--keep-going"]) + cmake.build(target="ipc_doc_full", args=["--keep-going"]) def requirements(self): if self.options.build: From aca6e8c4eeb8f11bfd35dd0daf7e00bbc25ecbe2 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 11:46:35 +0100 Subject: [PATCH 02/19] Update main.yml --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e8e3696f4..d84c082a9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -3,10 +3,10 @@ name: Flow-IPC pipeline on: push: branches: - - main + - '*' pull_request: branches: - - main + - '*' # To run a workflow manually, the workflow must be configured to run on the workflow_dispatch event. workflow_dispatch: From aec81f5da1b3638cc2c523b53d60aa8de31fcf05 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 11:58:16 +0100 Subject: [PATCH 03/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index ff82911f4..f9b714c01 100644 --- a/conanfile.py +++ b/conanfile.py @@ -43,8 +43,8 @@ def build(self): if self.options.build: cmake.build() if self.options.doc: - cmake.build(target="ipc_doc_public", args=["--keep-going"]) - cmake.build(target="ipc_doc_full", args=["--keep-going"]) + cmake.build("--keep-going", target="ipc_doc_public") + cmake.build("--keep-going", target="ipc_doc_full") def requirements(self): if self.options.build: From 27e1c0e2956f114fe3a0809d00320cd672ec1377 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 12:16:45 +0100 Subject: [PATCH 04/19] Update conanfile.py --- conanfile.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/conanfile.py b/conanfile.py index f9b714c01..bbe0f2306 100644 --- a/conanfile.py +++ b/conanfile.py @@ -28,7 +28,7 @@ def generate(self): deps.generate() toolchain = CMakeToolchain(self) - toolchain.variables["CMAKE_VERBOSE_MAKEFILE"] = True + #toolchain.variables["CMAKE_VERBOSE_MAKEFILE"] = True if self.options.build: toolchain.variables["CFG_ENABLE_TEST_SUITE"] = "ON" toolchain.variables["JEMALLOC_PREFIX"] = self.options["jemalloc"].prefix @@ -43,8 +43,8 @@ def build(self): if self.options.build: cmake.build() if self.options.doc: - cmake.build("--keep-going", target="ipc_doc_public") - cmake.build("--keep-going", target="ipc_doc_full") + cmake.build("--keep-going", "--verbose=1", target="ipc_doc_public") + cmake.build("--keep-going", "--verbose=1", target="ipc_doc_full") def requirements(self): if self.options.build: From 390e29dbb8310b1a7480d67808d25e9e41ed4e24 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 12:28:50 +0100 Subject: [PATCH 05/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index bbe0f2306..292df24d4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -43,8 +43,8 @@ def build(self): if self.options.build: cmake.build() if self.options.doc: - cmake.build("--keep-going", "--verbose=1", target="ipc_doc_public") - cmake.build("--keep-going", "--verbose=1", target="ipc_doc_full") + cmake.build(["--keep-going", "--verbose=1"], target="ipc_doc_public") + cmake.build(["--keep-going", "--verbose=1"], target="ipc_doc_full") def requirements(self): if self.options.build: From 5dc330238b492ab3eadaa1075fc9d57078c5c152 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 12:36:31 +0100 Subject: [PATCH 06/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 292df24d4..6529453b3 100644 --- a/conanfile.py +++ b/conanfile.py @@ -43,8 +43,8 @@ def build(self): if self.options.build: cmake.build() if self.options.doc: - cmake.build(["--keep-going", "--verbose=1"], target="ipc_doc_public") - cmake.build(["--keep-going", "--verbose=1"], target="ipc_doc_full") + cmake.build(build_args=["--keep-going", "--verbose=1"], target="ipc_doc_public") + cmake.build(build_args=["--keep-going", "--verbose=1"], target="ipc_doc_full") def requirements(self): if self.options.build: From 7f7e3649087716284949a17932697ef4545b1096 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 12:58:23 +0100 Subject: [PATCH 07/19] Update conanfile.py --- conanfile.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/conanfile.py b/conanfile.py index 6529453b3..2b1562be7 100644 --- a/conanfile.py +++ b/conanfile.py @@ -40,11 +40,15 @@ def generate(self): def build(self): cmake = CMake(self) cmake.configure() + #if self.options.build: + # cmake.build() + #if self.options.doc: + # cmake.build(target="ipc_doc_public") + # cmake.build(target="ipc_doc_full") if self.options.build: - cmake.build() + self.run("cmake --build . --verbose --keep-going") if self.options.doc: - cmake.build(build_args=["--keep-going", "--verbose=1"], target="ipc_doc_public") - cmake.build(build_args=["--keep-going", "--verbose=1"], target="ipc_doc_full") + self.run("cmake --build . --target ipc_doc_public ipc_doc_full --verbose --keep-going") def requirements(self): if self.options.build: From 46a2d47e54719873acb142af12a42f4ef36eb1e1 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:02:57 +0100 Subject: [PATCH 08/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 2b1562be7..6ceada6ef 100644 --- a/conanfile.py +++ b/conanfile.py @@ -46,9 +46,9 @@ def build(self): # cmake.build(target="ipc_doc_public") # cmake.build(target="ipc_doc_full") if self.options.build: - self.run("cmake --build . --verbose --keep-going") + self.run("cmake --build . -- --verbose --keep-going") if self.options.doc: - self.run("cmake --build . --target ipc_doc_public ipc_doc_full --verbose --keep-going") + self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --verbose --keep-going") def requirements(self): if self.options.build: From 6dfe076ae88447a69b5aa649b56407a0dbbf572b Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:08:20 +0100 Subject: [PATCH 09/19] Update main.yml --- .github/workflows/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d84c082a9..63e4b23db 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -35,12 +35,12 @@ jobs: - name: Update available software list for apt-get run: sudo apt-get update - - name: Checkout `ipc` repository and submodules (`flow`, `ipc_*`) + - name: Checkout IPC repository and submodules (like Flow) uses: actions/checkout@v4 with: submodules: true - - name: Install Flow-IPC dependencies (inc. Graphviz) with apt-get + - name: Install Flow-IPC dependencies (like Graphviz) with apt-get run: | sudo apt-get install -y graphviz @@ -84,7 +84,7 @@ jobs: run: | conan build . - - name: Package doc tarball [Doxygen documentation sets (full, API-only), landing page] + - name: Package documentation [full, API-only, landing page] run: | cd $GITHUB_WORKSPACE/doc/ipc_doc $GITHUB_WORKSPACE/tools/doc/stage_generated_docs.sh $GITHUB_WORKSPACE/build/${{ matrix.build-config.conan-profile-build-type }} From 2399170d5f9f43be081099b78a25123cdb5d8246 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:08:36 +0100 Subject: [PATCH 10/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 6ceada6ef..d63e4919c 100644 --- a/conanfile.py +++ b/conanfile.py @@ -46,9 +46,9 @@ def build(self): # cmake.build(target="ipc_doc_public") # cmake.build(target="ipc_doc_full") if self.options.build: - self.run("cmake --build . -- --verbose --keep-going") + self.run("cmake --build . -- --verbose=1 --keep-going") if self.options.doc: - self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --verbose --keep-going") + self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --verbose=1 --keep-going") def requirements(self): if self.options.build: From caf125888faa586065d43d718deb8ab8b622a042 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:14:53 +0100 Subject: [PATCH 11/19] Update conanfile.py --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index d63e4919c..adfc39cb4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -46,9 +46,9 @@ def build(self): # cmake.build(target="ipc_doc_public") # cmake.build(target="ipc_doc_full") if self.options.build: - self.run("cmake --build . -- --verbose=1 --keep-going") + self.run("cmake --build . -- --keep-going VERBOSE=1") if self.options.doc: - self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --verbose=1 --keep-going") + self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --keep-going VERBOSE=1") def requirements(self): if self.options.build: From abd1d5571aa746591284ea039c874dc36e8f5380 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 13:28:01 +0100 Subject: [PATCH 12/19] Update conanfile.py --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index adfc39cb4..083d85cb3 100644 --- a/conanfile.py +++ b/conanfile.py @@ -48,7 +48,7 @@ def build(self): if self.options.build: self.run("cmake --build . -- --keep-going VERBOSE=1") if self.options.doc: - self.run("cmake --build . -- --target ipc_doc_public ipc_doc_full --keep-going VERBOSE=1") + self.run("cmake --build . -- ipc_doc_public ipc_doc_full --keep-going VERBOSE=1") def requirements(self): if self.options.build: From 8eff4542762533b985064b4ca54ec8502bab66c3 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:07:42 +0100 Subject: [PATCH 13/19] Update main.yml --- .github/workflows/main.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 63e4b23db..82ff30da1 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -210,7 +210,9 @@ jobs: env: setup-tests-env-vars: | - export TSAN_OPTIONS="disable_coredump=0 second_deadlock_stack=1 suppressions=${{ github.workspace }}/tsan_suppressions_${{ matrix.compiler.name }}_${{ matrix.compiler.version }}.cfg" + if [ "${{ matrix.build-and-test-config.id }}" = relwithdebinfo-tsan ]; then + export TSAN_OPTIONS="disable_coredump=0 second_deadlock_stack=1 suppressions=${{ github.workspace }}/tsan_suppressions_${{ matrix.compiler.name }}_${{ matrix.compiler.version }}.cfg" + fi runs-on: ubuntu-22.04 From b9c4ff6ee22c4e68c9f92446332f4a472248f189 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:14:28 +0100 Subject: [PATCH 14/19] Update conanfile.py --- conanfile.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/conanfile.py b/conanfile.py index 083d85cb3..27c3fd697 100644 --- a/conanfile.py +++ b/conanfile.py @@ -28,7 +28,6 @@ def generate(self): deps.generate() toolchain = CMakeToolchain(self) - #toolchain.variables["CMAKE_VERBOSE_MAKEFILE"] = True if self.options.build: toolchain.variables["CFG_ENABLE_TEST_SUITE"] = "ON" toolchain.variables["JEMALLOC_PREFIX"] = self.options["jemalloc"].prefix @@ -40,11 +39,8 @@ def generate(self): def build(self): cmake = CMake(self) cmake.configure() - #if self.options.build: - # cmake.build() - #if self.options.doc: - # cmake.build(target="ipc_doc_public") - # cmake.build(target="ipc_doc_full") + + # Cannot use cmake.build(...) because not possible to pass make arguments like --keep-going. if self.options.build: self.run("cmake --build . -- --keep-going VERBOSE=1") if self.options.doc: From 96d6fe79b8739085b80fd91f0df60fcc9ed3d746 Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:40:54 +0100 Subject: [PATCH 15/19] Update main.yml --- .github/workflows/main.yml | 54 +++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 82ff30da1..2f97dd275 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -80,11 +80,11 @@ jobs: --profile:host conan_profile \ --build missing - - name: Generate documentation using Conan and Doxygen + - name: Generate code documentation using Conan and Doxygen run: | conan build . - - name: Package documentation [full, API-only, landing page] + - name: Create documentation tarball [full, API-only, landing page] run: | cd $GITHUB_WORKSPACE/doc/ipc_doc $GITHUB_WORKSPACE/tools/doc/stage_generated_docs.sh $GITHUB_WORKSPACE/build/${{ matrix.build-config.conan-profile-build-type }} @@ -325,7 +325,7 @@ jobs: - name: Run link test [`ipc_core` - Flow-IPC Core] if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin @@ -333,7 +333,7 @@ jobs: - name: Run link test [`ipc_transport_structured` - Flow-IPC Structured Transport] if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin @@ -341,7 +341,7 @@ jobs: - name: Run link test [`ipc_session` - Flow-IPC Sessions] if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin @@ -351,7 +351,7 @@ jobs: - name: Run link test [`ipc_shm` - Flow-IPC Shared Memory] if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin @@ -361,7 +361,7 @@ jobs: - name: Run link test [`ipc_shm_arena_lend` - Flow-IPC SHM-jemalloc] if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin @@ -373,7 +373,7 @@ jobs: # like the ones below. - name: Run unit tests if: | - (!cancelled()) + !cancelled() run: | ${{ env.setup-tests-env-vars }} echo $TSAN_OPTIONS @@ -393,7 +393,7 @@ jobs: # This follows the instructions in bin/transport_test/README.txt. - name: Prepare run script for [transport_test - Scripted mode] variations below if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} cat <<'EOF' > ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh @@ -421,21 +421,21 @@ jobs: - name: Run integration test [transport_test - Scripted mode] id: transport_test_scripted if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh \ - info + info - name: Re-run with increased logging, on failure only if: | - (!cancelled()) && (steps.transport_test_scripted.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && (steps.transport_test_scripted.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh \ - data + data # The following [Exercise mode] tests follow the instructions in bin/transport_test/README.txt. # Note that the creation of ~/bin/ex_..._run and placement of executables there, plus @@ -444,7 +444,7 @@ jobs: - name: Prepare IPC-session safety-friendly run-time environment for [transport_test - Exercise mode] if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | rm -rf $GITHUB_WORKSPACE/build/${{ matrix.build-and-test-config.conan-profile-build-type }} mkdir -p ~/bin/ex_srv_run ~/bin/ex_cli_run @@ -455,7 +455,7 @@ jobs: - name: Prepare run script for [transport_test - Exercise mode] variations below if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | cat <<'EOF' > ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh # Script created by pipeline during job. @@ -484,59 +484,59 @@ jobs: - name: Run integration test [transport_test - Exercise mode - Heap sub-mode] id: transport_test_ex_heap if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - info heap + info heap - name: Re-run with increased logging, on failure only if: | - (!cancelled()) && (steps.transport_test_ex_heap.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && (steps.transport_test_ex_heap.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - data heap_log_level_data + data heap_log_level_data - name: Run integration test [transport_test - Exercise mode - SHM-classic sub-mode] id: transport_test_ex_shm_c if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - info shm_classic -shm-c + info shm_classic -shm-c - name: Re-run with increased logging, on failure only if: | - (!cancelled()) && (steps.transport_test_ex_shm_c.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && (steps.transport_test_ex_shm_c.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - data shm_classic_log_level_data -shm-c + data shm_classic_log_level_data -shm-c - name: Run integration test [transport_test - Exercise mode - SHM-jemalloc sub-mode] id: transport_test_ex_shm_j if: | - (!cancelled()) && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - info shm_jemalloc -shm-j + info shm_jemalloc -shm-j - name: Re-run with increased logging, on failure only if: | - (!cancelled()) && (steps.transport_test_ex_shm_j.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests + !cancelled() && (steps.transport_test_ex_shm_j.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | ${{ env.setup-tests-env-vars }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ - data shm_jemalloc_log_level_data -shm-j + data shm_jemalloc_log_level_data -shm-j - name: Upload logs for [transport_test - All modes] if: | From 4826c6da49fe1cea597bda50668e3330a56a01ea Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:57:56 +0100 Subject: [PATCH 16/19] Update main.yml --- .github/workflows/main.yml | 43 ++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2f97dd275..f107cb5de 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -88,7 +88,9 @@ jobs: run: | cd $GITHUB_WORKSPACE/doc/ipc_doc $GITHUB_WORKSPACE/tools/doc/stage_generated_docs.sh $GITHUB_WORKSPACE/build/${{ matrix.build-config.conan-profile-build-type }} - rm -rf generated # Save runner space. + + # Save runner space. + rm -rf generated - name: Upload documentation tarball uses: actions/upload-artifact@v3 @@ -146,15 +148,12 @@ jobs: install: True build-and-test-config: - id: debug - conan-preset: debug conan-profile-build-type: Debug conan-profile-jemalloc-build-type: Debug - id: release - conan-preset: release conan-profile-build-type: Release conan-profile-jemalloc-build-type: Release - id: relwithdebinfo-tsan - conan-preset: relwithdebinfo conan-profile-build-type: RelWithDebInfo conan-profile-jemalloc-build-type: Release conan-profile-custom-conf: | @@ -190,11 +189,9 @@ jobs: skip-transport-tests: | true - id: relwithdebinfo - conan-preset: relwithdebinfo conan-profile-build-type: RelWithDebInfo conan-profile-jemalloc-build-type: Release - id: minsizerel - conan-preset: minsizerel conan-profile-build-type: MinSizeRel conan-profile-jemalloc-build-type: Release @@ -209,7 +206,7 @@ jobs: build-and-test-config: { id: relwithdebinfo-tsan } env: - setup-tests-env-vars: | + setup-tests-env: | if [ "${{ matrix.build-and-test-config.id }}" = relwithdebinfo-tsan ]; then export TSAN_OPTIONS="disable_coredump=0 second_deadlock_stack=1 suppressions=${{ github.workspace }}/tsan_suppressions_${{ matrix.compiler.name }}_${{ matrix.compiler.version }}.cfg" fi @@ -320,14 +317,14 @@ jobs: - name: Install targets with Makefile run: | VERBOSE=1 make install \ - --directory $GITHUB_WORKSPACE/build/${{ matrix.build-and-test-config.conan-profile-build-type }} \ + --directory ${{ github.workspace }}/build/${{ matrix.build-and-test-config.conan-profile-build-type }} \ DESTDIR=${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }} - name: Run link test [`ipc_core` - Flow-IPC Core] if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./ipc_core_link_test.exec @@ -335,7 +332,7 @@ jobs: if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./ipc_transport_structured_link_test.exec @@ -343,7 +340,7 @@ jobs: if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./ipc_session_link_test_srv.exec & sleep 1 @@ -353,7 +350,7 @@ jobs: if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./ipc_shm_link_test_srv.exec & sleep 1 @@ -363,7 +360,7 @@ jobs: if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./ipc_shm_arena_lend_link_test_srv.exec & sleep 1 @@ -375,7 +372,7 @@ jobs: if: | !cancelled() run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} echo $TSAN_OPTIONS cd ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin ./libipc_unit_test.exec ${{ matrix.build-and-test-config.unit-tests-params }} @@ -395,7 +392,7 @@ jobs: if: | !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} cat <<'EOF' > ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh # Script created by pipeline during job. echo "Log level: [$1]." @@ -423,7 +420,7 @@ jobs: if: | !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh \ info @@ -432,7 +429,7 @@ jobs: if: | !cancelled() && (steps.transport_test_scripted.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_sc.sh \ data @@ -486,7 +483,7 @@ jobs: if: | !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ info heap @@ -495,7 +492,7 @@ jobs: if: | !cancelled() && (steps.transport_test_ex_heap.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ data heap_log_level_data @@ -505,7 +502,7 @@ jobs: if: | !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ info shm_classic -shm-c @@ -514,7 +511,7 @@ jobs: if: | !cancelled() && (steps.transport_test_ex_shm_c.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ data shm_classic_log_level_data -shm-c @@ -524,7 +521,7 @@ jobs: if: | !cancelled() && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ info shm_jemalloc -shm-j @@ -533,7 +530,7 @@ jobs: if: | !cancelled() && (steps.transport_test_ex_shm_j.outcome == 'failure') && !matrix.build-and-test-config.skip-transport-tests run: | - ${{ env.setup-tests-env-vars }} + ${{ env.setup-tests-env }} /usr/bin/bash -e \ ${{ github.workspace }}/install/${{ matrix.build-and-test-config.conan-profile-build-type }}/usr/local/bin/run_transport_test_ex.sh \ data shm_jemalloc_log_level_data -shm-j From 2509216b3234abda34e43f87e0c0c312fd1682ca Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 16:28:17 +0100 Subject: [PATCH 17/19] Update main.yml --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f107cb5de..deede42f7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -35,7 +35,7 @@ jobs: - name: Update available software list for apt-get run: sudo apt-get update - - name: Checkout IPC repository and submodules (like Flow) + - name: Checkout `ipc` repository and submodules (like `flow`) uses: actions/checkout@v4 with: submodules: true @@ -84,7 +84,7 @@ jobs: run: | conan build . - - name: Create documentation tarball [full, API-only, landing page] + - name: Create documentation tarball (full, API-only, landing page) run: | cd $GITHUB_WORKSPACE/doc/ipc_doc $GITHUB_WORKSPACE/tools/doc/stage_generated_docs.sh $GITHUB_WORKSPACE/build/${{ matrix.build-config.conan-profile-build-type }} From 5e3a6e501de5f86aa141e74506a82b21d0a07b0f Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 16:39:59 +0100 Subject: [PATCH 18/19] Update tsan_suppressions_clang_16.cfg --- tsan_suppressions_clang_16.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/tsan_suppressions_clang_16.cfg b/tsan_suppressions_clang_16.cfg index aada60688..15f7517db 100644 --- a/tsan_suppressions_clang_16.cfg +++ b/tsan_suppressions_clang_16.cfg @@ -4,6 +4,7 @@ race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Objec race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Object_event_listener::~Object_event_listener race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Test_client::open_app_channel race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Test_client_manager::~Test_client_manager +race:ipc::session::shm::arena_lend::jemalloc::test::Test_shm_session_server::execute_allocation_performance_tests race:ipc::session::shm::arena_lend::Shm_session_data::register_borrower_collection race:ipc::shm::arena_lend::Borrower_shm_pool_collection::open_shm_pool race:ipc::util::sync_io::Timer_event_emitter::Timer_event_emitter From 1c06a391688238cd5007da826786eda90de5181c Mon Sep 17 00:00:00 2001 From: kinokrt <43879397+kinokrt@users.noreply.github.com> Date: Fri, 15 Dec 2023 19:03:53 +0100 Subject: [PATCH 19/19] Update tsan_suppressions_clang_13.cfg --- tsan_suppressions_clang_13.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/tsan_suppressions_clang_13.cfg b/tsan_suppressions_clang_13.cfg index bc933db52..79d4737ff 100644 --- a/tsan_suppressions_clang_13.cfg +++ b/tsan_suppressions_clang_13.cfg @@ -4,6 +4,7 @@ race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Objec race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Test_client::open_app_channel race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Test_client_manager::~Test_client_manager race:ipc::session::shm::arena_lend::jemalloc::test::Test_shm_session_server::start +race:ipc::session::shm::arena_lend::jemalloc::test::(anonymous namespace)::Test_client::start_app_channel race:ipc::session::shm::arena_lend::Shm_session_data::register_borrower_collection race:ipc::session::shm::arena_lend::test::*::get_random_collection race:ipc::shm::arena_lend::Borrower_shm_pool_collection::open_shm_pool