<div dir="ltr"><div>What Zach said.</div><div><br></div><div>Elixir have done a wonderful job with Hex/Mix. They work, work well</div><div>and it would be nice to be able to use other beam based languages</div><div>where it makes sense with a single package management, build</div><div>and release (relx) toolchain.</div><div><br></div><div>The node folk have a good solution with npm. The only mistake there</div><div>was a notion of 'peer dependencies' which often breaks. Essentially,</div><div>an organic pattern of defining package plugins to other packages created</div><div>a 'peer dependency' crosscutting regular package dependencies. This</div><div>way madness and dependency cycles lies. The convenience was rather</div><div>inconvenient as cycles can be very hard to break, control unless every</div><div>version is pinned, and even then you're only a plugin away from a nightmare...</div><div>We should avoid 'peer dependencies'.</div><div><br></div><div>"<span style="font-size:13px">What I would love to see is a way that I can use a package</span></div><span style="font-size:13px">without caring (much) about which (beam based) language it was written in."</span><div><br></div><div>Zach nails it. I want that too!</div><div><div> </div><div><br></div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 17, 2014 at 12:14 PM, Zachary Kessin <span dir="ltr"><<a href="mailto:zkessin@gmail.com" target="_blank">zkessin@gmail.com</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    As the elixir guys already have hex i think a very useful thing
    would be for an erlang package tool to be able to use hex packages
    and vice versa. <br>
    <br>
    On the erlang VM we have Erlang, Elixir, LFE, ErlyDTL and a few
    other languages all of which can generate a .beam file. What I would
    love to see is a way that I can use a package<br>
    without caring (much) about which language it was written in.<br>
    <br>
    --Zach<span class=""><br>
    <br>
    <div>On 12/16/2014 01:41 PM, Bruce Yinhe
      wrote:<br>
    </div>
    </span><blockquote type="cite"><div><div class="h5">
      <div dir="ltr">
        <div>Hi everyone,</div>
        <div><br>
        </div>
        <div>Industrial Erlang User Group (IEUG) has been working
          together with the Erlang/OTP team to investigate and create a
          package management system for Erlang/OTP. </div>
        <div><br>
        </div>
        <div><span>
            <p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="font-size:13px;font-family:Arial;color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent">The
                lack of a package management system for Erlang has been
                discussed for a long time in the community. In essence,
                a straightforward package management system is believed
                to take Erlang programming language a step forward.
                Multiple tools will appear in the community. It needs to
                be supported by a highly visible community behind it.</span></p>
          </span></div>
        <div><br>
        </div>
        <div>In order to increase the adoption and to result in a tool
          widely used in the Erlang ecosystem, we are identifying the
          most important user categories and use cases, based on what
          the majority of the community want in a package manager.
          Therefore we would like to invite an open discussion.</div>
        <div><br>
        </div>
        <div>Now you are welcome to share your thoughts, suggestions or
          proposals about an Erlang package manager. It would be great
          if you could reply with your motivation, explaining why a
          feature is necessary to have. There are some example questions
          to begin the dicussion with, including, but not limited to the
          following. </div>
        <div>
          <ul>
            <li>What metadata information should an Erlang package
              include?</li>
            <li>What functionality do you need in a package manager for
              Erlang in order to use it in production?<br>
            </li>
            <li>What other concerns do you have about an Erlang package
              management system?</li>
          </ul>
        </div>
        <div>
          <div>Erlang package manager's brief wish list of features: </div>
          <div>
            <ul>
              <li>Console interface<br>
              </li>
              <li>Web interface<br>
              </li>
              <li>Package Index and Repository</li>
              <li>Fetch, Install and Remove Packages<br>
              </li>
              <li>Publish packages<br>
              </li>
              <li>Versioning and Dependency Management</li>
            </ul>
          </div>
        </div>
        <div>We are aware of several previous efforts and existing tools
          that attempt to achieve the similar goal. We want to look at
          existing things, both from Erlang and Elixir, to see if they
          fit the requirements. If not, we will then have to make
          something new, perhaps as a rewrite of an existing tool.</div>
        <div><br>
        </div>
        <div>The IEUG members are putting together requirements for a
          package manager and will work with the community and Ericsson
          to create a standard and address any voids which exists in the
          existing tooling, funding necessary efforts required. <br>
        </div>
        <div><br>
        </div>
        <div>Best regards</div>
        <div><br>
        </div>
        <div>Bruce Yinhe</div>
        <div>
          <div dir="ltr"><font size="1">
              <div dir="ltr"><br>
              </div>
              Erlang Community Manager</font>
            <div><font size="1">Industrial Erlang User Group<br>
                <a href="mailto:community-manager@erlang.org" target="_blank">community-manager@erlang.org</a></font>
              <div><font size="1"><a href="tel:%2B46%2072%20311%2043%2089" value="+46723114389" target="_blank">+46 72 311 43 89</a></font></div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      </div></div><span class=""><pre>_______________________________________________
erlang-questions mailing list
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a>
</pre>
    </span></blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div></div>