Not sure about the best practice, but if you're interested in what I did:
xt/version.t
and
xt/changes.t
for
Syntax::Construct, plus
extract_version in its Makefile.PL.
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]