From aa5e6c7c7c201793189316b89eadca1701b6eec4 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Wed, 3 Jul 2024 18:38:21 +0200 Subject: [PATCH 1/3] matrix-bot: Remove __pycache__ dir and fix changelog room --- pkgs/matrix-bot/.gitignore | 1 + pkgs/matrix-bot/matrix_bot/__init__.py | 3 +++ .../__pycache__/__init__.cpython-311.pyc | Bin 6013 -> 0 bytes .../__pycache__/bot.cpython-311.pyc | Bin 4065 -> 0 bytes .../__pycache__/changelog_bot.cpython-311.pyc | Bin 8913 -> 0 bytes .../__pycache__/custom_logger.cpython-311.pyc | Bin 5997 -> 0 bytes .../__pycache__/gitea.cpython-311.pyc | Bin 4166 -> 0 bytes .../__pycache__/locked_open.cpython-311.pyc | Bin 2667 -> 0 bytes .../__pycache__/main.cpython-311.pyc | Bin 3368 -> 0 bytes .../__pycache__/matrix.cpython-311.pyc | Bin 4362 -> 0 bytes .../__pycache__/openai.cpython-311.pyc | Bin 6556 -> 0 bytes .../__pycache__/review_bot.cpython-311.pyc | Bin 4433 -> 0 bytes pkgs/matrix-bot/matrix_bot/changelog_bot.py | 18 +++++++++--------- pkgs/matrix-bot/matrix_bot/openai.py | 4 ++++ 14 files changed, 17 insertions(+), 9 deletions(-) delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/__init__.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/bot.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/changelog_bot.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/custom_logger.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/gitea.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/locked_open.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/main.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/matrix.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/openai.cpython-311.pyc delete mode 100644 pkgs/matrix-bot/matrix_bot/__pycache__/review_bot.cpython-311.pyc diff --git a/pkgs/matrix-bot/.gitignore b/pkgs/matrix-bot/.gitignore index 8b897a3..7020ffe 100644 --- a/pkgs/matrix-bot/.gitignore +++ b/pkgs/matrix-bot/.gitignore @@ -1,2 +1,3 @@ *.json **/data +**/__pycache__ diff --git a/pkgs/matrix-bot/matrix_bot/__init__.py b/pkgs/matrix-bot/matrix_bot/__init__.py index eb4935a..ee1b443 100644 --- a/pkgs/matrix-bot/matrix_bot/__init__.py +++ b/pkgs/matrix-bot/matrix_bot/__init__.py @@ -119,6 +119,9 @@ def create_parser(prog: str | None = None) -> argparse.ArgumentParser: def matrix_password() -> str: + matrix_password = environ.get("MATRIX_PASSWORD") + if matrix_password is not None: + return matrix_password matrix_password_file = environ.get("MATRIX_PASSWORD_FILE", default=None) if matrix_password_file is None: raise Exception("MATRIX_PASSWORD_FILE environment variable is not set") diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/__init__.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/__init__.cpython-311.pyc deleted file mode 100644 index f943ede443e4df66e054588264d84fb050344bd2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6013 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 ZZLyu^vtNVyB1kHSF{|j*vt!n@P diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/bot.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/bot.cpython-311.pyc deleted file mode 100644 index ac094c83c47ccff97d3f2fc6499fe8f713aa44bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4065 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 diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/changelog_bot.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/changelog_bot.cpython-311.pyc deleted file mode 100644 index 9c3bd797ee9f7940be5f4cf9ce9570dbfb5f4d58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8913 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 I4P#pWFBjYMz5oCK diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/gitea.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/gitea.cpython-311.pyc deleted file mode 100644 index 6b16dfee7ae0e52e5c3ba4155530f56de1845814..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4166 zcmeHK&2JRR6|erD@3FDLc-eTznBW~2Jj;g^*1O=fjm<}lL9vLma~U<$h25rSdbYa9 zfIUdf+FGFqC0;2KPL^mntO(KWfkXZPAd!;eIPzgsCri0xZ)2I2kWYD4?fJrxPbsHV zcfWeC>eYMo@#q1_wG`WCHs2Bux{nNG2o_2s5n(h7C4R!< zBjCTO%V`PpL`%*oX+>adBumX{X^r!O6-WoLBBHa%ke865JQATTe13Wa**7%-rGtiw zgNBAfMgWJdsYY-~PKS9}2nS{(HASe6;#hZ0M4%Z4%{ccG0WVRkJ(9pOe11x|O(P@r zKzNO0?$&T-s*~z3pgNE+vSxa{u5ah9ZF_+zT z$+KDqHb+3b57U?y43rkHAS_|o5I%xZ&WUwSVw@qT6)YL@yax5Mq4;IsSf#^>^K?MzK-*t9mr(zdJbnYG?dBYY@=u~K9b3NTGXxW z8p&}9jb}1?K5x6aYub4ylOZffeup-JqOG&389Rql)(pOi^M;)^Cp)2R^%@ZmE}HoS2+cSwAXA>h5Mla=wrb)^Db2hc8esR zt%n<^!i*xeDw~5q?xPZ#h1^eHLb!um4{VS{kn63vEPRQ6qrpl@lk>5ZUNBR0M^kL> zoz#|)N=k&;C$O&&2?9xqq=WIDKpbW$ks!Muqmf!CGq8wcFBEZ=!@zi`66?5UmctY9 zJ}iE{;B!x|{66h-Pv7CK*DCgfHm{7mRWM^Uq1N4_E6ls-W>1Oa^lYXF$Yf+swm3nd_pV>dgKu=K0g zauU~wolEEmzP}SZq)gW)w+2F7^(Q=(ok1?JwwCF*gNX^C3Hw^jhM7;eGq|NS)1|8K zgQ~-T4+VF=M=umCGs|~-YA$aKz}A^5ULBY_{@$!(=jT-pAPE{BF1j-|G3U7^K%6#% zbpsP;^1DC7RBi1Y*G&r>3D-_sYZ}X7VoN-nNNPN=Ih0Uo8pDQk0APv^m6;P79J|Rn z1A$9r7vFS~s=rwn2>bh}2RIra*eL)gVX_ZIhpiGDQ*9@;bH^DrVHtmvRqp?<=NAhr=lPdN5Spedv|Pp zTs+3;iO|St?GJ(gGz)e0RKuvvx1gwTWEuk8GsLuPNNL58VGk)Zc)4g?Xj2FJl@GRV*`Sx>RA&j>%D|uOlN!J#CUU>+XGw^ai!2Y}ex8a)8xs%~;KVGbvKFpc6gk5C)Kw)~!ALKVZP=yCoNg5{+0V-R z7&*Ym4;eWKBpGT#Tke(hf=87vN?T8*eNScAzG_g3sZ|8T8?Q!C+um~bd*#?+ z?`$1?AI?3w!SHuzEk4vhmN#-wPyQc&>j#IAze4}W5$V~7$ACUR5*qoD_IywPn(UyO zWlv9=`Dq%2b9w@JOgMZ}2`Xr~{+ELt!XS*w7=CpKyQ@)6H|-hME%>*4_6y06eHtCL zObGHR|87cUc448iVP;)^Ky$FA65P{yu)G4rTY-=K-<8v394xX!!TAhmRT2cDf?^(j z*3~X=dQI(G39PEUYih42RaGSHFQeY(w}N(;Ti^AX0Zmk_IjJF61p>(S1&=>Dn#EcjMKcMmM3s~VF~ zD>)$vZB?|BEXy0L^hKj;FM7MD8ci@0HNw4tQ1iyh11J)&1{oJZk=@lW<6xV0E|1>3 TYxNbY^$$-E}@}zEX+`U77;26B41OC!mrG6$jcB30i?K$!2F9Z&>fTvzx?0 zM#_OoDMA8Ts-#jY`GCMJ9D1s_<{u=IRaq+`RqCbOj6x;Esc*(>Ck_O4)_(KmeaxGA zU-Pi9FM(jBPJNpnQ4so@FWN(kkc~e8Sw;jA?4Vq0#yJdY$&re3PR5)jJ4!K@iwRtD z;zc#53Owd$MLnluL}MgLRGOgbH5DPE(FD<{oR5>ljo1UQ@ThGU<$6dDRY@=H1!+Am zz1!gsonX-DyP@RzgpB^WOkN@V!0#vcB1)&8aozDW4)t@?rOXUG28({na|2oqil%E$ zQ%+GXm_Y$%IqNQjn1x#2cBpF>X{Z!ELc=(t!7OtvsdE;D;(!mrf8#Fz=Me@c1sKq1 zR8R#!0QpB9osZFVDUjQIgl0ONiWGEkpm$`t^)aeQU!!G=(f`^70@@necOjU6uTw9= zbxt5(nU~7)6*LcauE4DzjNFxynSskC3>cRRwr{}CG$KD5kt2#E_oAV&@EVZ$#`%g)=B7*h+zWZUVJ#(aUg28AFo+npBTk*Q(W zl^BdV)bzmw-$-mK6o5FlO@0JU8;S4}Ti?vu46M!iZMn(3$}x+=hI(eKliO`N9)?rHSK7lKeeRs?@i363VK3WfaiRh7aVNT zcEn!3e7Pe}F#O$c+#j-Xc2Hg&RItx^577gmKX%J->W;+*oU}52O`0Ei#w!?_ zQrvb4)IwSjVGCoTmO^F5_aM2*Y_a4+4($b5whusv^X(L3++E==AwLm?pVt^W2z0LC z-vh9Sp6Yw=Tv{1h*NwVvG!c#sSF;UGzpdU>e^l-zR>o?0EtOeMW$FO6p}ID-rVTY^ zkQ2fJJm+dJIM}4^h>1YIP1N572fLfeYVxY4WP8=sBnD`8{0dy&eno8m1Y{XiP!;Ca zNB7&}OE&m-Yx}G~d+Ux4bW>XwGQxoh`s(9U^=MPsJZa4S-G7F?GrvL(SQ`G!n* zYaU4Bj2nPf5~pR`5BydJD2$qf9RN-kb3BvykQyTX?{ShUTBRF=@si1WN_>7UXedT2 z9a3DmD;qupK7VBWhX58)qbGU$Ixob&prN~F?`ulbLeO`+L)f0_( z_Ak$UKX>+vekdpmCT|I&Urg6((N!ABfX?ZAVd5!~J)An3{#GJAiPns|hy(f-6#khY$ zmA4SS;*}o8gM|{j5R4~TDEk4698YX35Y@xD(|$!80Fm(PEA3S43HgK_2O7^*Ujhha zf^h@&E{d;#dKSgkKu6ZPe{Z7fUqfBL1{zrF{x#!BN;M@FLw^OZGFVl9$_TV}ModrA zV%h}HWze{BsHL-4!ow?Pn+T?wQoH#3VD0kbezANqCZ_Em5yt~7z=ElIwzj8c)%M>X M7t0+18wOwe2jOLA;{X5v diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/main.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/main.cpython-311.pyc deleted file mode 100644 index 5c46ee1922b21afca11b3989dd2ef8c4ac41471e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3368 zcmb7GO>7&-6`tk(aQU;MBw7^xqn3(XD0D>2LJB2K99gm(N^q+rh!q1N5D+Wwh+1WT z*x8jOyHp^=ZIT)R5(EWoASs|jp{kG%KD338xx~(K8Eg?@0RaMv0QHT5Ye2}UZ+1;m zl%={^KF)me^WK|zGxN>-MUtWjzOmXcPXyR|ta+tBHD~5YeNBs2(fC^mri-`kcaRk}ee_ z9}8NCo+u=I9M(GZu0ogIUFg=6g`{66YDe^*LXVy*q@WzZT}l)ulo)1}xWdediu60K z(5o<)P`2X%b^ThF@whi+dp^r~u?g#{QM#b1*s#5LkY6y3IkoJi-yr6ks^Lj&Ph630 znY@XuifLHbOT1~C`ZTsIxr}GBy(0u)QSnld;NL7_%f<>d z?+LnZ&*RI~i6<&xxTvVa69~2!iBV#MIQuDGz3cFQIKv_IE5yJG+Rc?fu$H$&?W?oG z+M$;I+8*4hRoE(8XnOe^)(y&FKlnaJf8yG0GRTfKS`pf-yH~Hu-sacA>SojO3RmUU zU_U|1S!&`;a^ z35R=Oknzm_;U~OzJ_mV>AiKZibD^t&+hg=|bRD>*5$BaKX#K3w(~nHJimFUCv<^J8 z+2oqNQGvM){%DPCOJkv@ftASNJAgqSPY<9GbUoA>t;H>cmf5$_62qXk;mkqgMh1{Q z)Ub!pNkmSrh;7mAZMC*gRc!Z6?I~zQd`~pQAYWpZP~Z#pUb>~(LhW&FkC1{cp#j)u zKVGxpH5+{`4~*B1jS{(9u~pM3Vnd$QuyU;f2-UzPTQ$lV+ss_!GP0F{zCy_-+H1+T zd;-KuCSXLr)3NiWosl(yW#wvS9u#Dw(LAFL0d-}M61v-qf*$m0QB9AxG>j`=F}%vz@`6& z-zs_(M?L*p$1`;{)FXV4Ao&kXR;M3{h!;PcdVk81#%|4hp+g38C-t}E0jhE5T<)C1 zo!geuw^Cp9Z3wqxcc&fcVokc}N*7o2TU_*8uJ0SJ@1H+8{r5zT8+W;Jha3Nn3sb9~ zj@~@`+1WMW&xu;{jGH{;Nc*M6jkw&1!;S3Zp8qyC_DycAmK%3-V&joj$pCdE@f!cWUXE-So>&_kQ^(ye-B)5pRf2*O|2?NI+`hh%1gb;>dOf%x0~( z){%8PvW|GLeAm#Q*qC!qpL4nSj%rr-no4DtuLo)scAPg?Q|X>+o@97E z)2^6yo)ECOTW3Ls<^oFee4^dZ{$PA;IO2)JWcQ=Fr}YAB*6Xn4zv7PO$Iw@O6N&r~ zdv7S39}V9dWufZcFBpnn^6@LoR1Do4i%t%)_r+tAgY5lhc&NEQ$kUo37Vy`x6H|k1 zHcbY=suu?K0s1L>;R-xPHFcKI7Z0JAq89-o`ZY8In~BAuA?vtUB=lQgX9PCtZpic8XhAr zK#@KZEe=wMFvD!2j#dA+2c#X;COeHjJ3{Yj*%f+ki8Z0$75Z1%9W>)SO?J?;PP=TO z6HdEqp%M7A)^qD{{og( BFHQge diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/matrix.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/matrix.cpython-311.pyc deleted file mode 100644 index ae374ee610f012a7e4772a3c79f6328afa7c913a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4362 zcmcIoOKcm-5$*Z&Cz7H*lx*3iEPs~%kcpjGvLy@AdN=+_@?s5Vu}p#q#TikQIWydz zk!5iyfX)hm7x2OP05-B&L?_3A_aNltLk?abhnxb^AYftu0|JsmavQ-8U@Qk0ug(9-i_qUmr&;_B=G7hsp$AAo3X?}E(z1C* zV^b`HSfrvwt~o*FAA#f(xZIKwK$gpknv{|lGLO%DG;hjFc_Hu9{3*W{NCmX6RF@V^ z1+`Erq=i#qtvl5XGNS5NBsHRV)X2Q3c-Qz;4;}N7F@=FKKaBO#v4GkIa(!xOu=#KV z_q*VJzZWU)JR%c>xgn5?wB;10C?P~w^eN#rAr)067F|S2_Zm_nk61VnTyA*;&68#a zr3Mt{I*RxHi;T?18JqtgZ7o3SRnk^ElTVu_bUa!b-&BlcJucb)DRV{7T*&8C-Lm_x z7&%>4W>jrX#pZ{qSuk`{wF6|h)f@N#8}qrmdR?`qZo#U!b;tLiVQB7TJ52cNs;;!| z25%JdM!MY>GwwruIW3)4od4s{R7BV#DL+gmO&9JF$&YE zlJBEcwuIKV$-u-$DX|Ls71t^M835r^?nmeW_Y3|f@Z?o)l`nCNtv$5iWJWB2WV0wB z^#%Hp?S$CR8JH_HWil*)41S$YWYBdqg1(DPewn?^eT39~kf=Zapc zm}EiEg3SUML$|<2vb9oBi_ssZ!2(LmGGa?qt1&7Yi;FgI6ja?7-C;Xo;j|8B#FmVk z=46eVw)g$p8MR>L4BhrOS6;%oxPZH0>o^F+ZWxBx+V-?&GqOoe7bE4HOUVU8Q95Du-M+Z;Oh`=vr;)TBUzy z{oH@obAPxViq=BMYN3-3V!ZD%FC%*^LqFJ900OldnW{ymDuF2~HRAYTb^3@l*&DN=j)M4)H!~9fS`uYR|)Rwf{8F>lkJFw4#EX95a7#I71 zY~cU5l$cH&Zbvov1H0Jrhc>bS&k$&uMPW+pZg{4cWM_+gZP1yj6-!g+kHvZ02VL3i z;yzdn_Y)EY66ahz?I#0!fS4pS19I>X8HqIs>6s}YuB|uw_P*#l^1ScJ`f{}|S?fzy zLOW~uQr+KE^B<}C<6u!?;$<*e892A$0Rpue9Ipk(E1q$OgL_oq6|9bI9z$5#UB&m| z{@YaCR^nTf{r2GTEy@N%wSotP0#JKzTkTm;`;rNvnK*iIkp^p7bECB_k)z2uWrqm> zSgt_R76*wQ1iDOzHS91fFVjUDGw?egIs(@=)70b17xBsG@yVywpG(#FbS*wz8QEFO z?{E6UHU9|Mhv_s03Ie=f_<7MWCGhm_67$r zGX(z4LbO6%Aq+s?B@OHd!z6^`BMP(Lf_-x#(kkp4Dsk_j&g|J~(^a7)d;xC@B_5oD zrUc9?yv`_sB9_<^uSmb+S4D8gmaVrxp~SS)hTL_#?M)Qf2o2x(Ch|Gc z${1Qb5`~u0xcfu*jZ^6-6y!skg17M@#62mCLBbegkI{ZVF3emQ2gg5(}1=hu9}+W|pL6 zTbwsANZ9C_Y1^ILP;=2RH&M zQfR=o1KTZuiN=q^W&Q_<8@d18j|PX=qt$_UZ6IFZ`|482L6UHRsYmxdSozh8!!~uk zdElrcKxc~>>@^`n6g%L%8*ls|Cj@o-vYK&Qbx2oeXH9Rho|e>Sr+Y z06t1m;4vxo22wedR~Vu?%CVFaV2o>x@hwhhaU$hJkdsOVJ@H(IEbG`gMcp|kagt!LG|k)`3@_G9%{PF;38J?)$GSp8&4)iW!$ zzpyk1;8>8A^vW!}taxNuPiv|y+df&=3}q=#_<$^bvXss@?r?x5J0#0#9h@jlB8@4_ znCQjka=L|20!Q`cz6(r}E+N<8GUtJmxBWH)q4L%8)jL<~zOM4+^5r|1>w$22x;%Yn zx*qH<&y;8G%+!0M6`s^8AFX%yR(MjYd~bblsKS$4<%hP9y8`YO$b;j|Y<$p`KrLB_ ziMB+(NbXhrKoSri<`GUbDjAG(Z zn0!KD@{x>JO7tN2NL1LR1=Hva+?K*=z5 z6fDzU9Su}E>!uhjXKP~gp{FVi*Tms6S4YE@&bo>AS30Z1dKlJ0{}0kHGKU_1>L6&I za!uJ4sMr2G_?S9x#I&dD=X){(7Z$@gvIbBm?N+ z5yv~sfF}c~2cixK?WV8a5y+s3g58cpI1dW-+&_IU2OlB9{q77O5`B)J+$3|ikxTGT cgr6v_k0@;?*&<`F3EAR6Zf$UfB*o-^0iX;(fB*mh diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/openai.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/openai.cpython-311.pyc deleted file mode 100644 index 4b3ce15ff0066b6958024ab87ae3dcb9d2980236..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6556 zcmd5=U2GFq7QW*d&-j1*lf)!I;}8O*B=MHAK$A2y<)?(wgf4{ANV~4_+$09uR2dmR+p`ZBsR^D#{8Tc;t~)*}Z zMkwRnGGZ~V^ayQSnGwcUJtJ9Y?kFEj}ZwvSo_>m_Ey z2^!dhE9o9_Q%K+hn_!=@2o7u)oN&6}bYlOg_)e!LC4LqZqUZhP=XgT zr+t+s!H0Rl4`Ue&61zt&jg`O9s7(lfo`66dL+y3nk@msti{pxtmb=5@Xgb~{rg177 z?}~}Z@Y$EbvGJ%9hI%@ImAIIaH98|DG*-e&MoPu1YN0}x&&TgUgh^DgPqmp93@yGN7)=A*D*_u7PuK&u+1=2j8Y9V zLJJ|!F|{F{wSd}XhhVSm1wnQUX6+LGZ3fFq=Sv!Mbm-Xer*$i4C2P6`05Fo6z#115 zQwl^@V~F$ZwBe{`OJZ4$j$zqwxt-DMv5c&U$w*w#*d$iQML{BItTCrVVKQsYD5ITw zAUBxPvY67WLMEA(H5R90fN{H3A`4FP6H$dxj@WxHjP>LGGSE~42NlW5u!>|+63)EIOWqIzJ*^N>0Z>(Qu41W@on?SfwObY*?D8E;M`So?oydu znd4b zB2^vcGbW zjdVDj5TimU8ajMzXz)mAG@igAMGOrAZ|xu0Du-T=DzWhpu)Gx<9ZiLXexH2A+m8g=DLxhinG)r8_hK!yA`wjAIl62@h3f!+e zJlnFmzlIG!j_P4fjoz_y9H@^wo=Rtw2(h2ABpZ<5v=|3s-xyUzHn@zInf|sYb zNPyIA2Sq8lAC`z_j|u`zffItpz*(%}?^Bz`}!%RVA1YfRKx|#00Vpvp8DPqw&(!fC{k`8hm+>uA)(!+e`2(A(n z={O7v!zph8u3CQc@F4%o`NQ+JpxW3myBh=)owo37{*CWh>kH0}Md!x+{t{#R z{osYclFf6)p|4-F|d8w_WuQG9f5SO0qLs+PhZi~r`q}eQhz^ndtCLs z1_fYb9M;XHK-1NpKlfbA-rjwsrx55V26}X4w{Kos+?gox!OQQ@w$AZwD&O|7p}ACd z;_k_N5w-3Flt;8B=!azy^ux07`C;O=&M)8k{H@Q1z8F$pczH>g9xByueo(({u72B% zb%pvJ#rhr72TOdt+SsG=q?Ek%y06BjN5sS@&$e^Hi|_p?(DawiSxdp+TJ*Q7t`&+N z_>q$=O!vGsV_DS9YL28KH2OLOkDK*#+y<4~V8rs!T~=Lp2ui^-Q1lF_wgG^)q0Pij zZGWXu-(9Tl&JUJ+M{W(tq!D9AvqF*eQ_zr22yc4fOpNn?Qcu;1~#TU$;^q|F!4U zBOLt==Q!fyzNw=?!tT2t^qLzs2V{B-c$Gw6i>19FG&}6!N1zo;nk^C`L^=}DXy|8t zuA^bs*Z2sK4*2G4FmE{$F?Vqmcs9{RKD25yA+FX_lM0Yr!aFqgzC;|p5*{mm{9=T7 zOfhyvgZ>z#!`MQf+Ir!;Y9@jEr1xMP;ac(lNS&rAs)RiG@~?!PdE-}YD( z&9lM$Sdk50vlZBuBHNOuAzxj4@^t=~igrUOpxru4Q`@e<9srl6!iA`yiW(Ld9X9Qz zQbUvOtfwG}D`MVPr(4Mli|T?pM`||Y;&nTzIS~A7^mifFskVEL+ z#%~&R`UpjVK?}0v4Hms^W_#)7J>|;2gJxykYM*YMmZ!H}`i*W~7_?Zy;<^F#e*x?^ BVI=?n diff --git a/pkgs/matrix-bot/matrix_bot/__pycache__/review_bot.cpython-311.pyc b/pkgs/matrix-bot/matrix_bot/__pycache__/review_bot.cpython-311.pyc deleted file mode 100644 index e56b6a6da5dd0e2b161babc1280b7e97fd64b3f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4433 zcmbUkTWlN0agRJ6U&n_?T94SK&yp2Ksbe{jt=NvOz>1vMuH(kG5~Blgx}00AO2H9{1Dqr(2kr$77A0{uK12bfqufPwxre>9u|t-m^Ze2KCH zv|TP|XJ=<$GqW>u-$f!J1Z8^iH?zxOg#OMtts*v&#}5Jd3du<3RFpv;gwX=mV#1!= zfZu8NGhUaE&+u;R%lM%6s6xS?@pFwe0+|5NylSuz%7hBxOt>Is#6lz!amRTzT8L$0 zg?J`j=*jc|%_j?LqL9oa3#m-X?fcaoh2BhWp)b={=+E>6Er3Nih$C`H=4J&s{3)Lq zkVPDlBRH_|Tb1^ZVpf5YvzcT2H#RloSVv-IU0Ot zNmVbKITO?5EH?A=*&-0K1pj&o8>aCC6WoZ0#tF{JSyj(3VmUjjsF?PAKwy!rBv`n) zue)-54x3p5duI!{FoTIfMFVRx^xUIRo{do-US`J^2sW39miM$|0c`;OpTPg|mjHf_ zIMA^PSgTapI&D!{D{~fFXs_}$=+;6N?^cc$ZgC5I3-7iOnB|30Uu*PhbW7;wV3q(n z;V+a1nv#_W&SPa6%aWo=>}JvvE>!YLmNX(zud2^cpNwag=BOwuMp4aO&uX~>roklx zlLjg<>0mPMN9qVL7u3SB&nIq9tPlU;KsCJI3Gc6a+d~IlzI(3IedP7} zgdY)rdN+6s`yeXh8y3vZn`V&;jk8nV95YcGkikf^vO@B0ZNMBq{9VhiK!Xj-04)RY z>0)_0zMxx&pMVZO^uC9_^8S`z@mao()hx8_#W-LxD{Pj^)-$w-U~%2+a>$Id2bul( zz<#!Qp^rH;*5R>`<+}|^zSFkbuCoayGlgbZXrJdcQ0}zIXvJ?P+Z|+q{mNc5)uAka z_iU8A{B4lh9r!m&*IogOmwhGRT?v{4Ee?dNVD}wYLRMf3t#Mb6uY|3zEOb~`M04ks zd12Y#8QZo-#1hvy(g*Vc9Uh=WtxzS}S)+ql5e0S2>Dhd8&`ft`Ewm-Q5N}Z{TO`_| zA=E9=?wwZPR0>*jHDriz=3wW{R&>#oCK0T#6|y2HU`dTzU6VtfB1@dww(g2JhgM>i zFomwZx)QhI3+#=%rLskXE!y@|S>iGx&snj`7TtDuVYMBtUbnP4w0gA5mU~-#TU(iF zQ|#OfJYnRPcl%0m^eL_wP~u(ldT#kvdd$(z>deZm9xHY?@zeGPZ|CJLGlEvATMHc6 z-0F${>OCaPu`MelEPn|yiSC=MB)cTij>DaK5Kod;5~PrNh7?!?*m0pWIX$l!Qa-0i z^SNRXYmzc6ne(_21Y{i>+I~~Q*A&B)bmESH2bL6EGG0AHawWTC6ORygn=sH4#ej6GetU(6St)!iTy4oB{>4@+?pCdp}#m=UJ7W`gF?7YTcTkpB>(6B;~yEsu+)qHBb?E6SU& zGGVzd39`QT)cNy-CA`#Yn1p&Ew{l}6W_;9JfIWkXq0j1s#m{~=?;ztAT$7Zkzjigw4Hxt7ZyfJ+*@z-O2IcX;@RudPU#6?@& zUdyNJ0_siM(s*^pc=^I+T&kq2@k37hQ2A^lCXux;u5d$~)T6)kPI_jj4*@2y# z(Vn$^Yvz|Pex|SLH@vlQ`Vs1dWbW`r*cm$P;x%dHyT~6S8~N{FsY>IHH2y$3eqTCX zi|@KM@1#ea^w@*+$@}S()%5F5`t?U%&)(>d2!Ji_hC{^%)+cX%bmODSzKZ1x9=2aS zbARxRJ$R7#Qsp0#n;fnmNT1|~PsWCe>_Ad}=B>wrC zn`i7Drz+DM`@g*kNTXK8Nk^Qt#mQRl#f|Cj_usv0_g;j0PyX|9XW~Mm1MtRMn~C)L za>d-Za<613&Q%lVoWwa>d`4xvrPs9$r79kE#G|%&^xr@ds;OZny_rr z^)Rllq2cBio(^%$bvLe)XgC9wlDW>Q;XT;b0*y4jJ}<*39dljm!TkxjS84e8z=?t` zFR6Hf{0fFx&@q+(!nXm()ljtT{vHZ_UOqQ|)X yHL' +- Mention each feature only once + +Changelog: --- """ diff --git a/pkgs/matrix-bot/matrix_bot/openai.py b/pkgs/matrix-bot/matrix_bot/openai.py index 593bf44..acdaa00 100644 --- a/pkgs/matrix-bot/matrix_bot/openai.py +++ b/pkgs/matrix-bot/matrix_bot/openai.py @@ -12,6 +12,10 @@ url: str = "https://api.openai.com/v1/chat/completions" def api_key() -> str: + openapi_key = environ.get("OPENAI_API_KEY") + if openapi_key is not None: + return openapi_key + openai_key_file = environ.get("OPENAI_API_KEY_FILE", default=None) if openai_key_file is None: raise Exception("OPENAI_API_KEY_FILE environment variable is not set") From f4c8243e9cb02500716ba8b3999f890714372ffd Mon Sep 17 00:00:00 2001 From: Qubasa Date: Wed, 3 Jul 2024 19:03:39 +0200 Subject: [PATCH 2/3] matrix-bot: Better changelog --- modules/matrix-bot.nix | 2 +- pkgs/matrix-bot/matrix_bot/changelog_bot.py | 19 ++++++++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/modules/matrix-bot.nix b/modules/matrix-bot.nix index 9dd6e4a..63e812b 100644 --- a/modules/matrix-bot.nix +++ b/modules/matrix-bot.nix @@ -33,7 +33,7 @@ in script = '' set -euxo pipefail - mbot + mbot --changelog-room "\!FdCwyKsRlfooNYKYzx:matrix.org" --review-room "\!tmSRJlbsVXFUKAddiM:gchq.icu" ''; }; } diff --git a/pkgs/matrix-bot/matrix_bot/changelog_bot.py b/pkgs/matrix-bot/matrix_bot/changelog_bot.py index a760757..1e8e8d3 100644 --- a/pkgs/matrix-bot/matrix_bot/changelog_bot.py +++ b/pkgs/matrix-bot/matrix_bot/changelog_bot.py @@ -2,6 +2,7 @@ import asyncio import datetime import json import logging +import shlex import subprocess from pathlib import Path @@ -65,6 +66,7 @@ def write_file_with_date_prefix( async def git_pull(repo_path: Path) -> None: cmd = ["git", "pull"] + log.debug(f"Running command: {shlex.join(cmd)}") process = await asyncio.create_subprocess_exec( *cmd, cwd=str(repo_path), @@ -81,6 +83,7 @@ async def git_log(repo_path: str, ndays: int) -> str: "--stat", "--patch", ] + log.debug(f"Running command: {shlex.join(cmd)}") process = await asyncio.create_subprocess_exec( *cmd, cwd=repo_path, @@ -160,15 +163,21 @@ async def changelog_bot( log.info(f"Generating changelog from {fromdate} to {todate}") system_prompt = f""" -Create a concise changelog for the past week from {fromdate} to {todate}, focusing on new features and summarizing bug fixes into a single entry. Follow these guidelines: +Create a concise changelog for the past week from {fromdate} to {todate}. +Follow these guidelines: -- Discard duplicate entries -- Discard uninteresting changes - Use present tense - Keep the summary brief - Follow commit message format: "scope: message (#number)" -- Link pull requests as: '{gitea.url}/{gitea.owner}/{gitea.repo}/pull/' -- Mention each feature only once +- Link pull requests as: '{gitea.url}/{gitea.owner}/{gitea.repo}/pulls/' +- Mention each scope and pull request number only once +- Have these headers in the changelog if applicable: + - New Features + - Bug Fixes + - Refactoring + - Documentation + - Removed Features + - Other Changes Changelog: --- From 670a5c3e3f0dac35b8352dfd74d98712fe2004bc Mon Sep 17 00:00:00 2001 From: Qubasa Date: Wed, 3 Jul 2024 19:08:08 +0200 Subject: [PATCH 3/3] matrix-bot: Fix systemd script --- modules/matrix-bot.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/matrix-bot.nix b/modules/matrix-bot.nix index 63e812b..5069c38 100644 --- a/modules/matrix-bot.nix +++ b/modules/matrix-bot.nix @@ -33,7 +33,7 @@ in script = '' set -euxo pipefail - mbot --changelog-room "\!FdCwyKsRlfooNYKYzx:matrix.org" --review-room "\!tmSRJlbsVXFUKAddiM:gchq.icu" + mbot --changelog-room "!FdCwyKsRlfooNYKYzx:matrix.org" --review-room "!tmSRJlbsVXFUKAddiM:gchq.icu" ''; }; }