Coder Social home page Coder Social logo

Comments (19)

uwiger avatar uwiger commented on July 17, 2024

This is strange. As I understand it, "Makefile" is part of the default list of files picked up by hex.

https://github.com/inaka/hexer/blob/master/src/hexer_package.erl#L110

from setup.

uwiger avatar uwiger commented on July 17, 2024

Ah, not in rebar3_hex:

https://github.com/hexpm/rebar3_hex/blob/master/src/rebar3_hex.hrl#L3

from setup.

surik avatar surik commented on July 17, 2024

@uwiger will you re-publish it?

from setup.

uwiger avatar uwiger commented on July 17, 2024

I have verified visually that rebar3 hex publish will include the same files as before + Makefile.

from setup.

uwiger avatar uwiger commented on July 17, 2024

Version 1.8.3 published in hex.

from setup.

surik avatar surik commented on July 17, 2024

Thank you. I'm testing it now:

$ mix compile
===> Compiling setup
src/setup.erl:166: Warning: export_all flag enabled - all functions will be exported

===> Unable to run post hooks for 'compile', command 'escriptize' not found.
** (Mix) Could not compile dependency :setup, "/Users/surik/.mix/rebar3 bare compile --paths "/Users/surik/Documents/prog/tube_streamer/_build/dev/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile setup", update it with "mix deps.update setup" or clean it with "mix deps.clean setup"

from setup.

surik avatar surik commented on July 17, 2024

Ah, looks that in case of rebar3we don't need Makefile because https://github.com/uwiger/setup/blob/master/rebar.config.script#L26-L32

But it fails with mix

from setup.

uwiger avatar uwiger commented on July 17, 2024

I checked that setup itself compiles with rebar2 and rebar3.
Creating a bare-bones mix project with setup-1.8.3 as dependency:

uwpro-2:p1 uwiger$ mix deps.get
Resolving Hex dependencies...
Dependency resolution completed:
  setup 1.8.3
* Getting setup (Hex package)
  Checking package (https://repo.hex.pm/tarballs/setup-1.8.3.tar)
  Fetched package
uwpro-2:p1 uwiger$ mix compile
==> setup (compile)
Compiled src/setup_lib.erl
Compiled src/setup_sup.erl
Compiled src/setup_srv.erl
Compiled src/setup_app.erl
Compiled src/setup_gen.erl
Compiled src/setup.erl
/Users/uwiger/lib/otp/18.3/bin/rebar skip_deps=true escriptize
==> setup (escriptize)
Compiled lib/p1.ex
Generated p1 app
Consolidated List.Chars
Consolidated Collectable
Consolidated String.Chars
Consolidated Enumerable
Consolidated IEx.Info
Consolidated Inspect

from setup.

surik avatar surik commented on July 17, 2024

Can you show mix.lock and your Elixir version? I use 1.4.5.

from setup.

uwiger avatar uwiger commented on July 17, 2024

mix.lock:

%{"setup": {:hex, :setup, "1.8.3", "039c51ad715ead4682d63e6462b3e89efa812f02668ac08bcedfb2360d67282c", [], [], "hexpm"}}
$ mix -v
Mix 1.2.5

(that was the version installed by Homebrew)

from setup.

uwiger avatar uwiger commented on July 17, 2024

I could reproduce the problem with version 1.5.1. Analyzing now.

from setup.

surik avatar surik commented on July 17, 2024

In your case setup is built by using rebar2. On Elixir >= 1.4 it usesrebar3 by default, see https://github.com/elixir-lang/elixir/blob/v1.4/lib/mix/lib/mix/dep/loader.ex#L190

Also, with Elixir 1.4.5 setup in mix.lock looks like:

...
  "setup": {:hex, :setup, "1.8.3", "039c51ad715ead4682d63e6462b3e89efa812f02668ac08bcedfb2360d67282c", [:rebar3], [], "hexpm"},
...

I can change :rebar3 to :rebar manually here but don't think that it is a proper way.

from setup.

uwiger avatar uwiger commented on July 17, 2024

So far, it seems as if this advice is the best way forward.

The problem seems related to the rebar3 'bare' mode.

from setup.

surik avatar surik commented on July 17, 2024

Maybe temporary comment these lines or add some checks for mix?

from setup.

uwiger avatar uwiger commented on July 17, 2024

Addressing this in rebar3 would feel much better. ;-)

from setup.

uwiger avatar uwiger commented on July 17, 2024

I've commented on a related issue in rebar3:
erlang/rebar3#1568 (comment)

from setup.

uwiger avatar uwiger commented on July 17, 2024

Pushed 1.8.4 to hex

from setup.

surik avatar surik commented on July 17, 2024

Works for me. Thank you.

from setup.

uwiger avatar uwiger commented on July 17, 2024

Very good. Thanks!

from setup.

Related Issues (11)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.