Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't compile que on Erlang 20.2 and Elixir 1.6rc1 #7

Closed
dmarko484 opened this issue Jan 13, 2018 · 6 comments
Closed

Can't compile que on Erlang 20.2 and Elixir 1.6rc1 #7

dmarko484 opened this issue Jan 13, 2018 · 6 comments

Comments

@dmarko484
Copy link

dmarko484 commented Jan 13, 2018

Running on Windows: Erlang 20.2, Elixir 1.6rc1

... having compilation error see traceback below ... Any idea?

==> que
Compiling 12 files (.ex)
warning: Enum.partition/2 is deprecated, use Enum.split_with/2
  lib/que/server_supervisor.ex:75

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:173

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:173

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:183

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:183

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:213

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:213


== Compilation error in file lib/que/persistence/mnesia.ex ==
** (CompileError) lib/que/persistence/mnesia.ex:173: undefined function status/0
    (stdlib) lists.erl:1338: :lists.foreach/2
    lib/que/persistence/mnesia.ex:131: (module)
could not compile dependency :que, "mix compile" failed. You can recompile this dependency with "mix deps.compile que", update it with "mix deps.update que" or clean it with "mix deps.clean que"
@dmarko484
Copy link
Author

Just tried with Elixir1.5.3 and no problem here ... so its Elixir 1.6 compatibility issue

@brandonparsons
Copy link

I'm also having issues compiling que. Just tried it on the fresh release of 1.6.0. Same errors as @dmarko484 above, this is on a Mac.

code/myproject on master [!] via 💧 v1.6.0 ➜ mix deps.compile que
==> que
Compiling 12 files (.ex)
warning: Enum.partition/2 is deprecated, use Enum.split_with/2
  lib/que/server_supervisor.ex:75

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:173

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:173

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:183

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:183

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:193

warning: variable "worker" does not exist and is being expanded to "worker()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:213

warning: variable "status" does not exist and is being expanded to "status()", please use parentheses to remove the ambiguity or change the variable name
  lib/que/persistence/mnesia.ex:213

== Compilation error in file lib/que/persistence/mnesia.ex ==
** (CompileError) lib/que/persistence/mnesia.ex:173: undefined function status/0
    (stdlib) lists.erl:1338: :lists.foreach/2
    lib/que/persistence/mnesia.ex:131: (module)
could not compile dependency :que, "mix compile" failed. You can recompile this dependency with "mix deps.compile que", update it with "mix deps.update que" or clean it with "mix deps.clean que"

@sheharyarn
Copy link
Owner

Thank you @dmarko484 and @brandonparsons for reporting this issue!

This is indeed a critical bug, and have traced the issue back to the query implementation in the Amnesia library (which I believe, uses the Exquisite project). I have also opened an issue on the project's Github with details on how to reproduce it, and am waiting for a response from the author (@meh).

@suprnova32
Copy link

If you need a temporary workaround for Que, have a look at my fork, and the changes I did to get Que to work again on 1.6. https://github.com/AlloyCI/que/commit/593dc65c3405c0f5381a091ce2703c3401618485

@brandonparsons
Copy link

Any updates on this one?

@sheharyarn
Copy link
Owner

Published new release with fixes for Elixir 1.6.

I'm in the process of completely phasing Exquisite out of the project since it has created more problems than it has solved, but Amnesia's dependence on it is another issue. Next release for Elixir 1.7 might not depend on either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants