calvin-cljs-thisdotrob
Version:
a minimalistic build tool for clojurescript in clojurescript
1,096 lines (958 loc) • 73.6 kB
JavaScript
// Compiled by ClojureScript 1.9.293 {:target :nodejs}
goog.provide('thisdotrob.huckleberry.core');
goog.require('cljs.core');
goog.require('thisdotrob.huckleberry.os');
goog.require('clojure.set');
goog.require('cljs.core.async');
goog.require('cljs.nodejs');
goog.require('clojure.string');
thisdotrob.huckleberry.core.default_repos = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"clojars","clojars",1050810118),"https://clojars.org/repo",new cljs.core.Keyword(null,"local","local",-1497766724),clojure.string.join.call(null,thisdotrob.huckleberry.os.SEPARATOR,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [thisdotrob.huckleberry.os.HOME_DIR,".m2","repository"], null)),new cljs.core.Keyword(null,"maven-central","maven-central",-580926359),"https://repo1.maven.org/maven2"], null);
thisdotrob.huckleberry.core.is_url_local_QMARK_ = (function thisdotrob$huckleberry$core$is_url_local_QMARK_(url){
return !(clojure.string.starts_with_QMARK_.call(null,url,"http"));
});
thisdotrob.huckleberry.core.create_remote_url_for_depedency = (function thisdotrob$huckleberry$core$create_remote_url_for_depedency(repo,p__26431){
var map__26434 = p__26431;
var map__26434__$1 = ((((!((map__26434 == null)))?((((map__26434.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26434.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26434):map__26434);
var group = cljs.core.get.call(null,map__26434__$1,new cljs.core.Keyword(null,"group","group",582596132));
var artifact = cljs.core.get.call(null,map__26434__$1,new cljs.core.Keyword(null,"artifact","artifact",610074681));
var version = cljs.core.get.call(null,map__26434__$1,new cljs.core.Keyword(null,"version","version",425292698));
var sep = (cljs.core.truth_(thisdotrob.huckleberry.core.is_url_local_QMARK_.call(null,repo))?"/":thisdotrob.huckleberry.os.SEPARATOR);
var g = clojure.string.replace.call(null,group,/\./,sep);
var art = clojure.string.join.call(null,"-",new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [artifact,version], null));
var art_url = clojure.string.join.call(null,sep,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [repo,g,artifact,version,art], null));
var ext = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["pom","jar"], null);
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [repo,cljs.core.map.call(null,((function (sep,g,art,art_url,ext,map__26434,map__26434__$1,group,artifact,version){
return (function (p1__26430_SHARP_){
return clojure.string.join.call(null,".",new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [art_url,p1__26430_SHARP_], null));
});})(sep,g,art,art_url,ext,map__26434,map__26434__$1,group,artifact,version))
,ext)], null);
});
thisdotrob.huckleberry.core.create_urls_for_dependency = (function thisdotrob$huckleberry$core$create_urls_for_dependency(repos,d){
if(cljs.core.coll_QMARK_.call(null,repos)){
return cljs.core.map.call(null,(function (p1__26449_SHARP_){
return thisdotrob.huckleberry.core.create_remote_url_for_depedency.call(null,p1__26449_SHARP_,d);
}),repos);
} else {
return thisdotrob.huckleberry.core.create_remote_url_for_depedency.call(null,repos,d);
}
});
thisdotrob.huckleberry.core.read_url_chan = (function thisdotrob$huckleberry$core$read_url_chan(cout,url){
if(cljs.core.truth_(thisdotrob.huckleberry.core.is_url_local_QMARK_.call(null,url))){
return thisdotrob.huckleberry.os.read_file.call(null,cout,url);
} else {
return thisdotrob.huckleberry.os.make_http_request.call(null,cout,url);
}
});
thisdotrob.huckleberry.core.mvndep__GT_dep = (function thisdotrob$huckleberry$core$mvndep__GT_dep(x){
var g = cljs.core.first.call(null,new cljs.core.Keyword(null,"groupId","groupId",-921143743).cljs$core$IFn$_invoke$arity$1(x));
var a = cljs.core.first.call(null,new cljs.core.Keyword(null,"artifactId","artifactId",1019340147).cljs$core$IFn$_invoke$arity$1(x));
var v = cljs.core.first.call(null,new cljs.core.Keyword(null,"version","version",425292698).cljs$core$IFn$_invoke$arity$1(x));
var m = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"group","group",582596132),g,new cljs.core.Keyword(null,"artifact","artifact",610074681),a,new cljs.core.Keyword(null,"version","version",425292698),v], null);
return m;
});
thisdotrob.huckleberry.core.dep__GT_path = (function thisdotrob$huckleberry$core$dep__GT_path(x){
var vec__26464 = thisdotrob.huckleberry.core.create_remote_url_for_depedency.call(null,new cljs.core.Keyword(null,"url","url",276297046).cljs$core$IFn$_invoke$arity$1(x),x);
var r = cljs.core.nth.call(null,vec__26464,(0),null);
var vec__26467 = cljs.core.nth.call(null,vec__26464,(1),null);
var pom = cljs.core.nth.call(null,vec__26467,(0),null);
var jar = cljs.core.nth.call(null,vec__26467,(1),null);
return jar;
});
thisdotrob.huckleberry.core.dep__GT_coordinate = (function thisdotrob$huckleberry$core$dep__GT_coordinate(dep){
return [cljs.core.str(new cljs.core.Keyword(null,"group","group",582596132).cljs$core$IFn$_invoke$arity$1(dep)),cljs.core.str("/"),cljs.core.str(new cljs.core.Keyword(null,"artifact","artifact",610074681).cljs$core$IFn$_invoke$arity$1(dep)),cljs.core.str(" "),cljs.core.str(new cljs.core.Keyword(null,"version","version",425292698).cljs$core$IFn$_invoke$arity$1(dep))].join('');
});
thisdotrob.huckleberry.core.clean_deps = (function thisdotrob$huckleberry$core$clean_deps(x){
var y = cljs.core.remove.call(null,(function (p1__26472_SHARP_){
return (cljs.core._EQ_.call(null,"test",cljs.core.first.call(null,new cljs.core.Keyword(null,"scope","scope",-439358418).cljs$core$IFn$_invoke$arity$1(p1__26472_SHARP_)))) || (cljs.core._EQ_.call(null,"true",cljs.core.first.call(null,new cljs.core.Keyword(null,"optional","optional",2053951509).cljs$core$IFn$_invoke$arity$1(p1__26472_SHARP_)))) || ((new cljs.core.Keyword(null,"version","version",425292698).cljs$core$IFn$_invoke$arity$1(p1__26472_SHARP_) == null));
}),x);
return y;
});
thisdotrob.huckleberry.core.extract_deps = (function thisdotrob$huckleberry$core$extract_deps(p__26478){
var map__26489 = p__26478;
var map__26489__$1 = ((((!((map__26489 == null)))?((((map__26489.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26489.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26489):map__26489);
var parsed_xml = map__26489__$1;
var project = cljs.core.get.call(null,map__26489__$1,new cljs.core.Keyword(null,"project","project",1124394579));
var properties_lookup = cljs.core.into.call(null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.call(null,((function (map__26489,map__26489__$1,parsed_xml,project){
return (function (p__26493){
var vec__26494 = p__26493;
var k = cljs.core.nth.call(null,vec__26494,(0),null);
var v = cljs.core.nth.call(null,vec__26494,(1),null);
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.core.first.call(null,v)], null);
});})(map__26489,map__26489__$1,parsed_xml,project))
,cljs.core.first.call(null,new cljs.core.Keyword(null,"properties","properties",685819552).cljs$core$IFn$_invoke$arity$1(project))));
var parent = cljs.core.first.call(null,new cljs.core.Keyword(null,"parent","parent",-878878779).cljs$core$IFn$_invoke$arity$1(project));
var dependencies = cljs.core.map.call(null,((function (properties_lookup,parent,map__26489,map__26489__$1,parsed_xml,project){
return (function (dep){
return cljs.core.into.call(null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.call(null,((function (properties_lookup,parent,map__26489,map__26489__$1,parsed_xml,project){
return (function (p__26497){
var vec__26498 = p__26497;
var k = cljs.core.nth.call(null,vec__26498,(0),null);
var v = cljs.core.nth.call(null,vec__26498,(1),null);
var match = cljs.core.re_find.call(null,/^\$\{(.*)\}/,[cljs.core.str(cljs.core.first.call(null,v))].join(''));
if(cljs.core.truth_(match)){
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [properties_lookup.call(null,cljs.core.keyword.call(null,cljs.core.second.call(null,match)))], null)], null);
} else {
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);
}
});})(properties_lookup,parent,map__26489,map__26489__$1,parsed_xml,project))
,dep));
});})(properties_lookup,parent,map__26489,map__26489__$1,parsed_xml,project))
,new cljs.core.Keyword(null,"dependency","dependency",1300131203).cljs$core$IFn$_invoke$arity$1(cljs.core.first.call(null,new cljs.core.Keyword(null,"dependencies","dependencies",1108064605).cljs$core$IFn$_invoke$arity$1(project))));
if(cljs.core.truth_(parent)){
return cljs.core.conj.call(null,dependencies,parent);
} else {
return dependencies;
}
});
thisdotrob.huckleberry.core.read_dependency_pipeline = (function thisdotrob$huckleberry$core$read_dependency_pipeline(url_set){
var repo_url = cljs.core.first.call(null,url_set);
var pom_url = cljs.core.first.call(null,cljs.core.second.call(null,url_set));
var c = cljs.core.async.chan.call(null,(1),cljs.core.comp.call(null,cljs.core.map.call(null,thisdotrob.huckleberry.os.parse_xml),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26507_SHARP_){
return cljs.core.js__GT_clj.call(null,p1__26507_SHARP_,new cljs.core.Keyword(null,"keywordize-keys","keywordize-keys",1310784252),true);
});})(repo_url,pom_url))
),cljs.core.map.call(null,thisdotrob.huckleberry.core.extract_deps),cljs.core.map.call(null,thisdotrob.huckleberry.core.clean_deps),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26508_SHARP_){
return cljs.core.map.call(null,thisdotrob.huckleberry.core.mvndep__GT_dep,p1__26508_SHARP_);
});})(repo_url,pom_url))
),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26509_SHARP_){
return cljs.core.into.call(null,cljs.core.PersistentHashSet.EMPTY,p1__26509_SHARP_);
});})(repo_url,pom_url))
),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26510_SHARP_){
return cljs.core.conj.call(null,cljs.core.PersistentVector.EMPTY,repo_url,p1__26510_SHARP_);
});})(repo_url,pom_url))
)));
return thisdotrob.huckleberry.core.read_url_chan.call(null,c,pom_url);
});
thisdotrob.huckleberry.core.extract_dependencies = (function thisdotrob$huckleberry$core$extract_dependencies(url_set){
return cljs.core.map.call(null,thisdotrob.huckleberry.core.read_dependency_pipeline,url_set);
});
thisdotrob.huckleberry.core.resolve = (function thisdotrob$huckleberry$core$resolve(var_args){
var args__7658__auto__ = [];
var len__7651__auto___26635 = arguments.length;
var i__7652__auto___26636 = (0);
while(true){
if((i__7652__auto___26636 < len__7651__auto___26635)){
args__7658__auto__.push((arguments[i__7652__auto___26636]));
var G__26638 = (i__7652__auto___26636 + (1));
i__7652__auto___26636 = G__26638;
continue;
} else {
}
break;
}
var argseq__7659__auto__ = ((((1) < args__7658__auto__.length))?(new cljs.core.IndexedSeq(args__7658__auto__.slice((1)),(0),null)):null);
return thisdotrob.huckleberry.core.resolve.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__7659__auto__);
});
thisdotrob.huckleberry.core.resolve.cljs$core$IFn$_invoke$arity$variadic = (function (dep,p__26532){
var map__26533 = p__26532;
var map__26533__$1 = ((((!((map__26533 == null)))?((((map__26533.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26533.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26533):map__26533);
var repositories = cljs.core.get.call(null,map__26533__$1,new cljs.core.Keyword(null,"repositories","repositories",1367837581));
var local_repo = cljs.core.get.call(null,map__26533__$1,new cljs.core.Keyword(null,"local-repo","local-repo",764410280));
var c__9686__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (){
var f__9687__auto__ = (function (){var switch__9642__auto__ = ((function (c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (state_26605){
var state_val_26606 = (state_26605[(1)]);
if((state_val_26606 === (7))){
var inst_26542 = (state_26605[(7)]);
var inst_26540 = (state_26605[(8)]);
var inst_26543 = (state_26605[(9)]);
var inst_26556 = (state_26605[(10)]);
var inst_26567 = (state_26605[(11)]);
var inst_26539 = (state_26605[(12)]);
var inst_26544 = (state_26605[(13)]);
var inst_26553 = (state_26605[(14)]);
var inst_26554 = (state_26605[(15)]);
var inst_26558 = (state_26605[(16)]);
var inst_26559 = (state_26605[(17)]);
var inst_26541 = (state_26605[(18)]);
var inst_26561 = (state_26605[(2)]);
var inst_26562 = cljs.core.nth.call(null,inst_26561,(0),null);
var inst_26563 = cljs.core.nth.call(null,inst_26562,(0),null);
var inst_26564 = cljs.core.nth.call(null,inst_26562,(1),null);
var inst_26565 = cljs.core.nth.call(null,inst_26561,(1),null);
var inst_26566 = (function (){var tout = inst_26558;
var vec__26547 = inst_26561;
var no_excl = inst_26553;
var vec__26550 = inst_26562;
var deps = inst_26564;
var repo_reqs = inst_26559;
var urls = inst_26556;
var to_do = inst_26540;
var done = inst_26541;
var exclusions = inst_26543;
var url_set = inst_26554;
var ch = inst_26565;
var locations = inst_26542;
var status = inst_26544;
var next = inst_26539;
var url = inst_26563;
return ((function (tout,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (p1__26526_SHARP_){
return !((ch === p1__26526_SHARP_));
});
;})(tout,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
})();
var inst_26567__$1 = cljs.core.filter.call(null,inst_26566,inst_26559);
var inst_26568 = (function (){var tout = inst_26558;
var to_kill = inst_26567__$1;
var vec__26547 = inst_26561;
var no_excl = inst_26553;
var vec__26550 = inst_26562;
var deps = inst_26564;
var repo_reqs = inst_26559;
var urls = inst_26556;
var to_do = inst_26540;
var done = inst_26541;
var exclusions = inst_26543;
var url_set = inst_26554;
var ch = inst_26565;
var locations = inst_26542;
var status = inst_26544;
var next = inst_26539;
var url = inst_26563;
return ((function (tout,to_kill,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,inst_26566,inst_26567__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (x){
return cljs.core.empty_QMARK_.call(null,cljs.core.filter.call(null,((function (tout,to_kill,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,inst_26566,inst_26567__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (p1__26527_SHARP_){
return (cljs.core._EQ_.call(null,new cljs.core.Keyword(null,"group","group",582596132).cljs$core$IFn$_invoke$arity$1(p1__26527_SHARP_),new cljs.core.Keyword(null,"group","group",582596132).cljs$core$IFn$_invoke$arity$1(x))) && (cljs.core._EQ_.call(null,new cljs.core.Keyword(null,"artifact","artifact",610074681).cljs$core$IFn$_invoke$arity$1(p1__26527_SHARP_),new cljs.core.Keyword(null,"artifact","artifact",610074681).cljs$core$IFn$_invoke$arity$1(x)));
});})(tout,to_kill,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,inst_26566,inst_26567__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
,exclusions));
});
;})(tout,to_kill,vec__26547,no_excl,vec__26550,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,status,next,url,inst_26542,inst_26540,inst_26543,inst_26556,inst_26567,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26561,inst_26562,inst_26563,inst_26564,inst_26565,inst_26566,inst_26567__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
})();
var inst_26569 = cljs.core.filter.call(null,inst_26568,inst_26564);
var inst_26570 = clojure.set.union.call(null,inst_26540,inst_26569);
var inst_26571 = cljs.core.PersistentHashSet.EMPTY;
var inst_26572 = cljs.core.assoc.call(null,inst_26553,new cljs.core.Keyword(null,"url","url",276297046),inst_26563);
var inst_26573 = cljs.core.conj.call(null,inst_26571,inst_26572);
var inst_26574 = clojure.set.union.call(null,inst_26542,inst_26573);
var inst_26575 = [inst_26553];
var inst_26576 = [inst_26569];
var inst_26577 = cljs.core.PersistentHashMap.fromArrays(inst_26575,inst_26576);
var inst_26578 = cljs.core.into.call(null,inst_26541,inst_26577);
var inst_26579 = (inst_26558 === inst_26565);
var inst_26580 = cljs.core.not.call(null,inst_26579);
var state_26605__$1 = (function (){var statearr_26608 = state_26605;
(statearr_26608[(11)] = inst_26567__$1);
(statearr_26608[(19)] = inst_26574);
(statearr_26608[(20)] = inst_26578);
(statearr_26608[(21)] = inst_26570);
return statearr_26608;
})();
if(inst_26580){
var statearr_26609_26682 = state_26605__$1;
(statearr_26609_26682[(1)] = (8));
} else {
var statearr_26610_26683 = state_26605__$1;
(statearr_26610_26683[(1)] = (9));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (1))){
var inst_26535 = cljs.core.PersistentHashSet.EMPTY;
var inst_26536 = cljs.core.PersistentHashMap.EMPTY;
var inst_26537 = cljs.core.PersistentHashSet.EMPTY;
var inst_26538 = new cljs.core.Keyword(null,"exclusions","exclusions",1098729003).cljs$core$IFn$_invoke$arity$1(dep);
var inst_26539 = dep;
var inst_26540 = inst_26535;
var inst_26541 = inst_26536;
var inst_26542 = inst_26537;
var inst_26543 = inst_26538;
var inst_26544 = true;
var state_26605__$1 = (function (){var statearr_26611 = state_26605;
(statearr_26611[(7)] = inst_26542);
(statearr_26611[(8)] = inst_26540);
(statearr_26611[(9)] = inst_26543);
(statearr_26611[(12)] = inst_26539);
(statearr_26611[(13)] = inst_26544);
(statearr_26611[(18)] = inst_26541);
return statearr_26611;
})();
var statearr_26612_26685 = state_26605__$1;
(statearr_26612_26685[(2)] = null);
(statearr_26612_26685[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (4))){
var inst_26542 = (state_26605[(7)]);
var inst_26540 = (state_26605[(8)]);
var inst_26543 = (state_26605[(9)]);
var inst_26539 = (state_26605[(12)]);
var inst_26544 = (state_26605[(13)]);
var inst_26553 = (state_26605[(14)]);
var inst_26554 = (state_26605[(15)]);
var inst_26558 = (state_26605[(16)]);
var inst_26559 = (state_26605[(17)]);
var inst_26541 = (state_26605[(18)]);
var inst_26553__$1 = cljs.core.dissoc.call(null,inst_26539,new cljs.core.Keyword(null,"exclusions","exclusions",1098729003));
var inst_26554__$1 = thisdotrob.huckleberry.core.create_urls_for_dependency.call(null,repositories,inst_26553__$1);
var inst_26555 = (function (){var next = inst_26539;
var to_do = inst_26540;
var done = inst_26541;
var locations = inst_26542;
var exclusions = inst_26543;
var status = inst_26544;
var no_excl = inst_26553__$1;
var url_set = inst_26554__$1;
return ((function (next,to_do,done,locations,exclusions,status,no_excl,url_set,inst_26542,inst_26540,inst_26543,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26553__$1,inst_26554__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function (p1__26525_SHARP_){
return cljs.core.first.call(null,cljs.core.second.call(null,p1__26525_SHARP_));
});
;})(next,to_do,done,locations,exclusions,status,no_excl,url_set,inst_26542,inst_26540,inst_26543,inst_26539,inst_26544,inst_26553,inst_26554,inst_26558,inst_26559,inst_26541,inst_26553__$1,inst_26554__$1,state_val_26606,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
})();
var inst_26556 = cljs.core.map.call(null,inst_26555,inst_26554__$1);
var inst_26557 = thisdotrob.huckleberry.core.extract_dependencies.call(null,inst_26554__$1);
var inst_26558__$1 = cljs.core.async.timeout.call(null,(5000));
var inst_26559__$1 = cljs.core.conj.call(null,inst_26557,inst_26558__$1);
var state_26605__$1 = (function (){var statearr_26613 = state_26605;
(statearr_26613[(10)] = inst_26556);
(statearr_26613[(14)] = inst_26553__$1);
(statearr_26613[(15)] = inst_26554__$1);
(statearr_26613[(16)] = inst_26558__$1);
(statearr_26613[(17)] = inst_26559__$1);
return statearr_26613;
})();
return cljs.core.async.ioc_alts_BANG_.call(null,state_26605__$1,(7),inst_26559__$1);
} else {
if((state_val_26606 === (6))){
var inst_26600 = (state_26605[(2)]);
var state_26605__$1 = state_26605;
var statearr_26614_26697 = state_26605__$1;
(statearr_26614_26697[(2)] = inst_26600);
(statearr_26614_26697[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (3))){
var inst_26602 = (state_26605[(2)]);
var state_26605__$1 = state_26605;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_26605__$1,inst_26602);
} else {
if((state_val_26606 === (2))){
var inst_26539 = (state_26605[(12)]);
var state_26605__$1 = state_26605;
if(cljs.core.truth_(inst_26539)){
var statearr_26617_26702 = state_26605__$1;
(statearr_26617_26702[(1)] = (4));
} else {
var statearr_26618_26703 = state_26605__$1;
(statearr_26618_26703[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (9))){
var inst_26539 = (state_26605[(12)]);
var inst_26587 = cljs.core.println.call(null,"failed on",inst_26539);
var inst_26588 = cljs.core.PersistentVector.EMPTY;
var inst_26589 = cljs.core.PersistentVector.EMPTY;
var tmp26616 = inst_26539;
var inst_26539__$1 = null;
var inst_26540 = null;
var inst_26541 = tmp26616;
var inst_26542 = inst_26588;
var inst_26543 = inst_26589;
var inst_26544 = false;
var state_26605__$1 = (function (){var statearr_26619 = state_26605;
(statearr_26619[(7)] = inst_26542);
(statearr_26619[(8)] = inst_26540);
(statearr_26619[(9)] = inst_26543);
(statearr_26619[(22)] = inst_26587);
(statearr_26619[(12)] = inst_26539__$1);
(statearr_26619[(13)] = inst_26544);
(statearr_26619[(18)] = inst_26541);
return statearr_26619;
})();
var statearr_26620_26708 = state_26605__$1;
(statearr_26620_26708[(2)] = null);
(statearr_26620_26708[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (5))){
var inst_26542 = (state_26605[(7)]);
var inst_26544 = (state_26605[(13)]);
var inst_26541 = (state_26605[(18)]);
var inst_26596 = cljs.core.PersistentVector.EMPTY_NODE;
var inst_26597 = [inst_26544,inst_26541,inst_26542];
var inst_26598 = (new cljs.core.PersistentVector(null,3,(5),inst_26596,inst_26597,null));
var state_26605__$1 = state_26605;
var statearr_26622_26709 = state_26605__$1;
(statearr_26622_26709[(2)] = inst_26598);
(statearr_26622_26709[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (10))){
var inst_26592 = (state_26605[(2)]);
var state_26605__$1 = state_26605;
var statearr_26623_26710 = state_26605__$1;
(statearr_26623_26710[(2)] = inst_26592);
(statearr_26623_26710[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26606 === (8))){
var inst_26543 = (state_26605[(9)]);
var inst_26567 = (state_26605[(11)]);
var inst_26574 = (state_26605[(19)]);
var inst_26578 = (state_26605[(20)]);
var inst_26570 = (state_26605[(21)]);
var inst_26582 = cljs.core.map.call(null,cljs.core.async.close_BANG_,inst_26567);
var inst_26583 = cljs.core.first.call(null,inst_26570);
var inst_26584 = cljs.core.rest.call(null,inst_26570);
var tmp26621 = inst_26543;
var inst_26539 = inst_26583;
var inst_26540 = inst_26584;
var inst_26541 = inst_26578;
var inst_26542 = inst_26574;
var inst_26543__$1 = tmp26621;
var inst_26544 = true;
var state_26605__$1 = (function (){var statearr_26624 = state_26605;
(statearr_26624[(7)] = inst_26542);
(statearr_26624[(8)] = inst_26540);
(statearr_26624[(9)] = inst_26543__$1);
(statearr_26624[(12)] = inst_26539);
(statearr_26624[(13)] = inst_26544);
(statearr_26624[(18)] = inst_26541);
(statearr_26624[(23)] = inst_26582);
return statearr_26624;
})();
var statearr_26625_26711 = state_26605__$1;
(statearr_26625_26711[(2)] = null);
(statearr_26625_26711[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
});})(c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
;
return ((function (switch__9642__auto__,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo){
return (function() {
var thisdotrob$huckleberry$core$state_machine__9643__auto__ = null;
var thisdotrob$huckleberry$core$state_machine__9643__auto____0 = (function (){
var statearr_26629 = [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];
(statearr_26629[(0)] = thisdotrob$huckleberry$core$state_machine__9643__auto__);
(statearr_26629[(1)] = (1));
return statearr_26629;
});
var thisdotrob$huckleberry$core$state_machine__9643__auto____1 = (function (state_26605){
while(true){
var ret_value__9644__auto__ = (function (){try{while(true){
var result__9645__auto__ = switch__9642__auto__.call(null,state_26605);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9645__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9645__auto__;
}
break;
}
}catch (e26631){if((e26631 instanceof Object)){
var ex__9646__auto__ = e26631;
var statearr_26632_26712 = state_26605;
(statearr_26632_26712[(5)] = ex__9646__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_26605);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e26631;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9644__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__26713 = state_26605;
state_26605 = G__26713;
continue;
} else {
return ret_value__9644__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$state_machine__9643__auto__ = function(state_26605){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$state_machine__9643__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$state_machine__9643__auto____1.call(this,state_26605);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$state_machine__9643__auto____0;
thisdotrob$huckleberry$core$state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$state_machine__9643__auto____1;
return thisdotrob$huckleberry$core$state_machine__9643__auto__;
})()
;})(switch__9642__auto__,c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
})();
var state__9688__auto__ = (function (){var statearr_26633 = f__9687__auto__.call(null);
(statearr_26633[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9686__auto__);
return statearr_26633;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9688__auto__);
});})(c__9686__auto__,map__26533,map__26533__$1,repositories,local_repo))
);
return c__9686__auto__;
});
thisdotrob.huckleberry.core.resolve.cljs$lang$maxFixedArity = (1);
thisdotrob.huckleberry.core.resolve.cljs$lang$applyTo = (function (seq26528){
var G__26529 = cljs.core.first.call(null,seq26528);
var seq26528__$1 = cljs.core.next.call(null,seq26528);
return thisdotrob.huckleberry.core.resolve.cljs$core$IFn$_invoke$arity$variadic(G__26529,seq26528__$1);
});
thisdotrob.huckleberry.core.resolve_all = (function thisdotrob$huckleberry$core$resolve_all(var_args){
var args__7658__auto__ = [];
var len__7651__auto___26791 = arguments.length;
var i__7652__auto___26792 = (0);
while(true){
if((i__7652__auto___26792 < len__7651__auto___26791)){
args__7658__auto__.push((arguments[i__7652__auto___26792]));
var G__26793 = (i__7652__auto___26792 + (1));
i__7652__auto___26792 = G__26793;
continue;
} else {
}
break;
}
var argseq__7659__auto__ = ((((1) < args__7658__auto__.length))?(new cljs.core.IndexedSeq(args__7658__auto__.slice((1)),(0),null)):null);
return thisdotrob.huckleberry.core.resolve_all.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__7659__auto__);
});
thisdotrob.huckleberry.core.resolve_all.cljs$core$IFn$_invoke$arity$variadic = (function (all_deps,opts){
var c__9686__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9686__auto__){
return (function (){
var f__9687__auto__ = (function (){var switch__9642__auto__ = ((function (c__9686__auto__){
return (function (state_26753){
var state_val_26754 = (state_26753[(1)]);
if((state_val_26754 === (7))){
var inst_26733 = (state_26753[(7)]);
var inst_26718 = (state_26753[(8)]);
var inst_26733__$1 = cljs.core.first.call(null,inst_26718);
var inst_26734 = cljs.core.apply.call(null,thisdotrob.huckleberry.core.resolve,inst_26733__$1,opts);
var state_26753__$1 = (function (){var statearr_26755 = state_26753;
(statearr_26755[(7)] = inst_26733__$1);
return statearr_26755;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_26753__$1,(10),inst_26734);
} else {
if((state_val_26754 === (1))){
var inst_26716 = cljs.core.PersistentVector.EMPTY;
var inst_26717 = cljs.core.PersistentHashSet.EMPTY;
var inst_26718 = all_deps;
var inst_26719 = inst_26716;
var inst_26720 = inst_26717;
var inst_26721 = true;
var state_26753__$1 = (function (){var statearr_26756 = state_26753;
(statearr_26756[(9)] = inst_26719);
(statearr_26756[(10)] = inst_26721);
(statearr_26756[(11)] = inst_26720);
(statearr_26756[(8)] = inst_26718);
return statearr_26756;
})();
var statearr_26757_26807 = state_26753__$1;
(statearr_26757_26807[(2)] = null);
(statearr_26757_26807[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (4))){
var inst_26718 = (state_26753[(8)]);
var inst_26724 = cljs.core.empty_QMARK_.call(null,inst_26718);
var inst_26725 = !(inst_26724);
var state_26753__$1 = state_26753;
var statearr_26762_26810 = state_26753__$1;
(statearr_26762_26810[(2)] = inst_26725);
(statearr_26762_26810[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (6))){
var inst_26728 = (state_26753[(2)]);
var state_26753__$1 = state_26753;
if(cljs.core.truth_(inst_26728)){
var statearr_26763_26811 = state_26753__$1;
(statearr_26763_26811[(1)] = (7));
} else {
var statearr_26764_26816 = state_26753__$1;
(statearr_26764_26816[(1)] = (8));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (3))){
var inst_26751 = (state_26753[(2)]);
var state_26753__$1 = state_26753;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_26753__$1,inst_26751);
} else {
if((state_val_26754 === (2))){
var inst_26721 = (state_26753[(10)]);
var state_26753__$1 = state_26753;
if(cljs.core.truth_(inst_26721)){
var statearr_26769_26828 = state_26753__$1;
(statearr_26769_26828[(1)] = (4));
} else {
var statearr_26770_26829 = state_26753__$1;
(statearr_26770_26829[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (9))){
var inst_26749 = (state_26753[(2)]);
var state_26753__$1 = state_26753;
var statearr_26771_26833 = state_26753__$1;
(statearr_26771_26833[(2)] = inst_26749);
(statearr_26771_26833[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (5))){
var inst_26721 = (state_26753[(10)]);
var state_26753__$1 = state_26753;
var statearr_26772_26837 = state_26753__$1;
(statearr_26772_26837[(2)] = inst_26721);
(statearr_26772_26837[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (10))){
var inst_26733 = (state_26753[(7)]);
var inst_26719 = (state_26753[(9)]);
var inst_26720 = (state_26753[(11)]);
var inst_26718 = (state_26753[(8)]);
var inst_26736 = (state_26753[(2)]);
var inst_26737 = cljs.core.nth.call(null,inst_26736,(0),null);
var inst_26738 = cljs.core.nth.call(null,inst_26736,(1),null);
var inst_26739 = cljs.core.nth.call(null,inst_26736,(2),null);
var inst_26740 = cljs.core.conj.call(null,inst_26719,inst_26733,inst_26738);
var inst_26741 = cljs.core.rest.call(null,inst_26718);
var inst_26742 = clojure.set.union.call(null,inst_26720,inst_26739);
var inst_26718__$1 = inst_26741;
var inst_26719__$1 = inst_26740;
var inst_26720__$1 = inst_26742;
var inst_26721 = inst_26737;
var state_26753__$1 = (function (){var statearr_26773 = state_26753;
(statearr_26773[(9)] = inst_26719__$1);
(statearr_26773[(10)] = inst_26721);
(statearr_26773[(11)] = inst_26720__$1);
(statearr_26773[(8)] = inst_26718__$1);
return statearr_26773;
})();
var statearr_26774_26853 = state_26753__$1;
(statearr_26774_26853[(2)] = null);
(statearr_26774_26853[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_26754 === (8))){
var inst_26719 = (state_26753[(9)]);
var inst_26721 = (state_26753[(10)]);
var inst_26720 = (state_26753[(11)]);
var inst_26745 = cljs.core.PersistentVector.EMPTY_NODE;
var inst_26746 = [inst_26721,inst_26719,inst_26720];
var inst_26747 = (new cljs.core.PersistentVector(null,3,(5),inst_26745,inst_26746,null));
var state_26753__$1 = state_26753;
var statearr_26775_26861 = state_26753__$1;
(statearr_26775_26861[(2)] = inst_26747);
(statearr_26775_26861[(1)] = (9));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
});})(c__9686__auto__))
;
return ((function (switch__9642__auto__,c__9686__auto__){
return (function() {
var thisdotrob$huckleberry$core$state_machine__9643__auto__ = null;
var thisdotrob$huckleberry$core$state_machine__9643__auto____0 = (function (){
var statearr_26779 = [null,null,null,null,null,null,null,null,null,null,null,null];
(statearr_26779[(0)] = thisdotrob$huckleberry$core$state_machine__9643__auto__);
(statearr_26779[(1)] = (1));
return statearr_26779;
});
var thisdotrob$huckleberry$core$state_machine__9643__auto____1 = (function (state_26753){
while(true){
var ret_value__9644__auto__ = (function (){try{while(true){
var result__9645__auto__ = switch__9642__auto__.call(null,state_26753);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9645__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9645__auto__;
}
break;
}
}catch (e26780){if((e26780 instanceof Object)){
var ex__9646__auto__ = e26780;
var statearr_26781_26875 = state_26753;
(statearr_26781_26875[(5)] = ex__9646__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_26753);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e26780;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9644__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__26877 = state_26753;
state_26753 = G__26877;
continue;
} else {
return ret_value__9644__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$state_machine__9643__auto__ = function(state_26753){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$state_machine__9643__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$state_machine__9643__auto____1.call(this,state_26753);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$state_machine__9643__auto____0;
thisdotrob$huckleberry$core$state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$state_machine__9643__auto____1;
return thisdotrob$huckleberry$core$state_machine__9643__auto__;
})()
;})(switch__9642__auto__,c__9686__auto__))
})();
var state__9688__auto__ = (function (){var statearr_26786 = f__9687__auto__.call(null);
(statearr_26786[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9686__auto__);
return statearr_26786;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9688__auto__);
});})(c__9686__auto__))
);
return c__9686__auto__;
});
thisdotrob.huckleberry.core.resolve_all.cljs$lang$maxFixedArity = (1);
thisdotrob.huckleberry.core.resolve_all.cljs$lang$applyTo = (function (seq26714){
var G__26715 = cljs.core.first.call(null,seq26714);
var seq26714__$1 = cljs.core.next.call(null,seq26714);
return thisdotrob.huckleberry.core.resolve_all.cljs$core$IFn$_invoke$arity$variadic(G__26715,seq26714__$1);
});
thisdotrob.huckleberry.core.group = (function thisdotrob$huckleberry$core$group(group_artifact){
var or__6543__auto__ = cljs.core.namespace.call(null,group_artifact);
if(cljs.core.truth_(or__6543__auto__)){
return or__6543__auto__;
} else {
return cljs.core.name.call(null,group_artifact);
}
});
thisdotrob.huckleberry.core.exclusion = (function thisdotrob$huckleberry$core$exclusion(p__26881){
var vec__26887 = p__26881;
var seq__26888 = cljs.core.seq.call(null,vec__26887);
var first__26889 = cljs.core.first.call(null,seq__26888);
var seq__26888__$1 = cljs.core.next.call(null,seq__26888);
var group_artifact = first__26889;
var map__26890 = seq__26888__$1;
var map__26890__$1 = ((((!((map__26890 == null)))?((((map__26890.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26890.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26890):map__26890);
var opts = map__26890__$1;
return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"group","group",582596132),thisdotrob.huckleberry.core.group.call(null,group_artifact),new cljs.core.Keyword(null,"artifact","artifact",610074681),cljs.core.name.call(null,group_artifact),new cljs.core.Keyword(null,"classifier","classifier",-864028247),new cljs.core.Keyword(null,"classifier","classifier",-864028247).cljs$core$IFn$_invoke$arity$2(opts,"*"),new cljs.core.Keyword(null,"extension","extension",1453374065),new cljs.core.Keyword(null,"extension","extension",1453374065).cljs$core$IFn$_invoke$arity$2(opts,"*")], null);
});
thisdotrob.huckleberry.core.normalize_exclusion_spec = (function thisdotrob$huckleberry$core$normalize_exclusion_spec(spec){
if((spec instanceof cljs.core.Symbol)){
return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec], null);
} else {
return spec;
}
});
thisdotrob.huckleberry.core.dependency = (function thisdotrob$huckleberry$core$dependency(p__26900){
var vec__26906 = p__26900;
var seq__26907 = cljs.core.seq.call(null,vec__26906);
var first__26908 = cljs.core.first.call(null,seq__26907);
var seq__26907__$1 = cljs.core.next.call(null,seq__26907);
var group_artifact = first__26908;
var first__26908__$1 = cljs.core.first.call(null,seq__26907__$1);
var seq__26907__$2 = cljs.core.next.call(null,seq__26907__$1);
var version = first__26908__$1;
var map__26909 = seq__26907__$2;
var map__26909__$1 = ((((!((map__26909 == null)))?((((map__26909.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26909.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26909):map__26909);
var opts = map__26909__$1;
var scope = cljs.core.get.call(null,map__26909__$1,new cljs.core.Keyword(null,"scope","scope",-439358418),"compile");
var optional = cljs.core.get.call(null,map__26909__$1,new cljs.core.Keyword(null,"optional","optional",2053951509),false);
var exclusions = cljs.core.get.call(null,map__26909__$1,new cljs.core.Keyword(null,"exclusions","exclusions",1098729003));
var dep_spec = vec__26906;
return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"group","group",582596132),thisdotrob.huckleberry.core.group.call(null,group_artifact),new cljs.core.Keyword(null,"artifact","artifact",610074681),cljs.core.name.call(null,group_artifact),new cljs.core.Keyword(null,"version","version",425292698),version,new cljs.core.Keyword(null,"exclusions","exclusions",1098729003),cljs.core.map.call(null,cljs.core.comp.call(null,thisdotrob.huckleberry.core.exclusion,thisdotrob.huckleberry.core.normalize_exclusion_spec),exclusions)], null);
});
thisdotrob.huckleberry.core.download_and_save_pipeline = (function thisdotrob$huckleberry$core$download_and_save_pipeline(p__26920){
var vec__26928 = p__26920;
var download_from = cljs.core.nth.call(null,vec__26928,(0),null);
var save_to = cljs.core.nth.call(null,vec__26928,(1),null);
var c = cljs.core.async.chan.call(null,(1024),cljs.core.comp.call(null,cljs.core.map.call(null,((function (vec__26928,download_from,save_to){
return (function (p1__26919_SHARP_){
return thisdotrob.huckleberry.os.write_file.call(null,save_to,p1__26919_SHARP_);
});})(vec__26928,download_from,save_to))
)));
return thisdotrob.huckleberry.os.make_http_request.call(null,c,download_from);
});
thisdotrob.huckleberry.core.retrieve = (function thisdotrob$huckleberry$core$retrieve(dep,in_repo){
var repo_url = new cljs.core.Keyword(null,"url","url",276297046).cljs$core$IFn$_invoke$arity$1(dep);
var urls = thisdotrob.huckleberry.core.create_urls_for_dependency.call(null,repo_url,dep);
var save_to_locations = thisdotrob.huckleberry.core.create_urls_for_dependency.call(null,in_repo,dep);
var urls_to_proc = cljs.core.map.call(null,cljs.core.vector,cljs.core.second.call(null,urls),cljs.core.second.call(null,save_to_locations));
var local_deps = cljs.core.assoc.call(null,dep,new cljs.core.Keyword(null,"url","url",276297046),in_repo);
var c_jar = thisdotrob.huckleberry.core.download_and_save_pipeline.call(null,cljs.core.second.call(null,urls_to_proc));
var c_pom = thisdotrob.huckleberry.core.download_and_save_pipeline.call(null,cljs.core.first.call(null,urls_to_proc));
var c__9686__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom){
return (function (){
var f__9687__auto__ = (function (){var switch__9642__auto__ = ((function (c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom){
return (function (state_26977){
var state_val_26978 = (state_26977[(1)]);
if((state_val_26978 === (1))){
var inst_26969 = cljs.core.second.call(null,urls_to_proc);
var inst_26970 = cljs.core.first.call(null,inst_26969);
var inst_26971 = cljs.core.println.call(null,"Downloading",inst_26970);
var state_26977__$1 = (function (){var statearr_26983 = state_26977;
(statearr_26983[(7)] = inst_26971);
return statearr_26983;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_26977__$1,(2),c_jar);
} else {
if((state_val_26978 === (2))){
var inst_26973 = (state_26977[(2)]);
var state_26977__$1 = (function (){var statearr_26988 = state_26977;
(statearr_26988[(8)] = inst_26973);
return statearr_26988;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_26977__$1,(3),c_pom);
} else {
if((state_val_26978 === (3))){
var inst_26975 = (state_26977[(2)]);
var state_26977__$1 = (function (){var statearr_26989 = state_26977;
(statearr_26989[(9)] = inst_26975);
return statearr_26989;
})();
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_26977__$1,local_deps);
} else {
return null;
}
}
}
});})(c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
;
return ((function (switch__9642__auto__,c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom){
return (function() {
var thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__ = null;
var thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____0 = (function (){
var statearr_26996 = [null,null,null,null,null,null,null,null,null,null];
(statearr_26996[(0)] = thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__);
(statearr_26996[(1)] = (1));
return statearr_26996;
});
var thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____1 = (function (state_26977){
while(true){
var ret_value__9644__auto__ = (function (){try{while(true){
var result__9645__auto__ = switch__9642__auto__.call(null,state_26977);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9645__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9645__auto__;
}
break;
}
}catch (e26997){if((e26997 instanceof Object)){
var ex__9646__auto__ = e26997;
var statearr_26998_27026 = state_26977;
(statearr_26998_27026[(5)] = ex__9646__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_26977);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e26997;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9644__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__27027 = state_26977;
state_26977 = G__27027;
continue;
} else {
return ret_value__9644__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__ = function(state_26977){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____1.call(this,state_26977);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____0;
thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto____1;
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9643__auto__;
})()
;})(switch__9642__auto__,c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
})();
var state__9688__auto__ = (function (){var statearr_26999 = f__9687__auto__.call(null);
(statearr_26999[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9686__auto__);
return statearr_26999;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9688__auto__);
});})(c__9686__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
);
return c__9686__auto__;
});
thisdotrob.huckleberry.core.retrieve_all = (function thisdotrob$huckleberry$core$retrieve_all(local_deps,to_do,in_repo){
var c__9686__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9686__auto__){
return (function (){
var f__9687__auto__ = (function (){var switch__9642__auto__ = ((function (c__9686__auto__){
return (function (state_27087){
var state_val_27088 = (state_27087[(1)]);
if((state_val_27088 === (1))){
var inst_27064 = local_deps;
var inst_27065 = to_do;
var inst_27066 = in_repo;
var state_27087__$1 = (function (){var statearr_27091 = state_27087;
(statearr_27091[(7)] = inst_27066);
(statearr_27091[(8)] = inst_27065);
(statearr_27091[(9)] = inst_27064);
return statearr_27091;
})();
var statearr_27092_27108 = state_27087__$1;
(statearr_27092_27108[(2)] = null);
(statearr_27092_27108[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27088 === (2))){
var inst_27065 = (state_27087[(8)]);
var inst_27068 = cljs.core.empty_QMARK_.call(null,inst_27065);
var state_27087__$1 = state_27087;
if(inst_27068){
var statearr_27093_27109 = state_27087__$1;
(statearr_27093_27109[(1)] = (4));
} else {
var statearr_27094_27110 = state_27087__$1;
(statearr_27094_27110[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27088 === (3))){
var inst_27084 = (state_27087[(2)]);
var state_27087__$1 = state_27087;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_27087__$1,inst_27084);
} else {
if((state_val_27088 === (4))){
var inst_27064 = (state_27087[(9)]);
var state_27087__$1 = state_27087;
var statearr_27096_27111 = state_27087__$1;
(statearr_27096_27111[(2)] = inst_27064);
(statearr_27096_27111[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27088 === (5))){
var inst_27065 = (state_27087[(8)]);
var inst_27071 = cljs.core.first.call(null,inst_27065);
var inst_27073 = thisdotrob.huckleberry.core.retrieve.c