thisdotrob-calvin-cljs
Version:
a minimalistic build tool for clojurescript in clojurescript
1,103 lines (963 loc) • 69 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__26878){
var map__26883 = p__26878;
var map__26883__$1 = ((((!((map__26883 == null)))?((((map__26883.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26883.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26883):map__26883);
var group = cljs.core.get.call(null,map__26883__$1,new cljs.core.Keyword(null,"group","group",582596132));
var artifact = cljs.core.get.call(null,map__26883__$1,new cljs.core.Keyword(null,"artifact","artifact",610074681));
var version = cljs.core.get.call(null,map__26883__$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__26883,map__26883__$1,group,artifact,version){
return (function (p1__26877_SHARP_){
return clojure.string.join.call(null,".",new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [art_url,p1__26877_SHARP_], null));
});})(sep,g,art,art_url,ext,map__26883,map__26883__$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__26891_SHARP_){
return thisdotrob.huckleberry.core.create_remote_url_for_depedency.call(null,p1__26891_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__26906 = 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__26906,(0),null);
var vec__26909 = cljs.core.nth.call(null,vec__26906,(1),null);
var pom = cljs.core.nth.call(null,vec__26909,(0),null);
var jar = cljs.core.nth.call(null,vec__26909,(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__26916_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__26916_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__26916_SHARP_))));
}),x);
return y;
});
thisdotrob.huckleberry.core.extract_deps = (function thisdotrob$huckleberry$core$extract_deps(p__26919){
var map__26933 = p__26919;
var map__26933__$1 = ((((!((map__26933 == null)))?((((map__26933.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26933.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26933):map__26933);
var parsed_xml = map__26933__$1;
var project = cljs.core.get.call(null,map__26933__$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__26933,map__26933__$1,parsed_xml,project){
return (function (p__26937){
var vec__26938 = p__26937;
var k = cljs.core.nth.call(null,vec__26938,(0),null);
var v = cljs.core.nth.call(null,vec__26938,(1),null);
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.core.first.call(null,v)], null);
});})(map__26933,map__26933__$1,parsed_xml,project))
,cljs.core.first.call(null,new cljs.core.Keyword(null,"properties","properties",685819552).cljs$core$IFn$_invoke$arity$1(project))));
return cljs.core.map.call(null,((function (properties_lookup,map__26933,map__26933__$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,map__26933,map__26933__$1,parsed_xml,project){
return (function (p__26941){
var vec__26943 = p__26941;
var k = cljs.core.nth.call(null,vec__26943,(0),null);
var v = cljs.core.nth.call(null,vec__26943,(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,map__26933,map__26933__$1,parsed_xml,project))
,dep));
});})(properties_lookup,map__26933,map__26933__$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))));
});
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__26965_SHARP_){
return cljs.core.js__GT_clj.call(null,p1__26965_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__26966_SHARP_){
return cljs.core.map.call(null,thisdotrob.huckleberry.core.mvndep__GT_dep,p1__26966_SHARP_);
});})(repo_url,pom_url))
),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26967_SHARP_){
return cljs.core.into.call(null,cljs.core.PersistentHashSet.EMPTY,p1__26967_SHARP_);
});})(repo_url,pom_url))
),cljs.core.map.call(null,((function (repo_url,pom_url){
return (function (p1__26968_SHARP_){
return cljs.core.conj.call(null,cljs.core.PersistentVector.EMPTY,repo_url,p1__26968_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___27116 = arguments.length;
var i__7652__auto___27117 = (0);
while(true){
if((i__7652__auto___27117 < len__7651__auto___27116)){
args__7658__auto__.push((arguments[i__7652__auto___27117]));
var G__27118 = (i__7652__auto___27117 + (1));
i__7652__auto___27117 = G__27118;
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__26991){
var map__26992 = p__26991;
var map__26992__$1 = ((((!((map__26992 == null)))?((((map__26992.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__26992.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__26992):map__26992);
var repositories = cljs.core.get.call(null,map__26992__$1,new cljs.core.Keyword(null,"repositories","repositories",1367837581));
var local_repo = cljs.core.get.call(null,map__26992__$1,new cljs.core.Keyword(null,"local-repo","local-repo",764410280));
var c__9825__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (){
var f__9826__auto__ = (function (){var switch__9810__auto__ = ((function (c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (state_27068){
var state_val_27069 = (state_27068[(1)]);
if((state_val_27069 === (7))){
var inst_27015 = (state_27068[(7)]);
var inst_27004 = (state_27068[(8)]);
var inst_27028 = (state_27068[(9)]);
var inst_27014 = (state_27068[(10)]);
var inst_27019 = (state_27068[(11)]);
var inst_27002 = (state_27068[(12)]);
var inst_27005 = (state_27068[(13)]);
var inst_27003 = (state_27068[(14)]);
var inst_27017 = (state_27068[(15)]);
var inst_27000 = (state_27068[(16)]);
var inst_27001 = (state_27068[(17)]);
var inst_27020 = (state_27068[(18)]);
var inst_27022 = (state_27068[(2)]);
var inst_27023 = cljs.core.nth.call(null,inst_27022,(0),null);
var inst_27024 = cljs.core.nth.call(null,inst_27023,(0),null);
var inst_27025 = cljs.core.nth.call(null,inst_27023,(1),null);
var inst_27026 = cljs.core.nth.call(null,inst_27022,(1),null);
var inst_27027 = (function (){var tout = inst_27019;
var no_excl = inst_27014;
var deps = inst_27025;
var repo_reqs = inst_27020;
var urls = inst_27017;
var to_do = inst_27001;
var done = inst_27002;
var exclusions = inst_27004;
var url_set = inst_27015;
var ch = inst_27026;
var locations = inst_27003;
var vec__27008 = inst_27022;
var status = inst_27005;
var next = inst_27000;
var url = inst_27024;
var vec__27011 = inst_27023;
return ((function (tout,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (p1__26979_SHARP_){
return !((ch === p1__26979_SHARP_));
});
;})(tout,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
})();
var inst_27028__$1 = cljs.core.filter.call(null,inst_27027,inst_27020);
var inst_27029 = (function (){var tout = inst_27019;
var to_kill = inst_27028__$1;
var no_excl = inst_27014;
var deps = inst_27025;
var repo_reqs = inst_27020;
var urls = inst_27017;
var to_do = inst_27001;
var done = inst_27002;
var exclusions = inst_27004;
var url_set = inst_27015;
var ch = inst_27026;
var locations = inst_27003;
var vec__27008 = inst_27022;
var status = inst_27005;
var next = inst_27000;
var url = inst_27024;
var vec__27011 = inst_27023;
return ((function (tout,to_kill,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,inst_27027,inst_27028__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (x){
return cljs.core.empty_QMARK_.call(null,cljs.core.filter.call(null,((function (tout,to_kill,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,inst_27027,inst_27028__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (p1__26980_SHARP_){
return (cljs.core._EQ_.call(null,new cljs.core.Keyword(null,"group","group",582596132).cljs$core$IFn$_invoke$arity$1(p1__26980_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__26980_SHARP_),new cljs.core.Keyword(null,"artifact","artifact",610074681).cljs$core$IFn$_invoke$arity$1(x)));
});})(tout,to_kill,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,inst_27027,inst_27028__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
,exclusions));
});
;})(tout,to_kill,no_excl,deps,repo_reqs,urls,to_do,done,exclusions,url_set,ch,locations,vec__27008,status,next,url,vec__27011,inst_27015,inst_27004,inst_27028,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27017,inst_27000,inst_27001,inst_27020,inst_27022,inst_27023,inst_27024,inst_27025,inst_27026,inst_27027,inst_27028__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
})();
var inst_27030 = cljs.core.filter.call(null,inst_27029,inst_27025);
var inst_27031 = clojure.set.union.call(null,inst_27001,inst_27030);
var inst_27032 = cljs.core.PersistentHashSet.EMPTY;
var inst_27033 = cljs.core.assoc.call(null,inst_27014,new cljs.core.Keyword(null,"url","url",276297046),inst_27024);
var inst_27034 = cljs.core.conj.call(null,inst_27032,inst_27033);
var inst_27035 = clojure.set.union.call(null,inst_27003,inst_27034);
var inst_27036 = [inst_27014];
var inst_27039 = [inst_27030];
var inst_27040 = cljs.core.PersistentHashMap.fromArrays(inst_27036,inst_27039);
var inst_27041 = cljs.core.into.call(null,inst_27002,inst_27040);
var inst_27042 = (inst_27019 === inst_27026);
var inst_27043 = cljs.core.not.call(null,inst_27042);
var state_27068__$1 = (function (){var statearr_27075 = state_27068;
(statearr_27075[(19)] = inst_27035);
(statearr_27075[(9)] = inst_27028__$1);
(statearr_27075[(20)] = inst_27031);
(statearr_27075[(21)] = inst_27041);
return statearr_27075;
})();
if(inst_27043){
var statearr_27076_27158 = state_27068__$1;
(statearr_27076_27158[(1)] = (8));
} else {
var statearr_27077_27162 = state_27068__$1;
(statearr_27077_27162[(1)] = (9));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (1))){
var inst_26995 = cljs.core.PersistentHashSet.EMPTY;
var inst_26996 = cljs.core.PersistentHashMap.EMPTY;
var inst_26997 = cljs.core.PersistentHashSet.EMPTY;
var inst_26999 = new cljs.core.Keyword(null,"exclusions","exclusions",1098729003).cljs$core$IFn$_invoke$arity$1(dep);
var inst_27000 = dep;
var inst_27001 = inst_26995;
var inst_27002 = inst_26996;
var inst_27003 = inst_26997;
var inst_27004 = inst_26999;
var inst_27005 = true;
var state_27068__$1 = (function (){var statearr_27080 = state_27068;
(statearr_27080[(8)] = inst_27004);
(statearr_27080[(12)] = inst_27002);
(statearr_27080[(13)] = inst_27005);
(statearr_27080[(14)] = inst_27003);
(statearr_27080[(16)] = inst_27000);
(statearr_27080[(17)] = inst_27001);
return statearr_27080;
})();
var statearr_27083_27171 = state_27068__$1;
(statearr_27083_27171[(2)] = null);
(statearr_27083_27171[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (4))){
var inst_27015 = (state_27068[(7)]);
var inst_27004 = (state_27068[(8)]);
var inst_27014 = (state_27068[(10)]);
var inst_27019 = (state_27068[(11)]);
var inst_27002 = (state_27068[(12)]);
var inst_27005 = (state_27068[(13)]);
var inst_27003 = (state_27068[(14)]);
var inst_27000 = (state_27068[(16)]);
var inst_27001 = (state_27068[(17)]);
var inst_27020 = (state_27068[(18)]);
var inst_27014__$1 = cljs.core.dissoc.call(null,inst_27000,new cljs.core.Keyword(null,"exclusions","exclusions",1098729003));
var inst_27015__$1 = thisdotrob.huckleberry.core.create_urls_for_dependency.call(null,repositories,inst_27014__$1);
var inst_27016 = (function (){var next = inst_27000;
var to_do = inst_27001;
var done = inst_27002;
var locations = inst_27003;
var exclusions = inst_27004;
var status = inst_27005;
var no_excl = inst_27014__$1;
var url_set = inst_27015__$1;
return ((function (next,to_do,done,locations,exclusions,status,no_excl,url_set,inst_27015,inst_27004,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27000,inst_27001,inst_27020,inst_27014__$1,inst_27015__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function (p1__26978_SHARP_){
return cljs.core.first.call(null,cljs.core.second.call(null,p1__26978_SHARP_));
});
;})(next,to_do,done,locations,exclusions,status,no_excl,url_set,inst_27015,inst_27004,inst_27014,inst_27019,inst_27002,inst_27005,inst_27003,inst_27000,inst_27001,inst_27020,inst_27014__$1,inst_27015__$1,state_val_27069,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
})();
var inst_27017 = cljs.core.map.call(null,inst_27016,inst_27015__$1);
var inst_27018 = thisdotrob.huckleberry.core.extract_dependencies.call(null,inst_27015__$1);
var inst_27019__$1 = cljs.core.async.timeout.call(null,(5000));
var inst_27020__$1 = cljs.core.conj.call(null,inst_27018,inst_27019__$1);
var state_27068__$1 = (function (){var statearr_27087 = state_27068;
(statearr_27087[(7)] = inst_27015__$1);
(statearr_27087[(10)] = inst_27014__$1);
(statearr_27087[(11)] = inst_27019__$1);
(statearr_27087[(15)] = inst_27017);
(statearr_27087[(18)] = inst_27020__$1);
return statearr_27087;
})();
return cljs.core.async.ioc_alts_BANG_.call(null,state_27068__$1,(7),inst_27020__$1);
} else {
if((state_val_27069 === (6))){
var inst_27062 = (state_27068[(2)]);
var state_27068__$1 = state_27068;
var statearr_27089_27176 = state_27068__$1;
(statearr_27089_27176[(2)] = inst_27062);
(statearr_27089_27176[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (3))){
var inst_27064 = (state_27068[(2)]);
var state_27068__$1 = state_27068;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_27068__$1,inst_27064);
} else {
if((state_val_27069 === (2))){
var inst_27000 = (state_27068[(16)]);
var state_27068__$1 = state_27068;
if(cljs.core.truth_(inst_27000)){
var statearr_27091_27177 = state_27068__$1;
(statearr_27091_27177[(1)] = (4));
} else {
var statearr_27092_27178 = state_27068__$1;
(statearr_27092_27178[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (9))){
var inst_27000 = (state_27068[(16)]);
var inst_27051 = cljs.core.PersistentVector.EMPTY;
var inst_27052 = cljs.core.PersistentVector.EMPTY;
var tmp27090 = inst_27000;
var inst_27000__$1 = null;
var inst_27001 = null;
var inst_27002 = tmp27090;
var inst_27003 = inst_27051;
var inst_27004 = inst_27052;
var inst_27005 = false;
var state_27068__$1 = (function (){var statearr_27093 = state_27068;
(statearr_27093[(8)] = inst_27004);
(statearr_27093[(12)] = inst_27002);
(statearr_27093[(13)] = inst_27005);
(statearr_27093[(14)] = inst_27003);
(statearr_27093[(16)] = inst_27000__$1);
(statearr_27093[(17)] = inst_27001);
return statearr_27093;
})();
var statearr_27096_27179 = state_27068__$1;
(statearr_27096_27179[(2)] = null);
(statearr_27096_27179[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (5))){
var inst_27002 = (state_27068[(12)]);
var inst_27005 = (state_27068[(13)]);
var inst_27003 = (state_27068[(14)]);
var inst_27058 = cljs.core.PersistentVector.EMPTY_NODE;
var inst_27059 = [inst_27005,inst_27002,inst_27003];
var inst_27060 = (new cljs.core.PersistentVector(null,3,(5),inst_27058,inst_27059,null));
var state_27068__$1 = state_27068;
var statearr_27098_27180 = state_27068__$1;
(statearr_27098_27180[(2)] = inst_27060);
(statearr_27098_27180[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (10))){
var inst_27055 = (state_27068[(2)]);
var state_27068__$1 = state_27068;
var statearr_27099_27181 = state_27068__$1;
(statearr_27099_27181[(2)] = inst_27055);
(statearr_27099_27181[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27069 === (8))){
var inst_27035 = (state_27068[(19)]);
var inst_27004 = (state_27068[(8)]);
var inst_27028 = (state_27068[(9)]);
var inst_27031 = (state_27068[(20)]);
var inst_27041 = (state_27068[(21)]);
var inst_27045 = cljs.core.map.call(null,cljs.core.async.close_BANG_,inst_27028);
var inst_27046 = cljs.core.first.call(null,inst_27031);
var inst_27047 = cljs.core.rest.call(null,inst_27031);
var tmp27097 = inst_27004;
var inst_27000 = inst_27046;
var inst_27001 = inst_27047;
var inst_27002 = inst_27041;
var inst_27003 = inst_27035;
var inst_27004__$1 = tmp27097;
var inst_27005 = true;
var state_27068__$1 = (function (){var statearr_27100 = state_27068;
(statearr_27100[(8)] = inst_27004__$1);
(statearr_27100[(12)] = inst_27002);
(statearr_27100[(13)] = inst_27005);
(statearr_27100[(14)] = inst_27003);
(statearr_27100[(16)] = inst_27000);
(statearr_27100[(17)] = inst_27001);
(statearr_27100[(22)] = inst_27045);
return statearr_27100;
})();
var statearr_27101_27186 = state_27068__$1;
(statearr_27101_27186[(2)] = null);
(statearr_27101_27186[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
});})(c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
;
return ((function (switch__9810__auto__,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo){
return (function() {
var thisdotrob$huckleberry$core$state_machine__9811__auto__ = null;
var thisdotrob$huckleberry$core$state_machine__9811__auto____0 = (function (){
var statearr_27111 = [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];
(statearr_27111[(0)] = thisdotrob$huckleberry$core$state_machine__9811__auto__);
(statearr_27111[(1)] = (1));
return statearr_27111;
});
var thisdotrob$huckleberry$core$state_machine__9811__auto____1 = (function (state_27068){
while(true){
var ret_value__9812__auto__ = (function (){try{while(true){
var result__9813__auto__ = switch__9810__auto__.call(null,state_27068);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9813__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9813__auto__;
}
break;
}
}catch (e27112){if((e27112 instanceof Object)){
var ex__9814__auto__ = e27112;
var statearr_27113_27197 = state_27068;
(statearr_27113_27197[(5)] = ex__9814__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_27068);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e27112;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9812__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__27201 = state_27068;
state_27068 = G__27201;
continue;
} else {
return ret_value__9812__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$state_machine__9811__auto__ = function(state_27068){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$state_machine__9811__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$state_machine__9811__auto____1.call(this,state_27068);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$state_machine__9811__auto____0;
thisdotrob$huckleberry$core$state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$state_machine__9811__auto____1;
return thisdotrob$huckleberry$core$state_machine__9811__auto__;
})()
;})(switch__9810__auto__,c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
})();
var state__9827__auto__ = (function (){var statearr_27115 = f__9826__auto__.call(null);
(statearr_27115[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9825__auto__);
return statearr_27115;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9827__auto__);
});})(c__9825__auto__,map__26992,map__26992__$1,repositories,local_repo))
);
return c__9825__auto__;
});
thisdotrob.huckleberry.core.resolve.cljs$lang$maxFixedArity = (1);
thisdotrob.huckleberry.core.resolve.cljs$lang$applyTo = (function (seq26983){
var G__26984 = cljs.core.first.call(null,seq26983);
var seq26983__$1 = cljs.core.next.call(null,seq26983);
return thisdotrob.huckleberry.core.resolve.cljs$core$IFn$_invoke$arity$variadic(G__26984,seq26983__$1);
});
thisdotrob.huckleberry.core.resolve_all = (function thisdotrob$huckleberry$core$resolve_all(var_args){
var args__7658__auto__ = [];
var len__7651__auto___27278 = arguments.length;
var i__7652__auto___27279 = (0);
while(true){
if((i__7652__auto___27279 < len__7651__auto___27278)){
args__7658__auto__.push((arguments[i__7652__auto___27279]));
var G__27280 = (i__7652__auto___27279 + (1));
i__7652__auto___27279 = G__27280;
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__9825__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9825__auto__){
return (function (){
var f__9826__auto__ = (function (){var switch__9810__auto__ = ((function (c__9825__auto__){
return (function (state_27255){
var state_val_27256 = (state_27255[(1)]);
if((state_val_27256 === (7))){
var inst_27220 = (state_27255[(7)]);
var inst_27235 = (state_27255[(8)]);
var inst_27235__$1 = cljs.core.first.call(null,inst_27220);
var inst_27236 = cljs.core.apply.call(null,thisdotrob.huckleberry.core.resolve,inst_27235__$1,opts);
var state_27255__$1 = (function (){var statearr_27257 = state_27255;
(statearr_27257[(8)] = inst_27235__$1);
return statearr_27257;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_27255__$1,(10),inst_27236);
} else {
if((state_val_27256 === (1))){
var inst_27218 = cljs.core.PersistentVector.EMPTY;
var inst_27219 = cljs.core.PersistentHashSet.EMPTY;
var inst_27220 = all_deps;
var inst_27221 = inst_27218;
var inst_27222 = inst_27219;
var inst_27223 = true;
var state_27255__$1 = (function (){var statearr_27258 = state_27255;
(statearr_27258[(9)] = inst_27221);
(statearr_27258[(7)] = inst_27220);
(statearr_27258[(10)] = inst_27222);
(statearr_27258[(11)] = inst_27223);
return statearr_27258;
})();
var statearr_27259_27289 = state_27255__$1;
(statearr_27259_27289[(2)] = null);
(statearr_27259_27289[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (4))){
var inst_27220 = (state_27255[(7)]);
var inst_27226 = cljs.core.empty_QMARK_.call(null,inst_27220);
var inst_27227 = !(inst_27226);
var state_27255__$1 = state_27255;
var statearr_27260_27294 = state_27255__$1;
(statearr_27260_27294[(2)] = inst_27227);
(statearr_27260_27294[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (6))){
var inst_27230 = (state_27255[(2)]);
var state_27255__$1 = state_27255;
if(cljs.core.truth_(inst_27230)){
var statearr_27261_27295 = state_27255__$1;
(statearr_27261_27295[(1)] = (7));
} else {
var statearr_27262_27296 = state_27255__$1;
(statearr_27262_27296[(1)] = (8));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (3))){
var inst_27253 = (state_27255[(2)]);
var state_27255__$1 = state_27255;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_27255__$1,inst_27253);
} else {
if((state_val_27256 === (2))){
var inst_27223 = (state_27255[(11)]);
var state_27255__$1 = state_27255;
if(cljs.core.truth_(inst_27223)){
var statearr_27263_27297 = state_27255__$1;
(statearr_27263_27297[(1)] = (4));
} else {
var statearr_27264_27298 = state_27255__$1;
(statearr_27264_27298[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (9))){
var inst_27251 = (state_27255[(2)]);
var state_27255__$1 = state_27255;
var statearr_27265_27299 = state_27255__$1;
(statearr_27265_27299[(2)] = inst_27251);
(statearr_27265_27299[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (5))){
var inst_27223 = (state_27255[(11)]);
var state_27255__$1 = state_27255;
var statearr_27266_27300 = state_27255__$1;
(statearr_27266_27300[(2)] = inst_27223);
(statearr_27266_27300[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (10))){
var inst_27221 = (state_27255[(9)]);
var inst_27220 = (state_27255[(7)]);
var inst_27222 = (state_27255[(10)]);
var inst_27235 = (state_27255[(8)]);
var inst_27238 = (state_27255[(2)]);
var inst_27239 = cljs.core.nth.call(null,inst_27238,(0),null);
var inst_27240 = cljs.core.nth.call(null,inst_27238,(1),null);
var inst_27241 = cljs.core.nth.call(null,inst_27238,(2),null);
var inst_27242 = cljs.core.conj.call(null,inst_27221,inst_27235,inst_27240);
var inst_27243 = cljs.core.rest.call(null,inst_27220);
var inst_27244 = clojure.set.union.call(null,inst_27222,inst_27241);
var inst_27220__$1 = inst_27243;
var inst_27221__$1 = inst_27242;
var inst_27222__$1 = inst_27244;
var inst_27223 = inst_27239;
var state_27255__$1 = (function (){var statearr_27267 = state_27255;
(statearr_27267[(9)] = inst_27221__$1);
(statearr_27267[(7)] = inst_27220__$1);
(statearr_27267[(10)] = inst_27222__$1);
(statearr_27267[(11)] = inst_27223);
return statearr_27267;
})();
var statearr_27268_27301 = state_27255__$1;
(statearr_27268_27301[(2)] = null);
(statearr_27268_27301[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27256 === (8))){
var inst_27221 = (state_27255[(9)]);
var inst_27222 = (state_27255[(10)]);
var inst_27223 = (state_27255[(11)]);
var inst_27247 = cljs.core.PersistentVector.EMPTY_NODE;
var inst_27248 = [inst_27223,inst_27221,inst_27222];
var inst_27249 = (new cljs.core.PersistentVector(null,3,(5),inst_27247,inst_27248,null));
var state_27255__$1 = state_27255;
var statearr_27269_27302 = state_27255__$1;
(statearr_27269_27302[(2)] = inst_27249);
(statearr_27269_27302[(1)] = (9));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
});})(c__9825__auto__))
;
return ((function (switch__9810__auto__,c__9825__auto__){
return (function() {
var thisdotrob$huckleberry$core$state_machine__9811__auto__ = null;
var thisdotrob$huckleberry$core$state_machine__9811__auto____0 = (function (){
var statearr_27273 = [null,null,null,null,null,null,null,null,null,null,null,null];
(statearr_27273[(0)] = thisdotrob$huckleberry$core$state_machine__9811__auto__);
(statearr_27273[(1)] = (1));
return statearr_27273;
});
var thisdotrob$huckleberry$core$state_machine__9811__auto____1 = (function (state_27255){
while(true){
var ret_value__9812__auto__ = (function (){try{while(true){
var result__9813__auto__ = switch__9810__auto__.call(null,state_27255);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9813__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9813__auto__;
}
break;
}
}catch (e27274){if((e27274 instanceof Object)){
var ex__9814__auto__ = e27274;
var statearr_27276_27303 = state_27255;
(statearr_27276_27303[(5)] = ex__9814__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_27255);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e27274;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9812__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__27304 = state_27255;
state_27255 = G__27304;
continue;
} else {
return ret_value__9812__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$state_machine__9811__auto__ = function(state_27255){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$state_machine__9811__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$state_machine__9811__auto____1.call(this,state_27255);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$state_machine__9811__auto____0;
thisdotrob$huckleberry$core$state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$state_machine__9811__auto____1;
return thisdotrob$huckleberry$core$state_machine__9811__auto__;
})()
;})(switch__9810__auto__,c__9825__auto__))
})();
var state__9827__auto__ = (function (){var statearr_27277 = f__9826__auto__.call(null);
(statearr_27277[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9825__auto__);
return statearr_27277;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9827__auto__);
});})(c__9825__auto__))
);
return c__9825__auto__;
});
thisdotrob.huckleberry.core.resolve_all.cljs$lang$maxFixedArity = (1);
thisdotrob.huckleberry.core.resolve_all.cljs$lang$applyTo = (function (seq27213){
var G__27214 = cljs.core.first.call(null,seq27213);
var seq27213__$1 = cljs.core.next.call(null,seq27213);
return thisdotrob.huckleberry.core.resolve_all.cljs$core$IFn$_invoke$arity$variadic(G__27214,seq27213__$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__27305){
var vec__27311 = p__27305;
var seq__27312 = cljs.core.seq.call(null,vec__27311);
var first__27313 = cljs.core.first.call(null,seq__27312);
var seq__27312__$1 = cljs.core.next.call(null,seq__27312);
var group_artifact = first__27313;
var map__27314 = seq__27312__$1;
var map__27314__$1 = ((((!((map__27314 == null)))?((((map__27314.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__27314.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__27314):map__27314);
var opts = map__27314__$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__27316){
var vec__27322 = p__27316;
var seq__27323 = cljs.core.seq.call(null,vec__27322);
var first__27324 = cljs.core.first.call(null,seq__27323);
var seq__27323__$1 = cljs.core.next.call(null,seq__27323);
var group_artifact = first__27324;
var first__27324__$1 = cljs.core.first.call(null,seq__27323__$1);
var seq__27323__$2 = cljs.core.next.call(null,seq__27323__$1);
var version = first__27324__$1;
var map__27325 = seq__27323__$2;
var map__27325__$1 = ((((!((map__27325 == null)))?((((map__27325.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__27325.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__27325):map__27325);
var opts = map__27325__$1;
var scope = cljs.core.get.call(null,map__27325__$1,new cljs.core.Keyword(null,"scope","scope",-439358418),"compile");
var optional = cljs.core.get.call(null,map__27325__$1,new cljs.core.Keyword(null,"optional","optional",2053951509),false);
var exclusions = cljs.core.get.call(null,map__27325__$1,new cljs.core.Keyword(null,"exclusions","exclusions",1098729003));
var dep_spec = vec__27322;
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__27328){
var vec__27332 = p__27328;
var download_from = cljs.core.nth.call(null,vec__27332,(0),null);
var save_to = cljs.core.nth.call(null,vec__27332,(1),null);
var c = cljs.core.async.chan.call(null,(1024),cljs.core.comp.call(null,cljs.core.map.call(null,((function (vec__27332,download_from,save_to){
return (function (p1__27327_SHARP_){
return thisdotrob.huckleberry.os.write_file.call(null,save_to,p1__27327_SHARP_);
});})(vec__27332,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__9825__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9825__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom){
return (function (){
var f__9826__auto__ = (function (){var switch__9810__auto__ = ((function (c__9825__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom){
return (function (state_27363){
var state_val_27364 = (state_27363[(1)]);
if((state_val_27364 === (1))){
var inst_27355 = cljs.core.second.call(null,urls_to_proc);
var inst_27356 = cljs.core.first.call(null,inst_27355);
var inst_27357 = cljs.core.println.call(null,"Downloading",inst_27356);
var state_27363__$1 = (function (){var statearr_27365 = state_27363;
(statearr_27365[(7)] = inst_27357);
return statearr_27365;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_27363__$1,(2),c_jar);
} else {
if((state_val_27364 === (2))){
var inst_27359 = (state_27363[(2)]);
var state_27363__$1 = (function (){var statearr_27366 = state_27363;
(statearr_27366[(8)] = inst_27359);
return statearr_27366;
})();
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_27363__$1,(3),c_pom);
} else {
if((state_val_27364 === (3))){
var inst_27361 = (state_27363[(2)]);
var state_27363__$1 = (function (){var statearr_27367 = state_27363;
(statearr_27367[(9)] = inst_27361);
return statearr_27367;
})();
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_27363__$1,local_deps);
} else {
return null;
}
}
}
});})(c__9825__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
;
return ((function (switch__9810__auto__,c__9825__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__9811__auto__ = null;
var thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____0 = (function (){
var statearr_27371 = [null,null,null,null,null,null,null,null,null,null];
(statearr_27371[(0)] = thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto__);
(statearr_27371[(1)] = (1));
return statearr_27371;
});
var thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____1 = (function (state_27363){
while(true){
var ret_value__9812__auto__ = (function (){try{while(true){
var result__9813__auto__ = switch__9810__auto__.call(null,state_27363);
if(cljs.core.keyword_identical_QMARK_.call(null,result__9813__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__9813__auto__;
}
break;
}
}catch (e27372){if((e27372 instanceof Object)){
var ex__9814__auto__ = e27372;
var statearr_27373_27375 = state_27363;
(statearr_27373_27375[(5)] = ex__9814__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_27363);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e27372;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__9812__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__27376 = state_27363;
state_27363 = G__27376;
continue;
} else {
return ret_value__9812__auto__;
}
break;
}
});
thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto__ = function(state_27363){
switch(arguments.length){
case 0:
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____0.call(this);
case 1:
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____1.call(this,state_27363);
}
throw(new Error('Invalid arity: ' + arguments.length));
};
thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$0 = thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____0;
thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto__.cljs$core$IFn$_invoke$arity$1 = thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto____1;
return thisdotrob$huckleberry$core$retrieve_$_state_machine__9811__auto__;
})()
;})(switch__9810__auto__,c__9825__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
})();
var state__9827__auto__ = (function (){var statearr_27374 = f__9826__auto__.call(null);
(statearr_27374[cljs.core.async.impl.ioc_helpers.USER_START_IDX] = c__9825__auto__);
return statearr_27374;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__9827__auto__);
});})(c__9825__auto__,repo_url,urls,save_to_locations,urls_to_proc,local_deps,c_jar,c_pom))
);
return c__9825__auto__;
});
thisdotrob.huckleberry.core.retrieve_all = (function thisdotrob$huckleberry$core$retrieve_all(local_deps,to_do,in_repo){
var c__9825__auto__ = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__9825__auto__){
return (function (){
var f__9826__auto__ = (function (){var switch__9810__auto__ = ((function (c__9825__auto__){
return (function (state_27432){
var state_val_27433 = (state_27432[(1)]);
if((state_val_27433 === (1))){
var inst_27413 = local_deps;
var inst_27414 = to_do;
var inst_27415 = in_repo;
var state_27432__$1 = (function (){var statearr_27434 = state_27432;
(statearr_27434[(7)] = inst_27415);
(statearr_27434[(8)] = inst_27414);
(statearr_27434[(9)] = inst_27413);
return statearr_27434;
})();
var statearr_27435_27449 = state_27432__$1;
(statearr_27435_27449[(2)] = null);
(statearr_27435_27449[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27433 === (2))){
var inst_27414 = (state_27432[(8)]);
var inst_27417 = cljs.core.empty_QMARK_.call(null,inst_27414);
var state_27432__$1 = state_27432;
if(inst_27417){
var statearr_27436_27450 = state_27432__$1;
(statearr_27436_27450[(1)] = (4));
} else {
var statearr_27437_27451 = state_27432__$1;
(statearr_27437_27451[(1)] = (5));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27433 === (3))){
var inst_27430 = (state_27432[(2)]);
var state_27432__$1 = state_27432;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_27432__$1,inst_27430);
} else {
if((state_val_27433 === (4))){
var inst_27413 = (state_27432[(9)]);
var state_27432__$1 = state_27432;
var statearr_27438_27452 = state_27432__$1;
(statearr_27438_27452[(2)] = inst_27413);
(statearr_27438_27452[(1)] = (6));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27433 === (5))){
var inst_27414 = (state_27432[(8)]);
var inst_27420 = cljs.core.first.call(null,inst_27414);
var inst_27421 = thisdotrob.huckleberry.core.retrieve.call(null,inst_27420,in_repo);
var state_27432__$1 = state_27432;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_27432__$1,(7),inst_27421);
} else {
if((state_val_27433 === (6))){
var inst_27428 = (state_27432[(2)]);
var state_27432__$1 = state_27432;
var statearr_27439_27453 = state_27432__$1;
(statearr_27439_27453[(2)] = inst_27428);
(statearr_27439_27453[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_27433 === (7))){
var inst_27414 = (state_