From 20f437afcc8170280e68b626a81b44c67ba75f5f Mon Sep 17 00:00:00 2001 From: John Guibas Date: Wed, 6 Mar 2024 13:08:51 -0800 Subject: [PATCH] fix: clippy --- .vscode/settings.json | 2 ++ cli/src/build.rs | 3 ++- .../program/elf/riscv32im-succinct-zkvm-elf | Bin 102864 -> 102876 bytes 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index b884193679..3e88574cbb 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -55,6 +55,8 @@ "tests/sha-compress/Cargo.toml", "tests/sha-extend/Cargo.toml", "tests/sha2/Cargo.toml", + // Eval. + "eval/Cargo.toml" ], "rust-analyzer.showUnlinkedFileNotification": false } \ No newline at end of file diff --git a/cli/src/build.rs b/cli/src/build.rs index a7b2128c94..fe1d984f24 100644 --- a/cli/src/build.rs +++ b/cli/src/build.rs @@ -10,7 +10,8 @@ use std::{ fn get_docker_image() -> String { // Get the docker image name from the environment variable - std::env::var("SP1_DOCKER_IMAGE").unwrap_or_else(|_| "ghcr.io/succinctlabs/sp1:latest".to_string()) + std::env::var("SP1_DOCKER_IMAGE") + .unwrap_or_else(|_| "ghcr.io/succinctlabs/sp1:latest".to_string()) } #[derive(Parser)] diff --git a/examples/fibonacci-io/program/elf/riscv32im-succinct-zkvm-elf b/examples/fibonacci-io/program/elf/riscv32im-succinct-zkvm-elf index fd04a2db4a5f3d56554a2aa4c407f3b354258549..57c5e6fbba4663fe236306f6e21fb4ade12314c1 100755 GIT binary patch delta 12427 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

