<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>