Skip to content

Commit

Permalink
Merge branch 'master' into definition_from_multiple_plugins
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelpj authored Nov 7, 2023
2 parents 08ccbd4 + 0f9be3e commit 6751e93
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 22 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/bench.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '[ "**/docs/**"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/caching.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- id: ghcs
run: echo "ghcs=$(cat ./.github/workflows/supported-ghc-versions.json)" >> $GITHUB_OUTPUT
- id: skip_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '["**/docs/**"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/flags.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- id: ghcs
run: echo "ghcs=$(cat ./.github/workflows/supported-ghc-versions.json)" >> $GITHUB_OUTPUT
- id: skip_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '[ "**/docs/**"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
should_skip_build: ${{ steps.skip_check_no_nix.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '[ "**/docs/**"
Expand All @@ -36,7 +36,7 @@ jobs:
, ".gitlab/**"
]'
- id: skip_check_no_nix
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths: '[ "**.nix" ]'
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- id: ghcs
run: echo "ghcs=$(cat ./.github/workflows/supported-ghc-versions.json)" >> $GITHUB_OUTPUT
- id: skip_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '[ "**/docs/**"
Expand All @@ -45,7 +45,7 @@ jobs:
]'
# If we only change ghcide downstream packages we have not test ghcide itself
- id: skip_ghcide_check
uses: fkirc/[email protected].0
uses: fkirc/[email protected].1
with:
cancel_others: false
paths_ignore: '[ "hls-test-utils/**"
Expand Down
28 changes: 14 additions & 14 deletions plugins/hls-fourmolu-plugin/src/Ide/Plugin/Fourmolu.hs
Original file line number Diff line number Diff line change
@@ -1,29 +1,26 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DisambiguateRecordFields #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}

module Ide.Plugin.Fourmolu (
descriptor,
provider,
LogEvent,
) where

import Control.Exception (IOException, handle, try)
import Control.Exception
import Control.Lens ((^.))
import Control.Monad (guard)
import Control.Monad.Error.Class (MonadError (throwError))
import Control.Monad.Trans.Except (ExceptT (..), mapExceptT,
runExceptT)

import Control.Monad.IO.Class (MonadIO (liftIO))
import Control.Monad.Trans.Class (MonadTrans (lift))
import Control.Monad.Trans.Except (ExceptT (..), runExceptT)
import Data.Bifunctor (bimap)
import Data.List (intercalate)
import Data.Maybe (catMaybes)
Expand Down Expand Up @@ -96,6 +93,9 @@ provider recorder plId ideState typ contents fp fo = ExceptT $ withIndefinitePro
errorMessage = "Failed to load " <> T.pack f <> ": " <> T.pack (show err)

let config =
#if MIN_VERSION_fourmolu(0,13,0)
refineConfig ModuleSource Nothing Nothing Nothing
#endif
defaultConfig
{ cfgDynOptions = map DynOption fileOpts
, cfgFixityOverrides = cfgFileFixities
Expand Down
5 changes: 4 additions & 1 deletion plugins/hls-fourmolu-plugin/test/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ module Main
) where

import Data.Aeson
import qualified Data.Aeson.KeyMap as KM
import Data.Functor
import Ide.Plugin.Config
import qualified Ide.Plugin.Fourmolu as Fourmolu
Expand All @@ -28,12 +29,14 @@ tests =
formatDoc doc (FormattingOptions 4 True Nothing Nothing Nothing)
, goldenWithFourmolu cli "formats imports correctly" "Fourmolu2" "formatted" $ \doc -> do
formatDoc doc (FormattingOptions 4 True Nothing Nothing Nothing)
, goldenWithFourmolu cli "uses correct operator fixities" "Fourmolu3" "formatted" $ \doc -> do
formatDoc doc (FormattingOptions 4 True Nothing Nothing Nothing)
]

goldenWithFourmolu :: Bool -> TestName -> FilePath -> FilePath -> (TextDocumentIdentifier -> Session ()) -> TestTree
goldenWithFourmolu cli title path desc = goldenWithHaskellDocFormatter def fourmoluPlugin "fourmolu" conf title testDataDir path desc "hs"
where
conf = def{plcConfig = (\(Object obj) -> obj) $ object ["external" .= cli]}
conf = def{plcConfig = KM.fromList ["external" .= cli]}

testDataDir :: FilePath
testDataDir = "test" </> "testdata"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
b :: Bool
b =
id $
id $
case True && True of
True -> True
False -> False
6 changes: 6 additions & 0 deletions plugins/hls-fourmolu-plugin/test/testdata/Fourmolu3.hs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
b :: Bool
b =
id $ id $
case True && True of
True -> True
False -> False

0 comments on commit 6751e93

Please sign in to comment.