From 4690d66c7e41e8476838da588226ee2c185af5e8 Mon Sep 17 00:00:00 2001 From: Yann Collet Date: Thu, 20 Feb 2025 11:46:14 -0800 Subject: [PATCH 1/2] add CI check for zstd_manual before release ensures it's properly updated --- .github/workflows/dev-short-tests.yml | 2 +- .github/workflows/release_check.yml | 31 +++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/release_check.yml diff --git a/.github/workflows/dev-short-tests.yml b/.github/workflows/dev-short-tests.yml index 7df105532..38a3a0f92 100644 --- a/.github/workflows/dev-short-tests.yml +++ b/.github/workflows/dev-short-tests.yml @@ -41,7 +41,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.1 - - name: ensure zstd can be build with c89/c90 compilers (+ long long support + variadic macros) + - name: ensure zstd can be built with c89/c90 compilers (+ long long support + variadic macros) run: | make c89build V=1 diff --git a/.github/workflows/release_check.yml b/.github/workflows/release_check.yml new file mode 100644 index 000000000..aa1e817f4 --- /dev/null +++ b/.github/workflows/release_check.yml @@ -0,0 +1,31 @@ +name: check_manual + +on: + push: + branches: + - release + pull_request: + branches: + - release + +permissions: read-all + +jobs: + verify-manual: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3 + + - name: Save current manual + run: mv doc/zstd_manual.html doc/zstd_manual_saved.html + + - name: Generate new manual + run: make manual + + - name: Compare manuals + run: | + if ! cmp -s doc/zstd_manual.html doc/zstd_manual_saved.html; then + echo "The manual was not updated before release !" + exit 1 + fi From c2ab0f9c4e6333f51b582676362946591d3278b6 Mon Sep 17 00:00:00 2001 From: Yann Collet Date: Thu, 20 Feb 2025 13:14:11 -0800 Subject: [PATCH 2/2] check man page update --- .github/workflows/release_check.yml | 37 +++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_check.yml b/.github/workflows/release_check.yml index aa1e817f4..160e4d516 100644 --- a/.github/workflows/release_check.yml +++ b/.github/workflows/release_check.yml @@ -1,4 +1,4 @@ -name: check_manual +name: release_checks on: push: @@ -26,6 +26,39 @@ jobs: - name: Compare manuals run: | if ! cmp -s doc/zstd_manual.html doc/zstd_manual_saved.html; then - echo "The manual was not updated before release !" + echo "The API manual was not updated before release !" exit 1 fi + + verify-man-pages: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y ruby ruby-dev + sudo gem install ronn + + - name: Display ronn version + run: ronn --version + + - name: Save current man pages + run: | + mv programs/zstd.1 programs/zstd.1.saved + mv programs/zstdgrep.1 programs/zstdgrep.1.saved + mv programs/zstdless.1 programs/zstdless.1.saved + + - name: Generate new manual pages + run: make -C programs man + + - name: Compare man pages + run: | + for file in zstd.1 zstdgrep.1 zstdless.1; do + if ! cmp -s programs/$file programs/$file.saved; then + echo "The man page $file should have been updated." + exit 1 + fi + done