morph 0.1.0.0 → 0.1.0.1
raw patch · 2 files changed
+8/−8 lines, 2 files
Files
- morph.cabal +2/−2
- src/Morph/Migrator.hs +6/−6
morph.cabal view
@@ -2,7 +2,7 @@ -- see http://haskell.org/cabal/users-guide/ name: morph-version: 0.1.0.0+version: 0.1.0.1 synopsis: A simple database migrator for PostgreSQL description: Morph is a tool to migrate your PostgreSQL databases safely which supports rollbacks.@@ -16,7 +16,7 @@ source-repository head type: darcs location: http://darcs.redspline.com/morph- tag: 0.1.0.0+ tag: 0.1.0.1 library hs-source-dirs: src
src/Morph/Migrator.hs view
@@ -9,8 +9,8 @@ import Control.Monad +import Data.Function import Data.List-import Data.Maybe import Data.Monoid import Data.String @@ -19,7 +19,6 @@ import System.IO import Database.PostgreSQL.Simple-import Database.PostgreSQL.Simple.FromRow -- | A migration can either be read from file and contain both sides or from the -- database and contain only the down side.@@ -112,10 +111,11 @@ toRollbackIdentifiers = doneIdentifiers \\ goalIdentifiers toDoIdentifiers = goalIdentifiers \\ doneIdentifiers - toRollback = filter ((`elem` toRollbackIdentifiers) . migrationIdentifier)- doneMigrations- toDo = filter ((`elem` toDoIdentifiers) . migrationIdentifier)- goalMigrations+ toRollback = sortBy (flip (compare `on` migrationIdentifier)) $+ filter ((`elem` toRollbackIdentifiers) . migrationIdentifier)+ doneMigrations+ toDo = filter ((`elem` toDoIdentifiers) . migrationIdentifier)+ goalMigrations withTransaction conn $ do forM_ toRollback $ rollbackMigration conn