In an effort to replace the MonadCGI-specific exception handling functions (throwCGI, catchCGI) with something more general, I introduced a MonadCatchIO-mtl dependency in cgi 3001.1.8.x. But the Haskell Platform lacks MonadCatchIO-mtl, so it remains stuck on cgi 3001.1.7.x.
Whether MonadCatchIO-mtl represents the current best practice for exception catching in monad transformer stacks is questionable. But my last effort to introduce something better, monad-peel, got derailed by monad-control with all its (IMHO pointlessly) required GHC extensions. So I feel a little stuck.