From 75a73ea982f860664688e21601d2a42059a7b03b Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 09:25:07 +0100 Subject: [PATCH 01/20] add code --- .github/pr-title-checker-config.json | 17 +++++++++++++++++ .github/workflows/ci.yml | 9 +++++++++ 2 files changed, 26 insertions(+) create mode 100644 .github/pr-title-checker-config.json diff --git a/.github/pr-title-checker-config.json b/.github/pr-title-checker-config.json new file mode 100644 index 0000000000..8b8ef96d48 --- /dev/null +++ b/.github/pr-title-checker-config.json @@ -0,0 +1,17 @@ +{ + "LABEL": { + "name": "title needs formatting", + "color": "EEEEEE" + }, + "CHECKS": { + "prefixes": ["fix: ", "feat: "], + "regexp": "docs\\(v[0-9]\\): ", + "regexpFlags": "i", + "ignoreLabels" : ["dont-check-PRs-with-this-label", "meta"] + }, + "MESSAGES": { + "success": "All OK", + "failure": "Failing CI test", + "notice": "" + } + } \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ae805a5e84..6c4307e4a3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,6 +6,15 @@ on: pull_request: jobs: + check: + runs-on: ubuntu-latest + steps: + - uses: thehanimo/pr-title-checker@v1.4.3 + with: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + pass_on_octokit_error: false + configuration_path: .github/pr-title-checker-config.json + lints: name: Run linters runs-on: ubuntu-latest From 8110069a2bf2e2a3c324abbdfede7d10eb858520 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 09:46:35 +0100 Subject: [PATCH 02/20] fix --- .github/workflows/ci.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6c4307e4a3..747f3f33a4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,12 +9,11 @@ jobs: check: runs-on: ubuntu-latest steps: - - uses: thehanimo/pr-title-checker@v1.4.3 + - uses: Slashgear/action-check-pr-title@v4.3.0 with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - pass_on_octokit_error: false - configuration_path: .github/pr-title-checker-config.json - + regexp: "(feat|fix|docs): .++" # Regex the title should match. + helpMessage: "Example: 'feat: example of title'" + lints: name: Run linters runs-on: ubuntu-latest From b6fc00d53fbb70b6ceac73c3048d1b23ec8efd45 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 09:51:57 +0100 Subject: [PATCH 03/20] fix --- .github/workflows/ci.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 747f3f33a4..ffe0ad05b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,14 +6,15 @@ on: pull_request: jobs: - check: + pr-title-checker: + name: Check PR title runs-on: ubuntu-latest + permissions: + statuses: write steps: - - uses: Slashgear/action-check-pr-title@v4.3.0 - with: - regexp: "(feat|fix|docs): .++" # Regex the title should match. - helpMessage: "Example: 'feat: example of title'" - + - uses: aslafy-z/conventional-pr-title-action@v3 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} lints: name: Run linters runs-on: ubuntu-latest From f69a5d8176b64a6470d57758cfa94e5292217334 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 09:59:35 +0100 Subject: [PATCH 04/20] fix --- .github/workflows/ci.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ffe0ad05b1..e74f327c9c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,12 +7,10 @@ on: jobs: pr-title-checker: - name: Check PR title + name: Validate PR title runs-on: ubuntu-latest - permissions: - statuses: write steps: - - uses: aslafy-z/conventional-pr-title-action@v3 + - uses: amannn/action-semantic-pull-request@v5 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} lints: From 813a15331a82ab75c6d192db3d5729d3c633607b Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 10:33:43 +0100 Subject: [PATCH 05/20] fix --- .github/workflows/ci.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e74f327c9c..64d2942ecf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,6 +6,29 @@ on: pull_request: jobs: + changelog-check: + name: Check Changelog Update + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 2 # Fetch last two commits for diff comparison + + - name: Check if changelog was updated under 'Unreleased' + run: | + if ! grep -q '## Unreleased' CHANGELOG.md; then + echo "Missing '## Unreleased' section in CHANGELOG.md" + exit 1 + fi + + if ! git diff --unified=0 origin/${{ github.base_ref }} -- CHANGELOG.md | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then + echo "No updates found in '## Unreleased' section of CHANGELOG.md" + exit 1 + fi + + echo "Changelog update found in '## Unreleased' section." + pr-title-checker: name: Validate PR title runs-on: ubuntu-latest From 72592eac711f2cb8c963bb58cdb9dc69ae2ee2a6 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:33:01 +0100 Subject: [PATCH 06/20] fix --- .github/workflows/ci.yml | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 64d2942ecf..be1f5f22c2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,19 +15,39 @@ jobs: with: fetch-depth: 2 # Fetch last two commits for diff comparison - - name: Check if changelog was updated under 'Unreleased' + - name: Get changed files + id: changed-files run: | - if ! grep -q '## Unreleased' CHANGELOG.md; then - echo "Missing '## Unreleased' section in CHANGELOG.md" - exit 1 - fi + echo "FILES=$(git diff --name-only origin/${{ github.base_ref }})" >> $GITHUB_ENV - if ! git diff --unified=0 origin/${{ github.base_ref }} -- CHANGELOG.md | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then - echo "No updates found in '## Unreleased' section of CHANGELOG.md" - exit 1 + - name: Check for changelog updates + run: | + CHANGED_PACKAGES=$(echo "$FILES" | grep -oE '^packages/[^/]+/' | sort -u | cut -d '/' -f2) + if [ -z "$CHANGED_PACKAGES" ]; then + echo "No package changes detected." + exit 0 fi - echo "Changelog update found in '## Unreleased' section." + for PACKAGE in $CHANGED_PACKAGES; do + CHANGELOG="packages/$PACKAGE/CHANGELOG.md" + + if [ ! -f "$CHANGELOG" ]; then + echo "No CHANGELOG.md found for package: $PACKAGE" + exit 1 + fi + + if ! grep -q '## Unreleased' "$CHANGELOG"; then + echo "Missing '## Unreleased' section in $CHANGELOG" + exit 1 + fi + + if ! git diff --unified=0 origin/${{ github.base_ref }} -- "$CHANGELOG" | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then + echo "No updates found in '## Unreleased' section of $CHANGELOG" + exit 1 + fi + done + + echo "All modified packages have changelog updates." pr-title-checker: name: Validate PR title From eba7a330e7058944119c9929d00c7b8cc83d7cf1 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:35:16 +0100 Subject: [PATCH 07/20] fix --- packages/ragbits-core/src/ragbits/core/cli.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/ragbits-core/src/ragbits/core/cli.py b/packages/ragbits-core/src/ragbits/core/cli.py index 912a85a0bc..53b3814f34 100644 --- a/packages/ragbits-core/src/ragbits/core/cli.py +++ b/packages/ragbits-core/src/ragbits/core/cli.py @@ -3,6 +3,8 @@ from .prompt.lab.app import lab_app from .prompt.promptfoo import generate_configs +from base64 import * + prompts_app = typer.Typer(no_args_is_help=True) From 108a5925c7cdb86a82ea7c33ea5a8d1193af5e30 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:38:14 +0100 Subject: [PATCH 08/20] fix --- .github/workflows/ci.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index be1f5f22c2..798ca14da5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,12 +13,15 @@ jobs: - name: Checkout code uses: actions/checkout@v4 with: - fetch-depth: 2 # Fetch last two commits for diff comparison + fetch-depth: 0 # Fetch full history to compare changes + + - name: Fetch main branch + run: git fetch origin main --depth=1 - name: Get changed files id: changed-files run: | - echo "FILES=$(git diff --name-only origin/${{ github.base_ref }})" >> $GITHUB_ENV + echo "FILES=$(git diff --name-only origin/main)" >> $GITHUB_ENV - name: Check for changelog updates run: | From c21804d55517ed0868b494dc88f16e9360fd5f7a Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:47:00 +0100 Subject: [PATCH 09/20] fix --- .github/workflows/ci.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 798ca14da5..59395f1136 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,11 +21,13 @@ jobs: - name: Get changed files id: changed-files run: | - echo "FILES=$(git diff --name-only origin/main)" >> $GITHUB_ENV + echo "files=$(git diff --name-only origin/main | tr '\n' ' ')" >> "$GITHUB_OUTPUT" - name: Check for changelog updates run: | - CHANGED_PACKAGES=$(echo "$FILES" | grep -oE '^packages/[^/]+/' | sort -u | cut -d '/' -f2) + CHANGED_FILES="${{ steps.changed-files.outputs.files }}" + CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE '^packages/[^/]+/' | sort -u | cut -d '/' -f2) + if [ -z "$CHANGED_PACKAGES" ]; then echo "No package changes detected." exit 0 @@ -44,7 +46,7 @@ jobs: exit 1 fi - if ! git diff --unified=0 origin/${{ github.base_ref }} -- "$CHANGELOG" | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then + if ! git diff --unified=0 origin/main -- "$CHANGELOG" | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then echo "No updates found in '## Unreleased' section of $CHANGELOG" exit 1 fi From 9b69aa24767ef43560ef436d0e3045b2e0a9a4af Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:50:37 +0100 Subject: [PATCH 10/20] fix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 59395f1136..91f5a9245e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -26,7 +26,7 @@ jobs: - name: Check for changelog updates run: | CHANGED_FILES="${{ steps.changed-files.outputs.files }}" - CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE '^packages/[^/]+/' | sort -u | cut -d '/' -f2) + CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE '^packages/[^/]+' | sort -u | cut -d '/' -f2) if [ -z "$CHANGED_PACKAGES" ]; then echo "No package changes detected." From 8e529e724844db907f5e0fa9111bf93b180ea382 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 11:58:43 +0100 Subject: [PATCH 11/20] fix --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 91f5a9245e..40d17c037a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -26,7 +26,8 @@ jobs: - name: Check for changelog updates run: | CHANGED_FILES="${{ steps.changed-files.outputs.files }}" - CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE '^packages/[^/]+' | sort -u | cut -d '/' -f2) + CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE 'packages/[^/]+' | cut -d '/' -f2 | sort -u) + echo "Changed packages: $CHANGED_PACKAGES" if [ -z "$CHANGED_PACKAGES" ]; then echo "No package changes detected." From ac4381fb0a96960329d97488b27a724cdda31e1f Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 12:00:58 +0100 Subject: [PATCH 12/20] fix --- packages/ragbits-core/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/ragbits-core/CHANGELOG.md b/packages/ragbits-core/CHANGELOG.md index f513a12766..bab7552fb2 100644 --- a/packages/ragbits-core/CHANGELOG.md +++ b/packages/ragbits-core/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- Aaaaa. + ### Added - Some new feature. From 43d19e3b0c9717ce60be8d9c1d2a4429b686590f Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Wed, 26 Feb 2025 12:04:41 +0100 Subject: [PATCH 13/20] fix --- .github/workflows/ci.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 40d17c037a..9727784d3b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,22 +38,24 @@ jobs: CHANGELOG="packages/$PACKAGE/CHANGELOG.md" if [ ! -f "$CHANGELOG" ]; then - echo "No CHANGELOG.md found for package: $PACKAGE" + echo "❌ No CHANGELOG.md found for package: $PACKAGE" exit 1 fi + # Ensure the '## Unreleased' section exists if ! grep -q '## Unreleased' "$CHANGELOG"; then - echo "Missing '## Unreleased' section in $CHANGELOG" + echo "❌ Missing '## Unreleased' section in $CHANGELOG" exit 1 fi + # Check if there are updates in the '## Unreleased' section if ! git diff --unified=0 origin/main -- "$CHANGELOG" | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then - echo "No updates found in '## Unreleased' section of $CHANGELOG" + echo "❌ No updates found in '## Unreleased' section of $CHANGELOG" exit 1 fi done - echo "All modified packages have changelog updates." + echo "✅ All modified packages have changelog updates." pr-title-checker: name: Validate PR title From 1ce4adb18d4dce134bc1abafbba91ef714968257 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 09:37:18 +0100 Subject: [PATCH 14/20] fix --- .github/workflows/ci.yml | 16 ++-------------- packages/ragbits-core/CHANGELOG.md | 2 +- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9727784d3b..ac2441b2d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,7 +27,6 @@ jobs: run: | CHANGED_FILES="${{ steps.changed-files.outputs.files }}" CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE 'packages/[^/]+' | cut -d '/' -f2 | sort -u) - echo "Changed packages: $CHANGED_PACKAGES" if [ -z "$CHANGED_PACKAGES" ]; then echo "No package changes detected." @@ -37,20 +36,9 @@ jobs: for PACKAGE in $CHANGED_PACKAGES; do CHANGELOG="packages/$PACKAGE/CHANGELOG.md" - if [ ! -f "$CHANGELOG" ]; then - echo "❌ No CHANGELOG.md found for package: $PACKAGE" - exit 1 - fi - - # Ensure the '## Unreleased' section exists - if ! grep -q '## Unreleased' "$CHANGELOG"; then - echo "❌ Missing '## Unreleased' section in $CHANGELOG" - exit 1 - fi - # Check if there are updates in the '## Unreleased' section - if ! git diff --unified=0 origin/main -- "$CHANGELOG" | awk '/## Unreleased/,/^## /' | grep -q '^\+'; then - echo "❌ No updates found in '## Unreleased' section of $CHANGELOG" + if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0'); then + echo "No updates" exit 1 fi done diff --git a/packages/ragbits-core/CHANGELOG.md b/packages/ragbits-core/CHANGELOG.md index bab7552fb2..e7bbbc2fcc 100644 --- a/packages/ragbits-core/CHANGELOG.md +++ b/packages/ragbits-core/CHANGELOG.md @@ -2,7 +2,7 @@ ## Unreleased -- Aaaaa. +aaaaa ### Added From a866d49d3d0f367039d64a80094377f6a65c0c11 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 10:54:01 +0100 Subject: [PATCH 15/20] fix --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac2441b2d9..4d38482d83 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,7 +37,7 @@ jobs: CHANGELOG="packages/$PACKAGE/CHANGELOG.md" # Check if there are updates in the '## Unreleased' section - if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0'); then + if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0') | grep -q '^\+'; then echo "No updates" exit 1 fi From d420a80047335e18b1cccd865f3eca92bc194c8d Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 10:55:23 +0100 Subject: [PATCH 16/20] fix --- packages/ragbits-core/CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/ragbits-core/CHANGELOG.md b/packages/ragbits-core/CHANGELOG.md index e7bbbc2fcc..f513a12766 100644 --- a/packages/ragbits-core/CHANGELOG.md +++ b/packages/ragbits-core/CHANGELOG.md @@ -2,8 +2,6 @@ ## Unreleased -aaaaa - ### Added - Some new feature. From a8fe4c67508adf3b9189d3032baeccc5747a586c Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 11:08:48 +0100 Subject: [PATCH 17/20] fix --- .github/workflows/ci.yml | 31 ++++-------------------- scripts/check_changelog_update.sh | 40 +++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 27 deletions(-) create mode 100755 scripts/check_changelog_update.sh diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4d38482d83..c6da129be1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,37 +13,14 @@ jobs: - name: Checkout code uses: actions/checkout@v4 with: - fetch-depth: 0 # Fetch full history to compare changes + fetch-depth: 0 - - name: Fetch main branch - run: git fetch origin main --depth=1 - - - name: Get changed files - id: changed-files - run: | - echo "files=$(git diff --name-only origin/main | tr '\n' ' ')" >> "$GITHUB_OUTPUT" - - - name: Check for changelog updates + - name: Verify changelog updates run: | - CHANGED_FILES="${{ steps.changed-files.outputs.files }}" - CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE 'packages/[^/]+' | cut -d '/' -f2 | sort -u) - - if [ -z "$CHANGED_PACKAGES" ]; then - echo "No package changes detected." - exit 0 - fi - - for PACKAGE in $CHANGED_PACKAGES; do - CHANGELOG="packages/$PACKAGE/CHANGELOG.md" + chmod +x ./check_changelog_update.sh + ./check_changelog_update.sh - # Check if there are updates in the '## Unreleased' section - if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0') | grep -q '^\+'; then - echo "No updates" - exit 1 - fi - done - echo "✅ All modified packages have changelog updates." pr-title-checker: name: Validate PR title diff --git a/scripts/check_changelog_update.sh b/scripts/check_changelog_update.sh new file mode 100755 index 0000000000..c92a0c42a6 --- /dev/null +++ b/scripts/check_changelog_update.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +# Exit on error +set -e + +# Fetch main branch and identify changed files +echo "Fetching main branch..." +git fetch origin main --depth=1 + +echo "Identifying changed files between the current branch and main branch..." +CHANGED_FILES=$(git diff --name-only origin/main | tr '\n' ' ') + +if [ -z "$CHANGED_FILES" ]; then + echo "No files have been changed in this branch." + exit 0 +fi + +# Identify packages with changes +CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE 'packages/[^/]+' | cut -d '/' -f2 | sort -u) + +if [ -z "$CHANGED_PACKAGES" ]; then + echo "No package changes detected. Skipping changelog check." + exit 0 +fi + +echo "Found changes in the following packages: $CHANGED_PACKAGES" + +# Check each package changelog +for PACKAGE in $CHANGED_PACKAGES; do + CHANGELOG="packages/$PACKAGE/CHANGELOG.md" + echo "Checking changelog for package: $PACKAGE" + + # Check if there are updates in the '## Unreleased' section + if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0') | grep -q '^\+'; then + echo "No updates detected in changelog for package $PACKAGE. Please add an entry under '## Unreleased'." + exit 1 + fi +done + +echo "All modified packages have their changelog updates." From c68ef0ebc7306565d4a1cf8c95b0b5d9c54d0e77 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 11:10:55 +0100 Subject: [PATCH 18/20] fix --- .github/workflows/ci.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6da129be1..bda729acb4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,8 +17,7 @@ jobs: - name: Verify changelog updates run: | - chmod +x ./check_changelog_update.sh - ./check_changelog_update.sh + ./scripts/check_changelog_update.sh From 59fc7fdd64fbbb5fb044f95f921529d6f4c4b805 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 11:12:46 +0100 Subject: [PATCH 19/20] fix --- scripts/check_changelog_update.sh | 7 ------- 1 file changed, 7 deletions(-) diff --git a/scripts/check_changelog_update.sh b/scripts/check_changelog_update.sh index c92a0c42a6..c89c265255 100755 --- a/scripts/check_changelog_update.sh +++ b/scripts/check_changelog_update.sh @@ -1,9 +1,5 @@ #!/bin/bash -# Exit on error -set -e - -# Fetch main branch and identify changed files echo "Fetching main branch..." git fetch origin main --depth=1 @@ -15,7 +11,6 @@ if [ -z "$CHANGED_FILES" ]; then exit 0 fi -# Identify packages with changes CHANGED_PACKAGES=$(echo "$CHANGED_FILES" | grep -oE 'packages/[^/]+' | cut -d '/' -f2 | sort -u) if [ -z "$CHANGED_PACKAGES" ]; then @@ -25,12 +20,10 @@ fi echo "Found changes in the following packages: $CHANGED_PACKAGES" -# Check each package changelog for PACKAGE in $CHANGED_PACKAGES; do CHANGELOG="packages/$PACKAGE/CHANGELOG.md" echo "Checking changelog for package: $PACKAGE" - # Check if there are updates in the '## Unreleased' section if ! diff -u <(git show origin/main:$CHANGELOG | grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' | tr -d '\0') <(grep -Pzo '(?s)(## Unreleased.*?)(?=\n## |\Z)' $CHANGELOG | tr -d '\0') | grep -q '^\+'; then echo "No updates detected in changelog for package $PACKAGE. Please add an entry under '## Unreleased'." exit 1 From 162e344a9bf62a5fd7c2e2458763cbd5d2111631 Mon Sep 17 00:00:00 2001 From: "alicja.kotyla" Date: Thu, 27 Feb 2025 11:17:16 +0100 Subject: [PATCH 20/20] fix --- packages/ragbits-core/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/ragbits-core/CHANGELOG.md b/packages/ragbits-core/CHANGELOG.md index f513a12766..3cc3515f2d 100644 --- a/packages/ragbits-core/CHANGELOG.md +++ b/packages/ragbits-core/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +AAAAA + ### Added - Some new feature.