iCache last revision and speed up generation. - bitreich-memestats - Bitreich meme statistics and graphs. Err bitreich.org 70 hgit clone git://bitreich.org/bitreich-memestats git://hg6vgqziawt5s4dj.onion/bitreich-memestats URL:git://bitreich.org/bitreich-memestats git://hg6vgqziawt5s4dj.onion/bitreich-memestats bitreich.org 70 1Log /scm/bitreich-memestats/log.gph bitreich.org 70 1Files /scm/bitreich-memestats/files.gph bitreich.org 70 1Refs /scm/bitreich-memestats/refs.gph bitreich.org 70 1Tags /scm/bitreich-memestats/tag bitreich.org 70 1LICENSE /scm/bitreich-memestats/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 726dbaf74c47d4260c83251a2145d780a5d15bc9 /scm/bitreich-memestats/commit/726dbaf74c47d4260c83251a2145d780a5d15bc9.gph bitreich.org 70 1parent e082f9a06845793bcfa455df769420c1c926a85e /scm/bitreich-memestats/commit/e082f9a06845793bcfa455df769420c1c926a85e.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Sun, 29 Aug 2021 20:42:49 +0200 Err bitreich.org 70 i Err bitreich.org 70 iCache last revision and speed up generation. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M Makefile | 2 +- Err bitreich.org 70 i M extract-memecount.sh | 31 +++++++++++++++++++++++++++---- Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 28 insertions(+), 5 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/Makefile b/Makefile /scm/bitreich-memestats/file/Makefile.gph bitreich.org 70 i@@ -17,7 +17,7 @@ memecount_semilog: plot-memecount.sh memecount.log Err bitreich.org 70 i Err bitreich.org 70 i # output format: datecommitn_memes Err bitreich.org 70 i memecount.log: extract-memecount.sh Err bitreich.org 70 i- ./extract-memecount.sh $(ANNNA) > $@ Err bitreich.org 70 i+ ./extract-memecount.sh $(ANNNA) $@ Err bitreich.org 70 i Err bitreich.org 70 i clean: Err bitreich.org 70 i rm -f media-stats Err bitreich.org 70 1diff --git a/extract-memecount.sh b/extract-memecount.sh /scm/bitreich-memestats/file/extract-memecount.sh.gph bitreich.org 70 i@@ -1,16 +1,36 @@ Err bitreich.org 70 i #!/bin/sh Err bitreich.org 70 i # generate table of hashtag numbers over time Err bitreich.org 70 i Err bitreich.org 70 i-annnadir="${1:-$HOME/code/annna}" Err bitreich.org 70 i+if [ $# -lt 1 ]; Err bitreich.org 70 i+then Err bitreich.org 70 i+ printf "usage: %s annnadir [memecount.log]\n" "$(basename "$0")" >&2 Err bitreich.org 70 i+ exit 1 Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+annnadir="${1}" Err bitreich.org 70 i memefile="modules/hashtags/hashtags.txt" Err bitreich.org 70 i update_annna=yes Err bitreich.org 70 i-fromrevision="${2}" Err bitreich.org 70 i+outputfile="${2:-memecount.log}" Err bitreich.org 70 i+revisionrange="" Err bitreich.org 70 i Err bitreich.org 70 i if [ ! -e "${annnadir}/${memefile}" ]; then Err bitreich.org 70 i printf 'error: could not open %s\n' "${annnadir}/${memefile}" Err bitreich.org 70 i exit 1 Err bitreich.org 70 i fi Err bitreich.org 70 i Err bitreich.org 70 i+if [ -f "${outputfile}" ]; then Err bitreich.org 70 i+ lastrevision="$(tail -n 1 "${outputfile}" | cut -f 2)" Err bitreich.org 70 i+ revisionrange="${lastrevision}..HEAD" Err bitreich.org 70 i+fi Err bitreich.org 70 i+ Err bitreich.org 70 i+case "${outputfile}" in Err bitreich.org 70 i+/*) Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+*) Err bitreich.org 70 i+ outputfile="$(pwd)/${outputfile}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+esac Err bitreich.org 70 i+ Err bitreich.org 70 i cd "$annnadir" Err bitreich.org 70 i if [ "$update_annna" = "yes" ]; then Err bitreich.org 70 i git pull >/dev/null 2>&1 Err bitreich.org 70 i@@ -19,7 +39,8 @@ fi Err bitreich.org 70 i headcommit="$(git rev-parse HEAD)" Err bitreich.org 70 i i=0 Err bitreich.org 70 i # derived from Hiltjo Posthuma's loc.sh Err bitreich.org 70 i-git log --pretty='format:%H %cd %at' --date="format:%Y-%m-%d" | \ Err bitreich.org 70 i+git log --pretty='format:%H %cd %at' --date="format:%Y-%m-%d" \ Err bitreich.org 70 i+ "${revisionrange}" | \ Err bitreich.org 70 i sort -k 2 | uniq -f 1 | \ Err bitreich.org 70 i while read -r commit date timestamp; do Err bitreich.org 70 i Err bitreich.org 70 i@@ -52,8 +73,10 @@ git log --pretty='format:%H %cd %at' --date="format:%Y-%m-%d" | \ Err bitreich.org 70 i lastprintdate="$date" Err bitreich.org 70 i Err bitreich.org 70 i printf '%s\t%s\t%s\t%s\t%s\n' \ Err bitreich.org 70 i- "$date" "$commit" "$n" "$timestamp" "$dn_dt" Err bitreich.org 70 i+ "$date" "$commit" "$n" "$timestamp" "$dn_dt" \ Err bitreich.org 70 i+ >> "${outputfile}" Err bitreich.org 70 i Err bitreich.org 70 i fi Err bitreich.org 70 i fi Err bitreich.org 70 i done Err bitreich.org 70 i+ Err bitreich.org 70 .