Created
July 21, 2026 10:45
-
-
Save Aster89/a740cc11f47bf4e56f547827bd0c69fe to your computer and use it in GitHub Desktop.
part of the stderr log of ycmd
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 2026-07-21 12:37:47,968 - DEBUG - TX: Sending message: b'Content-Length: 627\r\n\r\n{"id":3,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:48] "POST /receive_messages HTTP/1.1" 200 4 | |
| 2026-07-21 12:37:49,678 - DEBUG - RX: Received message: b'{"id":3,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:37:49,678 - DEBUG - TX: Sending message: b'Content-Length: 405\r\n\r\n{"id":4,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:37:49,679 - DEBUG - RX: Received message: b'{"id":4,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:49] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:49,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:49,689 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:37:49,689 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:37:49,690 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:37:49,690 - DEBUG - TX: Sending notification: b'Content-Length: 15872\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":2}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:49] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:37:49,850 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":2}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:49] "POST /receive_messages HTTP/1.1" 200 128 | |
| 2026-07-21 12:37:49,897 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":2}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:49] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:37:50,719 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,719 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:50,720 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,720 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,720 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,721 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:50,721 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,722 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,722 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:50,723 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,723 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,723 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,724 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,725 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,725 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,725 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,739 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,739 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,739 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:50,739 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:50,741 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,742 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,743 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,740 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:50,744 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:50,745 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:50,745 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:50,745 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:50,932 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:50,933 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:50,934 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:50,945 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:37:50,945 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:37:50,950 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:37:50,951 - DEBUG - TX: Sending notification: b'Content-Length: 15831\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":3}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:50] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:37:51,045 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":3}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:51] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:37:51,982 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,982 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:51,982 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,983 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,983 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,983 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:51,983 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,984 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:51,984 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,984 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,984 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,984 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,985 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,985 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,985 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:51,985 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,003 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,003 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,004 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:52,004 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,005 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,005 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:52,005 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:52,006 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,006 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:52,006 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:52,007 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:52,007 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:52,007 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:52,007 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,008 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:52,008 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:52,008 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:52,009 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:52,009 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,010 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:52,010 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:52,010 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:52,010 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:52,010 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,011 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,012 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,012 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,012 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,013 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,013 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:52,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:52,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:52,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:52,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:52,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:52,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:52,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:52,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:53,510 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:37:53,510 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:37:53,510 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:37:53,511 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:37:53,512 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:37:53,512 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:37:53,513 - DEBUG - TX: Sending message: b'Content-Length: 627\r\n\r\n{"id":5,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":49,"line":197},"start":{"character":48,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:37:53,579 - DEBUG - RX: Received message: b'{"id":5,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:37:53,579 - DEBUG - TX: Sending message: b'Content-Length: 405\r\n\r\n{"id":6,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:37:53,579 - DEBUG - RX: Received message: b'{"id":6,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:53] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:37:53,580 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:53,581 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:53,581 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:53,581 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:53,581 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:53,581 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:53,591 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:37:53,591 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:37:53,592 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:37:53,592 - DEBUG - TX: Sending notification: b'Content-Length: 15872\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":4}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:53] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:37:53,658 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":4}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:53] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:37:54,608 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,609 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:54,609 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,610 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,610 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,611 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:54,611 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,612 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,612 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:37:54,612 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,613 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,616 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,637 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,638 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,638 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:54,639 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:54,640 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:54,641 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,643 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:54,644 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:54,644 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:54,644 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,644 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,644 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:37:54,645 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:37:54,646 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:37:54,646 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:37:54,646 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,646 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:54,647 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:37:55,944 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:55,945 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:55,946 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:37:55,956 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:37:55,956 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:37:55,961 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:37:55,961 - DEBUG - TX: Sending notification: b'Content-Length: 15831\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":5}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:55] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:37:56,054 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":5}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:37:56] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:37:59,968 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:37:59,968 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:37:59,968 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:37:59,968 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:37:59,969 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:37:59,970 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:37:59,970 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:37:59,970 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:37:59,970 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:37:59,971 - DEBUG - TX: Sending message: b'Content-Length: 627\r\n\r\n{"id":7,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:38:00,015 - DEBUG - RX: Received message: b'{"id":7,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:38:00,015 - DEBUG - TX: Sending message: b'Content-Length: 405\r\n\r\n{"id":8,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:38:00,015 - DEBUG - RX: Received message: b'{"id":8,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:00] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:38:00,016 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:00,016 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:00,016 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:00,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:00,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:00,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:00,026 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:00,026 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:00,027 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:00,027 - DEBUG - TX: Sending notification: b'Content-Length: 15872\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":6}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:00] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:38:00,102 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":6}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:00] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:38:01,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:01,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:01,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:01,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,069 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,070 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,071 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:01,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:01,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:01,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:01,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:01,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:01,084 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:01,418 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:01,419 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:01,420 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:01,431 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:01,431 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:01,435 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:01,436 - DEBUG - TX: Sending notification: b'Content-Length: 15831\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":7}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:01] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:38:01,541 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":7}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:01] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:38:03,109 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:38:03,109 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:38:03,109 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:38:03,109 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:38:03,110 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:38:03,111 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:38:03,111 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:38:03,111 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:38:03,111 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:38:03,112 - DEBUG - TX: Sending message: b'Content-Length: 627\r\n\r\n{"id":9,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:38:03,160 - DEBUG - RX: Received message: b'{"id":9,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:38:03,160 - DEBUG - TX: Sending message: b'Content-Length: 406\r\n\r\n{"id":10,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:38:03,160 - DEBUG - RX: Received message: b'{"id":10,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:03] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:38:03,161 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,161 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:03,161 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,161 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:03,162 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,162 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:03,170 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:03,171 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:03,172 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:03,172 - DEBUG - TX: Sending notification: b'Content-Length: 15872\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":8}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:03] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:38:03,238 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":8}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:03] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:38:03,977 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,977 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,977 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:03,980 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:03,980 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:03,981 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:03,982 - DEBUG - TX: Sending notification: b'Content-Length: 15831\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":9}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:03] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:38:04,052 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":9}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:04] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:38:06,675 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:38:06,675 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:38:06,676 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:38:06,677 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:38:06,678 - DEBUG - TX: Sending message: b'Content-Length: 628\r\n\r\n{"id":11,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:38:06,727 - DEBUG - RX: Received message: b'{"id":11,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:38:06,727 - DEBUG - TX: Sending message: b'Content-Length: 406\r\n\r\n{"id":12,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:38:06,728 - DEBUG - RX: Received message: b'{"id":12,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:06] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:38:06,728 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:06,729 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:06,729 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:06,729 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:06,729 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:06,729 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:06,737 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:06,737 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:06,738 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:06,738 - DEBUG - TX: Sending notification: b'Content-Length: 15873\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":10}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:06] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:38:06,808 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":10}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:06] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:38:07,758 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,758 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:07,759 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,759 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,760 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:07,760 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,761 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,761 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:07,761 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,761 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,761 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,762 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,770 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:07,772 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:07,771 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:07,773 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,774 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,775 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,775 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:07,776 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:07,777 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:07,777 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:07,777 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:07,777 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:08,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:08,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:08,090 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:08,091 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:08,095 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:08,096 - DEBUG - TX: Sending notification: b'Content-Length: 15832\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":11}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:08] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:38:08,180 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":11}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:08] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:38:09,545 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:38:09,545 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:38:09,545 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:38:09,545 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:38:09,545 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:38:09,545 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:38:09,546 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:38:09,547 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:38:09,547 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:38:09,548 - DEBUG - TX: Sending message: b'Content-Length: 628\r\n\r\n{"id":13,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:38:09,575 - DEBUG - RX: Received message: b'{"id":13,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:38:09,575 - DEBUG - TX: Sending message: b'Content-Length: 406\r\n\r\n{"id":14,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:38:09,576 - DEBUG - RX: Received message: b'{"id":14,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:09] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:09,577 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:09,588 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:09,588 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:09,589 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:09,589 - DEBUG - TX: Sending notification: b'Content-Length: 15873\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":12}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:09] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:38:09,668 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":12}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:09] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:38:10,174 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:10,175 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:10,176 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:10,185 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:10,185 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:10,190 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:10,191 - DEBUG - TX: Sending notification: b'Content-Length: 15832\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":13}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:10] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:38:10,293 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":13}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:10] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:38:11,812 - INFO - Found executeCommandProvider support for command ExecuteCommand in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found codeActionProvider support for command FixIt in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found definitionProvider support for command GoToDefinition in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found definitionProvider support for command GoToDeclaration in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found definitionProvider support for command GoTo in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found typeDefinitionProvider support for command GoToType in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found implementationProvider support for command GoToImplementation in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found referencesProvider support for command GoToReferences in haskell-language-server | |
| 2026-07-21 12:38:11,812 - INFO - Found renameProvider support for command RefactorRename in haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Found documentFormattingProvider support for command Format in haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Found workspaceSymbolProvider support for command GoToSymbol in haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Found documentSymbolProvider support for command GoToDocumentOutline in haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting StopServer for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting RestartServer for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting GoToCallees for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting GoToCallers for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting CallHierarchy for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting ResolveCallHierarchyItem for haskell-language-server | |
| 2026-07-21 12:38:11,813 - INFO - Always supporting GetHover for haskell-language-server | |
| 2026-07-21 12:38:11,814 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action None | |
| 2026-07-21 12:38:11,814 - DEBUG - TX: Sending message: b'Content-Length: 628\r\n\r\n{"id":15,"jsonrpc":"2.0","method":"textDocument/codeAction","params":{"context":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \\u2018caseTok\\u2019","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]}]},"range":{"end":{"character":48,"line":197},"start":{"character":47,"line":197}},"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs"}}}' | |
| 2026-07-21 12:38:11,845 - DEBUG - RX: Received message: b'{"id":15,"jsonrpc":"2.0","result":[{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}]}' | |
| 2026-07-21 12:38:11,846 - DEBUG - TX: Sending message: b'Content-Length: 406\r\n\r\n{"id":16,"jsonrpc":"2.0","method":"codeAction/resolve","params":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 2026-07-21 12:38:11,846 - DEBUG - RX: Received message: b'{"id":16,"jsonrpc":"2.0","result":{"diagnostics":[],"edit":{"changes":{"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs":[{"newText":"{-# OPTIONS_GHC -Wno-unused-matches #-}\\n","range":{"end":{"character":0,"line":12},"start":{"character":0,"line":12}}}]}},"kind":"quickfix","title":"Disable \\"unused-matches\\" warnings"}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:11] "POST /run_completer_command HTTP/1.1" 200 623 | |
| 2026-07-21 12:38:11,847 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:11,847 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:11,847 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:11,848 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:11,848 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:11,848 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:11,860 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:11,860 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:11,863 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:11,863 - DEBUG - TX: Sending notification: b'Content-Length: 15873\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n{-# OPTIONS_GHC -Wno-unused-matches #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":14}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:11] "POST /event_notification HTTP/1.1" 200 2637 | |
| 2026-07-21 12:38:11,944 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":88},"start":{"character":0,"line":88}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":14}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:11] "POST /receive_messages HTTP/1.1" 200 999 | |
| 2026-07-21 12:38:13,248 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:13,249 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:13,250 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:13,258 - DEBUG - Event name: FileReadyToParse | |
| 2026-07-21 12:38:13,259 - INFO - Adding buffer identifiers for file: /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs | |
| 2026-07-21 12:38:13,263 - DEBUG - Refreshing file /home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs: State is Open -> Open/action Change | |
| 2026-07-21 12:38:13,264 - DEBUG - TX: Sending notification: b'Content-Length: 15832\r\n\r\n{"jsonrpc":"2.0","method":"textDocument/didChange","params":{"contentChanges":[{"text":"{-# LANGUAGE CPP #-}\\n{-# LANGUAGE DataKinds #-}\\n{-# LANGUAGE DuplicateRecordFields #-}\\n{-# LANGUAGE LambdaCase #-}\\n{-# LANGUAGE MultiWayIf #-}\\n{-# LANGUAGE OverloadedStrings #-}\\n{-# LANGUAGE PatternSynonyms #-}\\n{-# LANGUAGE ViewPatterns #-}\\n{-# LANGUAGE RecordWildCards #-}\\n{-# LANGUAGE ImpredicativeTypes #-}\\n{-# LANGUAGE TypeFamilies #-}\\n{-# LANGUAGE OrPatterns #-}\\n\\nmodule Ide.Plugin.CaseSplit\\n ( descriptor\\n , Log\\n ) where\\n\\nimport qualified Data.Text as T\\nimport Development.IDE.Core.PluginUtils (runActionE, useE, activeDiagnosticsInRange)\\nimport Ide.Plugin.Error\\n ( PluginError(PluginInternalError),\\n getNormalizedFilePathE,\\n handleMaybeM )\\nimport Ide.Types\\n ( defaultPluginDescriptor,\\n mkPluginHandler,\\n pluginGetClientCapabilities,\\n DynFlagsModifications(dynFlagsModifyGlobal),\\n PluginDescriptor(pluginModifyDynflags, pluginHandlers,\\n pluginPriority),\\n PluginId,\\n PluginMethodHandler )\\nimport qualified Language.LSP.Protocol.Message as LSP\\nimport Language.LSP.Protocol.Message (Method(Method_TextDocumentCodeAction))\\nimport qualified Development.IDE.Core.Shake as Shake\\nimport Language.LSP.Protocol.Types\\n ( Range,\\n CodeActionParams(_range, CodeActionParams, _textDocument),\\n CodeActionKind(CodeActionKind_QuickFix),\\n type (|?)(InR, InL),\\n CodeAction(_data_, CodeAction, _title, _kind, _diagnostics,\\n _isPreferred, _disabled, _edit, _command),\\n isSubrangeOf )\\nimport Development.IDE.Types.Diagnostics (_SomeStructuredMessage)\\nimport Development.IDE.GHC.Compat (GhcMessage (GhcDsMessage), HsMatchContext (CaseAlt), ConLike (RealDataCon), NamedThing (getName), HoleKind (HoleVar))\\nimport Development.IDE.GHC.Compat.Error (DsMessage(DsNonExhaustivePatterns), msgEnvelopeErrorL)\\nimport Data.Maybe (mapMaybe)\\nimport Control.Lens (Fold, prism\', (^?), (<&>), (^.))\\nimport GHC.HsToCore.Pmc.Solver.Types (PmAltConApp(..), PmAltCon(..), TmState (ts_facts), Nabla (nabla_tm_st), VarInfo (vi_pos))\\nimport GHC.Types.Unique.SDFM ( lookupUSDFM )\\nimport GHC.Types.Name.Reader (nameRdrName)\\nimport GHC (DynFlags(maxUncoveredPatterns), ParsedModule (pm_parsed_source), HasLoc (getHasLoc), realSrcSpan, EpToken (EpTok), EpaLocation\' (EpaSpan), AnnList (AnnList), AnnListBrackets (ListBraces, ListNone), LMatch)\\nimport Development.IDE.GHC.Compat (getLoc)\\nimport Control.Monad.IO.Class ( MonadIO(liftIO) )\\nimport Control.Monad.Trans.Maybe ( MaybeT(runMaybeT) )\\nimport Development.IDE.GHC.Compat.ExactPrint\\n ( exactPrint, d0, d1, noAnnSrcSpanDP1, setEntryDP )\\nimport Data.Data (Data())\\nimport Data.Generics.Schemes (everywhere)\\nimport Debug.Trace ( trace, traceWith )\\nimport Type.Reflection (eqTypeRep,\\n type (:~~:) (HRefl),\\n typeRep, typeOf)\\nimport GHC.Hs (GhcPs, deltaPos, unnamedHoleRdrName)\\nimport GHC.Types.SrcLoc (SrcSpan, GenLocated (L))\\nimport Language.Haskell.Syntax.Expr (HsExpr (HsCase, HsHole), Match (..), GRHSs (GRHSs), GRHS (GRHS))\\nimport Control.Monad.Trans (lift)\\nimport Ide.PluginUtils (diffText, WithDeletions (IncludeDeletions))\\nimport Development.IDE.Core.FileStore (getVersionedTextDoc)\\nimport qualified Language.LSP.Protocol.Lens as L\\nimport Language.Haskell.Syntax (MatchGroup (MG, mg_alts), LHsExpr, NoExtField (NoExtField), Pat (..), HsConDetails (PrefixCon), HsLocalBindsLR (EmptyLocalBinds))\\nimport GHC (EpAnn(EpAnn))\\nimport GHC.Parser.Annotation (noSrcSpanA, EpUniToken (EpUniTok), IsUnicodeSyntax (NormalSyntax), emptyComments, TrailingAnn (AddSemiAnn), addTrailingAnnToA, AnnList (al_brackets, al_anchor))\\nimport Data.List.NonEmpty.Extra (singleton)\\nimport Development.IDE.GHC.Compat.Core (GrhsAnn(..), HasSrcSpan, srcSpanStartLine, HsMatchContext (LamAlt), HsLamVariant (LamCase), LocatedAn, lann_trailing, AnnListItem, srcSpanStartCol, EpAnnHsCase (EpAnnHsCase))\\nimport Data.List.Extra (chunksOf)\\nimport Data.List (groupBy)\\nimport Data.Function (on, (&))\\nimport Control.Arrow ((&&&))\\nimport Development.IDE (Pretty (pretty), Recorder, WithPriority, IdeState (shakeExtras), FileDiagnostic (fdStructuredMessage), runAction, GetParsedModule (GetParsedModule), srcSpanToRange)\\nimport Ide.Logger ((<+>))\\n\\ninRange :: SrcSpan -> Range -> Bool\\ninRange s range = maybe False (`isSubrangeOf` range) (srcSpanToRange s)\\n\\ninSpan :: Range -> SrcSpan -> Bool\\ninSpan range s = maybe False (range `isSubrangeOf`) (srcSpanToRange s)\\n\\ndata Log\\n = LogShake Shake.Log\\n | LogWAEResponseError (LSP.TResponseError LSP.Method_WorkspaceApplyEdit)\\n | forall a. (Pretty a) => LogResolve a\\n\\ninstance Pretty Log where\\n pretty = \\\\case\\n LogShake logMsg -> pretty logMsg\\n LogWAEResponseError rspErr -> \\"RequestWorkspaceApplyEdit Failed with \\" <+> pretty rspErr\\n LogResolve msg -> pretty msg\\n\\ndescriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState\\ndescriptor _ plId = (defaultPluginDescriptor plId \\"Provides a code action to split case\\")\\n { pluginHandlers = mkPluginHandler LSP.SMethod_TextDocumentCodeAction suggestCaseSplitProvider\\n , pluginPriority = 1\\n , pluginModifyDynflags = mempty { dynFlagsModifyGlobal = \\\\dynFlags -> dynFlags { maxUncoveredPatterns = 30 } }\\n }\\n\\nsuggestCaseSplitProvider :: PluginMethodHandler IdeState \'Method_TextDocumentCodeAction\\nsuggestCaseSplitProvider\\n state\\n _\\n CodeActionParams{ _textDocument\\n , _range = range -- XXX: In the interactive usage, this is\\n -- the first _character of the token (?) the\\n -- cursor is on. In the test (at least with\\n -- the code as it is right now) it covers\\n -- the whole `case foo of` (until the char\\n -- past the f).\\n }\\n = do\\n nfp <- getNormalizedFilePathE $ _textDocument ^. L.uri\\n\\n verTxtDocId <- liftIO $ runAction \\"dfdaias\\" state $ getVersionedTextDoc _textDocument\\n\\n pm <- runActionE \\"not important, as long as unique\\" state\\n $ useE GetParsedModule nfp\\n\\n fdiags :: [FileDiagnostic] <- activeDiagnosticsInRange (shakeExtras state) nfp range\\n <&> \\\\case Nothing -> error \\"Oops, no diagnostics!\\"\\n Just fileDiags -> fileDiags\\n\\n case mapMaybe (\\\\d -> fdStructuredMessage d ^? _SomeStructuredMessage\\n . msgEnvelopeErrorL\\n . _DsMessage) fdiags of\\n (mapMaybe dsMsgToPmAlts -> [pmAltsConApp])\\n -- TODO: I need to filter for the diagnostic I want.\\n -- It might important to check the case of two nested `case`\\n -- expressions, both with non-exhaustive patterns.\\n -> do\\n\\n (old, new) <- handleMaybeM (PluginInternalError \\"Unable to makeEditText\\")\\n $ liftIO $ runMaybeT\\n $ makeEditText pm pmAltsConApp range\\n\\n caps <- lift pluginGetClientCapabilities\\n\\n pure $ InL [InR\\n $ CodeAction { _title = \\"Add placeholders for all missing patterns\\"\\n , _kind = Just CodeActionKind_QuickFix\\n , _diagnostics = Nothing -- TODO: I should probably encode here that it addresses the DsNonExhaustivePatterns diag\\n , _isPreferred = Nothing -- TODO: Just True?\\n , _disabled = Nothing\\n , _edit = Just $ diffText caps (verTxtDocId, old) new IncludeDeletions\\n , _command = Nothing\\n , _data_ = Nothing }]\\n (mapMaybe dsMsgToPmAlts -> []) -> error \\"wth?\\"\\n (mapMaybe dsMsgToPmAlts -> [_,_]) -> error \\"Two nested\\"\\n _ -> error \\"Oops, unexpected number of messages!\\"\\n\\n where\\n\\n dsMsgToPmAlts :: DsMessage -> Maybe [PmAltConApp]\\n dsMsgToPmAlts =\\n \\\\case DsNonExhaustivePatterns !(CaseAlt; LamAlt LamCase) _ _ ![ids] !nablas ->\\n trace (\\"length nablas = \\" ++ show (length nablas)) $\\n Just $ nablas >>=\\n (\\\\nabla -> let facts = ts_facts $ nabla_tm_st nabla\\n in case vi_pos <$> lookupUSDFM facts ids of\\n Just [x] -> [x]\\n Just [] -> error \\"Oops 0\\"\\n Just _ -> error \\"Oops 1\\"\\n _ -> error \\"Oops 2\\")\\n DsNonExhaustivePatterns (CaseAlt; LamAlt LamCase) _ _ _ _ -> error \\"Oops 3\\"\\n DsNonExhaustivePatterns _ _ _ ![_] _ -> error \\"Oops 4\\"\\n DsNonExhaustivePatterns _ _ _ _ _ -> error \\"Oops 5\\"\\n _ -> error \\"Oops Nothing\\"\\n\\n_DsMessage :: Fold GhcMessage DsMessage\\n_DsMessage = prism\' GhcDsMessage $ \\\\case\\n GhcDsMessage dsmsg -> Just dsmsg\\n _ -> Nothing\\n\\nmakeEditText :: Monad m => ParsedModule -> MissingPatterns -> Range -> MaybeT m (T.Text, T.Text)\\nmakeEditText pm missingPs range = do\\n\\n let ps = pm_parsed_source pm\\n !old = T.pack $ exactPrint ps\\n !ps\' = everywhere f ps\\n !new = T.pack $ exactPrint ps\'\\n\\n pure (old, new)\\n\\n where\\n f :: forall d. Data d => d -> d\\n f node = case typeOf node `eqTypeRep` typeRep @(HsExpr GhcPs) of\\n Nothing -> node\\n Just HRefl -> case node of\\n HsCase x@(EpAnnHsCase (EpTok caseTok) (EpTok ofTok)) e existingPs\\n | getHasLoc e `inRange` (traceWith ((\\"range = \\" ++) . show) range)\\n -- HsCase x e existingPs\\n -- | (traceWith ((\\"range = \\" ++) . show) range) `inSpan` getHasLoc e\\n -> HsCase x e $ addMissingPatterns (makeMatch <$> missingPs) existingPs\\n _ -> node\\n\\nisOnelined :: LocatedAn ann e -> LocatedAn ann e -> Bool\\nisOnelined = (==) `on` getStartLine\\n\\nisBraced :: EpAnn (AnnList a) -> Bool\\nisBraced (EpAnn _ (AnnList _ (ListBraces (EpTok (EpaSpan _)) _) _ _ _) _) = True\\nisBraced (EpAnn _ (AnnList _ ListNone _ _ _) _) = False\\nisBraced _ = error \\"Ooops\\"\\n\\ngetStartCol :: HasSrcSpan a => a -> Int\\ngetStartCol = srcSpanStartCol . realSrcSpan . getLoc\\n\\ngetStartLine :: HasSrcSpan a => a -> Int\\ngetStartLine = srcSpanStartLine . realSrcSpan . getLoc\\n\\nsetDP :: Int -> Int -> LocatedAn t a -> LocatedAn t a\\nsetDP = (flip setEntryDP .) . deltaPos\\n\\n-- Add semicolon, unless one is already present.\\naddSemiCol :: LocatedAn AnnListItem a -> LocatedAn AnnListItem a\\naddSemiCol (L l@(EpAnn _ ls _) e)\\n | none isSemiCol (lann_trailing ls)\\n = L (addTrailingAnnToA (AddSemiAnn (EpTok d0)) emptyComments l) e\\naddSemiCol l = l\\n\\naddMissingPatterns :: [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) -> MatchGroup GhcPs (LHsExpr GhcPs)\\naddMissingPatterns missing mg@(MG { mg_alts = L l [] })\\n = mg { mg_alts = L l (fmt missing) }\\n where\\n fmt = if isBraced l\\n then zipWith3 (.)\\n (replicate (length missing - 1) addSemiCol ++ [id])\\n (repeat $ setDP 1 defaultIndent)\\n else zipWith ($)\\n (setDP 1 defaultIndent:repeat (setDP 1 0))\\n\\naddMissingPatterns missing mg@(MG { mg_alts = L altsLoc@(EpAnn _\\n (al_anchor &&& al_brackets -> (Just (getStartCol . getHasLoc -> foo), -- TODO: find a good name for foo\\n bracks))\\n _)\\n existings })\\n = mg { mg_alts = L altsLoc alts }\\n where\\n alts = let ptrnGrps = groupBy isOnelined existings\\n nGrps = length ptrnGrps\\n nLastGr = ptrnGrps -- length of the last group of \\u22651 patterns written on one line\\n & reverse\\n & take 1\\n & concat\\n & length\\n (indent, addSemiCols) = if isBraced altsLoc\\n then (foo - case bracks of\\n ListBraces (EpTok (getStartCol . getHasLoc -> col)) _ -> col\\n _ -> error \\"this is impossible\\"\\n ,zipWith ($) (replicate (nGrps - 1) id\\n ++ replicate (length missingGrps) (mapLast addSemiCol)\\n ++ [id]))\\n else (0, id)\\n missingGrps = chunksOf nLastGr missing\\n <&> \\\\case [] -> error \\"Impossible\\"\\n (m:ms) -> zipWith ($) (replicate (length ms) addSemiCol ++ [id])\\n (setDP 1 indent m:map (setDP 0 1) ms)\\n\\n in concat $ addSemiCols $ ptrnGrps ++ missingGrps\\n\\naddMissingPatterns _ _ = error \\"This should not be possible\\"\\n\\nmapLast :: (a -> a) -> [a] -> [a]\\nmapLast f [a] = [f a]\\nmapLast f (a:as) = a:mapLast f as\\nmapLast _ [] = error \\"nope\\"\\n\\nisSemiCol :: TrailingAnn -> Bool\\nisSemiCol (AddSemiAnn _) = True\\nisSemiCol _ = False\\n\\nmakeMatch :: PmAltConApp -> LMatch GhcPs (LHsExpr GhcPs)\\nmakeMatch PACA{ paca_con = PmAltConLike (RealDataCon ctor), .. }\\n = L noSrcSpanA\\n $ Match { m_ext = NoExtField\\n , m_ctxt = CaseAlt\\n , m_pats = L noSrcSpanA\\n $ [L noSrcSpanA ConPat { pat_con_ext = (Nothing, Nothing)\\n , pat_con = L noSrcSpanA $ nameRdrName $ getName ctor\\n , pat_args = PrefixCon $ map (const $ L noAnnSrcSpanDP1 $ WildPat NoExtField) paca_ids\\n }]\\n , m_grhss = GRHSs emptyComments\\n -- TODO: remember to respect unicode arrow of preceeding cases or the -XUnicodeSyntax (https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/unicode_syntax.html#extension-UnicodeSyntax)\\n -- TODO: check whether ga_sep default choice is really not printing anything.\\n (singleton $ L noSrcSpanA $ GRHS (EpAnn noSrcSpanA\\n (GrhsAnn{ ga_vbar = Nothing\\n , ga_sep = Right (EpUniTok d1 NormalSyntax) })\\n emptyComments) []\\n $ L noSrcSpanA $ HsHole $ HoleVar $ L noAnnSrcSpanDP1\\n $ unnamedHoleRdrName)\\n (EmptyLocalBinds NoExtField)\\n }\\nmakeMatch _ = error \\"boom\\"\\n\\ntype MissingPatterns = [PmAltConApp]\\n\\ndefaultIndent :: Int\\ndefaultIndent = 2\\n\\nnone :: Foldable t => (a -> Bool) -> t a -> Bool\\nnone = all . (not <$>)\\n"}],"textDocument":{"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":15}}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:13] "POST /event_notification HTTP/1.1" 200 873 | |
| 2026-07-21 12:38:13,386 - DEBUG - RX: Received message: b'{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-top-binds"]},"message":"Defined but not used: \xe2\x80\x98inSpan\xe2\x80\x99","range":{"end":{"character":6,"line":87},"start":{"character":0,"line":87}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98caseTok\xe2\x80\x99","range":{"end":{"character":54,"line":197},"start":{"character":47,"line":197}},"severity":2,"source":"typecheck","tags":[1]},{"code":"GHC-40910","codeDescription":{"href":"https://errors.haskell.org/messages/GHC-40910"},"data":{"attachedReason":["-Wunused-matches"]},"message":"Defined but not used: \xe2\x80\x98ofTok\xe2\x80\x99","range":{"end":{"character":68,"line":197},"start":{"character":63,"line":197}},"severity":2,"source":"typecheck","tags":[1]}],"uri":"file:///home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs","version":15}}' | |
| 127.0.0.1 - - [21/Jul/2026 12:38:13] "POST /receive_messages HTTP/1.1" 200 2763 | |
| 2026-07-21 12:38:15,308 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,308 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:15,309 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,309 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,310 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:15,310 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,311 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,312 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,312 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,312 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,313 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,313 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,314 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,315 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,315 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:38:15,316 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,336 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,337 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,337 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:15,338 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,338 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,338 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,338 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,339 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:15,339 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:15,340 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:15,341 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:15,343 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:15,342 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,343 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:15,344 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,345 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:15,342 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:38:15,346 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:38:15,347 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:38:15,348 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:38:16,353 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,354 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,354 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,355 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,355 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,356 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/.CaseSplit.hs.swp', wd=739, mask=IN_MODIFY, cookie=0, name='.CaseSplit.hs.swp'> | |
| 2026-07-21 12:38:16,582 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:16,583 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:16,583 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:16,690 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:16,691 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:38:16,692 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 127.0.0.1 - - [21/Jul/2026 12:38:23] "POST /receive_messages HTTP/1.1" 200 4 | |
| 2026-07-21 12:39:06,432 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,432 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,433 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,433 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:06,433 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,433 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,433 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,434 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,435 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:06,435 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,435 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,435 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,439 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,439 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,440 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,440 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,441 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,441 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,444 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,444 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,445 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,446 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:06,447 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,448 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:06,450 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:06,450 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:06,451 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:06,452 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:09,974 - ERROR - Error retrieving completer debug info | |
| Traceback (most recent call last): | |
| File "/home/enrico/.vim/plugged/YouCompleteMe/third_party/ycmd/ycmd/handlers.py", line 336, in DebugInfo | |
| result[ 'completer' ] = _GetCompleterForRequestData( | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^ | |
| request_data ).DebugInfo( request_data ) | |
| ^^^^^^^^^^^^^^ | |
| File "/home/enrico/.vim/plugged/YouCompleteMe/third_party/ycmd/ycmd/handlers.py", line 402, in _GetCompleterForRequestData | |
| return _server_state.GetFiletypeCompleter( request_data[ 'filetypes' ] ) | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
| File "/home/enrico/.vim/plugged/YouCompleteMe/third_party/ycmd/ycmd/server_state.py", line 96, in GetFiletypeCompleter | |
| raise ValueError( | |
| f'No semantic completer exists for filetypes: { current_filetypes }' ) | |
| ValueError: No semantic completer exists for filetypes: ['ycm_nofiletype'] | |
| 127.0.0.1 - - [21/Jul/2026 12:39:09] "POST /debug_info HTTP/1.1" 200 198 | |
| 2026-07-21 12:39:13,901 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:13,902 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:13,902 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:13,921 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,921 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:13,921 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,922 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,922 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,923 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:13,923 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,923 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:13,924 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,934 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,934 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:13,934 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:14,146 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:14,147 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:14,147 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 127.0.0.1 - - [21/Jul/2026 12:39:14] "POST /debug_info HTTP/1.1" 200 1052 | |
| 127.0.0.1 - - [21/Jul/2026 12:39:24] "POST /receive_messages HTTP/1.1" 200 4 | |
| 127.0.0.1 - - [21/Jul/2026 12:39:34] "POST /receive_messages HTTP/1.1" 200 4 | |
| 127.0.0.1 - - [21/Jul/2026 12:39:44] "POST /receive_messages HTTP/1.1" 200 4 | |
| 2026-07-21 12:39:48,698 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,698 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,699 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,700 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,700 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,700 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:39:48,700 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,700 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,703 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,703 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,704 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,704 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,704 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,705 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,708 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,708 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,708 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:48,709 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:48,710 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:48,711 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:48,711 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,711 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:39:48,711 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,711 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,712 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,712 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:48,712 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:48,713 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:39:50,077 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:50,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:50,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:39:50,995 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:50,996 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:50,996 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:51,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:51,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:39:51,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 127.0.0.1 - - [21/Jul/2026 12:39:54] "POST /receive_messages HTTP/1.1" 200 4 | |
| 2026-07-21 12:40:02,203 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,204 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,204 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,205 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,205 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,206 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,206 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,207 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:02,207 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,856 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:24,857 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:24,858 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:24,863 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:24,863 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:24,864 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:24,869 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:24,869 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:24,869 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,870 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,871 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,872 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,874 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,873 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,875 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,876 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,877 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,879 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,879 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,879 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,879 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,878 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,879 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,880 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,880 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,883 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,881 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,882 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,885 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,886 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,886 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,886 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,886 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,887 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,888 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,884 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,889 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,890 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:24,891 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:26,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:26,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.expected.hs'> | |
| 2026-07-21 12:40:26,065 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:26,067 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:26,067 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:26,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:26,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,084 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,084 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,084 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,084 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,085 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,085 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,085 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,085 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,085 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,086 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,086 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,087 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,087 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,087 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:26,087 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,087 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,088 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,089 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,089 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,089 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,090 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,090 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,090 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,090 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,090 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,091 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,088 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,091 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,091 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.hs'> | |
| 2026-07-21 12:40:26,091 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,091 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,092 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,092 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,092 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,093 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,093 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,094 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,094 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,094 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,095 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,095 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,095 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:26,095 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,095 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,096 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,092 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:26,092 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,099 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,100 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T18.expected.hs', wd=737, mask=IN_OPEN, cookie=0, name='T18.expected.hs'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,101 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,102 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,103 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,104 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,106 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,107 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,108 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,109 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,106 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,110 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,110 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,110 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,110 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,110 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,111 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:26,112 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.pack'> | |
| 2026-07-21 12:40:26,113 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:26,113 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:30,823 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:30,824 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:30,824 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:32,127 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:32,128 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:32,129 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/test/testdata/T17.hs', wd=737, mask=IN_OPEN, cookie=0, name='T17.hs'> | |
| 2026-07-21 12:40:33,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:33,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,614 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,615 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:33,616 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,616 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,617 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,618 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,618 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,618 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,621 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,625 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:33,626 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,627 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,628 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:33,629 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,183 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,184 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,185 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,185 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:42,185 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,188 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,188 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,188 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,188 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,189 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,189 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,192 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,192 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,192 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:42,194 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:42,193 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,195 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:42,196 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,013 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:51,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,015 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,016 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:51,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,021 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,022 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,022 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:51,022 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,023 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,028 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,029 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,029 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,031 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:51,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:51,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:51,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:51,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:51,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:51,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:51,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:51,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:51,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:51,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:51,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:51,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:51,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:51,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:51,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:51,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:51,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:51,053 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:51,054 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:51,054 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:51,054 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,473 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,474 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,475 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,477 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,477 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,478 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,478 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,478 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,478 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,482 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,482 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,482 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,482 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:54,483 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,483 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,484 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:54,484 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,484 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:54,484 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,485 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:54,484 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:40:54,486 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:54,487 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:40:54,488 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:40:54,489 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,025 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,025 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,027 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,027 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:00,027 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,027 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,026 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,027 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,029 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,029 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,030 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:00,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:00,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:00,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:00,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:00,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:00,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:05,241 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:05,242 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:05,242 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,012 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,013 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:11,014 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,015 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,015 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,016 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:11,017 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,018 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:11,019 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,020 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,022 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,023 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,024 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,024 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,031 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,032 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,032 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,034 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,036 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:11,049 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:11,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:11,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:11,050 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:11,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:11,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:11,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,051 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:11,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:11,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:11,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,052 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,054 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:11,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:11,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:11,057 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,057 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,057 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,057 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:11,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:11,060 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:11,059 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,032 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,033 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,034 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,034 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,034 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,034 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:41:20,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,035 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:20,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:20,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:41:20,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:41:20,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:41:20,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:41:20,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:20,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:41:20,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:41:20,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,672 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,672 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,672 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,672 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:04,672 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,673 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,674 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,674 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,674 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:04,674 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,676 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:04,680 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,681 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,681 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,681 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,681 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,682 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:04,682 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,682 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:04,683 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,683 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,684 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,683 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:04,685 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:04,686 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:04,687 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:04,688 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,037 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,039 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:08,040 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,041 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,038 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,042 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:08,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,043 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,044 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,045 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,046 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,047 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:08,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,048 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,055 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,056 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,057 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,058 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,070 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,070 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,071 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:08,071 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,071 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,072 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,072 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,073 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:08,073 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,074 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:08,074 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:08,074 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:08,074 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:08,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:08,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:08,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:08,075 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:08,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,076 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:08,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:08,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,079 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:08,078 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:08,080 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:08,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:08,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:08,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:08,081 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:08,082 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:08,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:08,083 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,563 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,564 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,564 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,564 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,564 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,565 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/plugins/hls-case-split-plugin/src/Ide/Plugin/CaseSplit.hs', wd=739, mask=IN_OPEN, cookie=0, name='CaseSplit.hs'> | |
| 2026-07-21 12:42:26,565 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,565 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,565 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,568 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,569 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,569 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,569 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,569 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,569 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server', wd=1, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,572 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:26,573 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,574 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/index', wd=2, mask=IN_OPEN, cookie=0, name='index'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,575 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=2, mask=IN_ISDIR|IN_OPEN, cookie=0, name='refs'> | |
| 2026-07-21 12:42:26,576 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs', wd=24, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,576 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,576 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,576 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/refs/stash', wd=24, mask=IN_OPEN, cookie=0, name='stash'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/packed-refs', wd=2, mask=IN_OPEN, cookie=0, name='packed-refs'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/commit-graph-chain', wd=71, mask=IN_OPEN, cookie=0, name='commit-graph-chain'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/info/commit-graphs/graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph', wd=71, mask=IN_OPEN, cookie=0, name='graph-14204059315a4d9ae2fe4579b9a53ea31fcacef2.graph'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=26, mask=IN_ISDIR|IN_OPEN, cookie=0, name='pack'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack', wd=67, mask=IN_ISDIR|IN_OPEN, cookie=0, name=''> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-93cecea26074b162c19e00a189bd9361c165b7e4.idx'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/pack/pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx', wd=67, mask=IN_OPEN, cookie=0, name='pack-a14343531a082c3d5ce2ca1f5f86491363325063.idx'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/objects/3c/ad21407c93d0f7af986cea5234d9f1c0c6d4bb', wd=61, mask=IN_OPEN, cookie=0, name='ad21407c93d0f7af986cea5234d9f1c0c6d4bb'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/HEAD', wd=2, mask=IN_OPEN, cookie=0, name='HEAD'> | |
| 2026-07-21 12:42:26,578 - DEBUG - in-event <InotifyEvent: src_path=b'/home/enrico/haskell-language-server/.git/config', wd=2, mask=IN_OPEN, cookie=0, name='config'> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment