Cena migrace Mercurial na Python 3 může být stopou neočekávaných chyb.

Správce systému správy verzí rtuťový zklam mě celkem práce na převodu projektu z Pythonu 2 do Pythonu 3. Navzdory skutečnosti, že první pokusy o portování byly provedeny již v roce 2008 a zrychlená adaptace pro práci s Pythonem 3 začala v roce 2015, plná schopnost používat Python 3 byla implementována až v nejnovější pobočka Mercurial 5.2.

Předpovědi o stabilitě portu pro Python 3 jsou zklamáním. Zejména se očekává, že v průběhu několika let se v kódu objeví náhodné chyby, protože testy nepokrývají 100 % základny kódu a mnoho problémů je během statické analýzy neviditelných a objevují se pouze za běhu. Navíc mnoho doplňků a rozšíření třetích stran zůstává do Pythonu 3 nepřeloženo.
Vzhledem k tomu, že během portování bylo rozhodnuto kód postupně přizpůsobit Pythonu 3, při zachování podpory pro Python 2, získal kód mnoho hacků pro kombinaci Pythonu 2 a 3, které bude nutné po ukončení podpory Pythonu 2 vyčistit.

V komentáři k situaci s Pythonem 3 se správce Mercurialu domnívá, že rozhodnutí propagovat Python 3 narušující interoperabilitu a vnutit jej jako nový, správnější jazyk, při absenci průlomových vylepšení relevantních pro vývojáře, bylo velkou chybou, která způsobila velké škody pro komunitu a je příkladem toho, že to nemusí dělat velké projekty. Místo postupného budování funkčnosti a umožnění postupného přizpůsobování aplikací vydání Pythonu 3 donutilo vývojáře přepisovat kód a vynakládat prostředky na údržbu samostatných větví pro Python 2 a Python 3. Až sedm let po vydání Pythonu 3.0 Python 3.5 zavedl funkce, které vyhladí proces přechodu a zajistí, že stejná kódová základna bude provozovat Python 2 i Python 3.

Zdroj: opennet.ru

Přidat komentář