mirror of
https://github.com/commercialhaskell/stackage-server.git
synced 2026-01-18 23:21:55 +01:00
Remove latest version cache
This commit is contained in:
parent
3bf0d89985
commit
f8a82ec511
@ -433,27 +433,16 @@ getLatest pnameid onWhich orderWhich =
|
|||||||
getLatests :: PackageNameP -> ReaderT SqlBackend (RIO env) [LatestInfo]
|
getLatests :: PackageNameP -> ReaderT SqlBackend (RIO env) [LatestInfo]
|
||||||
getLatests pname = do
|
getLatests pname = do
|
||||||
pid <- getPackageNameId $ unPackageNameP pname
|
pid <- getPackageNameId $ unPackageNameP pname
|
||||||
mlatest <- getBy $ UniqueLatestVersion pid
|
mlts <-
|
||||||
(mlts, mnightly) <-
|
getLatest
|
||||||
case mlatest of
|
pid
|
||||||
Nothing -> do
|
(^. LtsSnap)
|
||||||
mLts <-
|
(\lts -> orderBy [desc (lts ^. LtsMajor), desc (lts ^. LtsMinor)])
|
||||||
getLatest
|
mnightly <-
|
||||||
pid
|
getLatest
|
||||||
(^. LtsSnap)
|
pid
|
||||||
(\lts -> orderBy [desc (lts ^. LtsMajor), desc (lts ^. LtsMinor)])
|
(^. NightlySnap)
|
||||||
mNightly <-
|
(\nightly -> orderBy [desc (nightly ^. NightlyDay)])
|
||||||
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)
|
|
||||||
for (catMaybes [mlts, mnightly]) $ \spid -> do
|
for (catMaybes [mlts, mnightly]) $ \spid -> do
|
||||||
sp <- maybe (error "impossible") id <$> get spid
|
sp <- maybe (error "impossible") id <$> get spid
|
||||||
snap <- maybe (error "impossible") id <$> get (snapshotPackageSnapshot sp)
|
snap <- maybe (error "impossible") id <$> get (snapshotPackageSnapshot sp)
|
||||||
|
|||||||
@ -42,8 +42,6 @@ module Stackage.Database.Schema
|
|||||||
, DepId
|
, DepId
|
||||||
, Deprecated(..)
|
, Deprecated(..)
|
||||||
, DeprecatedId
|
, DeprecatedId
|
||||||
, LatestVersion(..)
|
|
||||||
, LatestVersionId
|
|
||||||
-- ** Pantry
|
-- ** Pantry
|
||||||
, module PS
|
, module PS
|
||||||
) where
|
) where
|
||||||
@ -124,13 +122,6 @@ Deprecated
|
|||||||
package PackageNameId
|
package PackageNameId
|
||||||
inFavourOf [PackageNameId]
|
inFavourOf [PackageNameId]
|
||||||
UniqueDeprecated package
|
UniqueDeprecated package
|
||||||
|
|
||||||
-- Cache table for efficiency
|
|
||||||
LatestVersion
|
|
||||||
packageName PackageNameId
|
|
||||||
lts SnapshotPackageId Maybe
|
|
||||||
nightly SnapshotPackageId Maybe
|
|
||||||
UniqueLatestVersion packageName
|
|
||||||
|]
|
|]
|
||||||
|
|
||||||
_hideUnusedWarnings :: (SchemaId, LtsId, NightlyId, SnapshotHoogleDbId) -> ()
|
_hideUnusedWarnings :: (SchemaId, LtsId, NightlyId, SnapshotHoogleDbId) -> ()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user