diff --git a/cabal.project b/cabal.project index 2bcc2b50f4..f9be7f0360 100644 --- a/cabal.project +++ b/cabal.project @@ -12,4 +12,4 @@ package ghcide write-ghc-environment-files: never -index-state: 2020-07-01T21:29:04Z +index-state: 2020-07-02T03:49:44Z diff --git a/exe/Main.hs b/exe/Main.hs index 237ed9b2e7..c84ca88eec 100644 --- a/exe/Main.hs +++ b/exe/Main.hs @@ -68,6 +68,7 @@ import GHC.Check import HIE.Bios.Cradle import HIE.Bios.Environment (addCmdOpts, makeDynFlagsAbsolute) import HIE.Bios.Types +import Hie.Implicit.Cradle import HscTypes (HscEnv(..), ic_dflags) import qualified Language.Haskell.LSP.Core as LSP import Ide.Logger @@ -442,7 +443,7 @@ loadSession dir = do when optTesting $ eventer $ notifyCradleLoaded cfp logInfo logger $ T.pack ("Consulting the cradle for " <> show cfp) - cradle <- maybe (loadImplicitCradle $ addTrailingPathSeparator dir) loadCradle hieYaml + cradle <- maybe (loadImplicitHieCradle $ addTrailingPathSeparator dir) loadCradle hieYaml -- Display a user friendly progress message here: They probably don't know what a -- cradle is let progMsg = "Setting up project " <> T.pack (takeBaseName (cradleRootDir cradle)) diff --git a/exe/Wrapper.hs b/exe/Wrapper.hs index 395eae6972..8280a786cb 100644 --- a/exe/Wrapper.hs +++ b/exe/Wrapper.hs @@ -18,6 +18,7 @@ import Data.List -- import qualified Data.Text.IO as T -- import Development.IDE.Types.Logger import HIE.Bios +import Hie.Implicit.Cradle import Ide.Cradle (findLocalCradle) import Ide.Logger (logm) import Ide.Version @@ -65,7 +66,8 @@ main = do logm $ "args:" ++ show args -- Get the cabal directory from the cradle - cradle <- findLocalCradle (d "File.hs") + hieYaml <- findCradle (d "File.hs") + cradle <- maybe (loadImplicitHieCradle $ addTrailingPathSeparator d) loadCradle hieYaml let dir = cradleRootDir cradle logm $ "Cradle directory:" ++ dir setCurrentDirectory dir diff --git a/haskell-language-server.cabal b/haskell-language-server.cabal index ca8b41cadd..705d0a663f 100644 --- a/haskell-language-server.cabal +++ b/haskell-language-server.cabal @@ -163,6 +163,7 @@ executable haskell-language-server , hie-bios >= 0.4 , haskell-language-server , hslogger + , implicit-hie-cradle , optparse-applicative , safe-exceptions , shake >= 0.17.5 @@ -204,6 +205,7 @@ executable haskell-language-server-wrapper , ghc-paths , hie-bios , haskell-language-server + , implicit-hie-cradle , optparse-applicative , process default-language: Haskell2010 diff --git a/stack-8.10.1.yaml b/stack-8.10.1.yaml index 06455feb25..769c55ab66 100644 --- a/stack-8.10.1.yaml +++ b/stack-8.10.1.yaml @@ -1,4 +1,4 @@ -resolver: nightly-2020-06-15 +resolver: nightly-2020-06-29 compiler: ghc-8.10.1 packages: @@ -14,6 +14,8 @@ extra-deps: - clock-0.7.2 - floskell-0.10.3 - ghc-exactprint-0.6.3 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - lens-4.19.1 - lsp-test-0.11.0.2 - monad-dijkstra-0.1.1.2 diff --git a/stack-8.6.4.yaml b/stack-8.6.4.yaml index c3dc072f95..1292c8fa3d 100644 --- a/stack-8.6.4.yaml +++ b/stack-8.6.4.yaml @@ -30,12 +30,14 @@ extra-deps: - haskell-lsp-0.22.0.0 - haskell-lsp-types-0.22.0.0 - haskell-src-exts-1.21.1 -- hie-bios-0.5.0 +- hie-bios-0.5.1 - hlint-2.2.8 - hoogle-5.0.17.11 - hsimport-0.11.0@rev:2 - HsYAML-0.2.1.0@rev:1 - HsYAML-aeson-0.2.0.0@rev:1 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - lens-4.18 - lsp-test-0.11.0.2 - microlens-th-0.4.2.3@rev:1 @@ -63,6 +65,8 @@ extra-deps: - yaml-0.11.1.2 # To make build work in windows 7 - unix-time-0.4.7 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 flags: diff --git a/stack-8.6.5.yaml b/stack-8.6.5.yaml index 236b62f52f..b4ff7f8f20 100644 --- a/stack-8.6.5.yaml +++ b/stack-8.6.5.yaml @@ -24,10 +24,12 @@ extra-deps: - haddock-library-1.8.0 - haskell-lsp-0.22.0.0 - haskell-lsp-types-0.22.0.0 -- hie-bios-0.5.0 +- hie-bios-0.5.1 - HsYAML-0.2.1.0@rev:1 - HsYAML-aeson-0.2.0.0@rev:1 - indexed-profunctors-0.1 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - lens-4.18 - lsp-test-0.11.0.2 - monad-dijkstra-0.1.1.2 diff --git a/stack-8.8.2.yaml b/stack-8.8.2.yaml index a8d3c65f78..c7dc69282b 100644 --- a/stack-8.8.2.yaml +++ b/stack-8.8.2.yaml @@ -22,12 +22,14 @@ extra-deps: - haskell-lsp-0.22.0.0 - haskell-lsp-types-0.22.0.0 - haskell-src-exts-1.21.1 -- hie-bios-0.5.0 +- hie-bios-0.5.1 - hlint-2.2.8 - hoogle-5.0.17.11 - hsimport-0.11.0 - HsYAML-0.2.1.0@rev:1 - HsYAML-aeson-0.2.0.0@rev:1 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - ilist-0.3.1.0 - lsp-test-0.11.0.2 - monad-dijkstra-0.1.1.2 diff --git a/stack-8.8.3.yaml b/stack-8.8.3.yaml index 8c3b85155c..b6c08b7584 100644 --- a/stack-8.8.3.yaml +++ b/stack-8.8.3.yaml @@ -19,10 +19,12 @@ extra-deps: - haskell-lsp-0.22.0.0 - haskell-lsp-types-0.22.0.0 - haskell-src-exts-1.21.1 -- hie-bios-0.5.0 +- hie-bios-0.5.1 - hlint-2.2.8 - hoogle-5.0.17.11 - hsimport-0.11.0 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - ilist-0.3.1.0 - lsp-test-0.11.0.2 - monad-dijkstra-0.1.1.2 diff --git a/stack.yaml b/stack.yaml index 236b62f52f..d87c158e7b 100644 --- a/stack.yaml +++ b/stack.yaml @@ -24,9 +24,11 @@ extra-deps: - haddock-library-1.8.0 - haskell-lsp-0.22.0.0 - haskell-lsp-types-0.22.0.0 -- hie-bios-0.5.0 +- hie-bios-0.5.1 - HsYAML-0.2.1.0@rev:1 - HsYAML-aeson-0.2.0.0@rev:1 +- implicit-hie-0.1.1.0 +- implicit-hie-cradle-0.1.0.0 - indexed-profunctors-0.1 - lens-4.18 - lsp-test-0.11.0.2