-
in ghci, do
let main = Main.main
>:main -m etc
to disambiguate between different mains that may be in scope (this happens in HIE) -
in HIE, running the tests a second time results in this: ** Exception: ./test-main.log: openFile: resource busy (file is locked) for HIE, we'd need
let main = hspec Spec.spec
. this may different on a per-project basis, so put it in configuration? dhall config file? workspace settings? -
Discovered tests are organized by module name, minus "Spec". I.e., ApplyRefactPluginSpec -> ApplyRefactPlugin
- But NOT non-discovered tests (see
stack ghci --with-ghc intero haskell-ide-engine:test:haskell-ide-func-test haskell-ide-engine:lib
)
- But NOT non-discovered tests (see
-
maybe defer type errors, so we can show code lenses for partially type checked programs
-
when a target fails to load, keep a record of it in "failed" state.
- when a file changes, we:
- try to find the target it belongs to; if we find it, reload it
- otherwise, see if there's any target in the failed state, :r it
- if :r still fails, move onto the next failed target
- if there are no failed targets, do nothing
- when a file changes, we:
-
when a file is added
- :r a target
- ???? we can't use all-types, because the file may have no expressions in it yet
-
Do expressions of type
[Char]
become of typeIsString s => s
when-XOverloadedStrings
is enabled? -
Try replacing utils/map/Map with es2015's native Map (needs
map
andfilter
functions) -
Have a look at TextDocuments.syncKind
-
what if changes are made while intero is loading??
-
when the "run all tests [in file/in project]" vscode option is triggered, forcefully save file and then run tests