Short description
I was playing around with moin/2.0-dev and decided to try updating a few of the macros to match the macro api as of 10100:5208abaee26d AKA expecting a signature like def macro(self, content, arguments, page_url, alternative):
When working updating MoinMoin/macros/Date.py I discovered that Date.py called format_date from support/flaskext/bable.py which was expecting its argument to be an instance of datetime. As a result I ended up converting most of Date.py to work in terms of datetime. I didn't change the branch of the if/elif tree that was parsing a ISO timestamp as I wasn't sure if that was a safer mechanism to sanitizing input from the user.
However I think that block of code could be replaced with a call to datetime.strptime.
I'm attaching a patch that updates MoinMoin/macro/_base.py, _Date.py and as a bonus updates Verbatim.py to the new api as well.