ข้ามไปเนื้อหาหลัก

Supabase .NET DevLog #6: อัปเดตการพัฒนาสู่ v8.0.0

ติดตามความคืบหน้าล่าสุดของ Supabase .NET SDK ใน DevLog #6 กับการเตรียมย้ายสู่เวอร์ชันหลัก v8.0.0 และระบบทดสอบใหม่

เรียบเรียงโดย AI
Inewgen
18 Aug 2026ที่มา: Dev.to2 นาทีอ่าน (0 ครั้ง)อัปเดตล่าสุด 29 Aug 2026
แชร์
Supabase .NET DevLog #6: อัปเดตการพัฒนาสู่ v8.0.0

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • เริ่มต้นพัฒนาเวอร์ชันหลัก v8.0.0 หลังย้ายโปรเจกต์เข้าสู่ monorepo สำเร็จ
  • เพิ่มชุดการทดสอบแบบ approval tests เพื่อความปลอดภัยในการย้ายระบบ serialization
  • สร้างระบบ quality gate ผ่าน GitHub Actions เพื่อควบคุมคุณภาพโค้ดทุกส่วน

การพัฒนา Supabase .NET SDK ดำเนินมาถึงรายงานความคืบหน้าประจำสัปดาห์ใน DevLog #6 แล้ว โดยหลังจากที่ทีมงานเพิ่งดำเนินการย้ายระบบไปเป็นรูปแบบ monorepo เสร็จสิ้นไปเมื่อไม่นานมานี้ ล่าสุดผู้พัฒนาได้เริ่มเดินหน้าลุยงานเพื่อเตรียมความพร้อมสำหรับเวอร์ชันสำคัญครั้งใหม่ใน v8.0.0 ทันที ซึ่งผู้ที่สนใจสามารถเข้าไปติดตามความเคลื่อนไหวและรายละเอียดล่วงหน้าผ่านทาง Pull Request ที่เปิดไว้ได้

ก่อนที่จะเริ่มกระบวนการย้ายไปใช้ System.Text.Json สิ่งสำคัญที่ขาดไม่ได้คือการสร้างความมั่นใจว่าผลลัพธ์ของการแปลงข้อมูลจะไม่เปลี่ยนแปลงไปจากเดิม ทางทีมงานจึงได้พัฒนาชุดการทดสอบแบบ approval tests ขึ้นมาอย่างเต็มรูปแบบ เนื่องจากในฐานะโค้ดเบสเดิมยังไม่เคยมีระบบนี้มาก่อน การจะทำการย้ายระบบครั้งใหญ่โดยไม่มีตาข่ายรองรับความปลอดภัยจึงเป็นเรื่องที่มีความเสี่ยงสูง

programming code editor dark mode

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

หลักการทำงานของการทดสอบประเภท approval tests นี้คือการสร้างสภาพแวดล้อมสโ냅ช็อต (snapshot) ขึ้นมา แล้วทำการประเมินผลลัพธ์เทียบกับสโ냅ช็อตนั้นอยู่เสมอ ซึ่งกระบวนการดังกล่าวช่วยรับประกันได้ว่าทั้งตัวโมเดลข้อมูลและคำสั่งคิวรี (queries) จะยังคงผลิตผลลัพธ์ออกมาได้ถูกต้องตรงกันไม่เปลี่ยนแปลง

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

การทำ Approval Testing มีความสำคัญอย่างยิ่งในการพัฒนาซอฟต์แวร์ที่มีการปรับเปลี่ยนระบบ serialization พื้นฐาน เพราะช่วยป้องกันข้อผิดพลาดที่อาจเกิดขึ้นจากการแปลงโครงสร้างข้อมูลข้ามไลบรารี โดยการเปรียบเทียบผลลัพธ์กับไฟล์ snapshot ป้องกันไม่ให้ API พฤติกรรมเปลี่ยนไปโดยไม่รู้ตัว

นอกจากเรื่องการทดสอบแล้ว ยังได้มีการสร้างระบบ quality gate สำหรับ SDK ขึ้นมาโดยเฉพาะ ซึ่งระบบดังกล่าวจะถูกรันผ่าน GitHub Actions รวมถึงสามารถรันผ่านตัวแทนจำลองในเครื่อง (local agents) ได้เช่นกัน ด้วยความที่มันถูกเขียนขึ้นเป็นสคริปต์ จึงทำงานได้อย่างแม่นยำและเที่ยงตรง (deterministic)

ระบบ quality gate นี้ทำหน้าที่การันตีว่าคุณภาพของโค้ดจะไม่แย่ลงกว่าเดิม มีแต่จะคงที่หรือพัฒนาให้ดีขึ้นยิ่งๆ ขึ้นไป ซึ่งนับจากนี้เป็นต้นไป ระบบนี้จะกลายเป็นข้อกำหนดบังคับที่เข้มงวดสำหรับการส่งมอบงาน (contributions) ทุกชิ้น ไม่เว้นแม้กระทั่งงานของผู้พัฒนาเอง เปรียบเสมือนกับการบังคับใช้กฎบอยสเกล (boy-scout rule) กับโค้ดเบสทั้งหมด

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้