Comments (8)
Yep, I can confirm it also on 1.9.4. I'm going to create a separate isse.
from elixir-ls.
Things like Mix.State is also a private API, so please don't continue using private APIs. Open up an issue so we provide a public API for you to call.
About the dialyzer one, please provide a project that reproduces the error. I am assuming mix dialyze
or similar reproduces it? It does look like an Elixir bug.
from elixir-ls.
@lukaszsamson thanks for putting this list together and tracking down these issues!
@josevalim Posted on elixir-lang-core https://groups.google.com/forum/#!topic/elixir-lang-core/_LrWhl-kUZY (although re-reading your comment, perhaps I should have just raised an issue directly). Although in either case, this is just one of the private api usages, I'll try and do a sweep to look for the others.
from elixir-ls.
@josevalim I looked deeper into dialyzer issue. It turns out that dialyzer is not required to trigger it at all and it might be a consequence of the fixtures used in this project.
I am able to reproduce from the root of this repo
$ iex -S mix
Interactive Elixir (1.10.0-rc.0) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> mixfile = "apps/language_server/test/fixtures/dialyzer/mix.exs"
"apps/language_server/test/fixtures/dialyzer/mix.exs"
iex(2)> Kernel.ParallelCompiler.compile([mixfile])
{:ok, [ElixirLS.LanguageServer.Fixtures.Dialyzer.Mixfile], []}
iex(3)> Mix.Task.run("compile", ["--return-errors", "--ignore-module-conflict"])
19:44:23.319 [error] Task #PID<0.524.0> started from #PID<0.541.0> terminating
** (MatchError) no match of right hand side value: false
(elixir 1.10.0-rc.0) src/elixir_erl_var.erl:14: :elixir_erl_var.translate/4
(stdlib 3.11) lists.erl:1354: :lists.mapfoldl/3
(elixir 1.10.0-rc.0) src/elixir_erl_clauses.erl:20: :elixir_erl_clauses.match/3
(elixir 1.10.0-rc.0) src/elixir_erl_clauses.erl:28: :elixir_erl_clauses.clause/6
(elixir 1.10.0-rc.0) src/elixir_erl.erl:230: :elixir_erl.translate_clause/3
(elixir 1.10.0-rc.0) src/elixir_erl.erl:220: :elixir_erl."-translate_definition/4-lc$^0/1-0-"/2
(elixir 1.10.0-rc.0) src/elixir_erl.erl:220: :elixir_erl.translate_definition/4
(elixir 1.10.0-rc.0) src/elixir_erl.erl:183: :elixir_erl.split_definition/11
Function: #Function<9.64842280/0 in Mix.Tasks.Compile.Protocols.consolidate/6>
Args: []
It seems that the protocol defined upper in directory hierarchy ends up in the fixture dir
from elixir-ls.
I am looking into this now. Thank you so much for isolating those, it makes my life much easier!
from elixir-ls.
@lukaszsamson so the command above compiled just fine for me. I am thinking you have some stale files somewhere. Try running git clean -dfx
and removing _build
and deps
. Or try a separate checkout and see if you can reproduce it there.
from elixir-ls.
@josevalim yes, it must have been some stale state. I remember doing mix clean && mix deps.clean --all && rm -r .elixir_ls
though, it seems this was not enough. Anyway, thanks for your help.
from elixir-ls.
@lukaszsamson regarding "tests crash mix" I'm actually seeing that same error locally on 1.9.1, it's just not failing the CI builds.
from elixir-ls.
Related Issues (20)
- Unusually high CPU use from beam HOT 6
- Full module name fuzzy search HOT 2
- Signature help does not use elixir_sense metadata
- Server start fails in Neovim on Linux with "CaseClausError" in launch.exs HOT 2
- elixir-ls 0.20.0 regression build failure against erlang 26.2.3 HOT 2
- elixir-ls 0.20.0 Crashes occasionally HOT 9
- ElixirLS bootstrapping trying to download a version that don't exists HOT 1
- ElixirLS 0.19+ fails to compile projects with YamlElixir (and possible other) applications working at compile-time HOT 7
- Mix.install failed with ** (Mix.Error) Command "git --git-dir=.git checkout --quiet v0.21.0-dev" failed with reason: error: pathspec 'v0.21.0-dev' did not match any file(s) known to git HOT 1
- Go to definition should jump to the start of the identifier(e.g. myFunc) instead of the keyword (e.g. def) HOT 1
- Mabye There Is a Memory Leak HOT 3
- Running `MIX_ENV=prod mix elixir_ls.release2 -o .` deletes the whole project HOT 1
- Spark plugin is not being called as of `0.21` HOT 3
- v0.21.1 can not find hex under debian12.5 HOT 5
- [BUG] Client ElixirLS - elx: connection to server is erroring. HOT 1
- Weird 'Content-Length: n'$'\n' directories are created. HOT 2
- (UndefinedFunctionError) function ElixirLS.LanguageServer.main/0 is undefined (module ElixirLS.LanguageServer is not available) HOT 2
- "Go to definition" not working for identifier inside tuple with explicit parent module name HOT 1
- "Go to Definition" and Elixir debugging cannot enter modules bundled with Elixir HOT 3
- "File not included in .formatter.exs" even though it is HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elixir-ls.