You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Handle out-of-spec diagnostic positions without crashing * Show warning when launching with an Elixir version <= 1.7 * Fixes a bug in dependency loading in Elixir 1.9 and fixes bug causing builds to fail permanently after an invalid dep specification Mix.Dep.loaded/1 was removed in Elixir 1.9. This was also a problem in the mix_task_archive_deps dependency we use in the release task, so I've updated a fork of that repo and am sending a PR upstream. Also, checking cached deps to look for changed deps can fail, so we now rescue those failures. Fixes#155 * Bumped required Elixir version (for both use and development) to 1.7.0 because of Mix.Dep.load_on_environment/1 requirement * Change Dialyzer's `analyze` message to be a GenServer notification instead of request and grab build lock while stale-checking beams Up till now, the reason that the `analyze` is triggered with a GenServer `call` instead of `cast` is just so that a build doesn't happen concurrently (since the build can delete beam files while the Dialyzer server tries to stale-check them). There are other places where the global state changes caused by builds are a problem too, and we added a global "build lock" that processes can grab to avoid this sort of thing. I'm turning "analyze" into a GenServer cast, which allows the main language server to continue servicing requests. The Dialyzer server will grab the build lock while it stale-checks the beam files so it only blocks builds, not the main language server. This also makes it more robust because an exception or exit during analyze won't kill the main language server and the supervisor can restart the Dialyzer server. * Update elixir version to still be valid
0 commit comments