Ang presyo sa paglalin sa Mercurial sa Python 3 mahimong usa ka agianan sa wala damha nga mga sayup.

Pagdumala sa sistema sa pagkontrol sa bersyon Mercurial pasagdi ko resulta pagtrabaho sa pagbalhin sa proyekto gikan sa Python 2 ngadto sa Python 3. Bisan pa sa kamatuoran nga ang unang mga pagsulay sa porting gihimo balik sa 2008, ug ang paspas nga pagpahiangay sa pagtrabaho uban sa Python 3 nagsugod sa 2015, ang bug-os nga abilidad sa paggamit sa Python 3 gipatuman lamang sa pinakaulahi. sanga sa Mercurial 5.2.

Ang mga panagna bahin sa kalig-on sa pantalan alang sa Python 3 makapahigawad. Sa partikular, gilauman nga ang mga random nga sayup mo-pop up sa code sa paglabay sa daghang mga tuig, tungod kay ang mga pagsulay wala magsakup sa 100% sa base sa code, ug daghang mga problema ang dili makita sa panahon sa static nga pagtuki ug makita lamang sa runtime. Dugang pa, daghang mga third-party nga mga add-on ug mga extension ang nagpabilin nga wala mahubad sa Python 3.
Tungod kay sa panahon sa porting nakahukom nga anam-anam nga ipahiangay ang code sa Python 3, samtang nagpadayon ang suporta alang sa Python 2, ang code nakakuha og daghang mga hack aron makombinar ang Python 2 ug 3, nga kinahanglang limpyohan human matapos ang suporta sa Python 2.

Ang pagkomento sa sitwasyon sa Python 3, ang Mercurial maintainer nagtuo nga ang desisyon nga ipasiugda ang interoperability-breaking Python 3 ug ipahamtang kini isip usa ka bag-o, mas husto nga pinulongan, kung wala ang mga kalamboan nga may kalabutan sa mga developers, usa ka dako nga sayop nga hinungdan dako nga kadaot sa komunidad ug usa ka panig-ingnan kung unsa ang dili kinahanglan nga buhaton sa mga dagkong proyekto. Imbis nga anam-anam nga magtukod og functionality ug tugotan ang mga aplikasyon nga ma-incremental nga ipasadya, ang pagpagawas sa Python 3 nagpugos sa mga developers sa pagsulat pag-usab sa code ug paggasto sa mga kapanguhaan sa pagmintinar sa bulag nga mga sanga alang sa Python 2 ug Python 3. Sa pito ka tuig human sa pagpagawas sa Python 3.0 nga Gipaila sa Python 3.5 ang mga bahin aron mapahapsay ang proseso sa transisyon ug masiguro nga ang parehas nga base sa code nagpadagan sa Python 2 ug Python 3.

Source: opennet.ru

Idugang sa usa ka comment