From a2ec2db8f261c5fd3f2d977a969babeda2a91fb0 Mon Sep 17 00:00:00 2001 From: genotrance Date: Thu, 3 Oct 2019 18:38:51 -0500 Subject: [PATCH] Enable Windows CI (#714) Also fix #676 --- .travis.yml | 33 +++++++++++++----- src/nimble.nim | 6 +++- .../src/nimbleVersionDefine | Bin 86500 -> 93432 bytes tests/recursive/recursive.nimble | 7 ++-- tests/tester.nim | 21 ++++++----- 5 files changed, 45 insertions(+), 22 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3f824f3..a8b511b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,5 @@ os: + - windows - linux - osx @@ -7,23 +8,37 @@ language: c env: - BRANCH=0.19.6 - BRANCH=0.20.2 + - BRANCH=1.0.0 # This is the latest working Nim version against which Nimble is being tested - - BRANCH=#2565d3d102efd21ba02ed1f3b96d892fe2637d2b + - BRANCH=#16c39f9b2edc963655889cfd33e165bfae91c96d cache: directories: - - "$HOME/.choosenim/toolchains/nim-0.19.6" - - "$HOME/.choosenim/toolchains/nim-0.20.2" + - "$HOME/.nimble/bin" + - "$HOME/.choosenim" install: - - export CHOOSENIM_CHOOSE_VERSION=$BRANCH - - | - curl https://nim-lang.org/choosenim/init.sh -sSf > init.sh - sh init.sh -y - -before_script: - export CHOOSENIM_NO_ANALYTICS=1 - export PATH=$HOME/.nimble/bin:$PATH + - | + if ! type -P choosenim &> /dev/null; then + if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then + # Latest choosenim binary doesn't have + # https://github.com/dom96/choosenim/pull/117 + # https://github.com/dom96/choosenim/pull/135 + # + # Using custom build with these PRs for Windows + curl -L -s "https://bintray.com/genotrance/binaries/download_file?file_path=choosenim.exe" -o choosenim.exe + curl -L -s "https://bintray.com/genotrance/binaries/download_file?file_path=libeay32.dll" -o libeay32.dll + curl -L -s "https://bintray.com/genotrance/binaries/download_file?file_path=ssleay32.dll" -o ssleay32.dll + ./choosenim.exe $BRANCH -y + cp ./choosenim.exe $HOME/.nimble/bin/. + else + export CHOOSENIM_CHOOSE_VERSION=$BRANCH + curl https://nim-lang.org/choosenim/init.sh -sSf > init.sh + sh init.sh -y + fi + fi script: - cd tests diff --git a/src/nimble.nim b/src/nimble.nim index bb74ac0..e214538 100644 --- a/src/nimble.nim +++ b/src/nimble.nim @@ -1063,7 +1063,11 @@ proc test(options: Options) = existsAfter = existsFile(binFileName) canRemove = not existsBefore and existsAfter if canRemove: - removeFile(binFileName) + try: + removeFile(binFileName) + except OSError as exc: + display("Warning:", "Failed to delete " & binFileName & ": " & + exc.msg, Warning, MediumPriority) if failures == 0: display("Success:", "All tests passed", Success, HighPriority) diff --git a/tests/nimbleVersionDefine/src/nimbleVersionDefine b/tests/nimbleVersionDefine/src/nimbleVersionDefine index 3b089c01cfe8bed84e2cacb812590f1b97d73f10..7aa3ee894aae8f7caa3ef0731bd0ee9452010a3f 100755 GIT binary patch literal 93432 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

QzGccFt5JNK)G;L?5C|Peqf%X%M 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

t`PuWKkA=4TL(qpjXbJj| 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 literal 86500 zcmeEveSBO+)qm3VLRtt3FTo(9;Z0i*3@?R3DcxWfx7bKQ0?3Q)qktf96(|%jvLOxR zvRn+W78DH1OBAp{rEJmCO{qyJZ(C4^2)f`4vruS2XagwyeZS|-+_Wko$!~!-@JKq z8@`Y{DS7PCEG_+4UV1y~9q~*CfqC!l);YAmmb>25Dz;JxM7T?1Z6#nr({;vc# zD(21m`uXQw7zuDVzVv&_U!Cm`?@QztM=tmlo_EPv=bbk1tn&;?-BcgkF&l8ApH9@{z&h{kC&I7iM~#;_mt0n|NU12|CPXh zCGcMf{8s}1mB4=`@Lvi1R|5a31e#L*-%>5>(rA|olDSk+`H7eLvt}YMe)CYuUpScZ zoBC6J<3Oq}nJ0lW`jQ3K_L)k=vZ;)B5Tac)eVL_zIgO=+&rCC~|Cv?ZpjKtkT0pq0 zN%={l>~>{bk4RZ2*`1o69IU#AnTg`tEDpTI1#S5aL5`LV>I$yYQkmv%lnka?O?k@i zHSatjjgDrcOe3nAhEkcW*MO@mIXv4U=}X>+#%!H6FC(H(wKiwT!;-4SjJkm_o64}D zqgaXi{c?T}P;?ZvQLqi}ysDl_$fHwnHCFfAedGIYBk%i39fFGMrQdp|eJPu@rR zT&}8wn!Al5VL#akYMr=t7eDxL)237~;|;VC6d;Oe7CZaOYr`C1V7_jnp0Y(k#OAfLs)jF-LYOxF{ zW$B8GpWsd4J@XDOnX;;tsoh$8%FjSAs#dOoI0jL-OzIj3S(<4aI>SF^w^XJgm01Y& zgvc9l!Ci8wYUQHcS~lge2(^Sr&1CN;@zvE}wnO-fG1Z$~&p{t5tGY3_M|st<{`UU% z3$=l=D*TFAdZ7AX(m*tIWG)R<%3t6m|G_%Q zbRr~s>Z2XuKRdn&Yb;K932;Hpk-Uhp7|T%H3EUXS&j@@Y^-6WZbsc*40zqgJe5udB z=K^TtD8N=saA{8{}(f5b`h^9g1 z-Mr8s>y$2_<22$J0<+a7+8Xa#1w5U2`;tQhz_s6A3xDH18~cs@C@=io-S;JP0+VU( zH-&!zl@BMv=`tQyKRIN+Nc=K?C}f>~t?R&_IGbaHY)ymk$JsEJ{+uQz(c6`Pk?!P~ zLIfE&1KI%98<~t!27aLt)04)k&U8Wt-iy#QAjvadXd44?HfCz$Aj`K4%M}6oU0jN8 zn9IpTs4#JTas6o_>Y(PQyli$p+(=mk-Z9FGn+y3GM;d(u#Z6>KEYPq%e$2sfZj|)# zFxCX#&>wI?W9FM;eXMnTl>A;Oq(lW^O!4RJ||`d_d}7sL9{{5v%EdXA%;f$`w5 z_YA>f^_qoZE-Jq&c+o3>HVP=@9+OWqI_e^ZiPyHd~oJ+&NkTQ&}A?&IYn^_GnGHBn8Bm(uP+N7qMmBFJ+TU((ibG0}=u{G}nVP(-CA+63TSD@BOOj*q^;J47 z6M98m4}`i(&~AP`6jx03M=k4ef?izGUL+CJ{0}dYND)ztw*Gl?qlk3F?*JT4+5E!s zY@8hEO|C>|shSH1O~Zt;vi9W4bn{9li?bM62VPcN=P$Oc&|=X163|!!{E&56699Yu z5~*(n)}_SSZK@E*wI`RRo0qz9a683#hQ+uj#W+v3uY z2P~TW#!k}xc2p(?2u>FUXd0@Qu=+b;b#e(twG*RSUv&itl@+`3zi58tpG8A7xLg`E zaqXAq{uaEx{2sMDv#>MO+B*$#F_4o$b7ykDT*|*GfgzpcuS#vaq#`xtImFBz#MeT6 z8L1Ss85B?dQibJ5lrQkUU>Uh0;=BVwHliWL$3z#r-7HXB2qY3|CzUIsvi4MKPaQ;& zX8BdNytnOga0f<`X`Ku)9lwcH=@kNC=hU7tF=d+2h}ogx6MZp`R$Mf3kOoI zD_G<-no0+a{+dO5U5GZ2h7#xnCt4iWyV}0C6mdu|RH13ni%;!k@!P`N{e+Ljceg5k%F3Q)g8*Wb zw}H@6ls7j0QF)!07w;{M)5bh#EtIEPhsqLFH_FVMh2`}uSzd26 zXP|W~8XTLSC!Z2|O!`QEE_zGkaU0+rKNrOLX<1a!UsVQXbgds}<_~CE!ptb+Q;+rG z0CeGY;iuB)g{~jMh4>{jKwLTmb$p#N54`&pmt!C+&m$lJ63|REK)MY%9bK1CWKrO? z0&r6`5>?+KXvW+Ak1Vd7Y8y7VhDZ(8;rB{(ip^?l{Si`+A-?BvBym2a`H0qa_0AQC z>8@tbZXV>Q7OED@ijAs!>J7jK#~aVq4TxEXx(sNx?kTZPnP&8Ml{pb)G%vRfu~xm# zwvppEANrg_H!7bbw>3ZEEBtR{by*X2nAbEO5%QJUQU^f$ig!g**lnd^0i2wZrv- z$VVg#WBQ(}>PvRvXPG$yBl8F`p#6?)?dCh$#ZU0ovs)wj_AigaaOjh;?rKQCQh( zTA)0FMDQ8)KeK;o3KFOLljgWFU<3_N0c3m#(u|ci!n&WKz?}Z37$oM>Mvd1K)*kMy z_UL20Y}OuK^v0%5`)%+CABMvyTRslM(2#|*!Bm{_s!o+bR8UX@1zs@?zzqhbZ?@lK zuI)!rFm(kXbxIGsB2Wtpy~#e9GRz#P+o}d66&tFSt!ZdqGpoI+FWubd0?C~Oc}_?k zf>mNX^Qmw;>t(b8@5{>5z+Z$)vS4n6$2Lc!6Oox7ZT-Ij!4~Gz=Y`SGf91s%jmRg= zUnld)XB$-h)zT6QT)T{KNpoiSaxu>kS`rVV*uUy<_PXf&muI7?CfP>7x2)?REnU)2 z0{J734@}`t(Km${dlXZu03s)ET&|cdSmXu zO<`I(zBt+y3}qQyaBrZgkeWWpxq>L|8;9S49gy`|+HN-#iZ_Wqd52iWKJ6G2%4&5m z%gVBYsE|#JDhv4;fs_!V697Prx&Mr;&MRN-r{VRnR zKun1sU|^`nR|*uW_KKA6l=0qCo32zJZA4k|`(!lm zzDWK6vX6ksFcc)s-N?wkAIHVq=ztocdghb;U=c-?;Vm{;+?v0&w<6W^%7j!oRv*}f zus~w~e2Lbh|8pUFhF29>J7Bk}!hHHQpl?}CEgLP~3)iO|u*FyRvL7`Eik!nKvjohd ztI1BFU<$6A-RLv>6h-%rXPd|cb<$?Z;9x+~*~jY9#^!-eW=-JjsSP^s4FNH~GX4^o zUm~f_rLL-_xt%B3>~7s>fC~uz`dgvc+3lb>^nK|(NhL5EZ{n){iMwOVEc7n~S~`*j zKp8~dp6YpTT*`mi?C;^;$I^z2Do*!|Pi(24m&;R!^jCeaTHv|#k?6d*quv8fsHS=l zzG+p;#_vJp;iRknOmOujJAdg|Aj2(LVYsYpX4Us3U84#tuzp(tN>SV%WU~01$(_MK zif{+4QZ0=7Eo@Mf;=o(88nqzwU?>?b!o&b{E(^=J1X8}4deMzgo0jt}f`=S%UmMj^ zsWumk&oqxOW#B?Im&*)E*+c(rYsNyN0)4V()7GRaT{g!}Ky@%<7ef1XRi_u=BKuq! z!Txo@ml&r!r?BIJXCB1`Ais`CoEc}(3{fd(^bpK%V-@(6i^csLha2MVO;bI~i@PcA zYb@?Z9PaptATKHX2)xrRSS|#UBuv44M{{6FTi+AbGlvJ5@eg%~j_U=TSQSDD2KfA@ zg892**|bVK`a}qWO}M@zsEHzgCriueE2aFYs2o(W$>$$W>(H5x%1vrKthy#fI-iNk z2T;b_(2o|SZ>eDL(%0}^@ zC5xE7KgqkqCdt(F^n$dZ8rW3j^>gRgL&dY2G5avu4u0E7`75WV7_L~F4;RnETZ&(^m# zrFI3%q%mJ|oY@VaaQ~b9Fh8)f@^gI1&sgj8)4`^$Ln+Zlgp?oBjkAjt1|19ML z^Be1GSR`}c-^g#}E`(z$2(e32U@+@r@!{P-ke!SFNqo3o#GLFu(m}ezJ&X^3A&G>_ z#|guPHjnRE%wKTuRN_5l;n!*~0kHj&K>}ZrPg{_MR0If-!Ej=C2E! z6`{w@|ICHHaesKl!y@l9{_XjD%1a{eHnamX{aYxb7;nlG$A2{80U0IxD{P%^%?Xd_ zM6X#+x0j4B4z1I#w@4?3NTIx(K5-8Q6y@e(av}4`o)1`n{!oA3SWfxYtRkk!9*v

