運(yùn)行IronPython項(xiàng)目的社區(qū)領(lǐng)導(dǎo)職責(zé)已經(jīng)交給了Alex Earl和Benedikt Eggers。之前的負(fù)責(zé)人Jeff Hardy自微軟在2010年不再積極參與以來一直負(fù)責(zé)項(xiàng)目的運(yùn)行。
Jeff Hardy寫道:
應(yīng)該已經(jīng)相當(dāng)明顯了,IronPython項(xiàng)目有點(diǎn)停滯不前,那主要是我的錯(cuò),我成了瓶頸。由于多方面的原因,我現(xiàn)在沒有時(shí)間給予IronPython應(yīng)有的關(guān)注,因此,我將項(xiàng)目的控制權(quán)交給了Alex Earl和Benedikt Eggers。新負(fù)責(zé)人有時(shí)間恰當(dāng)?shù)剡\(yùn)行項(xiàng)目,它應(yīng)該能夠取得更大的進(jìn)展。
我仍然會(huì)默默地關(guān)注這個(gè)項(xiàng)目,條件允許的話,可能還會(huì)參與進(jìn)來。這幾年非常有趣,IronPython項(xiàng)目的情況很好。
說到停滯不前,IronPython的最新版本是2014年12月發(fā)布的2.7.5,而且該版本“主要是一些Bug修復(fù)”。
IronPython 3
路線圖上其中一個(gè)最重要的問題是通過IronPython 3項(xiàng)目支持Python 3。隨著Python 2.x系列將在2020年走到生命的盡頭,有一個(gè)兼容.NET的Python 3版本對(duì)于該項(xiàng)目的長(zhǎng)遠(yuǎn)發(fā)展至關(guān)重要。
當(dāng)然,任何重大升級(jí)都會(huì)引發(fā)爭(zhēng)論。影響最大的可能是決定支持哪些.NET版本。2.7系列支持的最低版本為.NET 3.5。隨著微軟不再支持.NET 4.0、4.5或4.5.1,部分開發(fā)人員請(qǐng)求將IronPython 3支持的最小版本定為.NET 4.5.2。
對(duì)于這份計(jì)劃,主要的異議來自Windows Server 2003。雖然微軟自去年這個(gè)時(shí)候開始就不再支持該版本,但許多公司仍然把它作為關(guān)鍵任務(wù)軟件。它所能處理的.NET最高版本為4.0。
他們還想支持.NET Core,但尚未對(duì)此進(jìn)行評(píng)估,不知道它是否涵蓋了他們所需要的一切。
C支持
限制IronPython應(yīng)用的一個(gè)主要原因是,需要采用和CPython一樣的方式同基于C的庫(kù)進(jìn)行互操作。TheLastTechie責(zé)任編輯Traven寫道:
討論中提出的另外一個(gè)重要問題是,如何支持需要使用C擴(kuò)展的Python庫(kù)。如果IronPython希望擁有最廣泛的潛在用戶,那么別無選擇。許多重要的Python庫(kù),如Numpy,都使用C擴(kuò)展來提高運(yùn)行速度。它們應(yīng)該能夠完美地運(yùn)行,而且不需要重新編譯。
令人驚喜的是,在這個(gè)領(lǐng)域,有些工作已經(jīng)完成,比如Ironclad,按照設(shè)計(jì),該項(xiàng)目讓編譯好的CPython擴(kuò)展可以在IronPython中原樣運(yùn)行。壞消息是,該項(xiàng)目已經(jīng)很長(zhǎng)時(shí)間沒大有進(jìn)展了。要讓它成為一個(gè)有益于現(xiàn)代Python的項(xiàng)目,需要進(jìn)行大量的修改。
IronPython項(xiàng)目托管在GitHub上,遵循Apache 2開源許可協(xié)議。
查看英文原文:New Leadership for IronPython