From b0ec509d9e69caccd7b0de1aa6e9901a70190225 Mon Sep 17 00:00:00 2001 From: Konstantin Zudov Date: Fri, 16 Oct 2015 16:40:08 +0300 Subject: [PATCH] Added newestSnapshot --- Stackage/Database.hs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Stackage/Database.hs b/Stackage/Database.hs index 1233fb3..ee721c0 100644 --- a/Stackage/Database.hs +++ b/Stackage/Database.hs @@ -4,10 +4,11 @@ module Stackage.Database , SnapName (..) , SnapshotId () , Snapshot (..) + , newestSnapshot , newestLTS , newestLTSMajor - , ltsMajorVersions , newestNightly + , ltsMajorVersions , snapshotBefore , nightlyBefore , ltsBefore @@ -401,6 +402,11 @@ run inner = do StackageDatabase pool <- getStackageDatabase liftIO $ runSqlPool inner pool +newestSnapshot :: GetStackageDatabase m => SnapshotBranch -> m (Maybe SnapName) +newestSnapshot LtsBranch = map (uncurry SNLts) <$> newestLTS +newestSnapshot NightlyBranch = map SNNightly <$> newestNightly +newestSnapshot (LtsMajorBranch x) = map (SNLts x) <$> newestLTSMajor x + newestLTS :: GetStackageDatabase m => m (Maybe (Int, Int)) newestLTS = run $ liftM (fmap go) $ selectFirst [] [Desc LtsMajor, Desc LtsMinor]