มันอาจเป็นเรื่องแปลกสำหรับฉัน แต่ฉันชอบที่จะรักษาโค้ดในโครงการที่มีชีวิตให้ทันสมัยอยู่เสมอรวมถึงห้องสมุด / กรอบงานที่พวกเขาใช้ ส่วนหนึ่งคือฉันเชื่อว่าเว็บแอปมีความปลอดภัยมากกว่าหากได้รับการติดตั้งอย่างสมบูรณ์และเป็นปัจจุบัน ส่วนหนึ่งของมันเป็นเพียงแค่สัมผัสของการย้ำคิดย้ำคิดในส่วนของฉัน
ตลอดเจ็ดเดือนที่ผ่านมาเราได้ทำการเขียนซ้ำครั้งใหญ่ของซอฟต์แวร์ของเรา เราทิ้งเฟรมเวิร์กของ Xaraya ซึ่งช้าและตายไปแล้วในฐานะผลิตภัณฑ์และแปลงเป็น Cake PHP (เราเลือกเค้กเพราะมันให้โอกาสเราในการเขียนซอฟต์แวร์ของเราใหม่อย่างรวดเร็วและเพิ่มประสิทธิภาพมากขึ้นกว่า Xaraya เพื่อทำให้มันคุ้มค่าในขณะที่เราอยู่)
เราใช้การทดสอบหน่วยด้วย SimpleTest และติดตามการตั้งชื่อไฟล์และฐานข้อมูลทั้งหมด ฯลฯ
Cake กำลังอัปเดตเป็น 2.0 และดูเหมือนจะไม่มีเส้นทางการย้ายข้อมูลที่ใช้การได้สำหรับการอัปเกรด อนุสัญญาการตั้งชื่อสำหรับไฟล์มีการเปลี่ยนแปลงอย่างรุนแรงและพวกเขาลดลง SimpleTest ในความโปรดปรานของ PHPUnit
นี่เป็นการบังคับให้เราอยู่ที่สาขา 1.3 เพราะถ้าไม่มีเครื่องมือแปลงบางอย่างมันเป็นไปไม่ได้ที่จะอัปเดต Cake แล้วค่อยปรับปรุงรหัสเดิมของเราเพื่อเก็บเกี่ยวประโยชน์ของกรอบเค้กใหม่ . ดังนั้นตามปกติเราจะจบลงด้วยกรอบเก่าในพื้นที่เก็บข้อมูลการโค่นล้มของเราและเพียงแก้ไขด้วยตนเองตามต้องการ
และนี่คือสิ่งที่ทำให้ฉันทุกครั้ง ผลิตภัณฑ์โอเพนซอร์สจำนวนมากไม่ได้ทำให้ง่ายพอที่จะทำให้โครงการเป็นปัจจุบันอยู่เสมอ เมื่อผู้พัฒนาเริ่มเล่นกับของเล่นเงางามใหม่จะมีการทำแพทช์ที่สำคัญสองสามอย่างกับกิ่งที่เก่ากว่า แต่การโฟกัสส่วนใหญ่จะอยู่บนฐานรหัสใหม่
คุณจะรับมือกับการเปลี่ยนแปลงที่สำคัญในโครงการโอเพ่นซอร์สที่คุณใช้อย่างไร และถ้าคุณกำลังพัฒนาผลิตภัณฑ์โอเพนซอร์ซคุณคำนึงถึงเส้นทางการอัพเกรดเมื่อคุณพัฒนาเวอร์ชันใหม่หรือไม่?