From aa80d8bac9ee46a014b77f9550ef07d1c601477e Mon Sep 17 00:00:00 2001 From: Arthur Sonzogni Date: Thu, 1 May 2025 09:59:08 +0200 Subject: [PATCH 1/9] Generate attestation + refactor workflows (#1039) --- .github/workflows/build.yaml | 145 +-------------------------- .github/workflows/documentation.yaml | 60 +++++++++++ .github/workflows/publish.yaml | 13 +++ .github/workflows/release.yaml | 128 +++++++++++++++++++++++ 4 files changed, 204 insertions(+), 142 deletions(-) create mode 100644 .github/workflows/documentation.yaml create mode 100644 .github/workflows/release.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 4ffeca29..cdecf41d 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -1,10 +1,12 @@ name: Build on: - create: + # On new commits to main: push: branches: - main + + # On pull requests: pull_request: branches: - main @@ -152,144 +154,3 @@ jobs: flags: ${{ runner.os }} name: ${{ runner.os }}-coverage files: ./build/coverage.xml - - # Create a release on new v* tags - release: - needs: - - test_cmake - - test_bazel - if: ${{ github.event_name == 'create' && startsWith(github.ref, 'refs/tags/v') }} - name: "Create release" - runs-on: ubuntu-latest - outputs: - upload_url: ${{ steps.create_release.outputs.upload_url }} - steps: - - name: "Create release" - uses: softprops/action-gh-release@v1 - id: create_release - with: - draft: true - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - # Build artifact for the release - package_compiled: - name: "Build packages" - needs: release - strategy: - matrix: - include: - - os: ubuntu-latest - asset_path: build/ftxui*Linux* - - os: macos-latest - asset_path: build/ftxui*Darwin* - - os: windows-latest - asset_path: build/ftxui*Win64* - runs-on: ${{ matrix.os }} - steps: - - name: Get number of CPU cores - uses: SimenB/github-actions-cpu-cores@v1 - id: cpu-cores - - - name: "Checkout repository" - uses: actions/checkout@v3 - - - name: "Install cmake" - uses: lukka/get-cmake@latest - - - name: "Build packages" - run: > - mkdir build; - cd build; - cmake .. - -DCMAKE_BUILD_TYPE=Release - -DCMAKE_BUILD_PARALLEL_LEVEL=${{ steps.cpu-cores.outputs.count }} - -DFTXUI_BUILD_DOCS=OFF - -DFTXUI_BUILD_EXAMPLES=OFF - -DFTXUI_BUILD_TESTS=OFF - -DFTXUI_BUILD_TESTS_FUZZER=OFF - -DFTXUI_ENABLE_INSTALL=ON - -DFTXUI_DEV_WARNINGS=ON ; - cmake --build . --target package; - - - uses: shogo82148/actions-upload-release-asset@v1 - with: - upload_url: ${{ needs.release.outputs.upload_url }} - asset_path: ${{ matrix.asset_path }} - overwrite: true - - # Build "source" artifact for the release. This is the same as the github - # "source" archive, but with a stable URL. This is useful for the Bazel - # Central Repository. - package_source: - name: "Build source package" - needs: release - runs-on: ubuntu-latest - steps: - - name: "Checkout repository" - uses: actions/checkout@v3 - - - name: "Create source package" - run: > - git archive --format=tar.gz -o source.tar.gz HEAD - - - name: "Upload source package" - uses: shogo82148/actions-upload-release-asset@v1 - with: - upload_url: ${{ needs.release.outputs.upload_url }} - asset_path: source.tar.gz - overwrite: true - - - documentation: - if: github.ref == 'refs/heads/main' - runs-on: ubuntu-latest - steps: - - name: "Checkout repository" - uses: actions/checkout@v3 - - - name: "Install cmake" - uses: lukka/get-cmake@latest - - - name: "Install emsdk" - uses: mymindstorm/setup-emsdk@v7 - - - name: "Install Doxygen/Graphviz" - run: > - sudo apt-get update; - sudo apt-get install doxygen graphviz; - - - name: "Build documentation" - run: > - mkdir build; - cd build; - emcmake cmake .. - -DCMAKE_BUILD_TYPE=Release - -DFTXUI_BUILD_DOCS=ON - -DFTXUI_BUILD_EXAMPLES=ON - -DFTXUI_BUILD_TESTS=OFF - -DFTXUI_BUILD_TESTS_FUZZER=OFF - -DFTXUI_ENABLE_INSTALL=OFF - -DFTXUI_DEV_WARNINGS=ON ; - cmake --build . --target doc; - cmake --build . ; - rsync -amv - --include='*/' - --include='*.html' - --include='*.css' - --include='*.mjs' - --include='*.js' - --include='*.wasm' - --exclude='*' - examples - doc/doxygen/html; - - - name: "Deploy" - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: build/doc/doxygen/html/ - enable_jekyll: false - allow_empty_commit: false - force_orphan: true - publish_branch: gh-pages diff --git a/.github/workflows/documentation.yaml b/.github/workflows/documentation.yaml new file mode 100644 index 00000000..ecc6848e --- /dev/null +++ b/.github/workflows/documentation.yaml @@ -0,0 +1,60 @@ +name: Documentation + +on: + # On new commits to main: + push: + branches: + - main + +jobs: + documentation: + runs-on: ubuntu-latest + steps: + - name: "Checkout repository" + uses: actions/checkout@v3 + + - name: "Install cmake" + uses: lukka/get-cmake@latest + + - name: "Install emsdk" + uses: mymindstorm/setup-emsdk@v7 + + - name: "Install Doxygen/Graphviz" + run: > + sudo apt-get update; + sudo apt-get install doxygen graphviz; + + - name: "Build documentation" + run: > + mkdir build; + cd build; + emcmake cmake .. + -DCMAKE_BUILD_TYPE=Release + -DFTXUI_BUILD_DOCS=ON + -DFTXUI_BUILD_EXAMPLES=ON + -DFTXUI_BUILD_TESTS=OFF + -DFTXUI_BUILD_TESTS_FUZZER=OFF + -DFTXUI_ENABLE_INSTALL=OFF + -DFTXUI_DEV_WARNINGS=ON ; + cmake --build . --target doc; + cmake --build . ; + rsync -amv + --include='*/' + --include='*.html' + --include='*.css' + --include='*.mjs' + --include='*.js' + --include='*.wasm' + --exclude='*' + examples + doc/doxygen/html; + + - name: "Deploy" + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: build/doc/doxygen/html/ + enable_jekyll: false + allow_empty_commit: false + force_orphan: true + publish_branch: gh-pages diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 502cb6c5..31900a99 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -1,3 +1,5 @@ +name: "Publish to Bazel Central Registry" + on: # On manual trigger: workflow_dispatch: @@ -6,6 +8,17 @@ on: required: true type: string + # Called from the release workflow: + workflow_call: + inputs: + tag_name: + required: true + type: string + secrets: + PUBLISH_TOKEN: + required: true + type: string + jobs: publish: uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@v0.0.4 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 00000000..1d682496 --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,128 @@ +name: Release + +on: + # On push to a tag: + push: + tags: + - 'v*' + + # On manual trigger: + workflow_dispatch: + +permissions: + # Needed to mint attestations + id-token: write + attestations: write + +jobs: + release: + name: "Create release" + runs-on: ubuntu-latest + outputs: + upload_url: ${{ steps.create_release.outputs.upload_url }} + steps: + - name: "Create release" + uses: softprops/action-gh-release@v1 + id: create_release + with: + draft: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # Build artifact for the release + package_compiled: + name: "Build packages" + needs: release + strategy: + matrix: + include: + - os: ubuntu-latest + asset_path: build/ftxui*Linux* + - os: macos-latest + asset_path: build/ftxui*Darwin* + - os: windows-latest + asset_path: build/ftxui*Win64* + runs-on: ${{ matrix.os }} + steps: + - name: Get number of CPU cores + uses: SimenB/github-actions-cpu-cores@v1 + id: cpu-cores + + - name: "Checkout repository" + uses: actions/checkout@v3 + + - name: "Install cmake" + uses: lukka/get-cmake@latest + + - name: "Build packages" + run: > + mkdir build; + cd build; + cmake .. + -DCMAKE_BUILD_TYPE=Release + -DCMAKE_BUILD_PARALLEL_LEVEL=${{ steps.cpu-cores.outputs.count }} + -DFTXUI_BUILD_DOCS=OFF + -DFTXUI_BUILD_EXAMPLES=OFF + -DFTXUI_BUILD_TESTS=OFF + -DFTXUI_BUILD_TESTS_FUZZER=OFF + -DFTXUI_ENABLE_INSTALL=ON + -DFTXUI_DEV_WARNINGS=ON ; + cmake --build . --target package; + + - uses: shogo82148/actions-upload-release-asset@v1 + with: + upload_url: ${{ needs.release.outputs.upload_url }} + asset_path: ${{ matrix.asset_path }} + overwrite: true + + # Build "source" artifact for the release. This is the same as the github + # "source" archive, but with a stable URL. This is useful for the Bazel + # Central Repository. + package_source: + name: "Build source package" + needs: release + runs-on: ubuntu-latest + steps: + - name: "Checkout repository" + uses: actions/checkout@v3 + + - name: "Create source package" + run: > + git archive --format=tar.gz -o source.tar.gz HEAD + + - name: Generate source attestation + id: attest_source + uses: actions/attest-build-provenance@v2 + with: + subject-path: source.tar.gz + + - name: Write source.intoto.jsonl + run: + jq --compact-output < "${{ steps.attest_source.outputs.bundle-path }}" \ + > source.tar.gz.intoto.jsonl + + - name: "Upload source package" + uses: shogo82148/actions-upload-release-asset@v1 + with: + upload_url: ${{ needs.release.outputs.upload_url }} + asset_path: source.tar.gz + overwrite: true + + - name: "Upload source attestation" + uses: shogo82148/actions-upload-release-asset@v1 + with: + upload_url: ${{ needs.release.outputs.upload_url }} + asset_path: source.tar.gz.intoto.jsonl + overwrite: true + + # Publish to Bazel Central Registry. + # This call the .github/workflows/publish.yaml workflow. + publish_to_bazel_central_registry: + name: "Publish to Bazel Central Registry" + needs: package_source + uses: ./.github/workflows/publish.yaml + with: + tag_name: ${{ github.ref }} + secrets: + PUBLISH_TOKEN: ${{ secrets.PUBLISH_TOKEN }} + From 2d4c11400868ee2d8f92e6087d9bb921a17c97d9 Mon Sep 17 00:00:00 2001 From: Arthur Sonzogni Date: Thu, 1 May 2025 10:01:05 +0200 Subject: [PATCH 2/9] v6.1.2 (#1040) --- CHANGELOG.md | 6 +++--- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index da10cc6a..1c791b21 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,8 @@ Changelog Future release ------------ -6.1.1 (2025-04-30) ------------------ +6.1.2 (2025-05-01) +------------------ ### Build - Feature: Support `bazel` build system. See #1032. @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.1") + bazel_dep(name = "ftxui", version = "6.1.2") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index db06d38a..6e960a52 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.1 + VERSION 6.1.2 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index a62b403d..c70c9f9a 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.1") +module(name = "ftxui", version = "6.1.2") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index 13d2bf9f..ebeecd8b 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.1 + GIT_TAG v6.1.2 ) FetchContent_GetProperties(ftxui) From 625915b52cc796a4c728c9e34327c533cb31135d Mon Sep 17 00:00:00 2001 From: Arthur Sonzogni Date: Thu, 1 May 2025 10:06:49 +0200 Subject: [PATCH 3/9] Fix publish workflow (#1041) --- .github/workflows/publish.yaml | 1 - CHANGELOG.md | 4 ++-- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 31900a99..3dc6bce2 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -17,7 +17,6 @@ on: secrets: PUBLISH_TOKEN: required: true - type: string jobs: publish: diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c791b21..b235644f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Changelog Future release ------------ -6.1.2 (2025-05-01) +6.1.3 (2025-05-01) ------------------ ### Build @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.2") + bazel_dep(name = "ftxui", version = "6.1.3") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e960a52..d15f5878 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.2 + VERSION 6.1.3 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index c70c9f9a..b5c6807c 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.2") +module(name = "ftxui", version = "6.1.3") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index ebeecd8b..f618ddc3 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.2 + GIT_TAG v6.1.3 ) FetchContent_GetProperties(ftxui) From 694fa6bf5cbd380c35d1fbebc3da4ba6da53587e Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 10:09:18 +0200 Subject: [PATCH 4/9] Fix publish workflow --- .github/workflows/publish.yaml | 10 ---------- .github/workflows/release.yaml | 12 ------------ CHANGELOG.md | 4 ++-- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 6 files changed, 5 insertions(+), 27 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 3dc6bce2..54bba3e4 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -8,16 +8,6 @@ on: required: true type: string - # Called from the release workflow: - workflow_call: - inputs: - tag_name: - required: true - type: string - secrets: - PUBLISH_TOKEN: - required: true - jobs: publish: uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@v0.0.4 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 1d682496..2cbc08a0 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -114,15 +114,3 @@ jobs: upload_url: ${{ needs.release.outputs.upload_url }} asset_path: source.tar.gz.intoto.jsonl overwrite: true - - # Publish to Bazel Central Registry. - # This call the .github/workflows/publish.yaml workflow. - publish_to_bazel_central_registry: - name: "Publish to Bazel Central Registry" - needs: package_source - uses: ./.github/workflows/publish.yaml - with: - tag_name: ${{ github.ref }} - secrets: - PUBLISH_TOKEN: ${{ secrets.PUBLISH_TOKEN }} - diff --git a/CHANGELOG.md b/CHANGELOG.md index b235644f..7eaa1d3b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Changelog Future release ------------ -6.1.3 (2025-05-01) +6.1.4 (2025-05-01) ------------------ ### Build @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.3") + bazel_dep(name = "ftxui", version = "6.1.4") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index d15f5878..92c1bb88 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.3 + VERSION 6.1.4 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index b5c6807c..86e5ad09 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.3") +module(name = "ftxui", version = "6.1.4") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index f618ddc3..5d7de254 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.3 + GIT_TAG v6.1.4 ) FetchContent_GetProperties(ftxui) From ba6716c6e1b8529d5e83f29ae4937a8dfc794887 Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 10:32:33 +0200 Subject: [PATCH 5/9] Fix publish workflow --- .github/workflows/publish.yaml | 33 ++++++++++++++++++++++++++------- .github/workflows/release.yaml | 2 ++ 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 54bba3e4..f6f6ab8f 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -1,22 +1,41 @@ name: "Publish to Bazel Central Registry" on: - # On manual trigger: + # Manual kick-off (you type the tag) workflow_dispatch: inputs: tag_name: + description: "Tag to publish" required: true type: string -jobs: + # Fire as soon as the Release workflow completes + workflow_run: + workflows: + - Release + types: + - completed + +permissions: + + attestations: write + contents: write + id-token: write + +jobs: publish: uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@v0.0.4 + # Only run on manual dispatch, or when Release finishes successfully + if: | + github.event_name == 'workflow_dispatch' || + (github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success') with: - tag_name: ${{ inputs.tag_name }} + # If manual: use the input, otherwise grab the tag from the completed run + tag_name: ${{ + github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name || + github.event_name == 'workflow_run' && github.event.workflow_run.head_branch + }} registry_fork: ArthurSonzogni/bazel-central-registry - permissions: - attestations: write - contents: write - id-token: write + secrets: publish_token: ${{ secrets.PUBLISH_TOKEN }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 2cbc08a0..d2df276a 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,6 +13,8 @@ permissions: # Needed to mint attestations id-token: write attestations: write + # Needed to upload release assets + contents: write jobs: release: From f4513702b0fbbafc44f54045ab5d967aa0161b4a Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 10:40:53 +0200 Subject: [PATCH 6/9] Fix release workflow --- .github/workflows/publish.yaml | 6 +----- .github/workflows/release.yaml | 26 ++++++++++---------------- CHANGELOG.md | 4 ++-- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 6 files changed, 16 insertions(+), 26 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index f6f6ab8f..08ad3a91 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -30,11 +30,7 @@ jobs: github.event_name == 'workflow_dispatch' || (github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success') with: - # If manual: use the input, otherwise grab the tag from the completed run - tag_name: ${{ - github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name || - github.event_name == 'workflow_run' && github.event.workflow_run.head_branch - }} + tag_name: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name || github.event.workflow_run.head_branch }} registry_fork: ArthurSonzogni/bazel-central-registry secrets: diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index d2df276a..0a376cae 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -92,17 +92,6 @@ jobs: run: > git archive --format=tar.gz -o source.tar.gz HEAD - - name: Generate source attestation - id: attest_source - uses: actions/attest-build-provenance@v2 - with: - subject-path: source.tar.gz - - - name: Write source.intoto.jsonl - run: - jq --compact-output < "${{ steps.attest_source.outputs.bundle-path }}" \ - > source.tar.gz.intoto.jsonl - - name: "Upload source package" uses: shogo82148/actions-upload-release-asset@v1 with: @@ -110,9 +99,14 @@ jobs: asset_path: source.tar.gz overwrite: true - - name: "Upload source attestation" - uses: shogo82148/actions-upload-release-asset@v1 + - name: Generate source attestation + id: attest_source + uses: actions/attest-build-provenance@v2 with: - upload_url: ${{ needs.release.outputs.upload_url }} - asset_path: source.tar.gz.intoto.jsonl - overwrite: true + subject-path: source.tar.gz + + - name: "Upload source attestation" + uses: actions/upload-artifact@v3 + with: + name: source.tar.gz.intoto.jsonl + path: ${{ steps.attest_source.outputs.bundle-path }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 7eaa1d3b..75abcb9a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Changelog Future release ------------ -6.1.4 (2025-05-01) +6.1.6 (2025-05-01) ------------------ ### Build @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.4") + bazel_dep(name = "ftxui", version = "6.1.6") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index 92c1bb88..3bad92f9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.4 + VERSION 6.1.6 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index 86e5ad09..c1ebdbff 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.4") +module(name = "ftxui", version = "6.1.6") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index 5d7de254..51b6cb89 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.4 + GIT_TAG v6.1.6 ) FetchContent_GetProperties(ftxui) From 799d8a267e4af3bae4fa82b4de8530b033c4337b Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 10:52:54 +0200 Subject: [PATCH 7/9] Fix release workflow --- .github/workflows/release.yaml | 10 +++++++--- CHANGELOG.md | 4 ++-- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 5 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 0a376cae..5f2ab453 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -105,8 +105,12 @@ jobs: with: subject-path: source.tar.gz + - name: Rename source attestation + run: mv ${{ steps.attest_source.outputs.bundle-path }} source.tar.gz.intoto.jsonl + - name: "Upload source attestation" - uses: actions/upload-artifact@v3 + uses: shogo82148/actions-upload-release-asset@v1 with: - name: source.tar.gz.intoto.jsonl - path: ${{ steps.attest_source.outputs.bundle-path }} + upload_url: ${{ needs.release.outputs.upload_url }} + asset_path: source.tar.gz.intoto.jsonl + overwrite: true diff --git a/CHANGELOG.md b/CHANGELOG.md index 75abcb9a..e40c5eac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Changelog Future release ------------ -6.1.6 (2025-05-01) +6.1.7 (2025-05-01) ------------------ ### Build @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.6") + bazel_dep(name = "ftxui", version = "6.1.7") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index 3bad92f9..d1631cdf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.6 + VERSION 6.1.7 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index c1ebdbff..d2e367eb 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.6") +module(name = "ftxui", version = "6.1.7") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index 51b6cb89..05ca9e3b 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.6 + GIT_TAG v6.1.7 ) FetchContent_GetProperties(ftxui) From 784f53fd7e73db1116348352e907b77365781781 Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 11:30:12 +0200 Subject: [PATCH 8/9] Remove attestion for Bazel --- .github/workflows/publish.yaml | 17 ++--------------- .github/workflows/release.yaml | 16 ---------------- CHANGELOG.md | 4 ++-- CMakeLists.txt | 2 +- MODULE.bazel | 2 +- README.md | 2 +- 6 files changed, 7 insertions(+), 36 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 08ad3a91..004c5939 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -9,29 +9,16 @@ on: required: true type: string - # Fire as soon as the Release workflow completes - workflow_run: - workflows: - - Release - types: - - completed - permissions: - - attestations: write contents: write - id-token: write jobs: publish: uses: bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml@v0.0.4 - # Only run on manual dispatch, or when Release finishes successfully - if: | - github.event_name == 'workflow_dispatch' || - (github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success') with: - tag_name: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.tag_name || github.event.workflow_run.head_branch }} + tag_name: ${{ github.event.inputs.tag_name }} registry_fork: ArthurSonzogni/bazel-central-registry + attest: false secrets: publish_token: ${{ secrets.PUBLISH_TOKEN }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 5f2ab453..cde39cec 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -98,19 +98,3 @@ jobs: upload_url: ${{ needs.release.outputs.upload_url }} asset_path: source.tar.gz overwrite: true - - - name: Generate source attestation - id: attest_source - uses: actions/attest-build-provenance@v2 - with: - subject-path: source.tar.gz - - - name: Rename source attestation - run: mv ${{ steps.attest_source.outputs.bundle-path }} source.tar.gz.intoto.jsonl - - - name: "Upload source attestation" - uses: shogo82148/actions-upload-release-asset@v1 - with: - upload_url: ${{ needs.release.outputs.upload_url }} - asset_path: source.tar.gz.intoto.jsonl - overwrite: true diff --git a/CHANGELOG.md b/CHANGELOG.md index e40c5eac..9ee985a3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Changelog Future release ------------ -6.1.7 (2025-05-01) +6.1.8 (2025-05-01) ------------------ ### Build @@ -15,7 +15,7 @@ Future release **MODULE.bazel** ```bazel - bazel_dep(name = "ftxui", version = "6.1.7") + bazel_dep(name = "ftxui", version = "6.1.8") ``` **BUILD.bazel** diff --git a/CMakeLists.txt b/CMakeLists.txt index d1631cdf..907d99b2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12) project(ftxui LANGUAGES CXX - VERSION 6.1.7 + VERSION 6.1.8 DESCRIPTION "C++ Functional Terminal User Interface." ) diff --git a/MODULE.bazel b/MODULE.bazel index d2e367eb..4957fbd2 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -3,7 +3,7 @@ # the LICENSE file. # FTXUI Module. -module(name = "ftxui", version = "6.1.7") +module(name = "ftxui", version = "6.1.8") # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1") diff --git a/README.md b/README.md index 05ca9e3b..3918c09d 100644 --- a/README.md +++ b/README.md @@ -372,7 +372,7 @@ include(FetchContent) FetchContent_Declare(ftxui GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui - GIT_TAG v6.1.7 + GIT_TAG v6.1.8 ) FetchContent_GetProperties(ftxui) From 805db9bdeae25b16437f7f0f99de47e898180881 Mon Sep 17 00:00:00 2001 From: ArthurSonzogni Date: Thu, 1 May 2025 11:53:18 +0200 Subject: [PATCH 9/9] Set Bazel compatibility level --- .bcr/presubmit.yml | 3 --- MODULE.bazel | 6 +----- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/.bcr/presubmit.yml b/.bcr/presubmit.yml index 658def63..632e975d 100644 --- a/.bcr/presubmit.yml +++ b/.bcr/presubmit.yml @@ -1,6 +1,3 @@ -# Copyright 2025 Arthur Sonzogni. All rights reserved. -# Use of this source code is governed by the MIT license that can be found in -# the LICENSE file. matrix: platform: - centos7 diff --git a/MODULE.bazel b/MODULE.bazel index 4957fbd2..e625075b 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,9 +1,5 @@ -# Copyright 2025 Arthur Sonzogni. All rights reserved. -# Use of this source code is governed by the MIT license that can be found in -# the LICENSE file. - # FTXUI Module. -module(name = "ftxui", version = "6.1.8") +module(name = "ftxui", version = "6.1.8", compatibility_level = 6) # Build deps. bazel_dep(name = "rules_cc", version = "0.1.1")