• Dillo เริ่มต้นจาก Gzilla/Armadillo ในปี 1999 และมีอายุครบ 25 ปีในเดือนธันวาคม 2024 ผ่านช่วงที่การพัฒนาหยุดชะงักหลายครั้ง แต่ยังคงได้รับการดูแลมาจนถึงปัจจุบัน
  • การพัฒนาช่วงแรกวางอยู่บน GTK 1.0 ก่อนเปลี่ยนเป็น GPL พัฒนาโครงสร้างการสื่อสารแบบใช้สัญญาณ และ Concomitant Control Chain ซึ่งค่อย ๆ สร้างโครงสร้างภายในของเบราว์เซอร์ให้มั่นคงขึ้น
  • การย้ายไป FLTK 2 ช่วงกลางทศวรรษ 2000 หยุดชะงักเพราะความล่าช้าและขาดเงินทุน แต่หลังจากเปิดเผยพอร์ตในปี 2007 แพตช์ก็เพิ่มขึ้น และนำไปสู่การปล่อย Dillo 2.0.0 ในปี 2008
  • เมื่อ FLTK2 หยุดนิ่งโดยไม่มีรุ่นทางการ Dillo จึงย้ายไป FLTK 1.3 และออก 3.0.0 ในปี 2011 หลังจาก Sebastian Geerken เสียชีวิตในปี 2016 และอีเมลสุดท้ายของ Jorge ในปี 2019 การพัฒนาก็ซบเซาลงอย่างรวดเร็ว
  • ในปี 2022 การสูญเสีย dillo.org ทำให้เว็บไซต์ ที่เก็บโค้ด และเมลลิงลิสต์หายไป แต่ในปี 2024 โครงการกลับมามีชีวิตอีกครั้งด้วยการกู้คืนบน GitHub และการปล่อย Dillo 3.1.0

25 ปีนับจากจุดเริ่มต้นใน Gzilla/Armadillo

  • Dillo เริ่มขึ้นในปี 1999 เมื่อกลุ่มนักพัฒนาที่นำโดย Jorge Arellano Cid fork โค้ด Gzilla/Armadillo ของ Raph Levien
  • ณ เดือนธันวาคม 2024 โครงการมีอายุครบ 25 ปี และแม้การพัฒนาจะหยุดไปหลายครั้ง แต่ตัวโครงการยังคงดำเนินต่อมาจนถึงปัจจุบัน
  • Jorge นำโครงการตั้งแต่ปี 1999 ถึง 2019 และหลังจากนั้นก็ไม่มีข่าวคราว
  • ผู้ดูแลปัจจุบันไม่ได้มีความสัมพันธ์โดยตรงกับนักพัฒนากลุ่มเดิม แต่กำลังฟื้นโครงการในทิศทางที่รักษาเป้าหมายเดิมไว้
  • ประวัติของโครงการอาศัยข้อมูลที่รวบรวมจาก เมลลิงลิสต์, ChangeLog และ ประวัติ Git

การออกแบบช่วงแรกบน GTK 1.0

  • ตอนที่ fork มา Dillo ใช้ GTK 1.0 เป็นไลบรารี UI และรุ่นแรกออกมาในเดือนธันวาคม 1999 ตาม ChangeLog
  • Jorge กำหนด แนวทางการเขียนโค้ด เช่น การใส่คำนำหน้า a_ ให้ชื่อฟังก์ชันสาธารณะ และการเยื้อง 3 ช่อง เพื่อทำให้โค้ดเบสเป็นไปในแนวเดียวกัน
  • ในเดือนมีนาคม 2000 ได้เปลี่ยนไลเซนส์เป็น GPL หลังได้รับอนุญาตจาก Raph Levien นักพัฒนาหลักของ Gzilla/Armadillo
  • งานเขียนใหม่ครั้งใหญ่เพื่อรองรับกระแสการสื่อสารหลายทางนำไปสู่บทความของ Jorge Arellano-Cid และ H.H. Von Brand เรื่อง Network programming internals of the Dillo Web browser
  • แนวทางนี้ต่อมาพัฒนาเป็น Concomitant Control Chain ซึ่ง Dillo ใช้ติดตามการเชื่อมต่อหลายรายการและโมดูลภายใน

