mirror of
https://github.com/radareorg/r2unity.git
synced 2026-11-07 06:36:00 -10:00
Release 1.0.0
This commit is contained in:
1 parent
6b956a6b2f
commit
955662ca75
3 files changed
+93
-2
No files matched your search
@@ -131,6 +131,9 @@ jobs:
|
||||
with:
|
||||
path: dist/artifacts
|
||||
|
||||
- name: Generate release notes
|
||||
run: ./release.sh notes > release-notes.md
|
||||
|
||||
- name: Create GitHub release
|
||||
uses: softprops/[email protected]
|
||||
with:
|
||||
@@ -138,6 +141,6 @@ jobs:
|
||||
tag_name: ${{ github.ref_name }}
|
||||
draft: false
|
||||
prerelease: false
|
||||
generate_release_notes: true
|
||||
body_path: release-notes.md
|
||||
files: |
|
||||
dist/artifacts/debian-package/*.deb
|
||||
@@ -1,6 +1,6 @@
|
||||
EXEC = r2unity
|
||||
CONFIG_H = r2unity_config.h
|
||||
PROJECT_VERSION = $(shell cat meson.build|grep 'version'|cut -d "'" -f2|head -n1)
|
||||
PROJECT_VERSION = $(shell ./release.sh version)
|
||||
ifeq ($(PROJECT_VERSION),)
|
||||
error
|
||||
endif
|
||||
|
||||
Executable
+88
@@ -0,0 +1,88 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Usage: sys/release-notes.sh 4.5.1 # from HEAD to 4.5.1
|
||||
# $ sys/release-notes.sh 4.5.1 -v # same as above but include untagged commits
|
||||
# $ sys/release-notes.sh 4.5.0 4.5.1 # from 4.5.0 to 4.5.1
|
||||
#
|
||||
|
||||
release_notes() {
|
||||
if [ -n "`git log -n 1 | grep Release`" ]; then
|
||||
VERS=`git tag --sort=committerdate | grep -v conti | tail -n 1`
|
||||
PREV=`git tag --sort=committerdate | grep -v conti | tail -n 2 | head -n1`
|
||||
else
|
||||
VERS=HEAD
|
||||
PREV=`git tag --sort=committerdate | grep -v conti | tail -n 1`
|
||||
fi
|
||||
|
||||
[ -n "$1" ] && PREV="$1"
|
||||
[ -n "$2" ] && VERS="$2"
|
||||
[ -z "$PREV" ] && PREV="$(git rev-list --max-parents=0 HEAD)"
|
||||
|
||||
|
||||
git log ${PREV}..${VERS} > .l
|
||||
# When HEAD contains a tag do this magic
|
||||
if [ ! -s .l ]; then
|
||||
VERS=$PREV
|
||||
PREV=`git tag --sort=committerdate | grep -v conti | tail -n 2 | head -n1`
|
||||
git log ${PREV}..${VERS} > .l
|
||||
fi
|
||||
grep ^Author .l | cut -d : -f 2- | sed -e 's,radare,pancake,' | sort -u > .A
|
||||
CODENAME="`git log | grep -i 'Release' | head -n 1 | cut -d - -f 2- | cut -d ' ' -f 3-`"
|
||||
|
||||
echo "## Release Notes"
|
||||
echo
|
||||
echo "Codename: ${CODENAME}"
|
||||
echo "Version: ${VERS}"
|
||||
echo "Previous: ${PREV}"
|
||||
printf "Commits: "
|
||||
grep ^commit .l | wc -l | xargs echo
|
||||
echo "Contributors: `wc -l .A | awk '{print $1}'`"
|
||||
echo
|
||||
echo "## Highlights"
|
||||
|
||||
echo "<details><summary>More details</summary><p>"
|
||||
echo
|
||||
echo "## Contributors"
|
||||
echo
|
||||
cat .A | perl -ne '/([^<]+)(.*)$/;$a=$1;$b=$2;$a=~s/^\s+|\s+$//g;$b=~s/[<>\s]//g;print "[$a](mailto:$b) "'
|
||||
echo
|
||||
echo
|
||||
|
||||
echo "## Changes"
|
||||
echo
|
||||
cat .l | grep -v ^commit | grep -v ^Author | grep -v ^Date > .x
|
||||
cat .x | grep '##' | perl -ne '/##([^ ]*)/; if ($1) {print "$1\n";}' | sort -u > .y
|
||||
for a in `cat .y` ; do
|
||||
echo "**$a**"
|
||||
echo
|
||||
cat .x | grep "##$a" | sed -e 's/##.*//g' | perl -ne '{ s/^\s+//; print "* $_"; }'
|
||||
echo
|
||||
done
|
||||
|
||||
echo "## Raw"
|
||||
cat .x | grep -v '##' | sed -e 's,^ *,,g' | grep -v "^$" | \
|
||||
perl -ne 'if (/^\*/) { print "$_"; } else { print "* $_";}'
|
||||
echo
|
||||
rm -f .x .y .l .A
|
||||
|
||||
echo '</p></details>'
|
||||
}
|
||||
|
||||
release_version() {
|
||||
if [ -z "$1" ]; then
|
||||
cat meson.build | grep version | cut -d "'" -f2 | head -n1
|
||||
else
|
||||
meson rewrite kwargs set project / version "$1"
|
||||
fi
|
||||
}
|
||||
|
||||
help_message() {
|
||||
echo "Usage ./release.sh [-v|-n] (version | notes)"
|
||||
echo "Change app version with './release.sh -v 1.2.3'"
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
-n|notes) release_notes ; ;;
|
||||
-v|version) release_version "$2" ; ;;
|
||||
*) help_message ; ;;
|
||||
esac
|
||||
Reference in new issue
Block a user