From 9b9f41295625e0a62d83fb99b6b1c81e30f36441 Mon Sep 17 00:00:00 2001 From: Dmitry Zuikov Date: Fri, 29 Mar 2024 08:38:21 +0300 Subject: [PATCH] wip --- hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Html.hs | 5 +++-- hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Run.hs | 9 ++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Html.hs b/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Html.hs index d60b18a9..401a3988 100644 --- a/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Html.hs +++ b/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Html.hs @@ -10,6 +10,7 @@ import Lucid.Html5 hiding (for_) import Data.Text (Text) import Data.Text qualified as Text +import Data.Word import Data.ByteString.Lazy import Text.Pandoc import Text.Pandoc.Error (handleError) @@ -27,14 +28,14 @@ renderMarkdown markdown = case markdownToHtml markdown of Right html -> toHtmlRaw $ Text.pack html -renderEntries :: Monad m => HashMap Text Text -> [(HashVal, Text, Text)] -> m ByteString +renderEntries :: Monad m => HashMap Text Text -> [(HashVal, Text, Text, Word64)] -> m ByteString renderEntries _ items = pure $ renderBS do doctypehtml_ do head_ mempty do meta_ [charset_ "utf-8"] body_ mempty do - for_ items $ \(h,n,b) -> do + for_ items $ \(h,n,b,t) -> do div_ do when ( Text.length n > 2) do diff --git a/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Run.hs b/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Run.hs index c44b1d3b..4933a055 100644 --- a/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Run.hs +++ b/hbs2-git/hbs2-git-oracle/lib/HBS2/Git/Oracle/Run.hs @@ -44,6 +44,7 @@ import Text.InterpolatedString.Perl6 (qc) import System.Environment (getProgName, getArgs) import System.Environment import System.Posix.Signals +import Data.Word import System.Exit @@ -217,18 +218,20 @@ instance (MonadUnliftIO m, HasOracleEnv m) => HandleMethod m RpcChannelQuery whe listEntries args = do env <- getOracleEnv withOracleEnv env do - items <- withState $ select_ @_ @(HashVal, Text, Text) [qc| + items <- withState $ select_ @_ @(HashVal, Text, Text, Word64) [qc| SELECT lwwref, name, - brief + brief, + repoheadseq FROM ( SELECT lwwref, name, brief, - ROW_NUMBER() OVER (PARTITION BY lwwref ORDER BY lwwseq DESC) as rn + repoheadseq, + ROW_NUMBER() OVER (PARTITION BY lwwref ORDER BY lwwseq DESC, repoheadseq DESC) as rn FROM gitrepofact ) as s0 WHERE rn = 1;