เอนจินเรนเดอร์และการขยายความสามารถ

  • Sebastian Geerken เริ่มส่งแพตช์เล็ก ๆ ราวเดือนมิถุนายน 2000 ก่อนย้ายไปทำงานกับเอนจินเรนเดอร์ และต่อมากลายเป็นผู้ออกแบบหลักของส่วนนี้
  • เอนจินเรนเดอร์เป็นคอมโพเนนต์หลักที่อ่าน tree ขององค์ประกอบ และจัดวาง ขนาดและตำแหน่ง ขององค์ประกอบต่าง ๆ เช่น คำในย่อหน้าและรูปภาพบนหน้าจอ
  • ในช่วงหลายปีต่อมา การรองรับ HTML และ CSS เพิ่มขึ้น โดยเฉพาะฟีเจอร์เกี่ยวกับ ตาราง และองค์ประกอบข้อความ
  • แม้ GTK2 จะออกมาแล้ว ทีมยังระมัดระวังในการย้าย Dillo ไปใช้ GTK รุ่นใหม่ เพราะกังวลเรื่องความซับซ้อนและขนาด
  • ในเดือนตุลาคม 2003 Jorge สอบถาม Michael Sweet ผู้ดูแล FLTK ว่าการย้าย Dillo ไป FLTK เป็นไปได้หรือไม่ และเห็นว่า FLTK เหมาะกับเป้าหมายด้านความเร็วและเสถียรภาพมากกว่า

การย้ายไป FLTK 2 และการแยก toolkit

  • ทีมมองว่า GTK 2.0 ใหญ่และช้ากว่า จึงตัดสินใจมุ่งไปที่ FLTK 2
  • ขณะนั้น FLTK 2 ยังไม่ได้ออก release แต่มีแผนว่าจะออกในไม่ช้า
  • ในเดือนสิงหาคม 2004 Sebastian เสนอ การออกแบบเพื่อทำให้ Dillo เป็นอิสระจาก widget toolkit
    • เป้าหมายคือหลีกเลี่ยงสถานการณ์ที่ Dw ผูกกับ Gtk+ อย่างแน่นหนา จนเวอร์ชัน GTK และ FLTK แตกแขนงออกไปโดยมีฟีเจอร์ต่างกัน
    • การออกแบบใหม่แบบเดียวกันยังอาจทำให้มีฟีเจอร์อย่างหน้าต่างพรีวิวทั้งหน้าแบบย่อ และการนำ Dw ไปใช้ซ้ำในกราฟิกปลั๊กอินได้ด้วย
  • ในช่วงเดียวกัน กลไกปลั๊กอินบน DPI protocol ก็ได้รับการปรับปรุง และบางฟีเจอร์อย่างดาวน์โหลด บุ๊กมาร์ก FTP และ HTTPS ถูกย้ายไปเป็นโปรแกรมภายนอกที่สื่อสารกับเบราว์เซอร์
  • Dillo 0.8.3 ที่ปล่อยในเดือนตุลาคม 2004 มี การรองรับ HTTPS อยู่แล้ว

พอร์ต FLTK 2 ที่ล่าช้าและ Dillo 2.0.0

  • พอร์ต FLTK2 มีเป้าหมายเพื่อทำให้เบราว์เซอร์เล็กลงและมีฟีเจอร์อย่าง anti-aliasing โดยในเดือนเมษายน 2005 Jorge แชร์ ว่างานพอร์ตเดินหน้าอย่างรวดเร็ว
  • แต่ซอร์สโค้ดของพอร์ต FLTK2 ใหม่ไม่ได้ถูกนำขึ้น CVS สาธารณะอยู่ระยะหนึ่ง และ Jorge มุ่งไปที่การ หาเงินทุน เพื่อครอบคลุมค่าใช้จ่ายในการพัฒนาโครงการ
  • ในเดือนมีนาคม 2006 Jorge แจ้ง ว่าการระดมทุนไม่ประสบความสำเร็จ และโครงการก็เสี่ยงหยุดชะงัก
  • ตั้งแต่กลางปี 2006 จนถึงปี 2008 ไม่มี release ของ Dillo และพอร์ต FLTK2 ยังคงปิดอยู่
  • วันที่ 30 กันยายน 2007 Jorge ประกาศ ว่าพอร์ต FLTK2 พร้อมใช้งานแล้ว
    • โค้ดเบสหลักบางส่วนถูกย้ายไปเป็น C++
    • เอนจินเรนเดอร์เปลี่ยนมาใช้ไลบรารี FLTK2 แทน GTK1
    • สนับสนุนให้นักพัฒนาเข้าร่วมและมีส่วนร่วม
  • หลังเปิดเผยพอร์ต แพตช์จากนักพัฒนาคนอื่น ๆ ถูกรวมเข้าอย่างรวดเร็ว และโครงการกลับมาคึกคักอีกครั้ง
  • ในเดือนกันยายน 2008 มีการ ประกาศ รองรับแท็บ และในเดือนตุลาคม 2008 Dillo 2.0.0 ก็ถูกปล่อยออกมา