%GC$?;TM;Y z7f{$iJq9A{_qhYsqcmL;^}U~kNcEeHDyS@QUAJJ5{gn?ZvI$|pMIi)FeBw0<6% z0d+8Fo9V_uW9YeMh?(FF?`BdR5uMA0#1cw86x6e1dB=zfP6ar{^w6Q8kXCS-KoOl# zJAV+|ll1H%eb0+4ejCUu;9RB?hjj8aa5huen?clk$QNC_bx0p_uC%R9WC=FPt;>Kv zbNob$0dE-jIU4^)Q1sp9zty+{{C=RRy$wd2deAVd-{`}S(w;YhLN0+^H5Gui+)GZ_S_0ZC8ei9^XKlrA$DszC zvs7NElTU#ohFwRy>->ABJ33acm}Je6v(V`}u^n8+?*`J=BNorJwJiZxjEV4BM13am zpM^5&gCLVpuM6D_d~?lj<%CbQpy$x)`aYpG&$e>|yw~j&Nchr;dXWRZs1J$`UfU5t z(R))TtWeO@MIfvX2Q7d?4+n*mfinseHJ*Z70&Xph1GgUBZEkKAhwFm71Kf0a0^Czo zZEahB$2|w`SlV+qsOQ;r9eyabk%JrP!eM>Ss0|(7h*@j_$3$I^MDppBd?Z1hz6E;e z`mrD?JK~GOm*Yre&y!o*+C*=}C+aJTwi8Emp=ZF!5oE8W7X=uM;r68)M`E#TL*LZ% zTpIGGzGwPN9U~hDsm+kWCiP|lA4}D5>afQhdea!)wBxtddUR#%B4}bn#3$kq1zHpF zqd_6VceamAx;nnO;O?MAaJPXw6ZsAP%@Q{Z^!MEiW*3~mePxsX)76s>AOPu+_iy6NrxKLz?Ksy-HkwSM?m z0*|As$Mk$RX^%(ZH}QBMB*AgVjeHF~dR**S>yGO}2G{*j&*i%qTSLc=W99#jE9O)W zbS93jAJ_L>as=@ZTbZDui~?r~g}oKT&%4szx{C*%!GRxR%{b1|Pos{aNe%ka!JvwO z2&z8@;Jg<$0~c!zY(DrBB$ffUZtIZW1$+h=>rZL_5%4F#;;bR`wE{N*tNJ71UNf*N zKS5$s*+m#Icntgr0Rwt}kjP_Kd-K(|lmxq(9dtmnfi?a%ta2cbtCxJ0{JWrvsr-f~)v z-%a!?eqW-~f7XW`f*jb2-0R5IM?37ZzX8uA?c4giV6U*|_+y@V;T6Df)duKrYuOLn z^rHKyF06kJtlr`T##1gULHk&bd;)MSt$uqS=2+TEJr3@ZPU>yfsyhPzcjTlR;9;H? z#o5R=z)=EA659v78CV%8;OOz#FM-ot$4(B?@K(D07k${hFL%rz33(t37?zce4*<@k zwD-i>VA6XDVVA)(cz7%X3*nLhaza*SdB8dJ>U;YFgCV7Mq7KxlH0w-4VDWZ?a&iz| z?TW)_1-*JE3!B94GYJ_xz*C$A?>X?Uc;UmqaXZ|HdC~SV@MSN27jD4?H0%8YzJs>B zpHSLb?Y;mD*&o1DZ<_-5#@bSEodVl{o8Yax4-%UX>`n)Jam9EuKqpy#XU!UsQO^xM@D^5DK$&pSK1e=l$? zFeV4wlGt3}dN2MK;1<%J%_==wgUhN%YNQ_7{?!irKJZkuLi80aEx_vaSZFmGaP$LT zbvzT;A6}t9iu_XGbHL(CC*;vb<-&}lrQi<@tW>!@tAslc5I1RcX+?xFx8VDavt=Es%5;tfJ|XfLqC3ts>hZxd?Befu-zox&sEizR>{ z9xY@~4<-Zep{pM!a1(|6bzbSU9R_gFJEWdjvyq~KB@ccTxJ$Kx`FikG;AZgKQ&lmd z;l+OhnCWR4+Sov3tuMW#qPn2 zqoBgq?hk_stj2L7@D4A$8TdRrSI6Zu;8R{bxqBL80bcTRmf>JRvo0m%`NOu_Dr5zu zfK@9~frS>uS9tLva1(HX$Ezmb3TVYnqIhXU0zL?g9ZtbTz#q}=OIf^zMmHt!T3XsP zG-E3)s2YctGq(GZy5?oJ9{4rzqdXcu0lwztQSg(DeN4BTK14n_{nc8WS0?>EK^)co zzLuxDLjGqS$6&6$oDjBlU&n#tV>8Zbz)H6e;#S}*bm6jiF}i&@AtS1`W3o9d$O*uz z>xbBPBU4s@8Di6^-LdiBaY-b^7^_2K9DdrnDE6tbEzL$w+&iA@3Se1Ilj%?z_Z z1dFTs>`DR_+{V{@P!W1 z@ArX=!B^wb0=xlytWAY)Ocilh{hhv4ywEEB#P3p2)i+w9We4y=@VTeehrsIltKi=O zR$prcj!4560C^?j0%rrO@3exy3^*HJ;Y_D^u`7*HDL+dhzD5f?2UvZN7I-tT`YtW-+xI}V`Xns~-$USOy6}TOiNh^*zTdwJ_JNgg zM;tc-YrOEMz<%`<(;T1wlNuI?g;z25Gq8{F9=HJbwikaF@ULF@3h+%Y`IvP$yL-7& z4D3@+N1FR)oWw~sz@v6+C87&4)yyT}lfWwf1uU}jUU)Cm)KJI`ec&}v)$x8}D2&tS z8(I7cZMl&Zb`v~xb)=+Y3p?B~OnJZz-6w(KYr*_%4Ql^Dw=gi;C=4Hv(6(p&ilIY zXyDwX?wwTd_X5wHY+zfVM&N+4h~1P9yZ|`ZOa2^i)FcDj=8-p#!_4u*>&J1h&lr_Bdq9#H-{C#DoU?G$pX?l6!UpA|tKOVyv9D{G=B*q@RZJlXUy1X%oGj zeQCmPooxg5c6QqR$VPMB>q*#t1vsbDp!^$!;tOy?u7QoBJuPnr9)xW%)`7?~T_@p$ z>soqyDCZ@v!*|O0U8%{*g=s|=dtss_F+a^hqg$f_678mxJZoYqX!atjxxiK4+LhmB zNlMGlvliNm3X7~srX(tFjiK&sU*DBjU@Ax}$hRgIS<(vAlAHl^cv?VGvMJG$YBrhj zi&FCoQxlzmb9ici#hzSXvKOVKSgon{yds5~c2`k;vMDt=#h#XymzZKLa*Gz^n^Vnc zR#Txl&75Y*x5Hd4Pjwz0iMN5~Uo;yB@<{>7iOKf-UYJ^FDJXPy<$QdA-I8iAN=`{iOfn}H6q!tQb2*>r6Ht(5FUU_UglKX>vOP6X zbjtaQFE5Wtd~D&I;>EM)&RaOAAm1|oF}84i;Tmf-1s6>k=2xxT9B8YlA4rXn3R{FnqOp2Oisy9Da^B`6~-r8 z{(Dig^MoJ2yKbx>|CT>&L6A(z`KE$oiwVA`4Y1Ex6mM4CpTD5cK5x$aS;d75%VMl`Hzk3E@}CxK>>GusPIN%{HKqPzm< zdAxH*7QgI#C6kYI+B5mR&hIn%Fz1Wqyi47*Y<_DfpYEJk#r1O2aRX~|F0JB5S^56~ zoYmq_ks~#@>W0ON#*-L DZ_A;D delta 12331 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 R?v5b5hh(ih$cysx{{U5#izEO5