From 6a05714aefe3bb244a3b2507382e481d375f7f0f Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Sun, 6 Oct 2019 00:04:21 +1000 Subject: [PATCH] PEP 605: Change ABI management to encourage pre-built wheels (#1190) * Change ABI management to encourage pre-built wheels * Actually dedicate a subsection to the 2 year cadence * Update naming discussion for proposal changes * Add discussion section for the pre-freeze flag * Make the abstract much shorter (as suggested by Antoine Pitrou) * Move example time line up and add pictures (based on PEP 602 images) * Clarify 4 month window for X.Y.0a1 preparation Co-Authored-By: Steve Dower --- pep-0605-example-release-calendar.png | Bin 0 -> 98541 bytes pep-0605-overlapping-support-matrix.png | Bin 0 -> 77526 bytes pep-0605.rst | 691 ++++++++++++++++-------- pep-0605/example-release-calendar.odp | Bin 0 -> 23774 bytes pep-0605/overlapping-support-matrix.odp | Bin 0 -> 22707 bytes 5 files changed, 460 insertions(+), 231 deletions(-) create mode 100644 pep-0605-example-release-calendar.png create mode 100644 pep-0605-overlapping-support-matrix.png create mode 100644 pep-0605/example-release-calendar.odp create mode 100644 pep-0605/overlapping-support-matrix.odp diff --git a/pep-0605-example-release-calendar.png b/pep-0605-example-release-calendar.png new file mode 100644 index 0000000000000000000000000000000000000000..03455634640066253b615b504ecb42b7c9580318 GIT binary patch literal 98541 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�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

  • exEf|IaYxZo2Z|o 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 F`WGUNO>_VN literal 0 HcmV?d00001 diff --git a/pep-0605-overlapping-support-matrix.png b/pep-0605-overlapping-support-matrix.png new file mode 100644 index 0000000000000000000000000000000000000000..609193ac2040ec43af416bcfb66b832ff193dd10 GIT binary patch literal 77526 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
    D=0nt+#@%q#ONTGGjw|R zFdI}GkphyLHJ*CjGBPjvWTEXu!6>wowWT>KkS`5_u@y>PlvH}r`HKN@ox@I_S0V+u zS?sE`lUyBl*^;R1ES}elh9P1=Q{tabBYKu3@uO#?Xkztfv>}e2Z9fliPaNAGWe;tf z#R#VR2QiQexGTFAISlQE`g+H*jgfs8Mb-eM{q+6;;@NdZC(k|2N*Tm7*xTO0XE z>UiyPAFG?`AFe#&*Y2_jd#x1Ek7}C3llACm+7P?EQfTGik`0SFSTawd44ZnSkh=Js zB3ONqdic)#t&R|TtZm{&iaF{KpFlrUhuBPoUsj>=&%^;0rRj86i7PRh#FxB?J$xEv zLb`5qn2Xq{npltR|21wpKp{X42p^sE(m^3E5>@0%u;nHGev`-i{@bdp?S`=^gVWHK zLribv?>zSNCPh_3v~cT5X_b>d%KNFG+d!sf@l=lQtq{u$T1)v4fP><{N4p|$g;*r( zE6v93M0>=^GesA4g(balzYc!v)xkqk(X7Slcr?*WH0}^R?6+-|xcTILscG}V`Q@vJ za;Zn|A1e#$7AVawQQ?>-AH7MT15K=ANZklMto)9rQ55omKZ?~~L&^5jDu&zpcyV1C z^Y%DuSa|^4=rOMM2Eu+Rq8Qs4VU(pW4I#Ii(1GRf@AprB_df|I60QK#hd`iF6h{T# zB#h2q{%3$rAguiHRZhK+W)H$1i6m(YQUBRT#g z%d!Kb=F6!6+;^vPgLO`$ep{*Xmg{@1<=V@my4P&}))3`ex9ZP%g}VF-b?liC)l210u(bQq6ml?)EPbh-2cdw+a`^Fgw{d(eAO>QE5o=wV|g!R`My1L8WP!dkCyDWn}wQiB2Jake5dwCYAx_ z1J#dO!?m`M{rhz9DAA%mQ<;y|vB0cu@|be;T1P2wOwo(E8t8mNj^pMxT4 zHaJWEl4wRKtc42v)*3-cHR4R;o3iNrVwUI=?FQ#p)Igvmo5ZXDs?xPdz3HPY+ST7! zX=1Ty73&3tQUqWj(u|FNb zhf2uVw|WJ@>KL?Q<_3J?askHrnd_M?uR5eX%?8|w(Kg4wXC^Av%T`%U((^g2_>RDG zo$6{&OYeK{d42*`Bxu{N1;c-6MzjOS!JT1cw7@hUN=pHtjTX`iios%?!Kk_5fAi4{ zI<<`5Q6#A}3ST5Z1qf&^*hfLh@7u?RTd1AMC^YNus8Ob$2N?F@CR9{Zxp^@^GX!<; z3jmNCE6DsP3r+a)7_4=L6^e(TodW~oi1o?c6Rk+~*CN31uTU25GzfP{}#~SR4Vo&ALo)ej%=R~2MwrHPQWQh$XeIqxJ24Ww9OU7k^d5Umq z9w=4_hTW$w{syfTP(@!Od49x*YB8Q4>FzgGV!+D;>H;mDj(g|zm=l{IkNmD0Kzsa) z8)^$b8B#${(?`br@0=n7hg1UL48RQ<5hyF>IjDo|F3A~P z(_3T#tKIwT1gHmAgVzBkVD><;ULxg=H{#AT<8$01RTBlWWr{TQP;gk=1oCSrD);!; zbZr9)m704$U4Z-Dm{FtX&(C$=Yl2J}1HAa4P{Le%2iC1DpPuRG)`TVvSj4}$0G7cd2g?<~bv@imO-E5gUO`m=h zEvERWM%V>5stO7eQP%O|Bq1iJ6wTNbaATy0!mtNMXqTV8o>$H{i)$N1JjisuO(`QIn7So6)^oq`pGqjg`W?DXDu`2mPeAwYh@ChVZ zf6&?m^IkD45*>~^P@WU3U_c%a%G3$E@>G~a@Vj0b0ca^y8&jFICb=PnFLZ|ZkGlRk z;d3UVk$=F(?&(Neh#Q^bfc*1-8P)rI&d`&%uUH5%qv!xpJSnT0=?mU9)H8SZFb*$w zT2nf7=$Z&|yd4B=%z#ruqV{k4P7x!X_qV)dZwq7Z0@7H^eJoJv0t}0t@??qL9Qp4V z7PA=s-6^XKP**|ilTL@*XGv@7@P|}FM9`Ef_~cm%$LyPJYP5k{xPQRo-6F=G*&=Dz zd&DN%FcvThIx+UB@%NE6%bKacIP{AAi*$~-E~5-fsxZO++B7}$qD@M{*`+;1?vS|(u!Oricy!aXmz@A81jDRxV&yNq^g?pdAVPr9eU|RHi)(J#8 zBLi5XhM+aLgFGLJg{dW?oInC!)Zu0Z;qJYZu-;yXj$WXJ1K4uutU~00i*wg@5iOWt zn(?CYB>J-6cop^pM8F}V`Zs3{(k7ED&=QTMyLvvV(j*2N5zC}jHMzTShU#=}hj0hr zCzb?Wqam=##oQ()aL|l=*Iq$ox&}$ATJZ>6Cg(iKw16P-!4zG};4n&~N@wTCEf3jL zD%sw6gp=?wa&smlGd2_W2yWdhJJd=YJ(OnvdXWi#EapF0e5Rzp80Mz=;^WBoRbM~{ z+fyWRa!qt6jRuYeO;23VINd8>{soSw1V@Nd{{RdqXaW;T@4`#E9Gdjfd=JIw?a)7- z|K}^}lQ&b%iVfp-i*rE(i9R_D2T+~FQQ{Bh?UE$ayHWz#R-nq)Ngv#kwSJfGM)E_7 zXu2eye$pUYkiSj^__@-_jD6)aIn}h9{_#xE=Qe(-`&^ex$)DKJ zLxTgIMjkmA{K|N?OSUU}XZ4G*VSI0M=^lLDY|ZyQ!V*GW^24OUZJO`4 zfk_2ej{ts-BSh=QX!6vHJY4b;G5F&ij?iil*OJ))(Y_*+wNxv}V!yZ>%P^zziM0j+ z$G^C-$-9TYxYTLvWtffBG1titjb1#jZ*@0)h;T*w#ZUhQ{w&}AGadf@+5+YIe@&48 z{R)VDK>L8{bZ*O>5uIHSszs3*w1#B=AG1~NZGj@mqGj*pD|2XK6wK&!J_egdw}}Mq z|IEeT8shbUZN8`%3fRN&x=wS`Ah(LgV)wPtn)pAfFEq~SY2Xu{P9JNdMw_$#`A^*O zZ{+y@gW`XKn*Rs(1xtt#5I8#*l;|=>hEXG-{WnnkERv#Fm9ggk_Bu*eL1@{3!_~y@ za!mxmM)xR0V*iu7FoVI4f_+*}VTw<)VIXgTq0obnjMQ zvZ|5?KKO;GWo@X)mhV^E>$upLGGb6F7*q$Xp9iqX3xyQ+AizUhONH}<**gZ-2=mKe zj>`fll@IKaQ@$wu%SIG}{nask+x@RaM1d+BJ-vzKap509L#4V9g%L1_6CV(?LCX4ZE2cS^g zIui@v#kbnxyz9<1^)xqWuhgCR*WLCch*8_Ti2noP~D?&#J z;>0pCGCBvSY#e~}z>44s`Bd%_I=s_`T3ez7Ku*vWD%~TYRU{5+$X)_sf}AjHTGfZ! zi=YZd-FjA3d{z-+p7%q) zV)+b;K^EHt+&1_CvPbi|>}{}=>pc}bIhENQjvScc~(bIYo zwRhFe;p$NDyH-{HwH=@~0!KwEs5^x@A@yHrBAL%QCIHBC8wCk!)obiz7jAnE?H0fb-@w}rXvrS#fcRsiGX$M$ z+`{i!Kvh$MS=_~VY|ttHAudOIltwVC(S5xD(i(-VbUJXV!(?F)13rq z|7TE_p{xSV-nY$EDgnMrkZ5Rl-o=WtZht>V*)@j7$O5Y=>pyG2^#S)?>13SY)+tbS zk0z9TFuw$ROdJ+{0ljUuIAGH_3a*Md5rzOZ?j@jyIeQV8U6|l+gYBw=ygx-_p$VuY z>xN-E>5R2P8KTI96@Pr##2U0nWY(jH6!JBn3M8*~HM~Y@0hGh5LJ-Ap0y5qg0guYg z-`n6>?=&8@Ktn6}`;vD;#l4-kO@I|S4xGFhAq0@xTYmW{5CS5uN2e?RDq}d`AeS46 zA|dL+B~EyB$|67c0%ED<{`Q-Bz3EY2i;fO~5O7EhqE~jziF)H9B3Bd8D4*QnXIEbM zbA74|3U+hro59e0nGP)0ew~BlNCAj@!@JvLslG`t69-eg_0MA-L!2tro435#pfqD_ zkb0fw^Q;pc5Nw&25;%IV6|G}xZv{^4yTY)?qe%F3(xt=rS^*dGITa#UH6Tu4C!W;f zFe^fg@b_ynn%qZASTwFiNzd#3BFd;YTWJn(_PP_RlgKV&=0A@Y={3HA4YLYco(3-GSFP48{GMiXx+hBMATZ78~pEBao|IT#lnmoE0eU z&`t4uz+(rzy+mLjPwTx0%k;@z6OR4UAMc7G^d+5gb&Nmouv4=Xkz-^O=2C2(o?AZ& zfHh2{rpY&5k;pun4fF)!JxKGBmt6yc}=p@5&E>An^bBI~1HPv%# z@|6$PmG=1=jr>-7KakYJbr#oFqJi0fx7mIxx?44(_UJcoR{kgwJQ`wvn$4+b-*S_$ z$yEwO25Azsgku5{D^Ls)2&y&eY znBT&mjhZ@R`>}o`D%oy~jJ3;!=}Mq%oMLVA@p+(K{D`GhQUpzdT(8lFH9w( z;*`x5b+@cW%%SdUMWopL?CUVqk$(eA6tU48afVlF?Q_mobCzGuPX^zzDybVJq#EJ( za5k|AMt{+&^4cgHV;`T8XYs~IR~>HHxu~! zSYFXkvF+t59dwSwt&2?#XRH4(hh!&Fa(j7;iq1S7w3V^uupOI-6EBa(v(0f zS*_RiCP-8OsD*e5yWYpd;A{)KDa(RghGr=nG4wM39QoTh%@aILD`9VtmBA2Q!lc0- z)GHUrcRyL9y#ES040Z_u9Pd(ImLa6a0L|E3A;mDQk7#T}Xw<-ss6=xbkqX)SU>l=V zA(cB4I6oBZZetiSy~NE-V$w;hwOjn|0pVlX^9^}n8cFA)Jq^D?kwv}CX*u?njlYLx zayGzFHUf&Vzk6jK!?mYN!LGd~Ulw`VOj6q@_HK~vcAiy!%aRk-uttgX0Bx^al zd~wyS+_d#)639BJV{z@X_}Q@NHJG{uASk102^ageeVI|sleHYktUv>c^dBEDI;U*D zwWDqg5E_uGV$laq(SZR2~7K%>-&qO zm3q+KOX`l44^})9qYNaC@gf#e+Bz7-HNU@=X{g-9(&PV>d>a2<2??t^?+MX+wd`=) zAkil8hnHqQza-h|@+qpddhlp_)`;a&=R%+BXu)O(dI=X&#*m0mclLc{V?-hZo(E%k>Z#gi6_Yp0jBDCh7*tnfre+8@|*hktuk}2x5Oo^3K4K!^j-jg1E z4UYg1p}EABnBWs$)TjkZc8hrhSzlrkXBpH=Mu2NE#?Oyv1i_A|ESX0C0}h6uQh=>i zX<@smGR`O&BUmQ@&|f)i-~s*Bat0AV$gy%v03p8`Q2_|~rc(+EA%i2y!FLoO9R7FF zdifnc#qEO?gu7QuU=`z!pD^&@~J=9s~xhC>zuyT)lCyNyvsYo0os_?sE1mSgl~uT-+9`fgkk=+;Q(F8dh)sA z_&pvb7OE}dj=6s`IX&`YYVeuJ!2F-x?4K*fAXldB@;-kI(st5rM5G7j%3J2M|^kq<_!p4My^`WMtDR zF%xV!qSTdkL`V=AbCz3d*SQy0J41q=?Et2@NBTB{{V$B3kH0R}IPEt@8?II=4m^9a zPXY)%<4ONK&0`U=x6~>kPj7aQ*!tt)YtFbRhlJgg_lu*UK_Mi0!ol^qaKtg-ZuZ4k zIDXTsfRbwLIN+!47V)M*IcV4g{^QeCKO#kY>xplxj(jSIMIh^7%XjV@5+8@qZiDFrYph! zX_tAAjKB81lAe2^BA|mfJVh5r+0JzUHQEK(Cz^%prkM>Q?sl}PZ?WqToK}#Agi$0?%n$om( zg=QL?`INf$$@+dgg@P*K@x!un@8xI7=^1Pw++ys&YP(+FIuAzYQ^%2_aO}9|^pbEI zND_=>?bEPdDBvu_YLt(#W;p8{pKE4_}?Ew^;BttCt~87AB`Ik=@YxEY{V|S3BG@kdQ*>OUJ9y#wH(Q_-TdRmrF_B z)9TJIo zrN}*|Z#`DM3Z^nGKu6B|Q%rTcc#%=6-!l<7-BqFs4t4l|6I8*~l2>%g%@)xr*K6P` z*THcP3K*{#8GqV(%8YfLbl+uAB?Ybu8W*`OIb4Z;9$Ayx$99oeKywc)1=W^$XMDFs z)*22$@AI`_p--Dp(q@wQfnZKVsMj^+FX2-uH`|~!!iq8Mj&Tjc(X`8PZ7}F$f8(*k z*EqbUX7!B?%GLH-U>9p56c~YBDPnbZQi?jLmv|2p5rJ1@DEXBSqwvnFr|l zIjT={*Hp6L+{2;7;9RFR7#R4b7*X4J=E0f~LgZp?zQ$&hLyb$r8nr@y~{F z`(~!MU6N_}t2WNLdx}zV#iSc_z7EGQ7oUxvvkUF3GQ3ZVXA@;iV&#${O#3#CyB2u?k8}IHOHlv{3 z)AT0+Vx#`k^YDA4b zPrr2X_k@jbb>ov{XyaqMgd`T5)lHD>RVcw{h-Fa;l%#jd#qh>)Y0obWXbYt{<{GCB z=^0Yi6elooXnZq^`igZvsBqTZBK31D`tW@o8_ZIsADhbDWZnMoJpd^_Ix%m6dUuMwmpe z$bvEOeqx^wXj}hQi<0s5XEBXzw=UW79c5LS!uM|*#Qqsy1HWkOmds>*AL-4exP^;t z#&q)4E!WM4gby+$7(8O=i%E?!$~5}o3Vs|yj_`f@NI)TFj0Rh8g{8m_=Sdy5u*>rA zB()vHM>-uud;#g{89fvY2tPF2zz?pxc zN7P9yD)68oZbRVVr6vb&woM)FOz&vhMvU>ydg}4r5 z4=%Z+f`f5_`)*U(k z7qIj7-iz*SbiO8uUw1=!n9bIzo%A;g`7X8j&wgpW*4aZbD5gGrxqNcwHe#@zlM#+u zwDH1(Iyt4gE6`?$e;p(m&U?u|g$^gDNYoKEO2%{Km5wl23y=r{fuEy^VH!ffmgeB* z?hGxIcl(?Q*s_%YWrOxmpjWsNRVbHsOw8~>gmXoAZ(O_lijBfB@MGO)Cz&d|F=mQs z^cJO>S0H~@EV|{~|IG{eYMl{g@u{=S2G&zXTHgQ_kkNnL}?0b z$&*B`!8sBsQ`?sY?<+4&Z(^_(rIdfTem^f--z`bZgF5v=#Xf9aTS%T$=Y2J5CcqM{ zKY-}YmMP}L0ZzuqPOV`xZel2-rb{Rv&#P5#14ydj>K-)S#vK)tVbwfD%dPBj$7!I^ zr1v$$Zi|~$fgVw#lAFq)8F;-7B7UD%G#bRc&-G+=+@tV@%^v%7Zx_QnyrRZX%D^{EyJ3m!DqRoOped0{jjHy+GS7tX`*_|r@3w=CtTKm8L zkqkhxVz~T3ZT$tQ01U4EQoW-%iiPoTd1H--)RZDYKi-ZWznOD$G9W{1H|?Q8uOFOe z36B9_@oVppVox;EU~rhul!ce5f^fa%8=|>02$;9ZTl%q^wD}d7CL3u z-cd7JPnQ=r$JH!(`=wMOovbAq@fKyAi z8aDI8=^Qt(_bxVlMR95%@40M~R+AMsqxB>?B8k<9A$vrYyBg|}B`c>cJU38)I{0UTXNS{1d!$6gL z;~(_|FTBvZSg&KQh^0y0o@f64i_+;8#RCK zAxW7=Hpkb?VC*2sR(W07-N95cK-Dj9K%f%i?WYe&^$b+ksujf@p3y`zB5!G=x8g|) zf?8SX`&odL-=YPW`}E~ndjFE+`@@Ro6n!==gdM8z3`~2Jk z7$7?OBEL+4&xngD;K7gKs%4a+_8SB6^jFEaY8$xqjh&%DfPoB#9tkOdC`6C^3xT

    HyZ($KZT$0}qr*7*T4TV|e<-)MK@;>IGkAV`V1P7tg@amB} zX@#6p3kI?#ObdH0gbAXJGM+Bx>&HCifU%%Kx<8Gb#2naIvDYCtuUvp8C`e7M3_oF4v$e& zS%SM$*2#@L_{r%5@Ez7ZT`bBWK3tPYj$!G0Z=GW@DRjy65olMLh$nl@kYVMpSC;O8 z|0srsI2+I(GiT@nfPO-!lqEfNOpfyG%QvE);PN~~!(W;}@Gm%!1jfNs2WU*4%EBr> zm9Y|o+2p`w<+$cnRf|aNmrCJgm`#J=u)2kypdq0iu*}A}S}{CKU|e&bvcDEaA@01@ z7Z3bwqQ#dz%RkE6x4_)tS42KbZ3NE8iX<8kpT*1gKM@@qc@8PKMVl3#WU~Ie6n#W0 zbt|)Q5we1k(ZxjEHgwugp&Xkf*%bx6_P7Z=`UHm5C_ zQ1Rv)e>bUn#c6xttOVg2Je?FElTr9l8H|J{U19PgdOPBczPr(9{Ka_S)aVsorlPe@ zBQg!66PlGZR*=U3AElP3*#VPcq+!@SL09*U@hJi!=cT>2t(T|Id>Qki*YS+WFfPnG zqI>%)mAa=Fd&2Twg4o*AR;ykryU-It`_VX-{C&(xWajuibwHeZqo`9UJ+VkM^3Kmh zy6dDwZ@!sBp2L*sD#CaWXX>rd&n|4}ft60wr_48sG^UnTYWX20;_mIs(|chglH}%s zhA~vNb%rqo1#J}@puf50ct+LRY)#-!f&9rlxkjh<58~v(>+$uc#a6&CL>^TB5;QD- ze&*_t`E{waoFj&C?c5KN<;PT@8C3(KC}=YR~4SLGI44|GY;a z`jhS{)q?GDnjt5GZ)4|@(bu8m?3(8W8^5rrpounpf_6h)DWJ;vp;;r)qv7Es2Tic` zFi>e09ZA`tvdf2ZSWhtyY6rCRrRw<8uav;qdBI^;naqNEXFOCqI`Cz3G!7||!kr!F zVAl~i%sCY}#D-~N(uI_{DQ|#^(Kv7tD+CR`I#f*Q z0xZmqrQME}1Too)fsDa!9G?v#)B7|GF^O(mqewjx@PNs4LYcHGCET&NQ$<+y*--17 zqGde1%;2BZ4!`$=y+^eZXj1+9h61tzC{%%>fpLAHYdRk>vfCD-VSsWl)ImA~olLb* zH4l*Rq@AyijWB;BWTT(l0j{RRj<^dU60z!<=2vK<+d)SN7%t0#vMehcD9IIk*c_0Q ziw@PlZUUWz?|xJdi~`CI)TZVEq)9tSUN@cigF7*@(I58;7_WC=(k|pY!G9JH%Y+;c z+k?1@jM$18aAz0D}kOMm|)cRwi+H3Q~m3fD}Z_h2Ot)D9O zKv|mgj_c1^2I!WF?3+ZFz0V@An?e4z+H4RP)1w3!tWN-@<}EN_DFh5hPGHl9ncJb~ zK`r~bQzxuy|66G$E#InaZ#XU!eOj*U`|Ld@iXLgOYIQ#u)FPO;0C^dMYA5ljp}h^J z;}5nkTKeW0sOo|7(RYKTvmIr>J`h((UReWE|8vkr;r5_zS>o7g;pHjKvmHt?BN#h< zg2{boA-NGS3dhMl-BZ}fTV_>{!7Qvms|P#b?UKB9C|&Yx3Q>u#;)xOD86KcoC41S4 zP2T{8F0Zy6@u9%caai0Z{zs>0%CxEsoLx)-D`~0kj)+iK1;#oXs^FeA`s{2D? z#Qrmj!CU(cpk5P0gF(l4-iC$1`ZBoM@8!i;fsyh~*o_bNXn4pJPCQ@2hZ+Aj$bl){ z2PZaFv6CN$HUNexe^DH%GHnqgi{%vUM;N9v(delkdp32j-N^e)ADWM9Q6xscVHc6; zGHu?8R&27lulWN-UKk!qiaMdM`tytyR-rfO)CkaK-@y8$Z%Oh)qCOzgnld0T@!|7P z0|#2n3khpv9;6-#Hf~x!QEsZxNCuDZqDAsr=GD&1czGvIPjia1f70=z@M(8`E+F7- zMAN%v8H8huf}>ndT>4#mUS zkv9&hVc%kNZ3a+|CHe7s92}YZEI?vUaWE_Bb|GUgk@nblmt5**A`li{8D+B)X%h>6 zRxiOY7M5k?Z`&eCjT}WPQDo_;_SXz?>YlTLZ%K>Zp}|N_!>x-})`St6?2hHFRaKVO zTfUU_=<}V%f?w?!oOQJFpjVl`fQoim-uJBowH>2A3_2?kO>%snC+zHnlZJkn>X3*J zNj%5gz?pjvcB!d95~0R+$8|Qbc>J`Sk5Gwc(QwH-TAJtjj3na9glxel)J>XSz)ptH z{rSIO@S*@{%`6W@5=O< zme0@M*@((u?IAM{`*H-UDjh9PeEq=M^71RKl-+W@>~MwpaqZ>rc>c(OCPWnt^`i28MaXTe`s+Z^KgE;`nh(|1 zAP^xvad$n!YNYUX*!O4k#q>%FcjNYLkBEUiGfY3O`aUGUh85Tb!-wA?C?|n8+m3Ol zBc&BSQP=PdrSqDg43cHs>Y;oB+Js4qYsz z8RlmTRLRVvkWZtGo9s4o_Km#o)IoAU!Ge^C{@1VCA8GrGT0Nz@WU8w<-FwXz7)gvm zft}XY9lMnJgn7+>6jA%#d#W44Zaj|=2{(L%k#>wZNID0Uf@J~1C;3>;*Mc5c-uv(% zEh4$vy+58JI7p{caod3*)Z&&>nPejm)KvM$Sb&?!(TJzE`<-bq^Rr_I(pAVcBGn*` zzoQ3A`S&4;W=+qd@YQ_0w$`SNE&h^ag5g)TtUjNk>R3e;-nhrCO6FyBPV>4OHgku3 z#>Y0r4|WXJkOGa+R;p9jPrs1 z>?@$E?zV5~knR!?knZl1l5Qz!=~lWMNsCgtySp0^q`OO`JEVF0==a_G-TVG;jQ5^r z=ul5^&hPBK_F8kzH781kB<;zpX@Xa>F;c~yas%rZWM|%~(w7KZ2M3GG z^x;GAU<$=6*gm#vkhI2sPa2cyF{<`=8s`eGV~x;?rHHzYK^EqCHA2ol)Yk$@NG~ZJ z%A$Y^cL?};%dFIeQEFznI)F7t@%l2|WgBv+d6Oi+ z)XpQMn3>IRrD4^pEUX;z4O$uxs-+Li{w!{g|4r{V$i+qGutNd^u)v6A*5lE)iiV`l za+#<`xRG`Un6Zo>rteeYp(lQ)(iAi20xBmL{YdDaeG^~Apo*BymKz5hbZAhyK)$)N zpM!svEMh7l2xZyG;XPx``4ew0i4if1r+>CHivyP9m-pICgP^lIt~%V>#b%NmP?1oj3cP{MF&rh^v!BA8cRMNi<5}x^iE6j{c_Ut)?Lzr%W4V+R3{_8Mwt?t$0%MPi0P#J} zN=i`H)kiI>e{(0aK{p@&F=tSbcW6JWx`AN^jRG~DE0~@GKYct5Lv6>FTGPVaTDIZy zNGPrJ0%kF6-;4Jm4tPx&Z`guqZ9~}>Mlo~0Yme-#g>rQiP7ASj!f_2#rSTIAG*Ns< zmZ+aKN0R5i9byac2MgQg&e1TgD-UqnUb^W*uA2kf>s>&hOXe_jmLRN{Hb)w$qCkBT zs9EOodn34Bz=M=t!B=^gi4BRs%cb6nN@%N^A^BCb z)H$&Qqv9YPnON~^*W`1_cGkx-xCkt6mpm~p1}chgo(eyTRMuj-m7wkq8(&>4qF4Ul z9ot|}eZBck=WL8IZre#)E#madp+A=U^A0LEGrb#~Np}?&YrOgGvzYJnmYZY4B`l!{ z^-g6ESod#gP(l}XIq$;=3Et5B;wH~NyyDhyi)=U90EEdh?f#WXqq#p@Pl-OAR zykEOM-~Gp1qB^&`YAf3wsoifJ$7wNpQW9-^>P$VLmQBV@>iBMG?>-tbKin$VD+J50-_>jFCvJiJ$cfFc~rp zvax@7>(ds=atwxRZ9|VL+5ACHkz3qDY(?0KQd{aIT@?8}5y|U=lSID9Jkk`HKLUfZ zbEvDY5hajdw~UZ}&7c}r&`I=ZBYJ%>CM1W3-5SHh_cBKMoCsfr<1CS1lJ^MmBrq$j zT8piy8G0l{(h1dl;u6?gx#V|6Og-TmMM$9+PQxQnKVk}ACTv4c+Lf$DA9jHRG@lkp7qpn0(dzBiz|#w+^)J+TXM_l~zl$TbvY8 zPFf4TeKAC)Fr3yV$-G1;&PeO?oTQd4I~aLgeLIutJ9D+Td*|?Dcavaa+;*ryAelaT zi%cFd9M_LuUHLrf-D=O6{YuYR2eeoGMU2Y0jh5qYL?QI|dhb>Gk4Q?)^Ly0`v9E=y zkcjw{S3$Y`*2{3@&M5!)Hsn) z@;OtyIbpAmdxi6R80C(1Kv%2wz4IJ2HSoK0xdx@foetAG@vAgZKl`~WP_zHdXdeap z7$QKsb^~agV}K*ZJsunuHV&BSi)49H01vPPob6{9fNEalM=t1U8xa-7rGm3bNMD9s zWmXm@HZ^EO`zq>*Kc%SeZ6esI(twCv(a0BH>2_!k=BCW|=4VuCGmy2Ff#^~OBjX4V z#)3|Jq|GYhS$qOA^D}!BIOcbNsU0~Cv6BO6%GlZVxD_CFUzp+p9bCWrE859I%}4>a z0|j3Dg><)Np9BtzAtn(pc$wwsC87^tOWLZnzTCBrjwK0F~8>Y-ImRRH7BnLsUW z3@~tiD+W=(Vd2U$4m0Ugj`V$?+ArZs*F0l&Ix*L~d&r9L+oYcCbDAZ%X_c1dCWg68*3gYWz9S<##UCjFtFarBWn1ENU> zZ%}8SGA?91qFZOb?SBmn7vl%%LeZ$(2fI{s)rJuh{J?=+N6NNP!84LiEboZ2?jV_ z$u!^V0yY(Fx-Tc%)ND^xIE3^^IiLak9S^|_$O{60aSml_2v6d!^i66MtH*0!kK}lvxMqNIXk0>zddBezB(5kBzLiPRA(jB{>i8RVlaQqN+ z&SIUaF|hiiid4{3E&5}>`Jy)FUII;HK<<9bQHm5FFmq;-Nx<-=90SY_>eILJFhd9nICeWX6kyuAKYo*N z@}CF8vx=eCb^vYcr4__xb!w2~_0%;BdWV-fH!xJ^6}H@`-|$k>Nrm1zZ*K|6B@|JD zfw?dxyEOS(`MS)!cZcICjI?x`KRXL23aq}*MfakVq1<_x(#PTv>iC-dFvcnFZ7&o! zHQB~oKa26`9HCZ<3jx_l!q{ekEobnqU1)jW<^9A3f9>C;NpX7{FRA3C_ZD3##O{{GA#?%3HT$5->_EQ^!iKNz_ST>Mx5Idc=X6u@Cfk z7+(~R2pcV#PNb$M6IK+0a)LX8^~4-}KzHO%>R=3P`-0jn^ymqRSSa!{&~;!=;?Ayj z(!a4rk)%wMQrqLZ?oSc2vzAL_qgrhI91lkI70(50b2sGuvb1)1()sX~GQvgg#PpZ< zWZe$3GnlN_)Eld<_N>x`eWab%dfAJJ4KjESW!{PAz#X#^_IV@+R9~xlE?>k$W=(+{ z$e;Wcdb7hia@`_TU*Pr1+}e8)g%2Jl>A)X9BH|Foki~(w z2coCh68#RiEt!;%21>RtL!V= z?4gb=JJXHlyZyFsMWq#S0Lb{S6bgsxcc)@p@#g`5? ze^&|ZqY#Q_H{t$oFpa%Y+#tPsvl9OVCmJQ}g=#MhcP1)@Dwl-&K|6VD!w6$1W+m3E zKvIBtv>+;bD6qlxy>DwA#Jo4-4CdxWGyWM^vmg4t0^NYg4jq68nOHzoB#EN9BlJBo zGN8PV^3|+s^&1rCumx}0g|dAb#9V6e1S91@7#e5qsQWF+Gba-`1Qp^=g-*;;+^Q~J z$ZMq%vLlv78RbqO(^o4z0hyEGNRZ5MF-s`9M|4c8yzGSkRwQfQNZ5my*oX7*Tt!id z7D18B7O!=c>$72cpP=X0_hHCq`{l5OXN)CuTwPmWoy_Dv{Cs~}dpzXkC1DNK@M8Ji zm6fBUsO7TN4lUv$<>VAa%`+vBsGNZ4a3%Z$!BHZFl^+d`52G7zaC|5iXvntt3H^<% z2$$d0(Ij+>YP&?208J`LM-xCdPJSv-9|3IhkA=8lqNnhm3o%SV^l_~6AVf{+A0-aO z_;Sr;UD*vREb3qD9sqcbK&z?tAxK$gD0!4zVc|KX*u-t|D4SOw`tk7+@$U@+%0W<0 zfbhs0JeR44-arJw|Nh!Gd_Qs_MIe3H0_tC-xjo?s3ppu}K47%_+#d}pNaKeIiet-E{1-(Q{4XYp?P`txEejf_sCuPbj(-}|(+Zh6ZG zVMnAqdcm`=&f+O0eY_)Nd;rFXD!{oe1lnR&W7&=4z0o*ww(v(?QtIC92 zo4h*p{_j#6q2=8u00{bOP8X@8|KoiRWvJD0-!jjNuo}q*xEUP;LqA_G_SKmt6uu++)GjRNp zGZhv#&ko7$ZChL$=alge16P1a9~}hc<(eO`lKme3U$F|4ur~7nawEhG>?Vpuv&oA% zcm)b~t<`q3&l^3O9^Y}9!u#-@kY1mBg`e1;oQq|Ul4^Wd!J<}*ZC~izeTwTA1-Z~2 zpue64g@Bo@kQywqM}((%=;y#)^*~04@SYvxf^t1n<+QfL;8h?5o(7Qw>>M-*ZcrYR z0`}7|P(?Cql{RJt;hv2Kv@ePcMS{xuSJlBJUWs7I-?(+Dp>NGM>SK%-`lgJ=Ej*9_ z0E7e}7&@I^Z83mK|DpplxebK>*VY^0F+}ap`w6<5|A32rRSr(tou^p)26#t7s$c+2 zbud!>Zgv(hfkEL(X1>37bBoh5qDH}6ESXAW)a=ROZ&e9&cD;^e<90J{iZ9oVUhPf= z)y9ALHQ%R{+$JL$ll1IHpqjw%fy0!t#%emQRKG=`&VDI9x#4v5WcjD+qV!;aWhrj% zh7CfUQlg*oaW~Ss*t#6i7EmxiOK(ey_bYP8WOToad(=-)WUW0?X3TxRtAf{D<`da!A91Vf-TkMsOdg2iNe%v249|BDw)%1)# ze$5GKOCkQjlpwfo@SKU&e;xvmWB>;~Z!n5nwDsQ`Nzf|O>pwOUq-oXB;GGGent!90 zhanP8pI>4>{6>ht_6DewLH)&hj$9>62yhC}9C|A?pV5kceXO+= zoe)wFQ3pf{Vgm}|?c{=y`!`m5c+n+|xY7OguiZ((hbRGtkQF+?wQFg^2=u)U0J2e_ z5e0$SA*WQ66V*S?+<&u(G}mdQPyTLwO`8UGTuyZJ1uoIP{X4w;>%OY44kYu~ zGn2nx_3E#7$R7$3Xe|8`uKueX!pdQf#O*-xR|D=(gaf%j`RfWUNN(^go;m5?*Y)3g zr4FO0KKLlfJPtLBBFfi9-~M%vOcH>%X(%LOqxa9xM5aR#C6CfS&lTO8VG4h0>EM^KR z8h?Z@9{s^PZ_VLMdm^Zp24d+Yl6W0}Rfefo@&)j&I)hBk0<4B!Xra*^GrtQk|Mn06 zGCKPF!jUs=KVAM(U#A_)7)DsS(VcjRBy7iQ8W{(GChW zI?+Hh6gu8H42Yohc>P1*A_6RS%WcIpkre57WX!&w_JA!hp;9#&AgwDyh)IC&qZ+(? z^Phql2tDCAUsr`7K-(syL)WKu*Tg~Y;xW?rS;&I}fLGxLKIfB`=kJ+20j@Rz;DT)+ zOn{qqtPeae3IOx~f%*WD_?TJ0al%TZ|KvG97;#JNA&ygKL&-YcN@*g(=Ld^=LWE## zQ=`84gD9?CDvMl6#?pd}iOc*up`s4m0K(@i7Ct3rlnEc;&PAyY{!ko83q9ubeB>e>Lr8{ntZ<5gUrL#f!P28gCdXhhU3V@w)V3#HR7mDf`tNiUF zbq^f6uFw|DP$GNRu7KI#7tJ3yK>xvh1K0ZVJ38KPuZW+?iBw+oKZ7g%mG#{#X3>3f}8 z+v=^!qJ%q6^LXm5{%;4#&8w4}s>?H_C!-9?5FL?8@w?K;hx097b?(5zwBgRJIy+W+ zM6<=rqh^POmVs@GPPOg_K&ya=UAdc8%0>xG5>p$a&P0(G>l{BJO(F=-xw0Q-vewtS zr>5hgWQ&2C2#5Li=k)5iQReRnLy;k+3dDv@li%bqYuhb{e!U~;Ue7dmoaRnS872BZ zebNhB7RJSazsHjQhll{4&(BbA*p4bkFre6WKcW0bIzm>g1}=`}bM_k;s*JrCXIay9Itts-QQ{Ck?{vhOKa zRMV^;o`G|HyYT4fgrTGF4D|x7yR;get>#*Nnl4fEppJ~zBEaZ@owFIi zd7v4&Dg}>_3-E0&r!~p2H|?`fu8wE>^9ewFhqAf+Ij|O^xcJr?z<5hwozkXLWo|+; z3*w9^YuJ?AQD6|)jA;`<*%^QqvP$#a<2DTqrBWEZ!AkHD9&9q&7(Gyq}^ zf#x+TOr-i#g`3#g*#t-hoH4Ju1}8y7OKKu1eVJk%M{)Z z9cG06Fu%0EcZ7hfzatj-TGLx?)e z+U4z3{G1B;t6EfaDJbp87C=p=Sq=p;4V#e60%-Io^6`e030piC_S7JxuEBb?i(+3k zlKJ{4KSHl8Wpv|plV;J2Q3$W^J~S+0Ab~aV7Dyy)HU|=K25ge_$@Zf$i}8u6q{%Rf zULtry?9trZE!j}Bq79>;G`^MtT~z8NWA6nDG<;oQ%L;z^cPuQrB495gNE4Qn0(X}& ze`wgf<*pQ5U8gMsLBY1O{J_`kvNd}y{Hrrg;HLyoIRMU87T24qR{{=xf`nOO8_il z1VMXt5VlJZ;wSinF>(=aZD&$;95m$th|)!nmc==L+$Tz?5|-wLIAt5zh-*PY;f<>} zU(5~w9a9(_45^psa(nT?l$`bn6r93Bh7jGM4amCK=G+Oqea7JcO96L8R~K|VFPr@y zeA9kpY<%oz;?;y~r(0z)X3&`fr^Em0lm}Ip5V6zroj4CiFm?8;@Yz<-fxL7#EAWh( zTOV~IZ;4MROi(B)5(6dLeQ=Tuq<;@i8h8|ZTryP<{a9EvM6#}kYls|Ekxd))d7fLg}i}}bpQwK7xWjZdEg)p268qu z{b7v-Z9!QGm)zZ{ulSyYw27LLt~5x;%Wpfs*j=#p$k<>UhPA*NlVywvdP(!A8;E_i z#ybJKy&@H6oJa?9pw$L=UK;xmaNfMA?lZz%Ifri#plhb`T6=vDp&gS-W40S*#L?;- zbp*gfJ<;{5zk+T|h6+XK#g)cvKJF#Sj4R~whuWwInIPNaA+doXaLTT6o&;p5`TYX) z-1%KN(apc3 z&QB38Wi$rl_frRSMBY>Fbg(HngOBHAO4*92Yq2HQDdi11)cc=cw(w(!x#cb|i}dPB zw<26LNqVZi$aIZ-cfjDjTT<8EG?tc{yc!(f zpJ$2O7|oVC)bG#E6NLyvRH8^)B`HAD(-3R5J6U8QiZG;XRyRKB2AY9bhY(G!7l<1T zah54E%&bJ^vOZ)U$=|1Su7Jk!7!uG=8r9lh1B1bZZ_W6?4mx=IAu{LA3~IK6p$krw zeGDjnbh$tJ-?MRWluG21=kjy*s_wcjZV&D2IUnrF_8aE&mE747X%=2T>Io-F@cn#2 zHTan?@zLhh*TjtS(%3!F?x>JEci%#^~RTY z^ybpUDaHbk!r zWaM97Tj_&9O(1epYZL`e1t=Jfjy6f-fAQf^S zIl6i}6H!oF^x>LnAIK$G0U!5?W{)?kw=m13g02d-yRk;QCNYosEdf_Jw0}4;41i)6 z8(CyTo!eCeswpSJnK=;KQ7IHyBf|qQy;0z>+zRQ)LqyH(uSQx_boR%pLep?LSf zqf3f`xU2UkO2}9tJL3VNYnhk(vWJ9hM+L{P-Y6{ zGoGmQs|3cg#Dqy8T{=T#_1?o@V45CsiQP?DRcu}XF2h>LVNGecB(q^GG6u5CB6RYq zL94gUOBo?l(1G5AVauCxO8s5wgyKVI2RoG#bE+w`DL?e+-$1@?64H?pP zI~%=W<{qb&k5_2!N^HLRnbcWk1PTVrv25AQ96r}Q?F_bhqLrOTtQ3N1-C9ssghf?bCfE ziuB-L|6!#KleeN7Vs$A4^enJqP-3N#n4#U6Q704yq@-+!&NciHmji&_wmm~X3@ygY zx{z5v?v1Z;{r#Br>hlCWka0=p*Huy@UCCX+^7(3mi46TIHXfktRR6K8@c>j^SQw(z zZ0Yqsb*Iq}#$I{STU`1^y?u-6L170}2{X4tn{)H?;=fN|JaW0q`JREX6}oP`Uwn`K zIPz}6QI{e>v=8*OQK%w}abD(uy3le5$`lQt9`4~E=ebm8DPNj$2FH=28Ee1LZE?lX zWSync^<3x%?&B5rH8V z|9V!*mEs(vk=J)%S|*F%T?M8sv`@X({i$WoDzyL9+YzsR9+jE$>dEUcXKzNc{k<?4i+VJ9$7Hk`|$mt2l%=!WBFF3v>!I5BgJDD z)8*kEVZp%s*G~pki4#V{9J(x9bM!53?fZCSP-ELgQ&(p4=o{@p;=6*??jz42QzLY| z_HxQ%cV@z)g#qj;10AHLrQwWMg}X7OnVi+7DfpJE6yy`IF}52cf%u+gxxF|k-AC|b z{?@FkTL=;ke7E98YjIe?&}ZG4xxR|?7O9nZ9JVuTt9Hb&6Gs$CR7i$ykgal=wyzww1 zS<2|0^fXTCUQIh6UgL*+b)f3Ff6&6_I|HgSVvbjDe_lcB@*LqIQ3W`00ZqTY&L^hD za*a1?nXws?N^0rU2weg3kD@4cP9b9$3XI|c7Sr8v-jgn0_e%FDi@x?&my*8BHv@wD z)!5WWAe$8jGZ^~x(dERkqbc8`rVNqIV<)>9o(~|fIf9T&qllaENXuFtk!L9P8Q#3w zTCmghLG*fTle?lojRRf?L7{Yrp>N#v1-Vj_#x5KPiUh}F&sfwi*CJWF0oy@^byS7r z-AtQbn|qjrB{!jl77T2<%VUt_5~BvM!?RfhK)-elVuN~@gZDed71xT%f>!9IyCcbj z4@jswm9M580x1-))p;d4Q5Za(8C{2a(HZkwMD!6|>r92B*p}FuDQ;-plQ_=Jokm!N z>gN-!c$3rU>(1`bX1nsFbn^1NPjxxQt-sOlmc1mSYHA@_VPEo{eOXBGzX_f$0q%3;KT%nE&8vw zpdJRm0ZgkS~${3o(;J$v8p2jX-(n!blTjF2XHwHLHNz#|oqx}rgM z`}R??PEUlH3q9msWL^Z=SixUpqhZVUQb3yq&o2)M%XBRli03>qudIL7y0KmL{Mu_* z*7NKKktRK!(zlOK%Nw7ISO5(w$egJhCTq;3)Gpx!A98za(AA5y9`$Tplk@vT3!q&`lZp7s0V=e5c1hjo$9-S2yEXw_ z(a_~_KZfeoY2H!vPc01nDx4vsLEU^8+bf%f6E5h0ZvC;#-H2_ixLF0x` zVHd-ga`fED$NcT%wwHovYp;j0UQ2O|(>lC3*GUCV$C*GaWwh1jrh8eZ@>K?yWKRN3 zqWvnNIH5{mF_AkbH0mgF@US+yq^*z7+IcLBN@=|wn9 zD+}~jEkS{UOGakz=_|K%?M*}~{6=vmAJyvPXj@+C82Q8FtRmh6^;BD9h?!u28ddc0 ziQnZB1sGlo0bE2GWb8!I=h$EoFyvH?FV8EF?w&_RkZt~K!HT7~2;2K@=F zX{)D#ruT-3QW!Uf;iP-ZE#^&AhO@+v!j$#1BB(1zcS>mODjSsU1T-Pi2_!?{N~UN4 zC`rKkl5OJ~4)rh?@KXijl5_wJtOgUYPU|he3Ve-X9R+)aIN-F+O3}p*V_@{5NS-y} zI}I_01G>JPvR%tTHBZ-20%L@W9%npr)GmKju*#}C7A@1sU;5cE{G5W<-y8*8?rB`E zoGV6l9hUq;3KIs6`G$eo(dQ-aQ$@&8JYwf;dwsDl51GBaBYb%S2%qXeU>0>V??=Gk z1&^;A4|kEO|B|hat~amWE5>WrpZJ9{#ve!4YxxYOo&qL1$gqPO(boh=XM&u-g~8EZp*pIP6@QCKgRClbm&vml7>c2O5l zZ?5k>+Xqb9SYSu5x(SNUa0u5GB8<&#H5M!aT+bnRt1S0~`Rp}S_019d=u84vNvdI= z$=PsHzHUN6wfEj`tbi2d_{lw&3jnlHUgHH=|G}+ z1dw_2CBv~pPm#a$8u{q0Z=Qzlb|cLy!xFzeWRnzrGizY{$|zWOf{D&v^5y#ii7$yC z9RM|W3&7%8B0kq|5jsF%2wC&FJD-M>Bw?oP9}%c*_=XFw=)8W$u0aPNl)>@7NXVt$ zme+$VP|8`TzH9gJ95**I_Z>}slsG~~BV@$>kNjS4lnqIUVG*3=7(mWO4u&|WcpJ!OGC(V(#^7a~37J-&027B#L=_Ck|j zp#K*hhD1h&z3?iZ;1#=ZC!Db}dmun`L>t|YGnI+a>Py?AEX9EkQ3icb(py9;i6o&f zExchT7Rpr8@(}&UB};<{&zV<7vEa%e2StQYJ2!zoM-r!nhWI`0{8xDdE8TnJ8gkO}l0xj5`;d?O893`J+} zqdUNTwgkR68ZDl`)ywTt*xtxcJ7EmpH0IQ&zIpLDUG;D}qtL7}a{19uIYwuX19HUt z!#+{VudIvowaC#&ppWwb(A#OrutyAEs+;{7ZE`zQ16=Zu)b&*peEBJ|T=B&sNt>gV z8(sdie5HN0NE~OHoBIS zPo|5eG!Kleyq!gLwq@6SJ4E(8P6(@}Q2#9uU-`V&&Ex9>dM;W5fQW86LaRv3-7n(2 zrQ(#b?0aM9qz|Gn1lq?Qrbc~rd+7JTnOv4_-y_6jHfn#oC-pVg5inVK9jw`7zWj6x1cm)T(me>?8xkA5ue8L;ryamuFBc<@Y+p?PUBl8J=;m{ z@5wBmx6Tv{s^y~+84$Un*Z{oA&KD#gKL>hUV1Z(%fdMOe=^&@?5c4HR{XlHRjxK9T4<}ShD{3C>_eZeT61Cqa*sF zm&5^SJpv^#EP^b#1WO}m>0)pBmuiBtZ&sE?>A2zg{5*-gbjKELlojAKOHqjjk`a() zvvEMWdY9-_p+Ew8O5c$BgqZc}Kr@VtGdDJNT(0gwB(vg8ZMdp<7Mi%fz%3}SO2cuwp@TLuC|-V(3$7#uQDk?d>bc(hwAwI**Ed{G1eu5%GC9~5ZU`_ zZXnki%Wf(y;B(ET-{z}-Tapcu0+Sz(z*9B%M@e%pKSy4s=DOfp)mvX45AS3tgSlZ6qTMB(!{;E>z0~PsGqAw zpCsgX$6gdiC;n2Gzf`|EG?+|j@dMtt;qbbfa85;1*0* z*^z2T!5s*{{&2A1r?B`XF8f`h2KLwVAxlhC$=l(yxzCk*uqoV8p&3+RF^ugT1mCS! zh@yx{oo}CD%rJARlo}hFc}=kZNiMlI0fUzVG0_p~y8 z*7LQ@CE69wZlmcRKxrqPbRWvZ_VnHEJ@7+QovXI$q01!73M}1uS?g#{Jo^hzPvQuJ z_|#bV*oYgYggbppKMTxNb_+%^Ne38f54O+Ol+D;4xz1N+X1qe^7cg~3ohG-j2Q4OS zJ2-Mup_ir#-w1mqxurMJmRBSvVx;6|Ja-B2$y$U~ZeaK@vk;J6+#PxTwkF8{4jwkrjik1jg7T zgJfr~#)D`*h3$zE^su2{J?D6>pOdCGBg2E2PSHl>d=%GgO`5=74$!SvUfpkc;W1Jj9lq@|apQDh+Y zJpb;P&TicO0@mT|x!pb>mFq?ut1@oB7ZxB|j(kJ__JNm_E&VCxT5%5`}9b4O=Ay z+PQ48ZelzLyD$0`MeiH+zYjCIt+-ffE9@=();zj!oxo-Aq$Nz{7T_*+Ye^>BWh>UE z%Fk;}6lnE4XULH?_4dhZD`U5Rtl-rfee-Oig5?185i`F=g$3{F7?UD+PR&Gzt0Gn% zxupoV^jadVh1l5AbYxCj(j~(0x~y!~NX}W`+9L!MPir>@$1q7peAgXDd!|@cqTM9| z^nB;4EZ%kPy*ylM=|MsBWeU=+cg%P{2u7u7iKEQ1-$#ox@wwDORXN-wbbInEuo_vs z_#m|16Q~5PfPvC>S$=*AneL@^bo$cumr+c(`_^87)#9QQI#C%5hzBllxh}1ScE!T+ z;H0~Srqa8XehzQjwVfm$F`BTcGHP)RKL2vAi}7NYJD$_%G!ome%=qiI0WhgAPFesZ z9!5UxR47dGanHFuFod&24GZ~PXT$%5IA{i1$a@Syx8gWo+dWEZqUR)sAaZk8vwyvO z1s~;gQTz}KPox+!`=kl(_iv`p@lghAZhs}V7z~m4NwsQIZ5>|2FqX1UJu+532AzwZ zFKorT{*hR=Wd2TZkxrslKX69JpQTiAqD97T3=-J7#A`c6>y-Vu1*w(^my~_BnTdN& z9te!ko$7lXBeR{O;dG2XLlHli^S}jcM2p*g^D{ld{_@L(abEGfQ=EaNZ$T7eWFUnG z#m|Q7dII|qBAY@qsk^jWrpHd(*YD@AJ#X7T#BWzH=j%wQkTr*5Rbo90F zBjjqZ`2=5Ql>)h#42WDW$;rch3ZlD))O@I+m>d$f*mJ70CBfS#RK0%70qzlZXq#J_+zqSqV>F3crqIUi71BAS|v%oS~AlA*!rWtb?_FwKV!EI#D(D|`>xz4}DN2!j}p^18}T z*}l~>;3CU&z15)7WKk5W%}~{V1pkv+6hHOMD*~RCXdDOa`@FA4_sC0`pkkRU??zUb zE3S(A``aG=>FL8`jY&Jof>1SIge1d5Dyyj8wjLSQ5?)@!Kg9d;WD~u{ncRNC5jvrG z{N@+j{JZ|`y9n=5oj*(z3VY}AY#jg=F_(yt!v&uW;O$EP@N zn^E-dA2#JlitIwX#bhdIi5KL0!Ek-~4W-!+<*SGd{;Zu*c#Bu^T-(*+OlG zVhhxya)LyL_2i2c>)FbjThL+kh@lcxn6)hguc_SOIS6hkf(ny1byn|HMi>wj_sEg< z?2W?HoI+64!Lus~k`=uqLs4*el9+(8^6%U3f=Q)8lVVVC;0tz3lLs-Q*Rb-7H>%K| zE*j0=JvUUCvGr7cF}3Sw++yA`gi<`6H=}$Vf^&nYo4C}@fvL17V}=!e z0h8BX5A=_8hc(dQ^K4@#ILv=P>w|7@@$^+2NYk*SCZvS77zv7^ls zH6+I}*PRJjMY)!fe#SUG9>T;(%po);UR%K@znX7TikHe|`V*L0Bs{rP90;W%gGGy| zIt&bxSxk#*x-h#y8Xb4@*zn1o3VD>{LC40saUK~tqACMKznJqmkq>I%jd!FCu%6E` z6F;rvV?f~KRPGO2--Y=XOG$w-L85*~kRC;v-!pxtaUU^zC6I5x*50iW?;ABpk zmVe(=W=mVckTCG(WqWmtm<3Uq*FnS1bDDCiaT@Ng+4@bc*0T2x_rFAID2uc!+6{j= z@-PY5#RUJp*5Er5{9sfyzf&{M_1wTw1J%SuDWwqaM}b~dX^brY7a9j8-5(xQHwJk4 z@vo%8+XkTyE#3Wdkajb=aGzNmJ!Cz=H^-W-%;>y&GzwA8R!J=w`w` z#M_)MukQlg9O8T2wNuW`(jMD_Pt#xT_i%450`Hoc#%1-9_ErHhAFBaeBU)5V`0s&~ zA{{7y(B-}Fw`yl!fouEcwh8~~d`^-0X&E0S0w)K@q(}5j52;|S-^t*khI}vK!+XV< z}V8f_lM_CLJzePz5DjraeU40N8@g(`X=-m^V7#G(QEh9 z<^$8B4=xM`<1$mI`;*$}xsN|3^xo0%3W+E_N>hK{D>NhXWg-Rz+hl92dYS+PF63{# z3ywjJPzxv8@$bCb<+zKxpRMEAE6f%*{VR}kg@k+V;G}YxVRg)OsSVG=8AX9&U8PC zHx>QW!OF4S5SeZMIx0J@FP1FbqQ)cch)f8$ZXw>aQ%p>$IhlG zp7y&q9l%4<`t+`X0A~o^Zoalex5MT3(n$xP95c2xBW6_vf9*W5_b|={+H5fMzQqv+ zC*2vpTWdYLm43Y+GB_bVq#bj2H=j_H<<)M3L-2eunB(=if9{TVTMJ^0=cDwxFG(M? zR!qo1YpEHy%UM688RF_To>E!no5pBA_g?n-^$k#BasXz!Q=cFm{kksv$6=9Mzxv@l zlMU~_<~#;!TXxOafr_4QntRZ%&moMpvR52EX3H5GM5nVR=NAFJ`ROS&dsybIY&yN} zrrq8s<$!urqd-pb-ej1eS=Ho$UO^h2m&T4q6-2y0Hw)7i*Cd2d@lvqrcMoPuLlshM zOb>_hU7{WkUMAtot9Tcx`L>80 zXcH5W-E8?Rb!nAEd|cmOU%lT%!(sUuwtOo)2)*TE&rHN$T(Yq3QM9+*Q2O1VTwI{0 z82cjptH3_|2bEqZ2OUDW@=zQ{1y$fRZJi5Q=@z}B&ZEWfPI4l(TF_fj4w0&d<`%^ zMnHbYuo241j4U(_cMRATEz^9XDi=pbW7y0m*^uXw-nI0c(bS(;u{i)BO?voD+Uc&v z7_=W=Rh0^$LDChSvXr26f!lL|vAs#~_b0Y*5HjjZoGx|RN)sXvlAk&(Ov}≪W1s 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 K=2VL(rTzz2Vq;4H literal 0 HcmV?d00001 diff --git a/pep-0605.rst b/pep-0605.rst index 5e9b26a6f..b462463da 100644 --- a/pep-0605.rst +++ b/pep-0605.rst @@ -18,43 +18,110 @@ Abstract Rather than proposing more frequent full CPython releases (as PEP 602 does), or a policy change to allow backwards compatible feature additions later in a release series (as PEP 598 does), this PEP instead proposes that we create a -rolling stream of production-ready beta releases by amending CPython's -pre-release management process as follows: +rolling stream of production-ready beta releases, together with alpha releases +that are specifically to be suitable as platforms for building extension modules +and wheel archives that are compatible with the subsequent beta releases. -* Feature freeze, ABI freeze, pyc file format freeze, and maintenance branch - creation all correspond with the first release candidate for an X.Y.0 release -* The X.Y.0 release candidate period is extended from 3 weeks to 2 months -* Beta releases from the master git branch would occur every 2 months - whenever there is no X.Y.0 release in the release candidate phase -* Routine alpha releases are removed from the process -* Release managers may still choose to mark particular releases as alpha - releases if they feel such releases are appropriate. If any such alpha - releases are made, it is expected that they would be in place of one of the - scheduled beta releases -* The deprecation policy for interfaces that have been included in an X.Y.0 - release or release candidate without being explicitly declared provisional - remains unchanged (refer to PEP 387 for details) -* Each new alpha or beta release may introduce new deprecation warnings for - interfaces that appeared in the previous X.Y release series -* Each new alpha or beta release may change or remove interfaces that either did - not appear in the previous X.Y release series, or emitted a relevant - deprecation warning in that series -* Additions to the `abi3` stable C ABI are permanent once they have been - declared to be part of that ABI in at least one beta release -* All other newly added interfaces that have appeared only in alpha or beta - releases are considered provisional, and may be changed in incompatible ways - without requiring a preceding deprecation warning +The key desired outcome of this proposal is that the usage guidance given for +beta releases would become "suitable for production use only in environments +with sufficiently robust compatibility testing and operational monitoring +capabilities", rather than current unqualified "not for production use". -As part of this change, the current "not for production use" guidance given for -beta releases would be amended to state "suitable for production use only in -environments with sufficiently robust compatibility testing and operational -monitoring capabilities". +Similarly, the guidance given for alpha releases would be amended to state +"intended for library compatibility testing and the creation of ABI compatible +binary artifacts", rather than simply saying "not for production use". + +The PEP authors believe these outcomes can be achieved by amending CPython's +pre-release management process as described in the Proposal section below. This PEP also proposes that the frequency of X.Y.0 releases be adjusted to begin each new release series in August every two years (starting in 2021, around two years after the release of Python 3.8.0). +Example Future Release Schedules +================================ + +Under this proposal, Python 3.9.0a1 would be released in December 2019, two +months after the Python 3.8.0 baseline feature release in October 2019. + +Assuming no further breaking changes were made to the full CPython ABI, the +3.9.0b2 release would then follow 2 months later in February 2020, continuing +through to 3.9.0b9 in April 2021. + +Any time a breaking change to the full CPython ABI was introduced, the first +pre-release that included it would be marked as an alpha release. + +3.9.0rc1 would be published in June 2021, 3.9.0rc2 in July 2021, and then +the full release published as 3.9.0 in August 2021. + +The cycle would start over again in October 2021, with the publication +of 3.10.0a1 (4 months after the creation of the 3.9.x maintenance branch). + +The exact schedule of maintenance releases would be up to the release team, +but assuming maintenance releases of 3.9.x were also to occur every other month +(offset from the 3.10.0 beta releases), the overall release timeline +would look like: + +* 2019-12: 3.9.0a1 +* 2020-02: 3.9.0b2 +* ... beta (or alpha) releases every other month +* 2021-04: 3.9.0b9 +* 2021-06: 3.9.0rc1 (feature freeze, ABI freeze, pyc format freeze) +* 2021-07: 3.9.0rc2 +* 2021-08: 3.9.0 +* 2021-09: 3.9.1, 3.8.x (final 3.8.x binary maintenance release) +* 2021-10: 3.10.0a1 +* 2021-11: 3.9.2 +* 2021-12: 3.10.0b2 +* ... beta (or alpha) and maintenance releases continue in alternate months +* 2023-04: 3.10.0b10 +* 2023-05: 3.9.11 +* 2023-06: 3.10.0rc1 (feature freeze, ABI freeze, pyc format freeze) +* 2023-07: 3.10.0rc2, 3.9.12 +* 2023-08: 3.10.0 +* 2023-09: 3.10.1, 3.9.13 (final 3.9.x binary maintenance release) +* 2023-10: 3.11.0a1 +* 2023-12: 3.11.0b2 +* ... etc + +If we assume two additional pre-releases were made that introduced breaking +changes to the full CPython ABI in the 3.9.0a5 and 3.9.0a7 releases, then the +overall calendar would look like: + +.. figure:: pep-0605-example-release-calendar.png + :align: center + :width: 100% + + Figure 1. Impact of the pre-release process changes on the calendar. + +There are always two or three active maintenance branches in this model, +which preserves the status quo in that respect. The major difference is that +we would start encouraging publishers to provide pre-built binaries for the +pre-freeze rolling releases in addition to providing them for the stable +maintenance branches. + +.. figure:: pep-0605-overlapping-support-matrix.png + :align: center + :width: 50% + + Figure 2. Testing matrix in the 18-month cadence vs. the 24-month + + +Package publishers targeting the full CPython ABI that choose to provide +pre-built binaries for the rolling pre-freeze releases would at least need +to build new wheel archives following the 3.9.0a1 release. Whether they needed +to publish updated binaries after subsequent alpha releases (e.g. 3.9.0a5 or +3.9.0a7 releases in the example timeline) would depend on whether or not they +were actually affected by the ABI breaks in those later releases. + +As with the status quo, all package publishers wishing to provide pre-built +binaries for the final release will need to build new wheel archives following +the ABI freeze date. Unlike the status quo, this date will be clearly marked +by the publication of the first release candidate, and it will occur early +enough to give publishers a couple of months to get ready for the final release. + + Motivation ========== @@ -124,40 +191,41 @@ feature delivery latency. Aims of this Proposal ===================== -The core of the proposal in this PEP is changing the beta phase of the CPython -pre-release process to produce a rolling stream of releases at a regular -cadence, and to ensure those builds offer a sufficient level of stability as -to be suitable for use in appropriately managed production systems. +The core of the proposal in this PEP is changing the CPython pre-release process +to produce a rolling stream of incremental feature releases at a regular +cadence, and to ensure that most of those builds offer a sufficient level of +stability as to be suitable for use in appropriately managed production systems. By adopting this approach, the proposal aims to provide an improved outcome for almost all Python users and contributors: -* for users of the new release stream, targeting the beta phase allows for even - lower feature delivery latency than the annual cadence proposed in PEP 602; +* for users of the new incremental feature release stream, targeting the + pre-release phase allows for even lower feature delivery latency than the + annual cadence proposed in PEP 602; * for core developers working on new features, increased frequency and adoption - of the beta releases should improve pre-release feedback cycles; + of pre-releases should improve pre-release feedback cycles; * for users of the established release stream, the increased adoption and improved feedback cycles during the pre-release period should result in increased feature maturity at the time of its first X.Y.0 release, as well as higher levels of ecosystem readiness; -* for Python library maintainers, the rolling stream of beta releases will +* for Python library maintainers, the rolling stream of pre-releases will hopefully provide more opportunities to identify and resolve design issues before they make it into a full stable release than is offered by the current pre-release management process; and -* for developers of alternative Python implementations, the proposed rolling - beta releases provide an additional incentive for extension module authors - to migrate from the full CPython ABI to the Python stable ABI, which may - over time make more of the ecosystem compatible with implementations that - don't fully emulate the CPython C API. +* for developers of alternative Python implementations, the rolling stream of + pre-releases may provide an additional incentive for extension module authors + to migrate from the full CPython ABI to the Python stable ABI, which would + also serve to make more of the ecosystem compatible with implementations that + don't emulate the full CPython C API. That said, it is acknowledged that not all the outcomes of this proposal will be beneficial for all members of the wider Python ecosystem: * for Python library maintainers, both this PEP and PEP 602 would likely result in user pressure to support the faster release cadence. While this PEP - attempts to mitigate that by marking the faster releases with the "beta" label - and removing the expectation to publish pre-built wheel archives, and PEP 602 - attempts to mitigate it by keeping the minimum time between full releases at + attempts to mitigate that by clearly marking which pre-releases include + potentially breaking changes to the full CPython C ABI, and PEP 602 attempts + to mitigate it by keeping the minimum time between full releases at 12 months, it isn't possible to eliminate this downside completely; * for third party extension module maintainers, both this PEP and PEP 602 would likely result in user pressure to start supporting the stable ABI in order to @@ -165,16 +233,17 @@ beneficial for all members of the wider Python ecosystem: available. Whether that's a net negative or not will depend on how the request is presented to them (it could be a positive if the request comes in the form of a courteous contribution to their project from a developer interested in - supporting the rolling beta releases); + supporting the rolling pre-freeze releases); * for some users of the established release stream that rely on the availability of pre-built wheel archives, switching to adopting a new release every 12 months may be an acceptable rate increase, while moving consistently to the 24 month end of the historical 18-24 month cadence would be an undesirable rate reduction relative to the 18 month cycle used for recent - releases. Whether this proposal would be a net negative for these users in the - long run would depend on how many projects migrated over to targeting the - Python stable ABI and hence produced wheel archives that would still be usable - on the rolling beta releases. + releases. Whether this proposal would be a net negative for these users will + depend on whether or not we're able to persuade library maintainers that + it's worth their while to support the upcoming stable release throughout its + pre-freeze period, rather than waiting until its API and ABI have been + frozen. Proposal @@ -184,11 +253,80 @@ The majority of the proposed changes in this PEP only affect the handling of pre-release versions. The one change affecting full release versions is a suggested change to their cadence. -Changes to beta release policy, phase duration, and cadence ------------------------------------------------------------ -This PEP proposes that the policy for beta releases be adjusted to be a -combination of the policies for alpha and beta releases: +Two year cadence for stable releases +------------------------------------ + +With the rolling pre-freeze releases available to users that are looking to +use leading edge versions of the reference interpreter and standard library, +this PEP proposes that the frequency of X.Y.0 releases be adjusted to publish +a new stable release in August every two years (starting in 2021, +around two years after the release of Python 3.8.0). + +This change is arguably orthogonal to the proposed changes to the handling of +the pre-freeze release period, but the connection is that without those +pre-release management changes, the downsides of a two year full release cadence +would probably outweigh the upsides, whereas the opposite is true for a 12 +month release cadence (i.e. with the pre-release management changes proposed +in this PEP in place, the downsides of a 12 month full release cadence would +outweigh the upsides). + + +Merging of the alpha and beta phases into a "pre-freeze" phase +-------------------------------------------------------------- + +Rather than continuing the status quo where the pre-release alpha and beta +phases are distinct and sequential, this PEP proposes that they instead be +combined into a single "pre-freeze" phase with a monotonically increasing serial +number on the releases. + +Rather than denoting distinct phases, the "alpha" and "beta" names would +instead indicate whether or not the release contains breaking changes to the +full CPython C ABI: + +* "alpha" releases would be "ABI breaking" releases where extension modules + built against the full CPython ABI in the preceding pre-release are not + necessarily going to load correctly +* "beta" releases would be "binary compatible" releases, where extension modules + built against the full CPython ABI in the preceding pre-release are expected + to load correctly, as long as those modules abide by the following additional + criteria: + + * the module must not be using any provisional or private C APIs (either from + the previous stable release series, or the in development pre-release series) + that were removed in this beta release, or were changed in an ABI incompatible + way + * the module must not be using any C APIs that were deprecated in the previous + stable release series, and removed in this beta release + +Pre-freeze phase duration and cadence +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Rather than being released monthly for a period of a few months while preparing +a new X.Y.0 release, pre-freeze releases would instead be consistently published +every two months. + +The only time this would not be the case is during the two month release +candidate period for an upcoming X.Y.0 release (see the release candidate +section below for more details). This means two otherwise scheduled releases +would be skipped (one corresponding with the first release candidate date, one +with the final release date). + +The pre-freeze phase would typically be expected to start 2 months after the +preceding stable X.Y.0 release. + +The first pre-freeze release for any new release series will always be X.Y.0a1 +(as there is no preceding release with the same ABI version markers to judge +binary compatibility against). + +Pre-freeze releases would gain an additional flag in their C ABI compatibility +markers to avoid binary compatibility issues with the eventual stable release. + + +Release policy for beta releases +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This PEP proposes that the policy for beta releases be set as follows: * as with current beta releases, the stable BuildBot fleet is expected to be green prior to preparation and publication of the beta release @@ -199,28 +337,50 @@ combination of the policies for alpha and beta releases: be expected to become a permanent part of that ABI unless and until that stable ABI version is retired completely (Note: there are no current plans to increment the stable ABI version) -* as with current alpha releases, beta releases would *not* be considered - feature complete for the next X.Y.0 release -* as with current alpha releases, all APIs added since the last CPython feature +* unlike current beta releases, beta releases under this PEP would *not* be + considered feature complete for the next X.Y.0 release +* unlike current beta releases, all APIs added since the last CPython feature release (other than additions to the stable C ABI) would be considered provisional -* as with current alpha releases, beta releases would be prepared and published - from the master development branch - -Rather than being released monthly for a period of a few months while preparing -a new X.Y.0 release, beta releases would instead be consistently published every -two months. - -The only time this would not be the case is during the two month release -candidate period for an upcoming X.Y.0 release, as described in the following -section. +* unlike current beta releases, beta releases under this PEP would be prepared + and published from the master development branch +* unlike current alpha or beta releases, beta releases under this PEP would be + required to be fully ABI compatible with the immediately preceding pre-release + in the series (excluding any changes to provisional APIs, or the removal of + APIs that were deprecated in the previous release series) -Changes to release candidate policy, phase duration, and cadence ----------------------------------------------------------------- +Release policy for alpha releases +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Given the proposed changes to the beta release phase, the release candidate -phase would see the following related adjustments: +This PEP proposes that the policy for alpha releases be set as follows: + +* as with current alpha releases, the stable BuildBot fleet is expected to be + green prior to preparation and publication of the alpha release +* as with current alpha releases, the release manager is expected to review + open release blocker issues prior to preparation and publication of the beta + release +* unlike current alpha release, the release manager would be expected to + target a similar level of stability to the current beta releases, even + for the alpha releases + +Under this PEP, an alpha release would be published whenever it isn't possible +to publish a release that satisfies the criteria for a beta release, and +allowing some additional time before making the release won't resolve the issue. + +It is expected that the full CPython API changing in a way that breaks ABI +compatibility (for example, a field may have been added to or removed from a +public struct definition) will be the most likely reason for publishing +additional alpha releases beyond the initial compatibility tag defining +X.Y.0a1 release, but the decision for any particular release rests with the +release manager. + + +Release candidate policy, phase duration, and cadence +----------------------------------------------------- + +Given the proposed changes to the alpha and beta release phases, the release +candidate phase would see the following related adjustments: * Feature freeze, ABI freeze, pyc file format freeze, and maintenance branch creation would all correspond with the creation of X.Y.0rc1 (currently these @@ -241,35 +401,6 @@ of Python projects to build and publish pre-built wheel archives for the new stable release series, significantly improving the initial user experience of the X.Y.0 release. - -Removal of routine alpha releases ---------------------------------- - -Due to the proposed policy changes for beta releases and release candidates, -the traditional CPython alpha release period would no longer serve a clear -purpose, and as such would be skipped, with the first pre-release in a new -series being X.Y.0b1. - -However, when it seems appropriate to do so, release managers may choose to -declare that a scheduled beta release will be marked as an alpha release -instead. For example, a release manager may choose to do this when major changes -have been made to the release management tooling, when a particularly -large feature has landed that the release manager views as having a high chance -of introducing unintended side effects, or when a new interface has been added -to the stable C ABI that is only useful when it appears as part of that ABI -(e.g. it may be enabling a new capability in the stable ABI that the full ABI -already supports in a different way), and requires further testing and design -feedback before being locked down in a beta release. - -In such cases, the beta serial number would be retained, but the release would -be marked as an alpha release instead, and hence the "not for production use" -caveat would apply. - -(The serial number would still be reset to 1 when entering the release -candidate phase - only alpha and beta release would share a serial number -sequence) - - Changes to management of the CPython stable C ABI ------------------------------------------------- @@ -278,11 +409,11 @@ built against any particular CPython release will continue to work on future CPython releases that support the same stable ABI version (this version is currently ``abi3``). -Under the proposed rolling beta release model, this commitment would be extended -to also apply to the beta releases: once an intentional addition to the ``abi3`` -stable ABI for the upcoming Python version has been shipped in a beta release, -then it will not be removed from future releases for as long as the ``abi3`` -stable ABI remains supported. +Under the proposed rolling pre-freeze release model, this commitment would be +extended to also apply to the beta releases: once an intentional addition to the +``abi3`` stable ABI for the upcoming Python version has been shipped in a beta +release, then it will not be removed from future releases for as long as the +``abi3`` stable ABI remains supported. Two main mechanisms will be available for obtaining community feedback on additions to the stable ABI: @@ -293,8 +424,8 @@ additions to the stable ABI: * for APIs where that approach is unavailable for some reason (e.g. some API additions may serve no useful purpose when the full CPython API is available), then developers may request that the release manager mark the next release - as an alpha release, and attempt to obtain further feedback that way - + as an alpha release (even in the absence of an ABI break in the full CPython + API), and attempt to obtain further feedback that way As a slight readability and usability improvement, this PEP also proposes the introduction of aliases for each major stable ABI version:: @@ -320,19 +451,44 @@ be made available:: // A Python 3.9+ addition to the stable ABI would appear here #endif -The documentation for the rolling beta releases and the stable C ABI would make -it clear that extension modules built against the stable ABI in a later beta -release may not load correctly on earlier alpha or beta releases. +The documentation for the rolling pre-freeze releases and the stable C ABI would +make it clear that extension modules built against the stable ABI in a later +pre-freeze release may not load correctly on an earlier pre-freeze release. The documentation for alpha releases and the stable C ABI would make it clear that even extension modules built against the stable ABI in an alpha release -release may not load correctly on any other release. +release may not load correctly on the next release if two alpha releases are +published in a row (this situation would ideally be rare). -Changes to management of the CPython version-specific ABI ---------------------------------------------------------- +Changes to management of the full CPython ABI +--------------------------------------------- -The CPython version-specific ABI has long operated under a policy where binary +This PEP proposes two changes to the management of the full CPython ABI. + +An explicit NEWS file convention to mark ABI breaking changes +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The proposal in this PEP requires that release managers be able to appropriately +mark a pre-freeze release as either an alpha or a beta release based on whether +or not it includes an ABI breaking change. + +To assist in that process, core developers would be requested to include a +"(CPython ABI break)" marker at the beginning of all NEWS file snippets for +changes that introduce a breaking change in the full CPython C ABI. + +The "CPython" marker is included to make it clear that these annotations relate +to the full CPython ABI, not the stable ABI. + +In addition to being useful for release managers, these markers should also be +useful for developers investigating unexpected segfaults when testing against +the affected release. + + +Explicitly marking builds against the pre-freeze ABI +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The full CPython ABI has long operated under a policy where binary compatibility only applies within a release series after the ABI has been declared frozen, and only source compatibility applies between different release series. @@ -373,51 +529,31 @@ A proposed reference implementation for this change is available at [4_] (Note: at time of writing, that implementation had not yet been tested on Windows). -Example Future Release Schedules -================================ +Updating Python-Requires for projects affected by full C ABI changes +-------------------------------------------------------------------- -Under this proposal, Python 3.9.0b1 would be released in December 2019, two -months after the Python 3.8.0 baseline feature release in October 2019. +When a project first opts in to providing pre-built binary wheels for the +rolling pre-freeze release series, they don't need to do anything special: they +would add the rolling release series to their build and test matrices and +publish binary archives that are flagged as being compatible with that release +series, just as they would if providing pre-built binary wheels after the +full CPython ABI freeze for that release series. -The 3.9.0b2 release would then follow 2 months later in February 2020, -continuing through to 3.9.0b9 in April 2021. +However, if the project is affected by a CPython ABI compatibility break in the +rolling release stream, then they will need to issue a version update that +includes both the new binary build, and a new environment constrained +``Python-Requires`` marker. -3.9.0rc1 would be published in June 2021, 3.9.0rc2 in July 2021, and then -the full release published as 3.9.0 in August 2021. +For example, if a project supporting the rolling release stream was affected by +a CPython ABI compatibility break in the 3.9.0a5 release, then they would add +the following metadata entry on the version that published the updated binary +build:: -The cycle would start over again in October 2021, with the publication -of 3.10.0b1. + Python-Requires: >= "3.9.0a5"; python_version == "3.9" -Assuming maintenance releases of 3.9.x were also to occur every other month -(offset from the 3.10.0 beta releases), the overall release timeline -would look like: - -* 2019-12: 3.9.0b1 -* ... beta releases every other month -* 2021-04: 3.9.0b9 -* 2021-06: 3.9.0rc1 (feature freeze, ABI freeze, pyc format freeze) -* 2021-07: 3.9.0rc2 -* 2021-08: 3.9.0 -* 2021-09: 3.9.1, 3.8.x (final 3.8.x binary maintenance release) -* 2021-10: 3.10.0b1 -* 2021-11: 3.9.2 -* 2021-12: 3.10.0b2 -* ... beta and maintenance releases every other month -* 2023-04: 3.10.0b10 -* 2023-05: 3.9.11 -* 2023-06: 3.10.0rc1 (feature freeze, ABI freeze, pyc format freeze) -* 2023-07: 3.10.0rc2, 3.9.12 -* 2023-08: 3.10.0 -* 2023-09: 3.10.1, 3.9.13 (final 3.9.x binary maintenance release) -* 2023-10: 3.11.0b1 -* ... etc - - -(The exact schedule of maintenance releases would be up to the release team - -alternating months with the rolling beta releases is the proposed target) - -There are always two or three active maintenance branches in this model, -which preserves the status quo in that respect. +What this does is add an additional compatibility constraint as part of the +published packages, so Python 3.9.x versions older than 3.9.0a5 won't consider +the updated package as a candidate for installation. Caveats and Limitations @@ -435,14 +571,14 @@ only proposes an expected cadence for pre-releases and X.Y.0 releases. However, for the sake of the example timelines, the PEP assumes maintenance releases every other month, allowing them to alternate months with the rolling -beta releases. +pre-freeze releases. Design Discussion ================= -Why rolling beta releases over simply doing more frequent X.Y.0 releases? -------------------------------------------------------------------------- +Why rolling pre-freeze releases over simply doing more frequent X.Y.0 releases? +------------------------------------------------------------------------------- For large parts of Python's user base, *availability* of new CPython feature releases isn't the limiting factor on their adoption of those new releases @@ -460,48 +596,48 @@ interests of operating environments that are able to consume new releases as fast as the CPython core team is prepared to produce them. -Why rolling beta releases rather than rolling alpha releases? ----------------------------------------------------------------- +Is it necessary to keep the "alpha" and "beta" naming scheme? +------------------------------------------------------------- -The code quality standards upheld by the CPython code review process and -BuildBot fleet make the "beta" label more suitable than the "alpha" label. +Using the "a" and "b" initials for the proposed rolling releases is a design +constraint imposed by some of the pragmatic aspects of the way CPython version +numbers are published. -The "production ready for some environments, but subject to change with limited -notice" caveat also aligns well with at least some uses of the "beta" term, -whereas "alpha" almost universally indicates "not yet ready for production". +Specifically, alpha releases, beta releases, and release candidates are reported +in some places using the strings "a", "b", and "c" respectively, while in others +they're reported using the hex digits ``0xA``, ``0xB``, and ``0xC``. We want to +preserve that, while also ensuring that any ``Python-Requires`` constraints +are expressed against the beta releases rather than the alpha releases (since +the latter may not enforce the ``abi3`` stability requirements if two alpha +releases occur in succession). - -Why rolling beta releases rather than something like "brisk release cadence"? ------------------------------------------------------------------------------ - -Using the "b" initial for the proposed rolling releases is a design constraint -imposed by some of the pragmatic aspects of the way CPython version numbers are -published (specifically, alpha releases, beta releases, and release candidates -are reported in some places using the strings "a", "b", and "c" respectively, -while in others they're reported using the hex digits ``0xA``, ``0xB``, and -``0xC``, and we want to preserve that, while also ensuring that the rolling -releases are all sorted after any alpha releases, and before the first release -candidate). - -However, there isn't anything forcing us to say that the "b" stands for "beta". +However, there isn't anything forcing us to say that the "a" stands for "alpha" +or the "b" stands for "beta". That means that if we wanted to increase adoption amongst folks that were -only being put off by the "beta" label, then it could make sense to rebrand the -rolling beta releases as "brisk" releases, emphasising the rate of release over -the fact that the release includes APIs and ABIs that aren't necessarily stable -yet. +only being put off by the "beta" label, then it may make sense to emphasise +the "\*A\*BI breaking" and "\*B\*inary compatible" names over the "alpha" +and "beta" names, giving: -In the near term, limiting adoption to folks that are comfortable with the -"beta" label would be a good thing, as initial adopters are likely to -encounter unexpected consequences at the level of the wider Python ecosystem, -and would need to take an active part in getting those issues resolved. +* 3.9.0a1: ABI breaking pre-freeze release +* 3.9.0b2: binary compatible pre-freeze release +* 3.9.0rc1: release candidate +* 3.9.0: final release + +This iteration of the PEP doesn't go that far, as limiting initial adoption +of the rolling pre-freeze releases to folks that are comfortable with the +"beta" label is likely to be a good thing, as it is the early adopters of these +releases that are going to encounter any unexpected consequences that occur +at the level of the wider Python ecosystem, and we're going to need them to +be willing to take an active part in getting those issues resolved. Moving away from the "beta" naming would then become an option to keep in mind -for the future (with "brisk releases" as a potential alternative name). +for the future, assuming the resulting experience is sufficiently positive that +we decide the approach is worth continuing. -Why rolling beta releases rather than alternating between stable and unstable release series? ---------------------------------------------------------------------------------------------- +Why rolling pre-freeze releases rather than alternating between stable and unstable release series? +--------------------------------------------------------------------------------------------------- Rather than using the beta period for rolling releases, another option would be to alternate between traditional stable releases (for 3.8.x, 3.10.x, etc), and @@ -518,7 +654,7 @@ be assigned to the *value* of any of the numbers in a release version. These community members instead prefer that all the semantic significance be associated with the *position* within the release number that is changing. -By contrast, the rolling beta release proposal aims to address that concern by +By contrast, the rolling pre-freeze release proposal aims to address that concern by ensuring that the proposed changes in policy all revolve around whether a particular release is an alpha release, beta release, release candidate, or final release. @@ -548,7 +684,7 @@ all the new features released in Python 3.9.0?". With calendar versioning on the rolling releases, that's impossible to answer without consulting a release calendar to see when 3.9.0rc1 was branched off from the rolling release series. -By contrast, the equivalent question for rolling beta releases is +By contrast, the equivalent question for rolling pre-freeze releases is straightforward to answer: "Does Python 3.10.0b2 include all the new features released in Python 3.9.0?". Just from formulating the question, the answer is clearly "Yes, unless they were provisional features that got removed". @@ -559,8 +695,8 @@ versioning concept, such as how ``sys.version_info``, ``PY_VERSION_HEX``, module naming would work. -How would users of the rolling beta releases detect API changes? ----------------------------------------------------------------- +How would users of the rolling pre-freeze releases detect API changes? +---------------------------------------------------------------------- When adding new features, core developers would be strongly encouraged to support feature detection and graceful fallback to alternative approaches via @@ -575,13 +711,13 @@ and the various ``os.supports_*`` sets that the ``os`` module already offers for platform dependent capability detection. It would also be possible to add features that need to be explicitly enabled -via a ``__future__`` import when first included in the rolling beta releases, +via a ``__future__`` import when first included in the rolling pre-freeze releases, even if that feature flag was subsequently enabled by default before its first appearance in an X.Y.0 release candidate. The rationale behind these approaches is that explicit detection/enabling like -this would make it straightforward for users of the rolling beta release stream -to notice when we remove or change provisional features +this would make it straightforward for users of the rolling pre-freeze release +stream to notice when we remove or change provisional features (e.g. ``from __future__`` imports break on compile if the feature flag no longer exists), or to safely fall back on previous functionality. @@ -591,6 +727,72 @@ have any practical way to add for checks against the value of ``sys.version_info``. +Why add a new pre-freeze ABI flag to force rebuilds after X.Y.0rc1? +------------------------------------------------------------------- + +The core development team currently actively *discourage* the creation of +public pre-built binaries for an X.Y series prior to the ABI freeze date. + +The reason we do that is to avoid the risk of painful debugging sessions +on the stable X.Y.0 release that get traced back to "Oh, our dependency +'superfast-binary-operation' was affected by a CPython ABI break in +X.Y.0a3, but the project hasn't published a new build since then". + +With the proposed pre-freeze ABI flag in place, this aspect of the +release adoption process continues on essentially unchanged from the +status quo: a new CPython X.Y release series hits ABI freeze -> package +maintainers publish new binary extension modules for that release +series -> end users only get segfaults due to actual bugs, not just +builds against an incompatible ABI. + +The primary goal of the new pre-freeze ABI flag is then to improve +the user experience of the rolling pre-freeze releases themselves, by +allowing pre-built binary archives to be published for those releases +without risking the problems that currently cause us to actively +discourage the publication of binary artifacts prior to ABI freeze. + +In the ideal case, package maintainers will only need to publish +one pre-freeze binary build at X.Y.0a1, and then a post-freeze +build after X.Y.0rc1. The only situations that should *require* +a rebuild in the meantime are those where the project was +actually affected by a CPython ABI break in an intervening alpha +release. + +As a concrete example, consider the scenario where we end up having three +releases that include ABI breaks: X.Y.0a1, X.Y.0a5, X.Y.0a7. The X.Y.0a7 ABI is +then the ABI that carries through all the subsequent beta releases and into +X.Y.0rc1. (This is the scenario illustrated in figure 1) + +Forcing everyone to rebuild the world every time there’s an alpha release in +the rolling release stream would almost certainly lead to publishers deciding +supporting the rolling releases was more trouble than it was worth, so we want +to allow modules built against X.Y.0a1 to be loaded against X.Y.0a7, as they’re +*probably* going to be compatible (there are very few projects that use every +C API that CPython publishes, and most ABI breaks affect a single specific API). + +Once we publish X.Y.0rc1 though, we want to ensure that any binaries that were +built against X.Y.0a1 and X.Y.0a4 are completely removed from the end user +experience. It would be nice to be able to keep the builds against X.Y.0a7 and +any subsequent beta releases (since it turned out those actually were built +against the post-freeze ABI, even if we didn’t know that at the time), but +losing them isn’t any *worse* than the status quo. + +This means that the pre-freeze flag is “the simplest thing that could possibly +work” to solve this problem - it’s just a new ABI flag, and we already have +the tools available to deal with ABI flags (both in the interpreter and in +package publication and installation tools). + +Since the ABI flags have changed relative to the pre-releases, projects don't +even need to publish a new release: they can upload new wheel archives to their +existing releases, just as they can today. + +A cleverer scheme that was able to retroactively accept everything built +against the last alpha or subsequent beta releases would likely be possible, +but it isn't considered *necessary* for adoption of this PEP, as even if we +initially start out with a simple pre-release ABI flag, it would still be +possible to devise a more sophisticated approach in the future. + + Implications for CPython core development ----------------------------------------- @@ -599,15 +801,20 @@ branch more consistently release ready. While the main requirement for that would be to keep the stable BuildBot fleet green, there would also be encouragement to keep the development version of -the documentation up to date for the benefit of users of the rolling beta +the documentation up to date for the benefit of users of the rolling pre-freeze releases. This will include providing draft What's New entries for changes as they are implemented, although the initial versions may be relatively sparse, and then expanded based on feedback from beta release users. +For core developers working on the CPython C API, there would also be a new +requirement to consistently mark ABI breaking changes in their NEWS file +snippets. + On the specific topic of the stable ABI, most API designs will be able to go -through a process where they're first introduced as part of the full CPython -API (allowing changes between beta releases), and only promoted to the stable -ABI once developers are confident that the interface is genuinely stable. +through a process where they're first introduced as a provisional part of the +full CPython API (allowing changes between pre-freeze releases), and only +promoted to the stable ABI once developers are confident that the interface +is genuinely stable. It's only in rare cases where an API serves no useful purpose outside the stable ABI that it may make sense to publish an alpha release containing a @@ -618,20 +825,31 @@ provisional CPython API instead. Implications for Python library development ------------------------------------------- -By using the "beta" labelling rather than the incremental feature release -numbering proposed in PEP 598, the hope would be that consumers of these -new rolling releases would realise that they're likely going to need to build -their own wheel archives from source, and will generally be more prone to -encountering library compatibility issues when updating to a new release. +If this PEP is successful in its aims, then supporting the rolling pre-freeze +release stream shouldn't be subtantially more painful for library authors than +supporting the stable releases. -Library authors who actually want to support the beta stream would have the -option of testing against the latest beta release in their pre-merge test -matrices (just as they test against the latest maintenance release of previously -published versions), with the CPython nightly builds offered by some CI -providers used solely in an advisory capacity for early detection of potential -compatibility problems. +For publishers of pure Python packages, this would be a matter of publishing +"py3" tagged wheel archives, and potentially adding the rolling pre-freeze +release stream to their test matrix if that option is available to them. -Having a rolling beta release stream available may also make it more feasible +For publishers of binary extension modules, the preferred option would be to +target the stable C ABI (if feasible), and thus enjoy an experience similar to +that of pure Python packages, where a single pre-built wheel archive is able to +cover multiple versions of Python, including the rolling pre-freeze release +stream. + +This option isn't going to be viable for all libraries, and the desired outcome +for those authors is that they be able to support the rolling releases by +building and publishing one additional wheel archive, built against the initial +X.Y.0a1 release. The subsequent build against X.Y.0rc1 or later is then the same +build that would have been needed if only supporting the final stable release. + +Additional wheel builds beyond those two should then only be needed if that +particular library is directly affected by an ABI break in any other alpha +release that occurs between those two points. + +Having a rolling pre-freeze release stream available may also make it more feasible for more CI providers to offer a "CPython beta release" testing option. At the moment, this feature is only available from CI providers that are willing and able to put the necessary time and effort into creating, testing, and publishing @@ -665,7 +883,7 @@ supporting at least the most recent feature release, and then dropping support for all X.Y.Z releases around 18 months after X.(Y+1).0 is released. This means there is a 6 month period every other year where only one feature release is supported. Under the proposal in this PEP, that period would -correspond to the final few rolling beta releases and the release candidate +correspond to the final few rolling pre-freeze releases and the release candidate phase for the upcoming stable feature release. @@ -681,27 +899,36 @@ work on bug fixes and smaller features before the first release candidate goes out, while the Language Summit and core developer discussions can focus on plans for the next release series. -The post-release core development sprint in release years will provide an -opportunity to incorporate feedback received on the release, either as part of -the next maintenance release (for bug fixes and feedback on provisional APIs), -or as part of the next release series. These sprints would also likely -correspond with the Steering Council elections for the next release cycle. +The pre-alpha core development sprint in release years will provide an +opportunity to incorporate feedback received on the previous release, either +as part of the next maintenance release (for bug fixes and feedback on +provisional APIs), or as part of the first alpha release of the next release +series (for feedback received on stable APIs). + +Those initial alpha releases would also be the preferred target for ABI breaking +changes to the full CPython ABI (while changes later in the release cycle +would still be permitted as described in this PEP, landing them in the X.Y.0a1 +release means that they won't trigger any additional work for publishers of +pre-built binary packages). + +The Steering Council elections for the next release cycle are also likely to +occur around the same time as the pre-alpha development sprints. In non-release years, the focus for both events would just be on the upcoming -maintenance and beta releases. These less intense years would hopefully provide -an opportunity to tackle various process changes and infrastructure upgrades -without impacting the release candidate preparation process. +maintenance and pre-freeze releases. These less intense years would hopefully +provide an opportunity to tackle various process changes and infrastructure +upgrades without impacting the release candidate preparation process. Release cycle alignment for prominent Linux distributions --------------------------------------------------------- Some rolling release Linux distributions (e.g. Arch, Gentoo) may be in a -position to consume the new rolling beta releases proposed in this PEP, but it -is expected that most distributions would continue to use the established +position to consume the new rolling pre-freeze releases proposed in this PEP, +but it is expected that most distributions would continue to use the established releases. -The specific dates for those releases proposed in this PEP are chosen to align +The specific dates for final releases proposed in this PEP are chosen to align with the feature freeze schedules for the annual October releases of the Ubuntu and Fedora Linux distributions. @@ -760,24 +987,26 @@ pre-existing Python deployment on the target system. For these use cases, there is a straightforward mechanism to minimise the impact of this PEP: continue using the stable releases, and ignore the rolling -beta releases. +pre-freeze releases. -To actually adopt the rolling beta releases in these environments, the main -challenge will be handling the potential for extension module segfaults if the -CPython ABI changes in an incompatible way between beta releases. +To actually adopt the rolling pre-freeze releases in these environments, the +main challenge will be handling the potential for extension module segfaults +when the next pre-freeze release is an alpha release rather than a beta +release, indicating that the CPython ABI may have changed in an incompatible +way. If all extension modules in use target the stable ABI, then there's no problem, and everything will work just as smoothly as it does on the stable releases. Alternatively, "rebuild and recache all extension modules" could become a -standard activity undertaken as part of updating to each new beta release. +standard activity undertaken as part of updating to an alpha release. Finally, it would also be reasonable to just not worry about it until something actually breaks, and then handle it like any other library compatibility issue -found in a new beta release. +found in a new alpha or beta release. Aside from extension module ABI compatibilty, the other main point of additional -complexity when using the rolling beta releases would be "roll-back" +complexity when using the rolling pre-freeze releases would be "roll-back" compatibility for independently versioned features, such as pickle and SQLite, where use of new or provisional features in the beta stream may create files that are not readable by the stable release. Applications that use these diff --git a/pep-0605/example-release-calendar.odp b/pep-0605/example-release-calendar.odp new file mode 100644 index 0000000000000000000000000000000000000000..92809161981f10228020498cf2adb16ba576acd2 GIT binary patch literal 23774 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 z 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