diff --git a/src/Stackage/Database/Query.hs b/src/Stackage/Database/Query.hs index 17a7495..24127a2 100644 --- a/src/Stackage/Database/Query.hs +++ b/src/Stackage/Database/Query.hs @@ -433,27 +433,16 @@ getLatest pnameid onWhich orderWhich = getLatests :: PackageNameP -> ReaderT SqlBackend (RIO env) [LatestInfo] getLatests pname = do pid <- getPackageNameId $ unPackageNameP pname - mlatest <- getBy $ UniqueLatestVersion pid - (mlts, mnightly) <- - case mlatest of - Nothing -> do - mLts <- - getLatest - pid - (^. LtsSnap) - (\lts -> orderBy [desc (lts ^. LtsMajor), desc (lts ^. LtsMinor)]) - mNightly <- - getLatest - pid - (^. NightlySnap) - (\nightly -> orderBy [desc (nightly ^. NightlyDay)]) - insert_ LatestVersion - { latestVersionPackageName = pid - , latestVersionLts = mLts - , latestVersionNightly = mNightly - } - pure (mLts, mNightly) - Just (Entity _ (LatestVersion _name mlts mnightly)) -> pure (mlts, mnightly) + mlts <- + getLatest + pid + (^. LtsSnap) + (\lts -> orderBy [desc (lts ^. LtsMajor), desc (lts ^. LtsMinor)]) + mnightly <- + getLatest + pid + (^. NightlySnap) + (\nightly -> orderBy [desc (nightly ^. NightlyDay)]) for (catMaybes [mlts, mnightly]) $ \spid -> do sp <- maybe (error "impossible") id <$> get spid snap <- maybe (error "impossible") id <$> get (snapshotPackageSnapshot sp) diff --git a/src/Stackage/Database/Schema.hs b/src/Stackage/Database/Schema.hs index 91c5089..f915984 100644 --- a/src/Stackage/Database/Schema.hs +++ b/src/Stackage/Database/Schema.hs @@ -42,8 +42,6 @@ module Stackage.Database.Schema , DepId , Deprecated(..) , DeprecatedId - , LatestVersion(..) - , LatestVersionId -- ** Pantry , module PS ) where @@ -124,13 +122,6 @@ Deprecated package PackageNameId inFavourOf [PackageNameId] UniqueDeprecated package - --- Cache table for efficiency -LatestVersion - packageName PackageNameId - lts SnapshotPackageId Maybe - nightly SnapshotPackageId Maybe - UniqueLatestVersion packageName |] _hideUnusedWarnings :: (SchemaId, LtsId, NightlyId, SnapshotHoogleDbId) -> ()