in reply to DateTime ->epoch not working in Catalyst controller but 'does' in template?

The error says one is calling ->year on something that isn't a DateTime object. You didn't show any code that includes a call to ->year. But if it relates to the code you do show, then issued and/or modified expect a DateTime object, but you pass a number of seconds. Perhaps the code should be
$entry->issued($post->date); $entry->modified($post->date);

You've provided very little useful data, so I'm quite lucky if I'm guessing right. If not, please show the code that gives the error, tells us what the functions expect for parameters, and show us what actually gets sent as parameters.