curdling icon indicating copy to clipboard operation
curdling copied to clipboard

installation of package with ftp download url

Open goir opened this issue 10 years ago • 0 comments

Hi,

i've just tried curdling to setup our env but python-memcached failes because it uses a download url from ftp.

2015-12-18 09:15:52,251:curdling.services.base:DEBUG:finder.start()
2015-12-18 09:15:52,251:curdling.services.base:DEBUG:downloader.start()
2015-12-18 09:15:52,251:curdling.services.base:DEBUG:curdler.start()
2015-12-18 09:15:52,252:curdling.services.base:DEBUG:dependencer.start()
2015-12-18 09:15:52,252:curdling.install:DEBUG:install.queue(from="main", data="{'requirement': u'python-memcached'}")
2015-12-18 09:15:52,252:curdling.services.base:DEBUG:finder.queue(from="main", data="{'requirement': u'python-memcached'}")
Retrieving: [          ]  0% (1 requested, 0 retrieved, 0 processed)2015-12-18 09:15:52,252:curdling.services.base:DEBUG:finder[Thread-1].run(data="{'requirement': u'python-memcached'}")
Retrieving: [          ]  0% (1 requested, 0 retrieved, 0 processed)2015-12-18 09:15:53,214:curdling.services.base:ERROR:finder[Thread-1].run(from="main", data="{'requirement': u'python-memcached'}") failed:
/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/base.py:80 (_worker) result = self(requester, **sender_data) or {}
Traceback (most recent call last):
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/base.py", line 80, in _worker
    result = self(requester, **sender_data) or {}
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/base.py", line 67, in __call__
    return self.handle(requester, kwargs)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 264, in handle
    distribution = self.locator.locate(requirement, prereleases)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 118, in locate
    versions = locator.get_project(pkg.name)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/distlib/locators.py", line 148, in get_project
    result = self._get_project(name)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 142, in _get_project
    found = self._fetch(url, package_name)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 166, in _fetch
    versions.update(self._fetch(link, project_name, subvisit=True))
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 162, in _fetch
    page = self.get_page(url)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 188, in get_page
    response, final_url = http_retrieve(self.opener, url)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/curdling/services/downloader.py", line 82, in http_retrieve
    response = pool.request('GET', url, **params)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/urllib3/request.py", line 69, in request
    **urlopen_kw)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/urllib3/request.py", line 89, in request_encode_url
    return self.urlopen(method, url, **extra_kw)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/urllib3/poolmanager.py", line 152, in urlopen
    conn = self.connection_from_host(u.host, port=u.port, scheme=u.scheme)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/urllib3/poolmanager.py", line 125, in connection_from_host
    pool = self._new_pool(scheme, host, port)
  File "/home/foobar/testenv/local/lib/python2.7/site-packages/urllib3/poolmanager.py", line 84, in _new_pool
    pool_cls = pool_classes_by_scheme[scheme]
KeyError: u'ftp'
Retrieving: [##########] 100% (1 requested, 0 retrieved, 0 built, 1 failed)
Some milk was spilled in the process:
python-memcached
 * python-memcached explicit requirement: KeyError:
     u'ftp'

reproduce: curd install python-memcached

it uses a ftp download url https://github.com/linsomniac/python-memcached/blob/master/setup.py#L15

goir avatar Dec 18 '15 08:12 goir