Skip to content

Commit

Permalink
fix: version sorting and escape character
Browse files Browse the repository at this point in the history
  • Loading branch information
adamtabrams committed May 29, 2020
1 parent 0a8023d commit d09793f
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 7 deletions.
8 changes: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.5.2] - 2020-05-29
### Fixed
- Version sorting needed to be reversed.
- Escape more character for use in sed and curl.

## [0.5.1] - 2020-05-29
### Fixed
- For commands that require it, check if it's in a git repo.
Expand Down Expand Up @@ -57,7 +62,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- Created a proof of concept for a changelog updater.

[Unreleased]: https://github.com/adamtabrams/change/compare/0.5.1...HEAD
[Unreleased]: https://github.com/adamtabrams/change/compare/0.5.2...HEAD
[0.5.2]: https://github.com/adamtabrams/change/compare/0.5.1...0.5.2
[0.5.1]: https://github.com/adamtabrams/change/compare/0.5.0...0.5.1
[0.5.0]: https://github.com/adamtabrams/change/compare/0.4.1...0.5.0
[0.4.1]: https://github.com/adamtabrams/change/compare/0.4.0...0.4.1
Expand Down
11 changes: 5 additions & 6 deletions change
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ get_needed_log_ver_names() {
latest_log_ver_name=$2

git tag --list "[[:digit:]]*\.[[:digit:]]*" --sort="-v:refname" |
sed -n "/$latest_log_ver_name/!p;//q"
sed -n "/$latest_log_ver_name/!p;//q" | sed '1!G;h;$!d'

latest_changes=$(git log --pretty=format:"%B" "$latest_git_ver_name..")
[ ! "$latest_changes" ] && return
Expand Down Expand Up @@ -123,7 +123,7 @@ update_diffs() {
"$latest_log_ver_name" "$needed_log_ver_name")

new_section="## [$needed_log_ver] - $(get_ver_name_date "$needed_log_ver_name")\\
$(format_commits "$new_commits" | sed "s|$|\\\\|")"
$(format_commits "$new_commits" | sed -e "s|\([&\\]\)|\\\\\1|g" -e "s|$|\\\\|")"

sed -i "" -e "s|\(^## \[$latest_log_ver\] -.*$\)|$new_section$nl\1|" $change_file
}
Expand Down Expand Up @@ -153,8 +153,7 @@ get_commits_between() {
sort -Vr | head -1)

[ "$latest_git_ver_name" = "$highest_ver_name" ] &&
git log --pretty=format:"%s" "$latest_log_ver_name..$needed_log_ver_name" &&
return
git log --pretty=format:"%s" "$latest_log_ver_name..$needed_log_ver_name" && return

git log --pretty=format:"%s" "$latest_log_ver_name.."
}
Expand Down Expand Up @@ -199,7 +198,7 @@ post_release() {

diff=$(sed -n "/^## \[$latest_log_ver\] -.*/,/^## \[.*\] -.*/P" $change_file | sed "\$d")
link=$(grep "^\[$latest_log_ver\]: .*" $change_file)
body=$(echo "$diff$nl$nl$link" | sed "s|$|\\\\|" | tr '\n' 'n')
body=$(echo "$diff$nl$nl$link" | sed -e "s|\([\"\\]\)|\\\\\1|g" -e "s|$|\\\\|" | tr '\n' 'n')

curl -X POST "$repo_url/releases" \
-H "Authorization: token $auth_token" \
Expand Down Expand Up @@ -255,7 +254,7 @@ latest_git_ver_name=$(git tag --list "[[:digit:]]*\.[[:digit:]]*" --sort="-v:ref
latest_log_ver_name=$(sed -n "s|^\[Unreleased\]:.*/\(.*\)\.\.\.HEAD$|\1|p" $change_file)
needed_log_ver_names=$(get_needed_log_ver_names "$latest_git_ver_name" "$latest_log_ver_name")

[ ! "$needed_log_ver_names" ] && { echo "there's nothing to add" >&2; exit 0; }
[ ! "$needed_log_ver_names" ] && { echo "no new versions to add" >&2; exit 0; }

IFS="$nl"
for needed_log_ver_name in $needed_log_ver_names; do
Expand Down

0 comments on commit d09793f

Please sign in to comment.