MCPcopy Index your code
hub / github.com/ekalinin/nodeenv / download_node_src

Function download_node_src

nodeenv.py:613–639  ·  view source on GitHub ↗

Download source code

(node_url, src_dir, args)

Source from the content-addressed store, hash-verified

611
612
613def download_node_src(node_url, src_dir, args):
614 """
615 Download source code
616 """
617 logger.info('.', extra=dict(continued=True))
618 dl_contents = _download_node_file(node_url)
619 logger.info('.', extra=dict(continued=True))
620
621 if is_WIN or is_CYGWIN:
622 ctx = zipfile.ZipFile(dl_contents)
623 members = operator.methodcaller('namelist')
624 member_name = lambda s: s # noqa: E731
625 else:
626 ctx = tarfile_open(fileobj=dl_contents)
627 members = operator.methodcaller('getmembers')
628 member_name = operator.attrgetter('name')
629
630 with ctx as archive:
631 node_ver = re.escape(args.node)
632 rexp_string = r"node-v%s[^/]*/(README\.md|CHANGELOG\.md|LICENSE)"\
633 % node_ver
634 extract_list = [
635 member
636 for member in members(archive)
637 if re.match(rexp_string, member_name(member)) is None
638 ]
639 archive.extractall(src_dir, extract_list)
640
641
642def urlopen(url):

Callers 1

install_node_wrappedFunction · 0.85

Calls 2

_download_node_fileFunction · 0.85
tarfile_openFunction · 0.85

Tested by

no test coverage detected