บั๊ก Firefox <textarea> ที่ได้รับการแก้ไขหลังผ่านไป 25 ปี
(bugzilla.mozilla.org)- Bug 33654 อันเก่าแก่ของ Firefox คือปัญหาที่เมื่อ
<textarea>ใช้ROWS=และCOLS=จะบวกพื้นที่ของ scrollbar เข้าไปด้วย ทำให้ดูใหญ่กว่าจำนวนแถว·คอลัมน์ที่กำหนดไว้ และตอนนี้ถูกปิดในฐานะ รายการซ้ำของ Bug 1830576 - ในสภาพแวดล้อมที่ปิด overlay scrollbars หรือใช้การตั้งค่า “always show scrollbars” จะเกิดซ้ำ ๆ ว่า
<textarea rows=N>ถูกคำนวณให้สูงประมาณ N+1 แถว - การอภิปรายช่วงแรกขยายไปถึงการสืบทอดฟอนต์, การบังคับใช้
monospace, การคำนวณcolsจากความกว้างเฉลี่ยของwและW, รวมถึงวิธีจองพื้นที่สำหรับ scrollbar และมี testcase·patch·screenshot สะสมเป็นเวลานาน - ในทางปฏิบัติ
rows=1ดูเหมือนมี 3 แถว หรือrows=2ดูสูงเท่ากับ 3 แถว และที่cols=80ตำแหน่งตัดบรรทัดของ IE กับ Firefox ต่างกัน ทำให้ การควบคุมเลย์เอาต์ของฟอร์ม คลาดเคลื่อนกันตามแต่ละเบราว์เซอร์ - เมื่อ Bug 1830576 กลายเป็น
VERIFIED FIXEDแล้ว การใช้ระยะเว้นของ scrollbar ใน WebKit, Chromium และ Firefox จึงสอดคล้องกัน และ Bug 33654 ถูกสรุปเป็นRESOLVED DUPLICATE
สถานะและขอบเขตของ Bug 33654
- Bug 33654 คือข้อบกพร่องที่
<textarea>ใช้ROWS=และCOLS=ผิด ทำให้เกิด พื้นที่เพิ่มเติมสำหรับ scrollbar ทั้งแนวนอน·แนวตั้งในสถานะที่ overlay scrollbars ถูกปิดอยู่ - ผลิตภัณฑ์และคอมโพเนนต์คือ
Core :: Layout: Form Controlsครอบคลุมเลย์เอาต์และรูปลักษณ์ของ HTML form controls โดยเฉพาะองค์ประกอบอย่างtextarea - สถานะปัจจุบันคือ
RESOLVED DUPLICATE of bug 1830576- ชื่อของ Bug 1830576 ซึ่งเป็นรายการที่ซ้ำกันคือ
Firefox sizes <textarea rows=N> as roughly N+1 rows tall, under an "always show scrollbars" configuration - สถานะของ Bug 1830576 คือ
VERIFIED FIXED
- ชื่อของ Bug 1830576 ซึ่งเป็นรายการที่ซ้ำกันคือ
- บั๊กนี้ถูกเปิดเมื่อ 26 ปีก่อน และถูกปิดเป็น
RESOLVED DUPLICATEเมื่อ 2 ปีก่อน - ในเมทาดาทาแสดงเวอร์ชัน
Trunk, แพลตฟอร์มx86 / All, ประเภทdefect, ลำดับความสำคัญP3, ระดับความรุนแรงS3 - คีย์เวิร์ดคือ
testcase, Whiteboard คือ[html][behavior]relnote-devel, จำนวนโหวตแสดงเป็น 99 - ไฟล์แนบแสดงเป็น
17 files, 17 obsolete filesโดยมี testcase·patch·screenshot ถูกอัปโหลดซ้ำ ๆ
อาการที่ปรากฏครั้งแรก
- ในรายงานแรก Andrew McMillan ระบุว่าตัวอย่าง
TEXTAREAที่กำหนดเป็นROWS=5 COLS=30แสดงผลเหมือนประมาณROWS=7 COLS=48 - ในคอมเมนต์ช่วงต้น มีกรณีต่อเนื่องว่า
INPUT TYPE=TEXTและTEXTAREAไม่ได้ใช้ฟอนต์ที่กำหนดไว้อย่างถูกต้อง หรือแม้ scrollbar ปรากฏ พื้นที่ก็ยังสูงเกินไป - จากนั้นการอภิปรายเริ่มโน้มไปทางว่า textarea layout ได้รับข้อมูลผิด โดยคอลัมน์มี พื้นที่เพิ่มเติม และแถวมากเกินไปหนึ่งแถว
- ความเป็นไปได้ว่าวิธีจองพื้นที่ล่วงหน้าสำหรับ scrollbar เป็นสาเหตุก็ถูกพูดถึงตั้งแต่ช่วงแรก
การคำนวณฟอนต์และแพตช์ช่วงแรก
- ในกรณีจาก HTML authoring newsgroup เมื่อใช้
textarea { font-size: 8pt }ร่วมกับ<textarea cols="40" rows="12">IE เรนเดอร์ความกว้างได้ถูกต้อง แต่ Mozilla ดูเหมือนคำนวณความกว้างโดยอิงฟอนต์ 12pt - ไฟล์ทดสอบที่ใช้ฟอนต์
arialมี<textarea NAME=system_code wrap=soft rows=5 cols=30 WRAP style="font-family:arial"> - Rod มองว่าเมื่อใช้ฟอนต์พื้นฐาน การคำนวณขนาดถูกต้อง ดังนั้นประเด็นหลักไม่ใช่ sizing เอง แต่เป็น textarea ไม่ได้ใช้ ฟอนต์ที่ถูกต้อง
- Kin พบโค้ดที่เมื่อมีการตั้งค่าแฟล็ก
PlainTextของ editor จะบังคับใช้font-family: monospace;กับพื้นที่เนื้อหาของ TextControl- เมื่อลบโค้ดนี้ออก ฟอนต์ที่ถูกต้องจะถูกใช้
- แต่ในโหมด NavQuirks ยังมีปัญหาว่าสตริง 30 ตัวอักษรใน textarea 30 คอลัมน์กินความกว้างเพียงประมาณ 2/3 เท่านั้น
- สาเหตุถูกชี้ไปที่วิธีที่
nsFormControlHelperหาความกว้างเฉลี่ยของwและWจากฟอนต์ แล้วคูณกับจำนวนคอลัมน์และบวกความกว้างของ scrollbar เพื่อคำนวณความกว้างของ textarea
Patch to use the correct font.เพิ่มeEditorEnableWrapHackMaskให้กับแฟล็กเริ่มต้นของ plain text editor และจำกัดการใช้font-family: monospace;แบบมีเงื่อนไข- แพตช์นี้เคยถูกดำเนินการเป็น
RESOLVED FIXEDแต่ถูกเปิดใหม่หลังผู้รายงานเดิมแจ้งว่าแม้COLS=...จะถูกต้องแล้ว แต่ROWS=...ยังทำงานผิดอยู่
การทำซ้ำและบั๊กที่ซ้ำกัน
- รายการบั๊กที่ซ้ำกันมีปัญหาจำนวนมากที่
<textarea>ดูใหญ่กว่าจำนวนแถวที่กำหนดไว้หนึ่งบรรทัด หรือrows=1ดูเหมือน 3 บรรทัด- Bug 46106:
Textarea displaying more rows than designated. - Bug 116779:
<textarea rows=1> shows 3 rows - Bug 133342:
textarea always rendered with one more row than defined - Bug 186271:
textareas are 1 row taller than specified - Bug 206946:
<textarea rows="2"> shows ~3 lines - Bug 911226:
<TEXTAREA> always rendered one line too tall !
- Bug 46106:
- Interactive testcase เป็นเอกสาร HTML 4.01 Strict ที่สามารถเปลี่ยนค่า
rowsและcolsด้วยปุ่มได้ และไม่ได้ใช้ font tag หรือ variable-width font- ผลลัพธ์การทำงานคือมีคอลัมน์มากกว่าค่าที่กำหนดเสมอ 3 columns และแถวมักมากกว่า 1 แถว
- เมื่อขอ
rows=1จะแสดง 3 rows
- ใน Linux และ Win2000 trunk builds ปี 2002 มีกรณีว่า
<textarea cols=40 rows=2></textarea>แสดงเป็น 3 rows และถ้าเป็นrows=Nจะแสดงตรง ๆ เป็นN+1rows - การทดสอบ W3C HTML 4.01 ก็ถูกใช้เป็นข้อมูลอ้างอิง และมีคอมเมนต์ว่าปัญหาเห็นได้ชัดในเทสต์ที่เกี่ยวกับ
ROWS - แม้บน Windows 2000 และ Mozilla
0.9.3ก็มีตัวอย่างถูกโพสต์ว่า textarea ที่rows=1เห็นได้ชัดว่าไม่ได้ดูเป็น 1 row
การอภิปรายเรื่องการคำนวณพื้นที่ scrollbar
- Comment 86 อธิบายว่าขนาดของ textarea ถูกคำนวณเป็นค่า
cols/rowsที่กำหนดไว้ บวกพื้นที่ scrollbar - มีการวิเคราะห์ว่า ต่างจาก IE ตรงที่ Mozilla แสดง scrollbar เฉพาะเมื่อจำเป็น ผู้ใช้จึงรู้สึกว่านี่เป็นพฤติกรรมที่เสีย
- มีการเสนอทางเลือกที่เป็นไปได้สามแบบ
- ไม่บวกขนาด scrollbar เมื่อคำนวณขนาด textarea
- แสดง scrollbar เสมอเหมือน IE
- รวมเฉพาะ scrollbar ที่จะแสดง
- ทางเลือกที่สามถูกชี้ว่ามีลักษณะวนลูป เพราะขนาดขึ้นอยู่กับว่าจะมีการแสดง scrollbar หรือไม่ และการจะแสดง scrollbar หรือไม่ก็ขึ้นอยู่กับขนาดอีกที
- Comment 87 เสนอทางเลือกที่สี่ว่า
ROWSและCOLSควบคุมเฉพาะขนาดเนื้อหาของ textarea และถ้ามี scrollbar ปรากฏ textarea ก็ขยายใหญ่ขึ้น - หลังจากนั้น ทิศทางการใช้งานถูกอภิปรายเป็นการ reflow ด้วย width/height ที่ไม่มี scrollbar เพื่อพิจารณาว่าจำเป็นต้องมี scrollbar หรือไม่ แล้วถ้าจำเป็นก็ค่อย reflow อีกครั้งด้วย width/height ใหม่
ผลกระทบที่ผู้ใช้เห็น
- เมื่อกำหนด
rows="2"แต่มี textarea สูง 3-row ปรากฏขึ้น เจตนาที่จะชี้นำปริมาณอินพุตด้วยภาพจะจางลง- เว็บแอปหนึ่งขอข้อความสรุปสั้น ๆ และใช้
rows="2"เพื่อชี้นำปริมาณอินพุตว่า “มากกว่าหนึ่งบรรทัด แต่ไม่ใช่เรียงความ” - ความแตกต่างของพฤติกรรมระหว่าง Firefox กับ IE6, Opera 8 ทำให้ค่า
rowsเดียวกันสร้างคำแนะนำทางภาพที่ต่างกันในแต่ละ user agent
- เว็บแอปหนึ่งขอข้อความสรุปสั้น ๆ และใช้
- แม้ในกรณีที่เนื้อหา textarea ไม่ได้ถูกเลื่อน ก็ยังมีคอมเมนต์ต่อเนื่องว่าพฤติกรรมของ Firefox ผิด
- หากกำหนด
rows="3"ให้ textarea ที่ส่วนใหญ่จะไม่เกินสามบรรทัด เช่น การป้อนที่อยู่ Firefox ก็ยังแสดง extra row เสมอ - หน้าจอใหญ่ขึ้นโดยไม่จำเป็น และผู้ใช้อาจคิดว่ากล่องใหญ่กว่าที่คาดจึงยังกรอกข้อมูลไม่พอ
- หากกำหนด
- ในการเปรียบเทียบ
cols=80มีคำอธิบาย screenshot ว่า IE เติม1จำนวน 80 ตัวจนถึงขอบ scrollbar แล้วจึงตัดบรรทัด แต่ Firefox ยังมีพื้นที่ให้ใส่1เพิ่มอีก 2 ตัวหลัง1จำนวน 80 ตัว ก่อนที่ horizontal scrollbar จะปรากฏ - ในปี 2019 ยังมีคอมเมนต์ว่าปัญหายังคงอยู่ และการ์ด Trello ของ Discord เรื่อง
Chat bar is a line taller than usual on Firefoxถูกนำเสนอเป็นกรณีผลกระทบ
ความพยายามทำแพตช์ที่ยืดเยื้อนาน
- Hideo Saito แนบแพตช์และ testcase หลายครั้ง
patch for rows and cols- testcase แพตช์
wrap="off" base patchadditional patch for another bugpatch which does not remove space
- แนวทางหนึ่งคือให้
nsTextControlFrame::Reflowทำงานด้วย intrinsic size ที่ไม่รวม scrollbar ก่อน แล้วหากมี scrollbar ให้บวกขนาด scrollbar เข้าไปใน intrinsic size และ reflow อีกครั้ง - ยังมีแนวทางแก้
GetScrollbarStylesเพื่อให้ text control frame ควบคุมว่าจะตั้ง scrollbar เป็นauto,hidden,scrollอย่างไร - roc ชอบแนวทางจัดการใน
nsTextControlFrameมากกว่าวิธีใส่การเปลี่ยนแปลงจำนวนมากในnsGfxScrollFrame - แพตช์หลังจากนั้นวนเวียนผ่านการรีวิวและแก้ใหม่รอบแล้วรอบเล่าเกี่ยวกับกลไกอย่าง
SetScrollbarStyles,GetScrollbarStyles,SetScrollbarSpace,GetScrollbarOverflowState,FrameNeedsReflow, post-reflow callback - แพตช์บางส่วนได้รับ
review-หรือถูกทำเครื่องหมาย obsolete และผู้รีวิวชี้ว่าจำเป็นต้องอัปเดตให้ตรงกับ trunk
วิธีเลี่ยงชั่วคราวและข้อจำกัด
- มีข้อเสนอว่าหากเพิ่ม CSS
textarea{ overflow-x: hidden }ปัญหาจะได้รับการแก้ไข - วิธีนี้มีเงื่อนไขว่าใช้ได้เฉพาะกรณีที่ไม่ต้องการ horizontal scrollbar
- คอมเมนต์อื่นแย้งว่าบั๊กนี้แก้ไม่ได้ด้วย CSS
overflowเพียงอย่างเดียว และ Firefox เป็นเบราว์เซอร์เดียวที่เรนเดอร์ textarea โดยเพิ่มอีกหนึ่งบรรทัด - Emilio Cobos Álvarez กล่าวว่า สาเหตุดูเหมือนมาจากขนาด scrollbar และเมื่อใช้
scrollbar-width: noneกับ<textarea>ดูเหมือนจะแก้ได้ - คอมเมนต์เดียวกันเสริมว่า ถึงอย่างนั้นตัวบั๊กเองก็ควรถูกแก้ไขอยู่ดี
สรุปขั้นสุดท้าย
- เมื่อ 3 ปีก่อน BugBot ระบุว่าบั๊กนี้มี severity ค่อนข้างต่ำที่
S3แต่มีรายการซ้ำ 27 รายการ, โหวต 103 รายการ, CC 91 รายการ จึงขอให้พิจารณายกระดับ severity - สรุปบั๊กถูกเปลี่ยนจาก
TEXTAREA incorrectly applying ROWS= and COLS=เป็นTEXTAREA incorrectly applying ROWS= and COLS= (horizontal / vertical scrollbar extra space, with overlay scrollbars disabled) - Daniel Holbert เพิ่ม Bug 1830576
Firefox sizes <textarea rows=N> as roughly N+1 rows tall, under an "always show scrollbars" configurationเป็น dependency - Luke Warlow ถามว่าเมื่อ Bug 1830576 ถูกแก้แล้ว การใช้ระยะเว้นของ scrollbar ของ WebKit, Chromium และ Firefox ก็สอดคล้องกัน จึงสามารถปิดบั๊กนี้ได้หรือไม่
- Emilio Cobos Álvarez เห็นด้วย และ Bug 33654 ถูกเปลี่ยนจาก
NEWเป็นRESOLVEDพร้อมปิดเป็นDUPLICATE - รายการที่ซ้ำกันถูกกำหนดเป็น Bug 1830576 และบั๊กดังกล่าวมีสถานะ
VERIFIED FIXED
1 ความคิดเห็น
ความเห็นจาก Hacker News
ฮ่า! ฉันติดตามบั๊กนี้มาเกือบ 25 ปีเต็ม เลยทีเดียว ตอนนั้นยังไม่มี Firefox และมันถูกลงทะเบียนเป็นบั๊กฝั่ง Mozilla ในช่วงก่อนหรือหลัง Netscape Navigator ไม่ใช่ของ Netscape Navigator เอง
จำไม่ได้แล้วว่าทำไมถึงติดตามไว้ แต่คงน่าจะเคยคอมเมนต์ไว้ มีอีเมลแจ้งเตือนส่งมาทุก ๆ สองสามปีเลยขำทุกครั้ง และในที่สุดเมื่อไม่กี่วันก่อนมันก็ถูกแก้แล้ว
ฉันคิดมาตลอดว่าอะไรอย่าง
html { background: transparent; }ก็น่าจะทำงานได้เลย แต่การแก้บั๊กครั้งนี้ไม่ได้ทำแบบนั้นจริง ๆ อย่างแรก มันไม่ใช่ฟีเจอร์ที่เว็บไซต์เลือกใช้ได้เป็นค่าเริ่มต้น แต่เป็นการตั้งค่าที่ผู้ใช้หรือส่วนขยายเปิดได้แทน ซึ่งอาจดีกว่า เพราะถ้าอนุญาตเป็นค่าเริ่มต้นก็คงเปิดทางใหม่ให้ clickjackingแม้จะนอกประเด็นนิดหน่อย แต่ฉันเกลียดกระแสการแสดง ช่วงเวลาแบบอ่านง่ายสำหรับมนุษย์ อย่าง “หนึ่งเดือนก่อน” มาก แสดงวันที่มาเลย ฉันคำนวณเองได้
Outlook อย่างน้อยในเวอร์ชัน Mac นี่แย่สุด อีเมลก่อนวันนี้จะแสดงแค่เช่น “เมื่อวาน” และต้องคลิกเมลถึงจะเห็นเวลา พอได้รับอีเมลวันละหลายสิบฉบับ แล้วมีข้อความ 50 อันเรียงกันเป็น “เมื่อวาน” หมด มันไม่มีประโยชน์อะไรเลย
เบียร์ควรเย็น และ timestamp ก็ควรแม่นยำ
Bugzilla ของ Firefox น่าจะเป็นหนึ่งใน ตัวติดตามบั๊ก ที่เปิดใช้งานมายาวนานที่สุดอย่างแน่นอน น่าประทับใจที่ผ่านการปรับปรุงมามากมายแต่ยังคงกลิ่นอายดั้งเดิมไว้ได้มาก แต่ก่อนมันเคยเป็นโค้ดเบสที่ค่อนข้างหยาบและเหมือนสัตว์ประหลาด
ราวปี 2000 ตอนนั้นในองค์กรพัฒนา Windows มีการตั้งอินสแตนซ์ขึ้นมาเพื่อแทนที่ตัวติดตามบั๊กภายในที่สร้างบน Microsoft Access/Outlook มันซับซ้อน แต่ช่วงหนึ่งก็เกือบจะเป็นตัวติดตามบั๊กที่ดีที่สุดแล้ว FogBugz เองก็เพิ่งเริ่มในช่วงนั้น และฉันมองว่าทีมนั้นเป็นหนึ่งในทีมแรก ๆ ที่ให้ความสำคัญกับประสบการณ์ผู้ใช้อย่างจริงจัง
ในทางกลับกัน FogBugz เป็นเครื่องมือที่ฉันอยากลองใช้สักครั้งเสมอถ้ามีโอกาส
เห็นอะไรแบบนี้แล้วอบอุ่นใจ ช่วงหลังฉันก็เพิ่งเจอเรื่องคล้ายกันกับบั๊ก Firefox อายุ 24 ปี: https://bugzilla.mozilla.org/show_bug.cgi?id=62151
สำหรับบั๊กที่ค้างมานาน สิ่งที่น่าหงุดหงิดที่สุดคือ LibreOffice ยังตั้งค่าแกน x ของ scatter plot ให้เป็น รูปแบบวันที่ อย่างถูกต้องไม่ได้
https://bugs.documentfoundation.org/show_bug.cgi?id=54132
เป็นบั๊กอายุ 12 ปีแล้ว จากคอมเมนต์ดูเหมือนทุกคนลังเลจะแก้ เพราะโค้ด “ซับซ้อนจนน่ากลัว” และมีโอกาสสูงที่จะทำให้เกิด regression
หวังว่าคราวหน้าจะจัดการเรื่อง XDG ด้วย อันนี้ก็รอมา 20 ปีแล้วเหมือนกัน [1]
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=259356
พูดตามตรง สเปกนี้ไม่ได้แก้ปัญหาจริงที่ผู้ใช้เจออย่างจริงจังนัก การยอมรับส่วนใหญ่เกิดจากคนที่รำคาญโครงสร้างไดเรกทอรี
$HOMEไปกดดันผู้ดูแลแพ็กเกจอย่างต่อเนื่อง และผู้ใช้ 99% ก็ไม่สนว่าโปรแกรมจะทำตาม XDG Base Directory หรือไม่ มันแค่ทำให้พูดได้ว่า “ดูสะอาดกว่า” ตามสเปกของ freedesktop ที่ตลอด 20 กว่าปีก็ยังไม่ได้รับการยอมรับอย่างกว้างขวางส่วนตัวผมไม่ชอบการแยก config/data/cache แบบหลวม ๆ และเจตนาที่เป็นนัยของมัน ไม่ใช่ทุกอย่างที่จะเข้ากับหมวดพวกนั้นได้ และพอเป็นแบบนั้นก็ยิ่งทำให้คาดเดาพฤติกรรมของระบบได้ยาก เดมอนจะลบแคชของผมหรือเปล่า? ผู้ใช้จะคัดลอกโฟลเดอร์ config ไปมาหรือเปล่า? อะไรกันแน่ที่ควรสำรองข้อมูล? ในสเปกไม่มีมาตรฐานว่าควรปฏิบัติกับโฟลเดอร์เหล่านี้จริง ๆ อย่างไร มันคลุมเครือโดยตั้งใจ แต่เป็นความคลุมเครือที่พอคนตั้งสมมติฐานแล้วอาจพังได้
มันคล้ายกับการแยก
/usrออกจาก root หรือแยก/usr/localออกจาก root หรือมี/optอยู่ด้วย ให้ความรู้สึกเหมือนเป็นความตกค้างจากยุคก่อนที่ยังหลงเหลืออยู่ แล้วกำลังจะสร้างอันใหม่เพิ่มอีกในผลิตภัณฑ์ของเราก็รองรับแบบเสียไม่ได้เหมือนกัน แต่รองรับเฉพาะเมื่อมีการตั้ง environment variable นั้นไว้อย่างชัดเจนเท่านั้น เราเพิกเฉยต่อพฤติกรรมของ XDG ที่บอกว่าเมื่อไม่ได้ตั้งค่าไว้ ค่าเริ่มต้นบนทุกระบบ Linux ควรเป็นแบบนี้ 100% เพราะมันไม่เหมือนวิธีที่ระบบตระกูล UNIX อื่น ๆ อย่าง MacOS คาดหวังไว้ เราใส่มาแค่พอไม่ให้แฟนพันธุ์แท้ Arch Linux แห่มาถล่ม bug tracker ทุกสัปดาห์เพื่อเรียกร้องให้รองรับ ซึ่งคนกลุ่มนั้นมีไม่ถึง 1% ของผู้ใช้ทั้งหมด แค่ทำเอกสารบอกผู้ใช้ว่าควรหาไฟล์ของผลิตภัณฑ์เราในระบบตัวเองจากที่ไหนก็ยากพออยู่แล้ว ผู้ใช้ก็ไม่ได้รู้จัก XDG กันเสมอไป และสำหรับคนส่วนใหญ่ XDG ก็ยังไม่ใช่ธรรมเนียมที่ตั้งมั่นจนคาดหวังได้อยู่แล้ว นอกจากคนที่อยากให้ไดเรกทอรีผู้ใช้ดูสะอาด ก็แทบไม่มีคุณค่าเด่นชัดพอ แต่ระบบเดิมมีภาระตกทอดมากเกินไปกว่าจะย้ายทุกอย่างไปตามสเปกนี้ได้
พูดตามตรงควรคิดกันใหม่ทั้งหมดแล้วไปทาง แนวทางแบบคอนเทนเนอร์ ที่ทำให้แอปเดสก์ท็อปออกจากคุกเล็ก ๆ ของตัวเองไม่ได้ คล้ายกับแอป snap มาก ๆ อาจเรียนรู้อะไรจาก Nix ได้บ้าง ควรยอมรับว่าแนวคิดจะทำให้แอปผู้ใช้บน Linux ทั่วโลกทั้งหมดสนใจและยอมรับ XDG Base Directory หรือกระทั่ง user directory นั้นล้มเหลวแล้ว แค่ต้องรองรับพอร์ตบน Mac และ Windows ก็ยากพอแล้ว ซึ่งระบบพวกนั้นก็ไม่ได้ทำงานแบบนี้ ควรเลิกโมเดลสิทธิ์แบบ UNIX ที่รันโปรแกรมด้วยสิทธิ์ของผู้ใช้ แล้วให้แต่ละโปรแกรมรันด้วย uid ของตัวเองแทน Android ก็ทำงานแบบนั้น
อยากให้ช่วยแก้บั๊กที่ ตัวเลือกคัดลอก ถูกปิดใช้งานแบบสุ่มทั้งที่มีข้อความให้คัดลอกทีเถอะ มันชวนเสียสติจริง ๆ
AWS แก้ปัญหานี้ด้วยการลบบั๊กเก่า ๆ และลบทุกการพูดถึงมันเป็นระยะ
โพสต์ที่เกี่ยวข้องเมื่อเดือนสิงหาคมที่ผ่านมา:
Happy 25th Birthday to Bugzilla
https://news.ycombinator.com/item?id=37279543
เจ๋งดี! แค่ 2000-03-28 ยังไม่ใช่ 25 ปีก่อน