ma`28?FEjFj4^iy7gZQpI|P-tu$~J)zo`?##FcBOWGAj*&khXdjpnhlNH_u> z%1X1{mk4#`#i$%MOlA=#&ue9vr-<}>7eU#uoU7n+POJ{3=^w%6WcH;IE#WTR7JSPp zZTT`6Xq_CK<(HXi za;F)r;qjcaAI(4sd;N8lE%=Aa^qV&4|G^UmIjOAl?-EXRXDFK>Us>H$?n)Tzp(U}) z?3Vhqf|-ExFXntA6ElFrbBocd@cf+c2gY7{ko;9XC8$8c@<(~i!4yT(jEfog67eYm zB-m#b4G52Spe-x0@kTyCTYN^f_zTs2A7%hB$_x2rIU>@Uv3fdW6YNZEH{!^ZrC~VB5>F_6VEr(KP|x& zY*c=l*x`tuPUvGdD0Q)8h;4-1J~Q}x>LJD}fXN8p)&s9nS)v6bYh6j5Ki#66F(ZJw zyo33Ig)wrFI>OcS3&k-z#DOUJvlCDlRNlop`Zv%xO6tL2EYtEf=?C6-Es8HX6fMmK zJY(x}adQEMzEo&*evAd4WsqC zf^4dJAY%R)fx)>bI%*=Deq@DBXYHZb9ws!pd2A^*C0j|dfGaDuDD*WJ`nZwM@KTL= za~Y$uz&p*tHHC1X?@6wKMu4XiuJwr5a&e%AKR$#PgQ#3wh19m2D_dE>6GK3t>*MB< z^x|Y!Y^|Eib-Eq9a)1HtHxF@hS0WvW%EIgnH|~4QS-MUC<8H-xio+-pgsaG0Cn>5a zI299NzS9d z7z|+twPzMmv`1qCt)z_o4`pB1e-E&+pjo014}>~X+_p$|!sXH6pCB8hHQnmhVd!D( ze?n1gj&3=@Q=+ju|^H)E$X_GxI;F)^?9VNN)7pest zVDM}KaHyEz*R51PrEQ+w-YXba<@Prpg- z1D+wuVVv&h&;do!RrZXi9BNB5a8w2HoEen^-g%hpS*|!T!IWCe%wp-(L{B_sZemO9 z%bQ<3DO!L?lt&hZ*^>n1+t2>9PeIKb5d-7*vGSX%pAgx;@l%n(pvVynZUMgtJ|I6? zaSqh;mceCmV9T%yvm<&m>>!Rn;N7W+1}Z`*S@goJGQl%2F)Zd{4OPtW703hUny#7R z@!x!F9~*%d6ZJ}VE7BMGzcK9Ny2qtoHOfxG_A4hx7jw; z9nqo018=^C-#(-xGAuyBs!4x`s2rwKl5n*wuL;Y6_jNwM5mfF#Tz1X9qodDsg0!RG z%JI!I))L#|BdEu@+Nd1ePSoMH%p6F$a#CqJa`^f-f$>7TU8y#|Mue&MX8j7qSJZfVFsu_o$t3??G_tFznP7ZDD7vb3^jHYIGv!NQXS zBILqe!-`QOu>e)Eu=nuF*%hemS4Ay+Hms!|uvnq12a;cRI%RbGEBzPqUt`#<&G-K? z?Z55F=OVJ`2s;m^|L|Ih2tp83RyZK4 zg%seD88V3U4h(DTK&9&RP(-TERI^W;$$wxXZwsE8UtqUm^O-Yj?EFG)zsTzMh|SR7 zeoivd>gK_#puT?_vvoXb4YrWXW06bG0&g9{Rd)3A zA+SS^a4E-86arj(+=e}hqO6Mm%U*Qbwns*72h9n5$SUw|v~^#I*G*^M`}jT?Iqb8< z^2101RzArlLCtPdwP?I@7_U4zBvH)i0oG!F78`aA*$R}&Gt^#((ldl2v{6r(7l*w) zw;F@Wa|lE8hx*s09+Tu`)mCKxn+L z+(71MEJfXNatfAc%7N)E0h81%?h|#c@BfI(3*fLzPC)_woss4B#PhBz-y3#51Kj@H z$t>UC%2{SpJ1pN=T3+ku4n^hYx+Kxz09RGxc+L1!IUl+K>gUbx2^M&NxI`c--nV1k9p3C%2S>-C)5cgkU%()Y>x*+S`R)k9zAC`n|AT zq7KwGpsu0bJ=FF^i)YIa4tO%N>su~WOfO$0?;ljSigJ*cr+=fIo39+l}3o;xINk0i;hF#G2$P0<uzCdv1d%9z?@ohh66N+vS8BINH*L1vTd|`*a#eoOB^mYvt$)1 z!dlBpd(8C_jX zia{Hh4ZIyzQ7+*T``suL^xq*d$@7<>Td2cwe(1SK9-+2r8eh5f!IJ+7nhS8O{{-0r0NylLlF|HaR^y!XX zalRtG%p%m%uB^XFaM)Kg$^TeD?aI0@!Nn9&>JW;65Inmbb%cguUp!}XaO#3mpL>5(74YNNFM0_Yd>k5B#pIFL`EP^12LqyIVZ zl_f>=zn`_}|0CLewn1etDnTPBG`K(9p)UVY){Dpf_x6YT1P=%buOF=m==zS91uzz| z(7LF06eX&*N(9Agpw#|&t8)KX)HH9CR0EsIP(@E>PoZK5-VGMdnh;N@=fL+GrU&;m zH?td-eLQR_=~cAY{4Tbh07s-o@;g}axe&=mZ707iCy2a1V)url_k?SR-#zYkY(IMR zeXQGT>qo;De8>)lAl%2wfQ-ylH(|eNn>-mdkqPS}nCw$wxlGt<+?JWUegjpD%>9Ub z*j(su4*FY3O0p;-U zaIHRR(GEUkGg-X(VvAJHYx9^Wy?OYodX|&?6hVS2{65wF&NO9X&#fEx+} z=hnOV+`1&u-^LwUe28;LqFW~AAGfjEEM(Vo=XVtU7(Or24UxU@eG%DLD7i>vSxotU zaF(O^G3E2D?K8~}i^%R~8&vM9#^@5grltA&&>W2~- zh?~iMdRVPZ$b7~X%Lz9X`<^U={#%YFI}j%E_GW~E;1BfnvgN(WdoZyi9_gY{o`W?^ zd-9%i^F3}Hw?>Bn(PfUoBB`|MR~#igT5_}Y{<9&@yYUdN6bS<`-63P=IT&v|LV>u`3Wv zz5OPYM7RZj&p_j>AXo+EJJllCUx1-;8qFFrfkzjD${DQp zlkG%!z;Kv4rqlv&CyV1ish4zqJ11&nb)4y0f1|Q{PzVVn;p$pXWpO6vrrEmQjO&B^BjzOYhJS=ao>DHsT#HS4gY2baUG!4A&}Ye!30eU`O>cdJF!7y^qL09`%x-Ry|5Dhj5+JI}%%9m2-Rc3ZM@ z!&-+a%1vQ*{1$mB(A~}AI>tit{TjVE%N%wei=gQ(>PyTtvoZykoPsH^p0CoqWVSh^r1^H*JrJ%@vm~IGE2XAsBxYcLf^+-WeS#;A1WC zGEfx1T>xdS7gU;?&wqIYRIMzNLa15})^Q;el1L4I7bX7id+Z-qR96T>fHeu2ECWbo`Rsx@r?rDSRLRk7WHY zJ_IY$%`4p6{`15Vc*j|!Ct9T8D3ZN@7o!f!!OG@1i}5QVMyqSbfT`E8e~T-6aZ*@q zXHA?~g=`OKmS!Ji^xkW=_a|?@o!?N0UVYaBpArINJ8{ofMSs6$>rM^plmTX8;ruqq z2zrNEsILx#Vz$CU{$3%svyk&bNYGlYv^E6F^!%`{gw_p!iZZ=o(#($@0GFel=S$f9 zKqUzxe=CL(>Z0fQ@~~9}2zCIZ7|a;}p*!8((&;}aBLm#{fvqaoiKE+H)IwSL?;6&U zO-wDng%D;dW#?I(lFX5tQNDmm_v{mhOYT-GT+vz4FRIiba-k|2<@0p@wG zTo&R$Oxvm{W$7TiYr(w3-BUHZp^Ji_L$BB9@twb1gO+e2=R0i9FC5D8!2Z9jmqTIh zkN}+*P;3N<*^b=05PP)!G3K9|i6yAHgLX0M{}|&@w^YVswo)E=m5j)EFtL(upNv}y ze!4tAU3JY4tXD%Rby#{AtD>?r;dMEl11JB;5L(QRKtmg#27rKOh;yQ~yiOWT;mIZb zGW(Jvn~Pcu=x}@!cD?lh2R5jAg0?g2-x$6zf%n%zvVGPFye{OE(Hl}}-tfTwB|Z}D z$#v!dg6sCui1pqAOMe&kDyaE2MfQ>ObN37V;?)3#mDyjCEcDHolz)|lP34oUL+r@< z1Ejvuy(G$*JQh`@zD6F02)yrGj8j95h%5ETV*a40tlMgF7qK54m3OJ<_=V(#`K|-~ z1)#$sAgDNUvnZPxmEpdjf}_InL{v^fbwJvwb2r}*Rdu4c8#%W+Hu*wWj>)R|?=E`^ z=9|DOTRXCvU4|iHgW1x6tJ!21c3w8VXEP;3rMYkrc-maRXQl)1GTZd1h!*$jYA>l`Rp4;H1oq zGWhzWsOaaAnZPGi@ca)Emj(}~2tEc6HaxIdcD(#cGWmGH+8VPblJs)aeWo6D|JzmC zn^VKa0FMq`ZpSfEgSf;@K|o)uV@crMZ`*w}?1W6(CFaicRs`n#pUJe9GjIu)pG?^K zdM?`sH9K;AK61WR6I0+FVrkwV(u6-~Emm89kbfX77ha4R_yCdpg~|r}5)&Z9?Q=Eo z?!-i_%a__bX(JagBl4py>jp(2-k<1K5s>1=sVQIHLY0a?)2i>KT7DndmRDY->?^1; z`X(xWMXfH9@ZK!`GKWW?eQk440y1UhNSIn*Zd+GKq21`7LRS^o*K5h+>jcM(4NerS z@^Cxu61+p;>Ic)LysaLW-nP%-{{UXWYSRY7?NXFpAr&_GzE}`Si&(zENR)&`@m|$*T{9vIZND_p_p8&Z`ov^L|(JC>AQ~S|cOfYEG z7uP*CDrtFp!!U*xR2VtnGQ7Cj@Wj>#Mr+M$qo7_;XPzCcc(VD;XvOtLva-WTPBVzk zVnRsRjuy8YE`;fA9J;D2WqG*IC?x95=SxskI8<Z&Wy z2G2)hhA78lop<})U7Up834}+e^TRNDWtbzeBzA+61Gk0ch#_TDTh}X>v0s5#E95HI zYjSbmCn5AP^RcPU^~!u=xzm*+o>Yloxo6jrIf!RamrKpLO?e=_gV=(~-?S)ecS&PL zVJRTR%FIvAHxH718~coAznnZ?ZzZmplW8Kwo{lAt)pv?Keoc6{Hw4b1}=$cLqIUag$Z)dSRMM|tPQ+L z7I;wztSiRW$0ooJ4%)@ZrD3hOfI(A(0<(bhv=77ipKtZ)4b`W8dHG2G(=b+GX}Q&@ z145#V&$0HC;Jn=K&Hsb7fp-mnmyg45ImI$?VAy8iQ0nZ9E5<|M-6{Efmy^kwPm)A5Uj5KF zCU3k{%qHHHrBWb3=Nv0mkC$7mT)w8K=f0Ak)R6Z4=|@8uV+3* zzG6GDaDaCInEih22DEqagqveFu9yn54BU`|Osf(5uXCY~Jb!g+TJnuaTw?v(%=3cl zI;D?$vH><`&ryNq#TL8Gm)(zodyom)e{NVW>wHY{!+M-y7C(dMVJTvuIzI%JC*m+Z zaHTV}uu#NOh;!k73;eARnC^ncjB|6s8YBF}G!00S(fmB6J&-y(Ipkpg%2T^T$QVd-J{ycWUh}QI-{6=d9wkb(pE-ys&;AoV zbO|X1s{Z01Nq<+UF7;oeG%05YCiEx$3x}6eqxl9T8g`i?7z-emIExN4%3%PH9RV_J-3syb5$s5t!G>O~^zg@2EW>>~F8n>yhl_&yE2R-%v35(B`*7&jm zUBG}PPO{(HSd?)&C>^VfD@eVfSZ+~RqYH2`x)}FZv&;@XrcOHG^;`HQ!dQ6742~|@ zRXkqx=yVJ7ZIaNyf%2%O9A@)i6V3x#5OK{40+M1WYfanjfYGDMqwII`d1uW>{p&lF zLd_|}71wH#sda0dQG7WUHR9}v<40tUb@Noc_NSGTNSE1Y zZ@!mxLTS1=zT^4{HVVA|u}oYUaXe(^=uy_BtwWq+dqefyR)er@$$EQKGh$TyuuiNV zTFx#}Y#WktilGi>?s%*qMLugFAANrcU(>k~>PcG2Hh~LK8JGt|8XM#cTjh^fuSv%N zjs;-@2P?SYNAZMw%HNVzvKk;7i4a*VK0k;2n4+iYQVp*rd`C$+jjY50m?RUPHmyGZ z%WCW3H%EQm8$I|JCN1>;0ZjFn{^zU>8D{f3ZdLtf8<>aNg*@jk^xj9TkFpJRfFt1d+*E~{9>YLLFy0Zb?J*Ia7zlNEBkVoF9ay~oYoX=t)4*j+Bw{K7oLCp!m9&L&EpE2Z-zD4A* zoNXd|(0{scY~?~5AK8O`?slVR>??+Aq)EjjrRtxdDEq%L8hB;`&X<JHh%Pqwzs(?yb6?)*7I?406>wP2a=^B0W@y|AfiVFQt*NMo;TfTnt@d2qK%xgg;eXSGgEk8 z7TUJ!bE(!3u@h;(7lBth_so(nMi9{h7E$aARTOM=Fz7P4egghN01@io_b=UVKCBaI zF{tZTD?ok3S1Ts+U2XNlY-w0L)%yq!b*ZxU`K``t-e1$EGqf$1nEE+DR zFqN{a-4v7z#v_5NOpp`tdKXb={l*sRJSC@_FW*K~(Vl!Y_KmG=K*|v|hQ_>j1^wD) z-WR>`Qc}YcKXD4AHQtZ$_qPhIMf{azl6SV6T0i;2s>Rb-_D}o|_y<@=KFltP zA0uzi(Q)Eu7F1U)Yuae4E70UAZ6c;xn!JY0tEw*4S4~YG*BtthbD_O>6nlOX^fZ2y zRUuX^{2(79w?2Kn0y@F4vD=1?bA>YrEwZSh@yC^mxnsfDvDK-nrIYw_IUZ8g;Y0Da zsu8yd%cpKBV(F5wobet)Dw`^o7>6Af$zZUMF%G{6R3953`TCoN7t-eY!V-jKC#{h| zK;QfDtOxx_fm&I0)i();^9=$HZ~65d+VKR$rdJ>}W8NWQYc8u1ae%=Tv=~0P&kQh^ z{aI-};~j)VEI0pvM{}Qq`7;Y+4entBz@w0_D92+_n~<*G^dtOX%W2an`R4@eC-Yf* zUw}qI&HbE>y8gh}fmf>&(O&I@8)VvkfQ1$+2Zb1bZ16~ZL>|pR?#SOPBJAe#H}#;O z2mO1AFQ_>QsU{$)zPK=lJHqhroTxiRd}3fU_zJQmiHt7-0A z3pUO>*y30dLSZZypM@}LC5h;)9rnEI0+kNDb1-!^+xs~67)(7^e~J+WHW#}Gc@I1fuvLH+sBT*C9H#gl(cx>;I*41=GWL04~hPy0UTs z;W*n7y!=XFun^X$2q&x>>TIg|OqIzIinag25F4hMzJUN^ee7hrB$F6)nS&8mpr%KZ zR|0h$MhRbHFdOY`?DaXN^TK(;egATYV>4~cQ{M~aDsG*?18E(nTVss`AL zA;BH+Mz>?((z#Fkge$`V-X;Uis|o!^I|)}DcC5x<+FF_fN8t6H{jy;+K7 zSuydEz)15AM-mg$t!Q7|Rgg$LI;@`u_Q27tH?tU=W*`i%mJvu6pGHCPu&^1__GK<* zhdJhLBY>RX`6qNcHa8`ufxX*J(}8Y2{vN^aQT)jm`ZC;grgg}mM5&2*O>pab?!?#E zq6!IJCiso3@tvBg#Y@?H{2_E%4gcaNe^a&i2l2Ap`c^XzkLOoiL4O;8?&v3fRkgUG zqzsWychzE!UIe!@zPMYpn4UN)`vf9|sgH5?mJkS4y8yL@ii?tk5szrPi*(kT3o$q)3h+~mR5X&(Ir$$P zoCMb;>(M&ScKMJDja+MAE$&VD-Pq}qZ1gNUvKlR8+NkxDd4R~H@Bz3i@QuVY*r;R| zH6#Np*N_rjPYxj}p!EP_CG9f;oWJ~82)+n+!RiyE>Kq6U7LiIIL%*^0 zUkU5MQ0#HDlfrUY(_kF?OuM3Pu}x17L8NIdZiS>cdSMhz`&e3L?)O1ewy;Xq-%g(U z5NA;HdtNphKdx@)`(Ns?5491!*nnjid-)~M5V6{j((EH=6Dyx%z1yykxbBEr!XGX0 z&@$>^U!r0Yw@FYwx1=05T6|1NaiW^#<^^!#x)l057mw~t!a>cXs6PXv$D{9DCByML z5-eb#unX-MA{J_>X_xrGd)n5CpK^7-!8A1|C<_SHJM8|=e3720_sV{(ZJk{_mpwp$ zv~xMh7(E;e$$?lN*L*}QXNl#6n2aFaX~K0p2YTe< z5V2Oeo7J0NAnptHfDExTHn1o_c`-YqfCGEXBV3!ZQv2CeT*+Bv4Pcrb3+1o*`BP5^ zwxH(1uahl}f3P2vMQ_4>V@(3la9$0zi4IIb8<$TK`!9JMaA5OEHH%!8e%qQIvR{#4Mosakq=@FJPy)U~X z8JhqiupfF8r{d&U7fO%kIUf2GhXFBUYwwvDBS?nHW@c@Sx%W945t!{L--GX&RG`y% zF`>NJCNTVpCWphVJTcC_SJm%_?>?YNX9Z6DRZnn@@Mw=VaztBtyC#$Er%f=A0&FV) zB|5^N1MX+b3jSoV)oFQ>HX{HjUz(&cdXZ3b@o$x}wmkW3UBQcU0&;w>udUzVZe78j zTUx~OOngRaHEIn6MP?SB==a-lMAz4rjoPxrVeW@Z1RDZmKRIU|Pn*^#ssy&@3wU}U zAYE($Zjl-v5F7Js|1jHqULh5hh`jYEBgjEx37Vj{ zdO@H3wvJedyegutT}$*52&lZ&p)DP&m@apAO?DSYKBEm`eegL>K%xY?`T;m?mwSAJ zlckm|ameDU+ZLd>x9xmw0!L)igAcNtcA*Q2$abm6ColztF5&2Z)IGc zzV3bU&ieEUfwBV_v;F+T!BW5DxeG#rQkhsS@_{3NWk=i(%q1`$72VNl@> zsz>fuB~qFnn{g^2f|{=d9}XwSR+*7 z@g=6ntFI+rwL%>~J_Y51yb<@5?hoR*!EXsOL&8)hT{eX>BfrU^QR8`$hq7=vdIXo^ z{DAA3jPm8^(R!#B_D`ao#zUmNCX$BBDqn7!jgqSG(g0}Kj?|yBK2%f>x?1%CDn-1 zd`;ix3fZI=5wWUOeF<`@U>0C&MXrM@F$flwNl80YC$ALiaRU3qK6e?85qi4 zHD5TRLg`OCisrWfS&pnsnUC}+hL0n~GXjV7Rb4|<1zf1>!Mw{k87P2zAVp-roD_LY zpBV`fZy(+v6q;5bvUEtaV-jjI+?0`GV{692{K;fq_I#swhTkXEeD@nCV#I=)d0)jv z?TLovR-943`^L+FCh%4e9+ltXLPvEJEXa#+%-Zh|r1DmR$Qp@n*(+Qikc{-%GljgQ z8IZQe<^^IF<&EV_oxN*R{$8fp+pN8N2MJj4w~O*O2#JX?c}DrPI*``44Pi^*bP}bK z+asOB?Q)3cI1~>f{Dk>~!-+N9kjv zBor3SmtEPHk&0N`zP7zF4kb%bPT$879Ax=s9-e%J{_rS>e4_4YtGQA~%`FtE$vTb+ z071QVbq?uL@$mYP*43Ks7~${KKDxK*hm#c>PZ{QkLi65))!?c#nb$>ZUd=aio&5_D zkeVW$T3`~7-1tXuw!k%%Q4|=T0g2ytwm0S#+9k)}aQ&)x&+>>;ff^}hF0Mre8Ja4; zCrgHTdZV$f?d5Tp#x#zY#-Z^hzj#iQiymfe<;51@4GAhetFFl-8U#3Y$w+~5W~9&u zS^45ORzx@%SiC!iAI~HM@3{X1UbMA%`3^3}x8fcDf53~j7Vie=OetQRK>lCLfv1;M z4!4iM>-`__qOHZtk35y~yT$(jFWOqXZ$c$X@oxElz>BsPFPG`1c%knL|F?REwifT< zGC^qiaNro-$Y?deo)V5@&gBbx{H3jej?qEs~cX9t-0>@snlbUEq9W+`;$Z{4cEiiR)l@JY|zZK&Y-wn@uA;*dpt$}_Vr;@^54wV?#EQ5 z4sp9ql@1h=DL%xT&^W=!EY~({l)_^5X=4u<4S-wx(cVwQi{}P;i18YW3Kj}sV3osb zS#Z&yhS~*l1MN0w0+FzZLj*j==VV8bxAs*#5^|6o-_oIz!5%Z7z`H^5L#nWYcpI{| zTx|!mRDLwlZY)J^noksdQBM0`JcRgKnulVacHP!>L0#2gk*kv|%ppzq*~y{t`pBjZ z=^zt6Vg6P1$N4Mq{d5X=Rm8nVfsPDwJf2zr{qKPOZ$t(eDt!?icF_@US_0461@1dR zmizJDtik(#FQD$vxa%~+dpT*=XzUtIqXe|6hs}bJyMTimv7P(5dlz?}DpRO3&Gs(t z#DH;-0KUI~gFHut1BkK%U0Jk=SwLMsVDi$An|2mq8Ws2iY>d$^vch5ENcK zQgw50BK`Mr9R2E@)!v(EUl@O%#E$4VAeo%aSKS;N-46&4yC{YwHrx5cq6B^A=Hp5di|E+=NmzeyveNqwS$3h; znEs$%Xx3c!KL8HAIwkGqLf(Ep7*@;rgFCPfj43zNNZe3x1d+^3qd$Z(;xks@;G0=Q zy#Igw#i`@Q_80G|W#qUNz!=O1tt1_xeE9p{@)rnwV>S;xHeZG%x7c8BnX{&`rN^np zoGG=Jt?TB7(vJKM^w*hqw8mnb_ET~=$ne_*qs;vRlpP(zk!t zD?P;qVTeDPSK5(@80TRmGhuyE9;LZ>N+Ji!ITUh;2h28lb{FFP_nlByoe(Z-%r>O! z+A{>TYHa#%jEIxi;)jQDTs#73d76ajOFEL@2v7_iUmkUe6O=*9j7;@ zL^t&HyL0%nW&tnJlmI)UZRzZC4hZ9!2LfZ41uJ_r5@QYbiubH8-d+a-DgolGOUH*b z?S?fC!k$o+iIO`|5P_m}o?*Zt(x29zIy|qM($`s;rOX{(=M0)w!T4Llto!!_qDK!P2Odby}@(`>|SE6nq z>)uXHS)1~M`6PuDHZMWt%i`U0_3d~wG$b{iV~Y?ub5Q$nTU3*SLxp7#9Hxn677Hw& z9+h{AdZJ8DyM()Eu@jpffQxU?Oa$KfqzK>{f&fD+j^-KxnaQ%in`1#Fa#!JkHSRh? zM>E^?&YD!c4^arXYDdHya+$Vy!ciDD=JMWQj`@j@f%!F~Z2P1(H2*uCVK_cLyR7VC ziJaErnBlK+2ZEhI$mvgsM3eE zM8P`{FD$W%UU5HxcWsLDs60%`TXGzWrVgw!I*I%9!a^f<1HT7FzziLa1Boi9#MKu~ zszz+`JzHMD`w%%xq9q2tS4RjFc&9Oht-RY;z1PX`_N%*1keIR`|AlC z&wNXIRPzH~#2Acu{sUMZsRIrZvgchs;?RVRIU}Qvbn_d$|9IpEr&?Naz&Ei0%RRnXBIhCJhbXgHZw9z7zig_Mx!6 zbREK}HQjyC>_UY#BiAZrJYwV48@oqj)Yv)et7|p-B3f?=4rXHM0d3<^d_I1U@gFd| z%XuBO)m(3gWxSfl-GK;;AjJ0Vm`Jf(%&ToxhoT3o)V@osvzR?~@l{=D%AK?biR69N zvK`8!gL*Q_hfO~mqpEu3z)3QE-=$69(-oL`;~3ruJ+U&T$OBZm@)*9}ZCR)9szS)X zC5tTTk;jVc@&H+txVM#u`EQKBhf{-JO?iv6$IC?LRo$N318Kwl_I?)~D}c2~HzSr- zNg<-;BS!w#dGH!p9hzXZjswyMaZRRpDZ9Wv(bo$riq;+`9kmU2kFsg-FL}3q_9QjE zalo$QujMVN?M>>Y&QhgO$qFb|TnGvY(+z{-PKSv9V-Zv5t<8CtJl#q`(HZoKdmjMN zesmY9!!U)n4oTlZt%x}|K^cnmT@_arXGWtNxl%Bzs(q@WnL?;gG zccCDaOlLj5ao#uxhVXYNe5g2%?c{8WzWoI1`+3gSz&nRlNPrKaQa6%PU$R{o zzYC7q!5NSdDb6A`w?q2w6)`FFDU5Rf$EpO%Bpa>atGwbxx81D->t1`KM?V2L)p#?^HDt5r;f7CG4RatO_77GstUZ1%I=La^9*>;zgm@*LEgq zlsIro1U+J$$^a4{C%Lx_^S6D9Zuw3qgU0NQ;hNH$I^^xDYZ#2Xqfve^1Y=%AzCuT0 zbXtRisRoQyWVy#J+O+Yv5?P}}@EW?Ch!k~l@ufEyy7}Nrjhx1@)1|^rZgL=z1DX*K zL$ZLE67?`ZYswhwWmfPvh1VjAuWiHz%Fp8W*%`37)gsutUH!;rqu3Bg}{ zIa{zco>3gr&AnzHQD}0@>FjnNhsQ^)>r_7+Kg_4>GmWDcwnP#oE+6#Qn@AJSpxlab zSFXiX8%D&-)e!pwOjr?~`k-;mUhH6;>Ps?0Gp-a+5=RmT&rs%z6RjxBW$ckqDdi^s z;=Uwe0UQ~=MAqf##5Qb&Z1TlnBgyxX2}@PZPKf+(j3T=Av8QpZ`BSd(3~#twtU%fi zS}62z8!NNu^a1D5sQGjAd9aktZ;7eU=lFI!nT;CDW5k$LT`br| z9^2X3qWd$RNwDwC`*5AXn3;PE1@oFLU^#5qGkS?Pf%hh1sc2A{HMZWY6&uuN4#CyX z{l^rj#J;SgH8Z`)cZB-w)^A%Pxq)QPg}li64H3bZ`RKVPfza#t9|&R56(3*PlUrOy zD6%JXD5$xdHMA#wMe&+I!ea~1%&;wtKbs>Fl25z^DArd^k2bc)fkLpKH(2> z1snV2@pSWyae@%0q+FG(juyB?KB?AqiIndD-A@e(YMPL!iOHkirh@WdkvZl9Yx_*% zD>68jvJKLMHoY+*J?*2+rC636lJH}PU{L*|DhQrnJT=+=94(cf+e>@pqyS7l;QzhwNg=r30w zIkrH5(Qo#5?uqR0j0c#H3A_ZGI^F@>j~;{Pesd{z69VsQg7K6HzUHi;xyJ=WP!A9_ zx`sJ~Rj({_P2xH>tbFw#K?FHMI2>Cbf7-Q_#U~aL{t*;nZf#T!I392&Pq{yY#dvk_ zEx!=79g5bl{)MO>^2I!BIvc88&HjnMUfqJG{fC%M5_500_I2q7X7F-$2>;Tu zQ^_Z>RIT?#nND#GuM-!I1q8Yhhv0OWagby?z99Ph4q7z707`{nJH7>&B#3{;4_=e5 zS~)^WG-VRz^qP-}Wq|Zlf>1lo5Du+m@L^iO5^w1qF#>2w_sA0~CHaRu2PV^$H+SQu zWX^X1o+l1VpI@0YYklLGvYi7+_v zhf&I+{ zPQfdZUzB2@$-2fY>junk1#flb3`~4BLGf1_rCk<8da7C@#QbHj2@DL?gki^$|Xf)@*+o`I(l0#B#&T87UiCl9anET?t z5_@K4O7O-(u-`aTb(Qe{Y3*fl=!{g=cXKh7-LD@d=PB9ZBnKtrgc65)F^cVc2)s7r zi>bl;z`~E94}0qD%gzT#|F5GMBL6ameHp|a5oGY{{s49}1(S7!OjgOWT5V_4PRE&m zzSf&d5lu8?tHB&UTj{n|F2p?s;8r5DM&yxb)}t|8Z55t~1I)z=BbI@_Qmmi&a~xyx z{e?7wKt)nnqz1Mls)*o()pTz{ilBZb3aO{ z<}Hx`xgASCk2{v4n(-0?c6_>)&0JiF{On)HQ)*&lhRl16?hsU&9NUP25j~B|hxBux z|3SUbUlh?F!`J@q7}ED1CwxRW-^NicaiXv*XFehfa2bFrq3>9b2<<9yJNO8P}XA%v-?#` z@tHBdxm^u^ySbmV$yFcGl@;Yv*dkU0CHU&eHKJ~Bqe`F@Ge{=z^!Knwl5ZhUpM6(J z^m38{g{14`F5tk-N_OJfiDYM&%>bOF=sQu>4Gc?gOL7Gop!*9P=Cwt)3|34 zP$ww`>Kp8TYzGxWhfoOI6<>gKx$bqLCJ$;z73)qOEsJ20e0{RhysQh0PA)Q%8292L z2QfOGC2=}S9GxZDUwa5KFUUcH_~RaAoN1dTk&of=h&(^N+hHz}Cr_H8y}hQN$46AS zaIlel(%>gsi~qsQ2aVl44tDO71jPX9I~%+0Z;Wem)TywZq;|hd)vKSY%lgFwX2a1w*()Zew_*?ipuAf_^*RUaWySTV)OJjSE5ZQGnSXy8TtMML@oO1!-`F%ZX6b08#WGYd{1&&*omblJ#I-P~e+hAE0 zwGj0m-Hjdq-jQxDk^r>>Q8U&rXXl_!J*n19D>m5KH3ej|Jiy0H8piHdd@M7VdOsbf zBpgu2d|mN@ae{L+TzIRLm{-9C(hk>|ip!7V`W2q9DV|PTqva&VoT|*{$vhoFA8*Vs ze@56Z8GD%!7*nng?9_?A0CxvCvl)AI>atfvg*Y5JR8U^Pjak9dlp-fADK4)tzvN4L z#jAk_zS;`o+7aeba%#%j-0a-e6boaj;+-HEU- z^g?Vwfp$SB-3z_;M$sd6u3TI^y8Uj!Nd>^_PP+6tac-{5kd&%!W5L=`5!fukHd zmk7~*whw4pmF2tOkCHSleTjIfeDQfP-Ec?lyKBSOBe0JPU>|$_NJP|xFu#asj^X4z zsF9RM(RYaoWLvY{(qi#vwfqbzufS)^x>z8KYh1bs zwP|hDvb^8)M3MP+2;oqRBa?QpoATJf_8XtbB%k2>2$ilz`MX+l<{C_Su4{l{#?Um< zn8}%Do&ZF#36(a7X`X#vGy-!GR#!jwzJnm4Ay3rle9Oh>Th7h59EN`Yb9BIk4wAMF zupIw6a~9_jP3SO)Zc&|?rTe0A7;(J8Weh2?EO@T-k92!RH7ROr05LVmC73e37_I>_y(j_i=~|7qJw`*^*E!1?8$E zE|v}_mJTbHCFJV#60We6{ng(}Ihv&${TAjS6iWwSplGuPP!{QZ4TmrA4q&Ow9D{Ve zX4TQNb7V`U&-@OIo28ig!jAH!p%9nULR?wTyS_y{x z%&RPtNXb3_IbRHgJHL*TKlno9fV$gDtDPEdP0q!>!j>UJx>?oE#)X=7LWPc%M#Ulx zQJY*HmkgiSfG$r{mOGI_j|ooRQ4&mD!`y~zA)98i(UOl*cAIU`8r?^biSsauT6@7!Jp$ky@Zt~h&7fDYP$%OZD#USq)SD*1 z_y~kIRex5;GVmCEeV?+tCdB4bnIB^Q;e$GKE2#PN9_$^|L`NJUCYDonsg3-zVQrtu zH;DfBu?;HUB;TA%u`Sb2vMh`|;KWY(IofELkuyuhR(Mxh1nV6F8NJXc?W#C5T#$)7 z&D1EGECw@c+IbUrGcB6I2+g2~3g_5=OIGC|txS&*^CMyN9~*ZEzd_Bbyl8$9Au^U6 z)|^Ir4Zll}=8V(fF&}}M=M4Ha8@WIj4fa$%2Fx_+X5|kQcaL1AK8uzR1USSW##SzK zt4T=`8%h!<*{a0EbrUUVm@>3imM_dd{W#MOF~7V)3M_195faT2rAFAa5XWw z6CM;9%O`8SZm=1lJ=B8l7z6JTv@k-LfWk7tuSH>RR1(|&UYq>hHIWWX!}}FL`M~#y?YXe30(uRJROpF=VCrS$FXMfN);6d- z!crdy;is7c=WN;}`@WbPyV-i(6~hCFzy25myBm9;PeP93zy0QannB=O$t`emGt(?w zIWUvTd}M3$KgY#ar=LO>?Min|A7Q6vXa?L$cSkfSUJ7(*w^h8|jHuo9+O9R;?oU|T z7aO$Q7V&m5dM9Z+v38E$-E7BM4|)~xb{~)E?WXN+h|@cd?bZSY?Iy(A?Hsjxt#@Sq z4r04owB4k5yThV(ztDCi{rm8bX!k$bt}@<^@t2k7x3yhK|9aUDKC>)a6#*WjfVajw zbQ=Ky0&Rga{L!DlI+S-yTn!9nnVt-|4?)kc{hcQn$;t<;sCTLP!}kxWp;kX7OzWcg zPR;2sVRZM$gwE1Mfq!@4?&0MV!Ix08($WLp5z+Ji9WY4bfE9tx)Z8OsGaS-DiU!&_yK z7*EHP6Yu6T7Q%OO7%IoU*@d}*ZF3v1Bvvxo2d)?Y31HW)pI}9?ax1NPlojlaW#3%M z$}P0=Zmnb%LOiTFiFs|@*J%!pydEc%FO3j$t^lm9<7yOxL~$p zr5sTTrtYtmd9>`8mhWzlM$GnDhnr@p>z|EB&W2@xsJ=mqvDtWJ)-(~?bi%siz6_i_@TW-KT7_&0pN zU3xF7gqJ+d0f6e!H1lI7|HVM4E08z@$CpT-8{o1?!4>L*+^;_HOP30lg3B872uFxo8lWRx1I%88DA0D_n#70!*NC7pt(W| z^L8O#&Bokx60bJa!*I;^qtm%?iJ4dUu~tLOfHRTVvpwg}kHkb)cEQ>LNdasWm;p*L zmB8QpO2Bm91l|t`V^981j_UJfXSqRRalKekQg_FUhhK%PpnuQvvRVCGJ(Xl}*kbTgk<%#AS2w z@c6f2ldom3M#jUzj3k6+PxKx+ah%w9 zbN@TQIt?2;@$)R$PsRpH<#NRRvd!_dSq3*z5)Z+?izyodMv4h@0_%XP7lb{SMI4S< z%qr3Uh7%f&Z)j>b?#ro`b)6`KI=r+SFO|20BMj$EvHMf!iym!Ewe*$2{LTryc_^O~ zRF+{V<^(k_Bhr`??D7Je`u|9^Jer5iofAy`mO#zeU#j=q3c$1dcW1Z!wiDH04Pl#i zh7M*wzr5$!FMQ|ZCZRxhceyuFfx21VnyW|CE|gxzHG-e)#Lov|J@FGeSl&KZOyOsT z;HXv{?I^!mLDKlSm!PxhS&%It+(_B8$$@vW0O|qfz`I*v<@j>orQj6+c_Q<>f%kE( zo69@0&qKnfO=<1c!k#`9fUkXt372#IXxXuwK-RmKd{6`}Cu_^c6}C?A)^P~@wps_9 zR@iE-y;)%^TiMr-@^u5*H5%30Xf+uMW3A?^GQSYQHzBgS^>Vps=)?H$Jj_>u}1PoEWj;q*j-&?26R6gF{^-fQhdxMBN zK~5waqWnY*<+xt&af`AaS6CQw`IsV+;qkpk^-hM)_wG`ZqHKNA0Mgtph7#|`Y13i% zt^;hZ_r4{t5m)|0y(*mdmSR?=kv^eL6w3EbRXU<>A?u%t)9Ll{7W0$1S^+<$C`D&| zk9`74(P!V=PS}a}S6!fEXO%)Drhuk-zu{eq~u)_$LCG_Ze6f41Z2Iz(u_-YyoLF!cnN^B)dw3E*~MlRl5M z8H@IMlkf}ONOq#~Gr|!LRmit97Szt}E8~1=;0&AXJ2NBQOgP6AofnOzXqkqmGfD|9rfEl}Eqkl$q zqyOE>v-`$tf-rP919KZD7l?yGUFt^j<;Y=;U=2akreBYQDEJGNknyZwl1%Ad9z1UhuB2g!Mm|t zzo}rI#>|>8mq>|+8%ocXfM=Ia|F`+Q@7b~W?TG3|@Ox2IH-g_2Sr_N`Kak%iBD^Ey zR~FTc;ODQ;{J-|TJiL{w%Cqd}y!VnOc@E2TSQ?Zt^n@*uCCioqG}da_S}n<&GElEn zDoJIPs-&vYW~LjnH3>-?GtEGnW!eM75S9dg&>sZCBo0dmOLv>C2@MUVr<;C(1`N&e zfI#M)dynKLPtT9(KjxpO#8vgHbMLw5p1an)_ngJC%5 z`_F=xVfgO4_PMB={&&~8_HU-5{CwVR$nUl%Wg&f75gP0Y%fpj@>A~c;Z-piVNj`K- z^AQ;QVZjL&8n|P*AW~qS#UpIr)(e<;1eS|m1mSuC+4mfMP4Z(`0I;<_Of0^KvniPF zzy1&lbl1z%>aoD_qR-+g1n`GaEV2pvp=r43j_!0lBb{`GjycL3l3)p;z^^4He55USuluekRU{i<03H874ogfcP zlrO)9m*>+#9;#2!8=Y%?v&aSdG>#Cj+PVs&rg>5Ae3EMidpuZ+`OKM*y$U`tzKX$n zi;3sh4|GI7b3crGFf#w~*_)d`g^JW)?ttFy>@DyLol{)~V>Kvt2Us0kpWPpyHi-@} z0AZl}0}h|yb9Lgdum9uaaSJbxd*CDV{OzgupICw1$P475f1-luw=Mh}65fazf_8+T z=N5o7e}l1D&$3QGTwj5H_+013;J5`wKYQlxpI}0vYk1BFQCQ3KQGS~q0X^B z%cMskUiJl+Bz%+g*H4&JxP2JLD=2>$cW%4nahP#fdb~>bA@IYzSBGK6B=U_Q`REzI3dUjD17$ReVuDw@hC2#Q$n~N zbmsQY_KJ+^=WUmS8AFHzrw&iPp#Q7?xW9oDZ8F#*8;m1*|o&36?R==SB+hD zcCE9k$*wlLw%D};SNOpG4jkX`XCHmm7va8MK?OhjT~J{KzF38azll%R;u8!?k5;De z=|Ox-XL*WuHf@agUNbSpl+51(F%Pq=FLFwTH058#uI zPp}apJY2*lY-JCFec7XmTrmQwo|Q_9aQ(ccnAY`0qjr7WG*%SZwyxLJ+Vz@RxZdho zwo{E_xH$z` z(KJwBMrzOK&@3*fK42WEX}ro4gRrhi<^@$te5ZrOX*DO3;5uwPaJR zsk)@wf~9ECSOcb{%N5Xrs;gM$a3O&*3P>gBN;_3pNg6YZY^8Kw|C_qiG!?&9)-y_p z0%0M|0OJej5iHxRfeadNanLzHyquAR+RoF<1jq0xt2CfMv0()vhq-PYn}}*p2L*_d zQOYWGFJ`V{DpD~H4Ms~yW>qnT8>fRWambRc8@9uwP!5{~b6~^L94*OIrGlosz+oGP z14QYbo6g#UVqzv`qX~J#N&+`sswqOvDhtr%$qZ$J)%i3;u`WcjhQ+EPs}|6LgH6-K zZo>rWiy((#<;?Crj?H=z`kAz;v{)xwlj?OOwi@qxl*0Yb$o zsd_QnRBhB|0F+x5G!{#PvVoilc+arTq1V=Wt-Gl7r86vQcs!d}0dvN@g|(q$gTO-5 zGIIvj0bn9yjWcZxxMLetE%u%oaKwPh&O6bx0ezWb1}lnOg*;*XPswt#t|~>;2q*^` z*+xV&BwLWED#MT!k!(r35M7rrAk%cJrI;lcaKff(fYfSjI@r`rrIa*+T~M6hx3D*W zafAn$4vJ7uuqv=>(2oUg7GN-ia3KX0J8KnS9cgS)rMjG*^cY3yAEbE=scMJdhyvycm-?K>__*hq~Tyw9|!A63NYnx zNG(a#u+m^0*jivex=-b>!(qX$tr-?}douJ>ObUl4S@yFjAv{%pKe|t`s&@kqS5)eD z#i7CYfbk`{q7)sf?vNZsrO+%p3QbijIw-?U&PJg7l%v$tVR~ffJmb&4&arGX;TdoR zr#24Y*;ax5^NTk?-3)?uLYQ0}Q+v@1p{4#2B*4?_%k5OhFXN=l{#jq$y$a5 zGC{X56`4ZeGl>1@K6T@bCd?pV!c=sWU>L7Jd z11>P1068IJH#jgpe7>?D-KQKk9>6{N6tNfJ)C2p`eF`Q?=JOqf>45H-cNv@xTW{<~ z_o?j6^h`2$gM)QuX0r~J$WiDzg0`tWKL|O05rwBahR=ql7a)SBDPZnBkCQ z9CogATXtTX$G$S(miSgy#~S?o%-ODIEt* zvkN%LTF-;21hC|Dd&P99mID=!pJ05Ef8U+r3j%)O;*aiA4xGC{<8wmK;ehuqKqCC; zKIKo(IGPp~FjMmlj{cCs8X(pdXid{WOkL8jz`G7UApnw0^K#bx9Gk`_t(+=jdcI-biae{AEf)o>3-9rdwulpEcC?)7d3EE z0~a-LQ3Dq>a8UynHE>Y_7d3EE0~a-LQ3Dq>a8UzH16N*i?P*v-5U!jOMUky=igKkY zmYb4U6z0s)b^adK#>~3V1F*b;pxD)l5T{uX3%KlJ3TqG1>g=OK>!e@vTE-bRJmq>9 zSqtle>Fm9Ot&H9~?;#0Fu(*n0r|`XI=;f6fq$!wD#1M~Q8lcjFT@WBG!E>pkHLVJw z(}-{b1UG^3MFn3p_5H8v_^J&{WGp}j5Em4KuMHuD%@qVUG0@Zrt|R12P)NODg1cE7Je}z3-@0F`y(dozb&|hADt)*uRRHSL>&4zCp(Tp*6S>LRMLQHX7b|wHvXnKtK53#Xd}0`K z^`1*dgbg&%9EL6DuMER!h4+mJ!?5!y{Nph0Lf&yg7^Y3o-C^OrV(&>Bhj7>P zqsK>t-M_{+Ykvy~98>JLqL=MTR(SIWTZ4?Ug=tfG#Yx)?DV8jXA?N(6e|*&nH9dB@ zK0D`=e6qHbE(;&MQW%CU)pw0RF}j3@Pe3Zja|G1HH(S3y0$ZtXINnpzV|P-2eL{pC z&ax@hL{qVvnk{^8bVS(sdnVsEQ9dK7)^OkUo=aenGXen>Q1zr9Se`Lm^HwMmt}l1B zd~CebEDQHtd3dYV5!ql-y;2s|Pt}UT*MQ#^6p=8Dt(H{-I$Ch&@stB5*;BB5k{xQhQcKH? z*|6>@3vW9GlD-xhY~F;|jW^(R>z(Y)CVT!MFunv1AN2OBzkCu;d8ox{Mdzn#M6puz zjMu{RxoLT!nU4o6%Vj&`E0l#hPRYVur!=Dg8=sGy3hOQ5ry%g=#~9yx@VfhP6njPo zR>DtC3THu2>;Hg+4Y&%>U|8p{eraw7I)#TW>ji!LrNTR*X{~(=gRXrWubXfchOIbs z7R`DNH?%}?TKBkS@~y`5xTSRixzuudI+>XhetjucC^!ToiqTAIArW=2EGvQ8)rq-@ zC0}78ZMTJYfL_-B4LQzv+SPieYNv|1>6Vtw7{0=)?UUN#nDFt-%2~59zieo$1y?fd zuKPVui&U#Ex`Z!*tS;e!%iO{jE(2CSLlN&_*Ns<<2*MSUleI{zW~JgWwL0mORaa%H z8V#34;oX<}3c2a5uiz;+{O;P=OnG5)ENE%YIZ?Rt@@bzuuf<#Q?jMnV4HK{1Z8U)E`Ynl8WY&A=ala&kCQvd`WoU6_vzXSawDdW_NPFJ{dOBRdv!Q zLF|9M!iaZ`%G_kiwUla2>m@B^S>7;EesYDG@dQ@Qv5==~b_`=IDJQ!Mrg-*>X24gN z^rYs~nQ+ny_?zQ?-B8j%`t231d7qT>$+<=xipz=i^8i^ZN9n zypk)zp&p3;7gtmQjbOw-lMQ5}uH{Ccq)e=?0O2pMuqHwgZONl%^Yv&ZAF8D%#|uDs z*A-CfZb8m>v+FKgh2d~lHiK48@dUlWg+>2zSS|*j&~~nv$@wIuZ7p@>glpat7O&xEr3gzjPd= zdWcuC5@*?U?aP?-P3*eGuirS%1p6X{-1zWG5QFus!kH`K zu$m(L5MJK_ub~>T>)jZH{Wh-N9@!XL8`>Ch?BHc%XnSa9C|$2_3~vo@4{u(I#C7;@ z6Yg6h>%(h9&b3Rn9=ATU1uwRT*M@h8w};k8;18m&jjRu?9p5>IJa^#z=CQTmjp5B> z+m`~@;jN*mtxGnCH!j<}6oL)!0E5jF>qE|+OE!j(@fL*N7@FFJ_q)f|j<16RyT`VN zHjc57K-?PM9N7Z24XoFO){botPi>!cu7kjE*;sH9QJ$Ae@FxQN$l4 zya5L_5dR}wP#@`QI6egmV)`L`1L68JIlW96ZE7+8n*pOd>xA)qJjR~_16QPff#_R= zf7pu;=P;1|R2ca%{OGeeju2iaTmy{!w+R0^;i>2G@b^;qH8>E0{O|}l`ZtNbL-;ssKqLR%8#vufcndbVG5j)M zmL41kK>R0!cL{%>7ypkq{p&azcofcHpgfy(PJaPlrq2e)Hxhl9 z@XLw5VR8C92v6A@KR|em@Q*2e9S$y`+OGON&VQG%pYTqb(@Q zqi}!(`ET9C@e2vBy^dpv@abDPehuNxTRDDrFZ^vB|1DwR&p1BYqraZxr+|?HrnkM$ zahUMv8#t~2#{8ZBZyei%*9pIs!aLr?=?@SV-puij2|Ee@;VH@=;W@y_f9EfF_%{+> zdke>(rtrdBIsP8u^xHVTVwB<&{v*Qc@8I+zVd0$|-vXG`N5XdzefwRU{uQF9-^1}w zd*MI8@#C-L@iz&-7%;2vALjG~(H$S*xJ&fyyE%Rh(S?t4{C>ht!VeK%Cp-+}H1gjf z{6xSg|J28L{4mi+@8P&XbO+(v2|GW|=^vr+Yg-)e5Eky|_}CM8dTXEH`1b%~dX7(W zd>!HS2ROcwaQ#7!UrTuVvmC#t7yhp~{wiS1&)OF`{yyQ2FLV6U9{vi)fAB<}{?=DH zo&wD3%hxzwAw2aBj^9l9G~rKD{PZ_D{bxkq{5Hpb@FdQEdxzua0Y?6g?{J(TJVp4W z6uwTlPW01fc=+21gZF9HKYfbu=))X;pYR6ZEB^ye&-p!0_YvMATp&F4eNKNZ;kAF| z_%6buKj8T5gx3il`+d%ToA4>Zqd(-~uOYlccoHy{_vnu}J<_u$SD^8Eg@ktr z=LuhXob&4tK27+|gl{MOVZz&lze4!r2_F9^gr^9j+eFN7hwvETO~P}CAtP(l9`b|* z!WF_B)P5R-*9pHIG1Qm!U-9z8?+(Ow5WXKV%xN~LJa$-o73K$M+CkBK%Jje}l%W9})dD(Vy(#{5Pq5pF!B6arsk(*WS(XjfCs>aV!&_ z`d=JZ2|G79?hw5vJ2LpVTqjj)P%2N=k@COg!PaneDhwwKJ;eS4ae|QN0^bmgJ5I*tDgYrJ{5PsSr z{2veD=N!VWL->Y6IB*DG37SIZx#$!3_u=m<_(PYoPl3Ou!r#;24;^>o9O4=9=YYSf z;qMyw!?hduO`(fibbpIJZT~&|9D)d@C~PH`J%NQ8-*O5XumK{%mMHEgigknUYYBY6 z8tvpnaUnJDUiB3Ub~FJi)xm{;$4)GbmG^TzXFO-O?Un0JGgXdzRcFdmU0p4}w>0cH zb7N&uY&Ct-m~*<(N-9f!pQL3Q#p!Xc+!n;XVe;TWu%Ch3UOlU2QH+2&qC1+Z6&kK? zE#kC80m<^r2_hK7?K5B&#ac5pxi~#N>2{`bvx{|OUe}sYkn4b*vna|F$@t9j?3^bw z6SLaM6hIU1d5#_Grr%(Q!Em#{OPx9a6p@3^}@>ywIl$eFLtrY73lN*xLs_MXA05H_1; zleucS=#w*07QRBbrBAlA&Ux4{=>^?qt|^MHnaa3N_DQNcwme&zSKL8Z?1t^?Uf})q zoP$G)u3q>92H#LLiA>QPx5_oWTZIa-s3d$+D6iq(l?bcxY_}XL5V!3XMWfYrCliZH zO5QmKs+eAGjD=k}D1iNzq_CfsNL3ci<*~VhH13mJ0eQBa4dv&0GVGa-f;Q6gnzugg zc6sx0UtviP+XX2v_jR$Vmbbt9fywBDESkkRYF%aMcrAky`E^eUFhc) zIv213hK;H5Tvo|XM`9&&Ar~Jr8fse!_7mUB5j5pSWWnE*ishwJ%da-Pa4ICQ(tx&k zZkGX~xD+Ybe*diL&q%e-bSgFM@o zVFNC1In8cC^<=xXlm(l;xp+V4k1=!>Maf!7x)Z6yw95?m8`;ThE#~a>BY+TlcHE-q zR6Buy77KXhlCb&QF>9-KrWS;3LAbtaf647CYeo)O*sG&s1?VcDM=TY)=xv?13bWjms9tuqx z&NnSK>gAcSWT8^YyXA#+v@+v?^4RZ)0;+AgWtrVZ)q?WqbfmI-X3lg$s^Fmlh=yl2 z6boiOP1nRsc(LuA^|&jbD)La#FVuRuTuIhKiN&#r8z{D`lhC2P6WmeDUZr~zcrFN(3r=G=soi?tRf zQhI8^8%`L>P z>21R~EwL=)&NsAOPqq+Gx|<7upcR%TCX+6wp6-u42Yq{pVyRWp!AXgy9WJeQy>LQ8 zQ&;7Akf`r>07lV@H{A|-TB#XmIc>w`jAVSWx6vO`paFpM0jL=h6LxAjvQlo(I-%Q+ zuZ|aFC$M4-1V)NXsiIFtTl!os?Jszx6=ST~my6X_=fLX9+8KH}fgpowEQUd;v-^CG zK)*C*EyQwVIh4!QWIZs~sKWSIgz8A{6hv`+LY=6ma^-o&-)%2hlV-ZnH2Z=PM{+`f zV@)Lu!*67HMpulew$kyYmRb$qM*+d_h$v1J0-Do5-kM)BGOZR&n=&=Mods3!(N9{9 z!hxJ+Ps8#RT;aS=&RWWNsg~d4GL5rGt>}|hU|3sdEXu8RCKyhHt78cr3x}NLaBn7} z*r;^9)6$ZZ28Qv5Ik5m|Iec;ino|wxL>30J)NB}}NCi`}7o2@8Sh2*!coyg-=3pmS z0dsb6<^cmvu(f0wcDvGWmYe0g-OT5bX-KhXq}EB?w*1WwS8*qrhQo99j?!8%i{+Rair`1VLB+7Z?n!TuQJd|U{)s2RYHrIYk>9Us}1f6&Xb;peG}&S zBpJU*ILE3Un}#kW9aNpF)tan~8?{)c*zaFRz07;a`EtYO1^fJ(z!^Vt4i0W5;n3}v zo*4_n*HB|wPRb!@X?URcoM&SPYHOlj(!pH7D0a`2QP9PaPFSF0g(G=NAsP!sa;{Xm z5MEdwpNzmc&fdHgYX5=U7?ag$dpxK%Dn2O)XTtI@zlV0-><@T7O+jZoC>Lx-0*7+p zIIk!wm8xHgXHsU-8HMi;cv`f_u!Dgvn}^96tX6lb4R5|M3m>O5^RZ~sC&$L^oF~~Y zA~+DsmICBdFtlinO)Q7TSKP&bStvx^-F|*#ILOMrj#RJHa95q#a(Kp5&SiqD%f;?u zpPAb8tR#wcEu}@QIlsRpFBjc<#1k(qu0oxJeiV*&4(dO8`h#4+ss+rvN_HaEDRi68 z%6K=>Em>}>u>w_q4NTrhd)cGt@#%oG7*WjBM6wHK4IvGw**})y4i1d<7}s{D&XE?thBzj~ZW2FS}aBh&R1pmc}yKSh!KHf)KFm zf=exU1Wjbe;qf?fF>J!8x8$mZN{wPx9#fV}&U|n&HLYUlSQYZFLx;pgan(v?pj6Ca ztYgKYmYZ{OF`7+4E*Q)Ga!9oW4NfesH1f`g=8B7H(OL&S0J5$X z)f{tAMw*^}a#8`hjzC88H&lIfBDI){R{in9xUn+Pub#ZR;LHG>ZNXej$>e=fXCm6k z!FO72wk5?wNyrWs_c`i@91c{{*)ew!n()k$k@BeZd4C`0m~_b-^w#HL zA`zckTxeI_9?jD#0k=BXW1!b7aDUT}0m74eClT5S^Y0{zVhe;0p&W4LGwyy1 zWFFMuOFH9Ss>U>H+~t+E;JoQ|S*v@iCCp*kpg?=oqVMu-&=9a!E1+A0F9J5~taeJV zz_M;Pp*c(SYQ+qus$-=x*d3uqNY)ec5sEz@a$9z|P#3|uk02)bVgH0tY-$RNMr-JM zE8gd=EieN+FCAt~=cU7(69E=?$!q|~A_>K_L zb!3}9N{z0g^yoUOpj}5P%5{{YTt_L&b(Er9M=8n;ecO4fi~A@=xsOtmo62I4kqYm% z4|Jy2omZqWrwE!m+yNgEXABn^f44XwcM=VL2HMDQ@}Q1Xr04@}Wq9;~_A;D2&}N2{ z2Mh_lw6lYZO?d2cj}-mL1I$i%+@%3_CPW=%Y{JO{ZFx9(kUbBl4zlUt)B$5@FH?iY z=noOxTukhlj`kkt_4%vtQLSo>TGgON1M$yc4U6AD%+OVoYejBbf=|r4 z1lBbAMu+>J(K1k!t$o&sBDf;FAd5s%*=Oe}f=%;<+PLDn@{uNi5a@szA*@;)Wi2O` zF39dqETajaSiWHUL0E}pbAa<&G(n)jCQY~v(zjd`%WN5k&jT$GWItqIjr`5g)=v1< zOlHim#||HN`=SgqRE8BqFbU@Ci0JM6!t98}8h%94*Kmy+Bja}!8WGc-jDQKTip4*? zX!3Q~WEH1p(?M>wiqCz+T?B)zc9DA6ZdWvZCxb2#Z0?!E@$(vV@ei{jjb9Iazk&TM zf3x3)mcQwn+XCEYMtuPFl*rd#dJ2b6YciB(#?Gio!eCBJw(~vHY1mXg%5+*pXPK-@ z!zc6rb7qmdl#cIto`$OW*mtbH+C4jIScBW|IUBxuVJhD9RlpI5&b$;H@Q}d#6C8NM zeI~G1++6~HWX=-yTo}O0HFsVBy#*LQ_Z$}Nb5(G_NkPv&LC-M(_ecQ8LzpXqo(}?4 PpazRKkMYRB4(R+}iPK7{ diff --git a/tests/recursive/recursive.nimble b/tests/recursive/recursive.nimble index 972dd0b..d6b155d 100644 --- a/tests/recursive/recursive.nimble +++ b/tests/recursive/recursive.nimble @@ -9,10 +9,9 @@ license = "BSD" requires "nim >= 0.12.1" -when defined(windows): - let callNimble = "..\\..\\src\\nimble.exe" -else: - let callNimble = "../../src/nimble" +let + callNimble = getEnv("NIMBLE_TEST_BINARY_PATH") +doAssert callNimble.len != 0, "NIMBLE_TEST_BINARY_PATH not set" task recurse, "Level 1": echo 1 diff --git a/tests/tester.nim b/tests/tester.nim index ceb1fc6..f969f66 100644 --- a/tests/tester.nim +++ b/tests/tester.nim @@ -12,6 +12,9 @@ var installDir = rootDir / "tests" / "nimbleDir" const path = "../src/nimble" const stringNotFound = -1 +# Set env var to propagate nimble binary path +putEnv("NIMBLE_TEST_BINARY_PATH", nimblePath) + # Clear nimble dir. removeDir(installDir) createDir(installDir) @@ -480,17 +483,17 @@ test "issue #349": ] proc checkName(name: string) = - when defined(windows): - if name.toLowerAscii() in @["con", "nul"]: - return let (outp, code) = execNimble("init", "-y", name) let msg = outp.strip.processOutput() check code == QuitFailure check inLines(msg, "\"$1\" is an invalid package name: reserved name" % name) - removeFile(name.changeFileExt("nimble")) - removeDir("src") - removeDir("tests") + try: + removeFile(name.changeFileExt("nimble")) + removeDir("src") + removeDir("tests") + except OSError: + discard for reserved in reservedNames: checkName(reserved.toUpperAscii()) @@ -930,7 +933,8 @@ suite "nimble run": "blahblah", # The command to run ) check exitCode == QuitFailure - check output.contains("Binary 'blahblah' is not defined in 'run' package.") + check output.contains("Binary '$1' is not defined in 'run' package." % + "blahblah".changeFileExt(ExeExt)) test "Parameters passed to executable": cd "run": @@ -942,7 +946,8 @@ suite "nimble run": "check" # Second argument passed to the executed command. ) check exitCode == QuitSuccess - check output.contains("tests/run/run --debug check") + check output.contains("tests$1run$1$2 --debug check" % + [$DirSep, "run".changeFileExt(ExeExt)]) check output.contains("""Testing `nimble run`: @["--debug", "check"]""") test "NimbleVersion is defined":