ราคาของการย้าย Mercurial ไปยัง Python 3 อาจเป็นร่องรอยของข้อผิดพลาดที่ไม่คาดคิด

ผู้ดูแลระบบควบคุมเวอร์ชัน หลายใจ ให้ฉันลง ผลลัพธ์ ทำงานเกี่ยวกับการถ่ายโอนโปรเจ็กต์จาก Python 2 ไปยัง Python 3 แม้ว่าจะมีการพยายามย้ายพอร์ตครั้งแรกในปี 2008 และการปรับตัวแบบเร่งด่วนสำหรับการทำงานกับ Python 3 เริ่มขึ้นในปี 2015 แต่ความสามารถเต็มรูปแบบในการใช้ Python 3 นั้นถูกนำไปใช้ในเวอร์ชันล่าสุดเท่านั้น สาขาของ Mercurial 5.2.

การคาดการณ์เกี่ยวกับความเสถียรของพอร์ตสำหรับ Python 3 นั้นน่าผิดหวัง โดยเฉพาะอย่างยิ่ง คาดว่าข้อผิดพลาดแบบสุ่มจะปรากฏขึ้นในโค้ดเป็นเวลาหลายปี เนื่องจากการทดสอบไม่ครอบคลุม 100% ของฐานโค้ด และปัญหาหลายอย่างจะมองไม่เห็นในระหว่างการวิเคราะห์แบบคงที่และจะปรากฏเฉพาะที่รันไทม์เท่านั้น นอกจากนี้ ส่วนเสริมและส่วนขยายของบริษัทอื่นจำนวนมากยังคงไม่มีการแปลเป็น Python 3
เนื่องจากในระหว่างการย้ายพอร์ตมีการตัดสินใจที่จะค่อยๆ ปรับโค้ดเป็น Python 3 ในขณะที่ยังคงรองรับ Python 2 อยู่ โค้ดดังกล่าวจึงได้รับการแฮ็กจำนวนมากเพื่อรวม Python 2 และ 3 ซึ่งจะต้องได้รับการล้างข้อมูลหลังจากการรองรับ Python 2 สิ้นสุดลง

จากการแสดงความคิดเห็นเกี่ยวกับสถานการณ์ด้วย Python 3 ผู้ดูแล Mercurial เชื่อว่าการตัดสินใจส่งเสริม Python 3 ที่ทำลายความสามารถในการทำงานร่วมกัน และกำหนดให้เป็นภาษาใหม่ที่ถูกต้องมากขึ้น หากไม่มีการปรับปรุงที่ก้าวหน้าที่เกี่ยวข้องกับนักพัฒนา ถือเป็นความผิดพลาดครั้งใหญ่ที่ทำให้เกิด สร้างความเสียหายอย่างใหญ่หลวงต่อชุมชน และเป็นตัวอย่างของการที่โครงการไม่ใหญ่โตจำเป็นต้องทำเช่นนั้น แทนที่จะค่อยๆ สร้างฟังก์ชันการทำงานและอนุญาตให้แอปพลิเคชันปรับแต่งเพิ่มเติมได้ การเปิดตัว Python 3 บังคับให้นักพัฒนาต้องเขียนโค้ดใหม่และใช้ทรัพยากรในการดูแลสาขาแยกกันสำหรับ Python 2 และ Python 3 จนกระทั่งเจ็ดปีหลังจากการเปิดตัว Python 3.0 Python 3.5 แนะนำคุณสมบัติเพื่อทำให้กระบวนการเปลี่ยนราบรื่นขึ้น และให้แน่ใจว่าฐานโค้ดเดียวกันรันทั้ง Python 2 และ Python 3

ที่มา: opennet.ru

เพิ่มความคิดเห็น