การย้ายไป FLTK 1.3 และความซบเซาที่กลับมาอีกครั้ง

  • ในปี 2011 2.2.1 ซึ่งเป็น release สุดท้ายของสาย 2.X ออกมา และตั้งแต่ช่วงนี้เป็นต้นไปก็ไม่พบแพตช์หรือกิจกรรมในเมลลิงลิสต์ของ Sebastian อีก
  • เมื่อการพัฒนา FLTK2 เองหยุดนิ่งและไม่มี release ทางการ Dillo จึงเจอปัญหาต้องลิงก์กับแพ็กเกจ FLTK ที่ไม่มีให้ใช้ในดิสทริบิวชัน
  • ทีมตัดสินใจว่าเมื่อ FLTK 1.3 ออกแล้ว จะย้าย Dillo ไปทางนั้นและขยับเป็น ซีรีส์ 3.X
  • หลัง FLTK 1.3 ออกในเดือนมิถุนายน 2011 งานพอร์ต Dillo ไป FLTK 1.3 ก็เดินหน้า และไม่กี่เดือนต่อมา Dillo 3.0.0 ซึ่งเป็น release แรกบน FLTK 1.3 ก็ออกมา
  • ในเดือนกรกฎาคม 2012 Sebastian เปิดเผย อัลกอริทึมการตัดคำด้วยยัติภังค์ ใหม่ที่ใช้กลไกแบบเดียวกับ TeX และ implementation นี้ถูกใส่ใน Dillo 3.0.3 เมื่อเดือนเมษายน 2013
  • มี release หลายรุ่นต่อเนื่องจนถึง Dillo 3.0.5 ในเดือนมิถุนายน 2015

การเสียชีวิตของ Sebastian และการสูญเสีย dillo.org

  • ขณะนั้น Sebastian กำลังทำงานกับ GROWS redesign ซึ่งเปลี่ยนวิธีคำนวณขนาดของวิดเจ็ตองค์ประกอบบนหน้าเว็บ
  • เมื่อ Sebastian เสียชีวิต ในเดือนตุลาคม 2016 งานจำนวนมากจึงไม่ได้ถูกรวมไว้ใน release ใหม่
  • หลังจากนั้นการพัฒนาก็หยุดชะงักอย่างรวดเร็ว และในปี 2019 Jorge ส่งอีเมลสุดท้าย แนะนำให้ใช้เวอร์ชันปัจจุบันใน repository แทนที่จะรอ release 3.1
  • ในปี 2022 การ สูญเสีย โดเมน DNS ของ dillo.org ทำให้เว็บไซต์ ที่เก็บ Mercurial เมลลิงลิสต์ และเซิร์ฟเวอร์อีเมลหายไป
  • หลังจากนั้นไม่เห็นกิจกรรมของนักพัฒนาอีก โครงการจึงถูกปล่อยทิ้งไว้ ส่วนเว็บไซต์ dillo.org ดูเหมือนสำเนาของเว็บไซต์เดิม แต่เต็มไปด้วยสแปมจากบล็อก Wordpress

การคืนชีพบน GitHub ในปี 2024

  • ตั้งแต่เดือนธันวาคม 2023 ผู้ดูแลปัจจุบันเริ่มใส่แพตช์เพื่อให้ Dillo build ได้อีกครั้ง และแก้บั๊กง่าย ๆ
  • เมื่อเห็นว่า Atari forum พอร์ต Dillo ไปยัง Atari โดยอาศัย repository นั้น จึงมองเห็นความเป็นไปได้ในการฟื้นโครงการ และเมื่อนำไปแชร์บน Hacker News ก็ได้รับความสนใจมากกว่าที่คาด
  • หลังจากนั้นจึงสร้าง GitHub organization รวบรวม Git repository และตั้งค่าเว็บไซต์ Dillo ใหม่ด้วย GitHub Pages
  • ยังมีการคัดลอกข้อมูลเท่าที่หาได้ไปยังเว็บไซต์ใหม่และเมลลิงลิสต์ใหม่ด้วย
  • หลังแก้หลาย issue แล้ว ในเดือนพฤษภาคม 2024 ได้ปล่อย Dillo 3.1.0
    • release นี้ได้รับความสนใจจากหลายเว็บไซต์ เช่น The Register, 9to5Linux และ Hackaday
    • หลังจากนั้นถูกบรรจุใน Linux distribution หลายรายการ
  • ณ วันที่ 15 ธันวาคม 2024 โครงการยังคงได้รับการดูแลต่อเนื่อง และเริ่มมีผู้ร่วมพัฒนารายใหม่เข้ามามีส่วนร่วมในแพตช์และการอภิปรายด้านการพัฒนา
  • แม้ยังไม่มีนักพัฒนามากพอที่จะจัดการทุก issue ได้ แต่โครงการก็กำลังก้าวหน้าอย่างช้า ๆ
  • release ล่าสุดในปัจจุบันคือ Dillo 3.1.1

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น