Fix break when publishing an empty repo

I think we're supposed to use *dict* style format strings like ```_('Error: %(tag)s not found ..', dict(tag=start_tag))

Also, I the python *logging* documentation seems to suggest that:
```
log.info('my format %s', argument)
```
is prefered to:
```
log.info('my format %s' % argument)
```
The 1st form also has an efficiency advantage because the variables are substituted (and converted to a str, if needed) only in if/when the logger is actually going to emit the log record.  This is especially important for log.debug().