File: parse-changelog.sh

package info (click to toggle)
rust-presenterm 0.15.1-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 2,692 kB
  • sloc: sh: 51; javascript: 36; makefile: 14
file content (26 lines) | stat: -rwxr-xr-x 621 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env bash

set -e

script_dir=$(dirname "$0")
root_dir="${script_dir}/../"

if [ $# -ne 1 ]; then
    echo "Usage: $0 <version>"
    exit 1
fi

version=$1
changelog="${root_dir}/CHANGELOG.md"

if ! grep "^# ${version}" "$changelog" >/dev/null; then
    echo "Version ${version} not found in changelog"
    exit 1
fi

releases=$(grep -e "^# " -n "$changelog")
version_line=$(echo "$releases" | grep "$version" | cut -d : -f 1)
next_line=$(echo "$releases" | grep "$version" -A 1 -m 1 | tail -n 1 | cut -d : -f 1)
let next_line=("$next_line" - 1)

sed -n "${version_line},${next_line}p" "$changelog" | tail -n +3