aboutsummaryrefslogtreecommitdiffstats
path: root/expand_date
blob: 3ffa2eab8c34275008c647ffd60ca2250eea239d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/usr/bin/env python3

from os import getcwd
from subprocess import check_output, DEVNULL
from sys import stdin, stdout, argv

content = stdin.read()

# To editors:
# The usage of FETCH_HEAD here is very tricky.  This is only intended for
# the cron job running "git pull" periodically.  Humans should NOT rely on
# this script at all.  Do NOT add "dater" filter into your .git/config.
# For editors, just use `git log ${path}` to show the history of a file.
cmd = [ 'git', 'log', '-1', '--pretty=%ad', 'FETCH_HEAD', '--', argv[1] ]
try:
    date = check_output(cmd, cwd = getcwd(), stderr=DEVNULL).decode().rstrip()
    content = content.replace('$Date$', '$Date: %s$' % date)
except Exception:
    pass
stdout.write(content)