Use monad-time instead of IO.
It seems like monad-time is very small, I'm not sure if introducing the typeclass constraint (MonadTime m => m) and an additional dependency is necessary. A whole new dependency just for doing liftIO getCurrentTime seems a tad much. I'm actually considering removing IO altogether, for purity's sake (pass in UTCTime as a parameter). This way if users wanted to use something like MonadTime they could.
Also, depending on another package does introduce potential version conflicts (since all dependency version bounds are managed by social contract), and I don't know how well monad-time is kept up.
Agree with @dmjio. I don't think it worth it to have extra dependency just to avoid small number of liftIO usages.