<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    (cross-replying to <a class="moz-txt-link-abbreviated" href="mailto:distutils-sig@python.org">distutils-sig@python.org</a>)<br>
    <br>
    For a tool like this to work reliably, the semantics of the project
    urls would have to change (as of right now, there is no set
    requirement that a VCS link in project URL's point to <the thing
    you put in a vcs to clone>), nor is there a requirement that the
    field even be present.  For this to be useful for your tool,
    projects would have to be required, or at least heavily encouraged,
    to put VCS links in their pypi listings.  Moreover, such a
    requirement would additionally need to limit what type of VCS links
    you post as to make the tool reasonable to maintain.  (Not everyone
    uses git, let alone github.  Do you want to write a tool that
    supports Team Foundation Server?)<br>
    <br>
    Another option would be to pull in source packages with your tool,
    but that too would require that people actually post source packages
    for their projects on PyPI.  There is no such requirement as it
    stands, and the number of pure-python projects posting sdists may
    actually decrease with the uptake of universal wheels.<br>
    <br>
    Automating this process is not impossible.  As you said, you could
    write your own tool to do it, but as it stands, even with that tool,
    you would have to do quite a bit of manual legwork still.<br>
    <br>
    I agree, it would be nice if everyone used git (or any of a small
    set of VCS), and all the packages on pypi listed their repositories
    in the metadata.  If that were the case, this tool might already
    exist.  In the current state of things, though, i don't think it
    makes much sense to produce a general purpose tool for this.<br>
    <br>
    <div class="moz-cite-prefix">On 3/12/2016 05:12, Tymoteusz Jankowski
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAJnKBfnw1YSrDvtCFmsrDTenvF=7Wkr-zpMy6OBUVp7bDWgh7w@mail.gmail.com"
      type="cite">
      <div dir="ltr">Hi,
        <div>tldr: install project and its requirements as cloned
          repositories (if possible)</div>
        <div><br>
          <div>Let's say I'm developing <a moz-do-not-send="true"
              href="https://github.com/kennethreitz/requests">requests</a> library
            which relies on <a moz-do-not-send="true"
href="https://github.com/kennethreitz/requests/blob/master/requirements.txt">these</a> packages.</div>
          <div>My workflow is this:</div>
          <div><br>
          </div>
          <div>$ git clone <a moz-do-not-send="true"
              href="https://github.com/kennethreitz/requests.git">https://github.com/kennethreitz/requests.git</a></div>
          <div>$ cd requests</div>
          <div>$ virtualenv requests</div>
          <div>$ . requests/bin/activate.fish</div>
          <div>$ pip install -r requirements.txt</div>
          <div><br>
          </div>
          <div>Now I can change Requests library easily and commit
            changes, but when i have to change a library from Requests'
            requirements I have to clone and reinstall library (It's
            boring + I'm lazy).</div>
        </div>
        <div>I need tool that works like this:</div>
        <div><br>
        </div>
        <div>$ magic-command install requests</div>
        <div>1 the tool checks in Requests package meta where sources
          are stored</div>
        <div>2 clone the source</div>
        <div>3 do the same for each package from requirements (or
          fallback to current method)</div>
        <div><br>
        </div>
        <div>I could write the tool and be the only one in the world
          using it ;) but there should be an option for storing
          repository link.</div>
        <div>Could you advice anything?</div>
        <div>I found this:</div>
        <div><a moz-do-not-send="true"
href="https://www.python.org/dev/peps/pep-0345/#project-url-multiple-use">https://www.python.org/dev/peps/pep-0345/#project-url-multiple-use</a><br>
        </div>
        <div>but</div>
        <div>1 I'm not sure it's right option</div>
        <div>2 I can't see handler for this option in <a
            moz-do-not-send="true"
            href="https://bitbucket.org/carljm/python-distutils/src">distutils</a></div>
        <div><br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Python-ideas mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Python-ideas@python.org">Python-ideas@python.org</a>
<a class="moz-txt-link-freetext" href="https://mail.python.org/mailman/listinfo/python-ideas">https://mail.python.org/mailman/listinfo/python-ideas</a>
Code of Conduct: <a class="moz-txt-link-freetext" href="http://python.org/psf/codeofconduct/">http://python.org/psf/codeofconduct/</a></pre>
    </blockquote>
    <br>
  </body>
</html>