2 poin oleh GN⁺ 2024-02-03 | 1 komentar | Bagikan ke WhatsApp
  • Interop 2024 adalah proyek bersama untuk menyelaraskan tim mesin browser utama agar mengimplementasikan fitur web yang sama secara lebih konsisten, dan tahun ini berjalan dengan 17 area fokus serta 3 proyek investigasi
  • Peningkatan interoperabilitas diukur dengan pengujian otomatis seperti Web Platform Tests; WPT memiliki lebih dari 1,8 juta pengujian dan tingkat kelulusan di atas 95% di seluruh browser utama
  • Interop 2023 meningkatkan tingkat kelulusan bersama pada pengujian terpilih di tiga mesin browser utama dari 48% menjadi 95%, serta sangat menyelaraskan dukungan untuk P3 color, Subgrid, Container Queries, :has(), Web Components, dan Media Queries 4
  • Tahun ini, dari 96 proposal dipilih 16, dan dengan melanjutkan sebagian pekerjaan 2023, fokus diarahkan ke 17 area termasuk Accessibility, CSS Nesting, Custom Properties, IndexedDB, Layout, Popover, dan URL
  • Microsoft Edge ditambahkan sebagai kolom tersendiri di dasbor Interop, sehingga kemajuan per browser dapat dibandingkan secara lebih langsung

Cara menyelaraskan interoperabilitas browser

  • Web dirancang agar berjalan di berbagai perangkat, sehingga miliaran orang dapat menggunakannya untuk berkolaborasi, belajar, dan terhubung
  • Agar pengembang dapat memberikan pengalaman yang sama kepada semua browser dan semua pengguna, implementasi teknologi web di browser harus mirip satu sama lain
  • Konsistensi implementasi dibentuk melalui proses standar web, dan perilaku teknologi web baru didefinisikan dalam dokumen teknis yang terperinci
  • Apakah browser mengikuti standar web diperiksa melalui pengujian otomatis
    • Web Platform Tests memiliki lebih dari 1,8 juta pengujian
    • Lebih dari 95% WPT lulus di seluruh browser utama

Perubahan yang dihasilkan Interop 2023

  • Interop 2023 dimulai pada Januari 2023 dengan kondisi 48% pengujian terpilih lulus di ketiga mesin browser utama
    • Browser acuan adalah Chrome dan Firefox desktop Linux yang sudah dirilis kepada pengguna, serta Safari on macOS Monterey
  • Setahun kemudian, tingkat kelulusan naik menjadi 95%
    • Browser acuan adalah Chrome Dev, Firefox Nightly desktop Linux, dan Safari Technology Preview on macOS Ventura
  • Dukungan lintas browser untuk berbagai fitur web meningkat
    • P3 color didukung penuh di semua browser 7 tahun setelah mulai dirilis
    • Form controls mendukung mode penulisan vertikal untuk pertama kalinya dalam sejarah web
    • CSS border-image kini berfungsi sesuai maksud awalnya
    • Subgrid, Container Queries, :has(), Motion Path, CSS Math Functions, inert, dan @property didukung di semua browser modern
    • Web API seperti Offscreen Canvas, Modules in Web Workers, Import Maps, Import Assertions, dan JavaScript Modules ditingkatkan
    • Seluruh spesifikasi Media Queries 4 didukung di mana-mana dengan sintaks yang lebih mudah
    • Web Components mengalami peningkatan pada adoptedStyleSheets, ElementInternals, Form-Associated Custom Elements, Shadow DOM, dan perilaku dasar Custom Elements
    • Dukungan browser yang konsisten untuk pseudo-class CSS seperti :nth-child(), :nth-last-child(), :modal, :user-valid, dan :user-invalid kini dapat diharapkan
    • Feature queries kini mendukung deteksi fitur font
    • Font Palettes memperkuat dukungan font berwarna
    • Kemajuan signifikan juga terjadi pada CSS Masking, HTML Forms, Pointer and Mouse Events, Scrolling, Transforms, URL, WebCodecs, serta kumpulan bug kompatibilitas web
  • Dari 26 area fokus Interop 2023, 20 ditutup dengan sukses
  • Pada 2024, pekerjaan untuk Custom Properties, Pointer and Mouse Events, URL, serta Layout yang menggabungkan Flexbox, Grid, dan Subgrid akan berlanjut

Komposisi Interop 2024

  • Pada 2024, 96 proposal area fokus ditinjau dan akhirnya 16 dipilih
  • Dengan menggabungkan beberapa proposal baru dan melanjutkan sebagian pekerjaan 2023, Interop 2024 memiliki total 17 area fokus
  • Berdasarkan browser versi stabil, skor keseluruhan Interop 2024 secara kebetulan kembali dimulai dari 48%
  • Mulai tahun ini, kolom khusus Microsoft Edge ditambahkan ke dasbor Interop
    • Saat ini kolom tersebut merepresentasikan Edge dan Edge Dev yang berjalan di Windows 10

Area fokus 2024

  • Accessibility

    • Dalam proyek investigasi Accessibility Interop 2023, tim aksesibilitas Apple membuat infrastruktur pengujian aksesibilitas untuk WPT dan menulis lebih dari 1.300 pengujian aksesibilitas
    • Pengujian ini dimasukkan ke area fokus Interop 2024 untuk mendorong peningkatan dukungan aksesibilitas di browser
    • Sebagian besar pengujian aksesibilitas baru membahas WAI-ARIA
    • Fokus utamanya adalah Roles Model dan Accessible Name and Description Computation
    • Keduanya menyediakan mekanisme yang konsisten agar pengguna teknologi bantu dapat memahami tujuan elemen dan apa yang bisa dilakukan dengannya
    • Pengujian terkait HTML Accessibility API Mappings specification juga disertakan
    • Spesifikasi ini mendefinisikan semantik aksesibilitas bawaan elemen HTML dan aturan perilaku browser untuk fitur seperti <label> dan teks alt pada gambar
    • Pengujian aksesibilitas display: contents juga baru disertakan
    • Mode tampilan CSS ini berguna untuk menghapus kotak di sekitar konten saat menyesuaikan relasi induk·anak·cucu untuk Flexbox atau Grid
    • Pada implementasi awal, ketika kotak dihapus, konten juga sepenuhnya menghilang dari accessibility tree, sehingga menimbulkan masalah bagi pengguna teknologi bantu
    • Sebagian besar masalah telah diperbaiki di browser, tetapi belum sepenuhnya terselesaikan dalam semua situasi
  • CSS Nesting

    • CSS Nesting dimasukkan ke Interop 2024 untuk mengurangi perbedaan implementasi dan agar developer dapat menggunakannya dengan percaya diri
    • Fitur nesting CSS dirilis di keempat browser utama pada 2023
    • Chrome, Edge, dan Safari merilisnya lebih dulu pada April dan Mei
    • Firefox merilisnya pada Agustus
    • Standar web sedikit berubah antara Mei dan Agustus, sehingga persyaratan awal bahwa semua selector bersarang harus diawali simbol menjadi dilonggarkan
    • Developer dapat menulis article alih-alih & article
    • Semua implementasi telah diperbarui, tetapi masih ada ruang untuk meningkatkan interoperabilitas sementara detail perilaku Nesting yang kompleks dirapikan oleh CSS Working Group
    • Sebagian besar kegagalan pengujian Safari terkait dengan cara CSS bersarang berinteraksi dengan Shadow DOM melalui :host
  • Custom Properties

    • At-rule @property mulai dirilis di browser dalam beberapa tahun terakhir
    • Area Custom Properties di Interop 2023 meningkatkan tingkat kelulusan pengujian bersama di semua browser stabil dari 4% menjadi 7,6%, dan di seluruh browser pratinjau 90,7% pengujian lulus
    • Firefox adalah browser terakhir yang menambahkan dukungan, dan saat ini sedang dikerjakan di Firefox Nightly
    • Karena pekerjaannya belum selesai, area ini tetap menjadi area fokus pada 2024
    • Dengan @property, Anda dapat mendeklarasikan sintaks, perilaku pewarisan, dan nilai awal custom property CSS dengan cara yang mirip dengan bagaimana engine browser mendefinisikan properti CSS
    • Ini memungkinkan animasi yang sebelumnya tidak mungkin dilakukan dengan CSS, seperti bagian tertentu dari gradient atau transform
  • Declarative Shadow DOM

    • Declarative Shadow DOM adalah API deklaratif untuk membuat widget dan komponen yang dapat digunakan ulang hanya dengan HTML, tanpa JavaScript
    • Safari 16.4 mendukungnya sejak Maret 2023, dan Chrome 90 sejak April 2021
    • Firefox memiliki implementasinya di Firefox Nightly
    • Ini adalah salah satu fitur yang sering diminta dalam survei State of HTML 2023, dan dimasukkan ke Interop 2024 untuk memastikan interoperabilitas di semua browser
  • Font size adjust

    • font-size-adjust adalah contoh yang menunjukkan manfaat berfokus pada teknologi lama
    • Firefox pertama kali mengimplementasikannya pada 2008, tetapi hampir tidak digunakan atau dibahas di kalangan web designer dan developer
    • Seiring waktu, spesifikasi awal ditingkatkan dengan sintaks dua nilai untuk mendukung lebih banyak bahasa, serta nilai from-font untuk meningkatkan kegunaan
    • Tim WebKit mengimplementasikan versi dasar di Safari 16.4 dan menambahkan pembaruan di Safari 17.0
    • Mozilla memperbarui implementasinya di Firefox 118, dan Safari serta Firefox saat ini lulus 100% dari semua pengujian
    • Chrome memulai implementasi eksperimental pada 2015, tetapi belum merilisnya
    • Font size adjust menyediakan cara untuk menyesuaikan beberapa font dalam satu string teks agar terlihat memiliki ukuran visual yang sama
    • Misalnya, pada teks 1.4rem, Anda dapat menyamakan x-height, cap height, lebar ch, lebar ic, dan tinggi ic
    • Ini berguna saat mencampur kode dan teks biasa, atau mencampur beberapa bahasa dalam satu kalimat
  • HTTPS URLs for WebSocket

    • WebSocket API memiliki karakteristik harus menggunakan skema non-HTTP(S), yaitu ws: dan wss:
    • Karena perilaku URL-nya hampir sama dengan URL HTTP(S), penggunaan API ini bisa merepotkan
    • Berdasarkan masukan dari web developer, tim WebKit membuat API ini juga mendukung URL HTTP(S), dan merilisnya di Safari 17.0
    • Sebelumnya diperlukan kode untuk mengubahnya menjadi wss: atau ws: sesuai location.protocol, tetapi kini bisa digunakan seperti new WebSocket(path)
    • Dengan memasukkannya ke Interop 2024, tujuannya adalah agar browser lain juga mengadopsinya
  • IndexedDB

    • IndexedDB adalah API untuk menyimpan data di sisi klien dalam bentuk database berorientasi objek
    • Mulai dirilis di browser sejak 2011, dan standar webnya terus berkembang
    • version 2 dan version 3 didukung oleh semua browser utama
    • version 2 sepenuhnya interoperabel, tetapi version 3 masih membutuhkan pekerjaan tambahan untuk menyelaraskan kualitas implementasi
  • Layout

    • CSS Grid dan Flexbox dimasukkan dalam proyek Interop awal pada 2021
    • Subgrid ditambahkan ke Interop 2023
    • Ketiga metode layout ini semuanya dalam kondisi baik, tetapi belum sempurna
    • Pada 2024, pengujian untuk ketiga area digabungkan menjadi satu area fokus bernama Layout
    • Pekerjaan untuk meningkatkan interoperabilitas pada edge case yang kompleks terus berlanjut
    • Developer dapat menggunakan Flexbox, Grid, dan Subgrid dengan percaya diri, dan semuanya didukung dengan kokoh oleh semua browser
  • Pointer and Mouse Events

    • Pointer events menangani perangkat input penunjuk seperti mouse, pena·stylus, dan sentuhan satu atau beberapa jari dalam satu model event DOM
    • API ini mulai dirilis di browser sejak 2012 dan telah hadir di semua browser hingga 2019, tetapi interoperabilitasnya masih belum stabil
  • Tim Interop memulai proyek investigasi Pointer and Mouse Events pada 2022 untuk memperjelas konsensus dan menulis pengujian yang mencerminkannya

    • Di Interop 2023, pengujian ini masuk sebagai area fokus, dan tingkat kelulusannya naik dari 34% menjadi 81%
    • Karena masih ada pekerjaan yang tersisa, area ini terus menjadi area fokus pada 2024
  • Popover

    • Atribut popover di HTML menyediakan cara bawaan browser untuk membuat elemen muncul di lapisan teratas halaman
    • Saat membuat overlay yang menutupi seluruh halaman web, elemen dialog adalah yang paling tepat
    • Ketika ingin menjadikan elemen lain sebagai pesan popup, antarmuka pengguna, atau konten yang muncul lalu menghilang, popover menyediakan framework-nya
    • Dukungan popover dirilis pada 2023 di Chrome 114 dan Safari 17.0
    • Firefox sedang mengerjakan dukungan ini di Firefox Nightly
  • Relative Color Syntax

    • Relative Color Syntax adalah cara baru untuk mendefinisikan warna CSS dengan merujuk warna lain
    • Anda dapat membuat warna yang ada menjadi lebih terang atau lebih gelap dengan jumlah tertentu, atau menyesuaikan saturasi variabel warna lalu menetapkannya ke variabel kedua
    • Ini bisa sangat kuat, terutama saat membuat design system
    • Safari 16.4 menjadi yang pertama merilis dukungan pada Maret 2023
    • Chrome 119 dan Edge 119 merilis dukungan pada Oktober dan November 2023
    • Di antara implementasi saat ini, belum ada yang mendukung penggunaan currentcolor bersama Relative Color Syntax
    • Area Relative Color Syntax di Interop 2024 berfokus secara sempit pada dukungan currentcolor dan pengujian perilaku di luar gamut warna, bukan pada apakah dukungan sudah menyeluruh
    • Memastikan apa yang terjadi pada layar yang tidak mendukung P3 color
  • requestVideoFrameCallback

    • Elemen <video> menyediakan kemampuan yang kuat untuk menyematkan video di web
    • HTMLVideoElement menyediakan properti dan metode untuk memanipulasi objek video di JavaScript
    • requestVideoFrameCallback() memungkinkan pekerjaan per frame video dilakukan secara efisien
      • Pemrosesan atau analisis video
      • Menggambar ke canvas
      • Sinkronisasi dengan sumber audio
    • Didukung sejak Chrome 83 dan Safari 15.4
    • Dimasukkannya fitur ini dalam Interop 2024 membantu menyelesaikan dan menyempurnakan implementasi browser
  • Scrollbar Styling

    • Area Scrollbar Styling mencakup dua properti CSS yang dapat digunakan untuk styling scrollbar
    • scrollbar-width menyediakan tiga nilai: auto, thin, none
      • auto adalah lebar default
      • thin menyediakan scrollbar yang lebih tipis
      • none menyembunyikan scrollbar sambil tetap mempertahankan scrolling konten
    • Firefox 64 mengimplementasikan dukungan pada Desember 2018, dan dukungan ini baru saja dirilis juga di Chrome 121 dan Edge 121
    • scrollbar-gutter mempertahankan layout yang sama terlepas dari ada tidaknya scrollbar dengan mencadangkan ruang untuk scrollbar
    • scrollbar-gutter: stable menginstruksikan browser untuk mencadangkan ruang meskipun scrollbar tidak ada
    • Ini dapat mencegah pergeseran layout saat status kebutuhan scrollbar berubah
    • Dirilis di Chrome 94, Edge 94, dan Firefox 97 pada 2021–2022
    • Safari harus melakukan pekerjaan paling banyak untuk menyelesaikan area fokus ini
    • Chrome dan Firefox sudah lulus 100% pengujian
    • Safari lebih dulu menyediakan fitur styling scrollbar pada 2009 melalui 9 pseudo-element ::-webkit-scrollbar-*, tetapi pendekatan ini tidak menjadi standar web CSS resmi
    • CSS Working Group memilih pendekatan yang jauh lebih sederhana
  • @starting-style and transition-behavior

    • Area ini berfokus pada dua fitur baru untuk kontrol animasi
    • Kedua fitur dirilis pada September 2023 di Chrome 117 dan Edge 177
    • @starting-style memungkinkan pendefinisian nilai awal untuk elemen tertentu
    • Ini diperlukan ketika elemen akan melalui transition
    • Fitur ini juga menyediakan cara transition untuk masuk atau keluar dari display:none
    • transition-behavior memperluas penanganan properti yang dapat dianimasikan secara diskret—yang sebelumnya hanya mungkin dalam animasi—ke CSS transition
    • Ini membuka jalan untuk melakukan transition pada properti display saat menampilkan atau menyembunyikan elemen
  • Text Directionality

    • Arah aliran teks adalah elemen penting dalam tipografi web
    • Sebagian bahasa mengalir dari kiri ke kanan, sebagian dari kanan ke kiri
    • dir attribute memungkinkan elemen HTML menandai arah sebagai left, right, auto
    • auto meminta browser menebak arah berdasarkan huruf pertama
    • Interaksi antara directionality dan shadow tree hingga baru-baru ini belum terdefinisi dengan baik
    • Masalah ini telah ditangani di tingkat standar, dan penyertaannya di Interop 2024 memastikan penyelarasan implementasi
  • text-wrap: balance

    • Desainer web sudah lama menginginkan cara untuk mencegah baris yang sangat pendek atau hanya berisi satu kata
    • Masalah ini menjadi lebih sulit karena responsive web design dan kurangnya kontrol atas lebar kolom
    • text-wrap menyediakan berbagai opsi yang memberi tahu browser cara menghitung line break untuk kasus penggunaan tertentu
    • text-wrap: balance adalah solusi yang cocok untuk judul
    • Ini menata beberapa baris teks secara seimbang agar tiap baris memiliki jumlah teks yang serupa
    • Dirilis di Chrome 114 dan Firefox 121, serta diimplementasikan di Safari Technology Preview
    • Interop 2024 juga mencakup pengujian perilaku text-wrap-mode, text-wrap-style, dan white-space-collapse
    • CSS Working Group baru-baru ini mengubah cara longhand ini saling berinteraksi, sehingga dukungan lintas browser saat ini belum merata
  • URL

    • URL adalah salah satu elemen paling fundamental di web, dan tanpa URL, web tidak akan ada
    • Seperti banyak hal yang ditemukan pada sejarah awal web, dukungan URL juga belum sepenuhnya interoperabel
    • WHATWG menulis URL Living Standard yang memuat secara rinci bagaimana URL seharusnya bekerja
    • Pengujian yang mendukung standar ini menjadi area fokus Interop 2023, dan tingkat kelulusannya meningkat dari 77% menjadi 85%
    • Pada 2024, pekerjaan terus berlanjut untuk memastikan interoperabilitas
    • Safari lulus 99,7% pengujian

Proyek investigasi dan pelacakan kemajuan

  • Interop 2024 juga mencakup 3 area investigasi
    • Accessibility Testing
    • Mobile Testing
    • WebAssembly Testing
  • Area investigasi adalah tugas bagi tim Interop untuk menulis lebih banyak pengujian dan membuatnya dapat dijalankan
  • Proyek investigasi Mobile Testing bertujuan melengkapi infrastruktur yang diperlukan di WPT agar browser dapat diuji di sistem operasi seluler
    • Di masa mendatang, skor seluler juga mungkin akan disertakan di dasbor proyek Interop
  • Dua dari tiga investigasi merupakan proyek lanjutan dari tahun lalu, tetapi pada 2024 semuanya dimulai dari status penyelesaian 0%
  • Tim-tim yang berpartisipasi menetapkan target baru tahun ini, dan dasbor menampilkan kemajuan dibandingkan target tersebut
  • Kemajuan Interop 2024 dapat dilihat di dasbor Interop 2024
  • Interoperabilitas adalah salah satu pilar mendasar yang membentuk keberhasilan web, dan berdasarkan pekerjaan Interop 2022 dan 2023, kolaborasi berlanjut pada 2024

1 komentar

 
GN⁺ 2024-02-03
Opini Hacker News
  • Di sini jelas ada perubahan yang keren, dan dukungan yang makin baik tentu menggembirakan
    Misalnya, CSS nesting adalah salah satu alasan utama SASS dan LESS berguna, jadi ini perubahan besar. Ini memang lebih tepat masuk sebagai fitur inti CSS daripada sebagai fitur preprocessor seperti variabel
    Apa yang bisa dilakukan dengan custom properties juga selalu menarik, dan terlihat bagus sebagai langkah berikutnya setelah Shadow DOM dan custom elements. Popover juga ternyata cukup oke; fakta bahwa sekarang kita bisa membuat semacam modal popup tanpa JavaScript sangat berguna. Ini bisa mengurangi waktu yang terbuang untuk membuat modal kustom, menu dropdown, tombol hamburger, dan sebagainya
    Namun, dalam proyek seperti ini, saya berharap form juga lebih diperhatikan. Kondisi saat ini—berbagai field era HTML 5 yang terlalu berbeda antar-browser, bergantung pada styling pseudo-class proprietari untuk tampilan, dan secara umum sulit dikustomisasi—terasa mengejutkan usang untuk sebuah platform yang bisa melakukan hampir apa saja

    • Jika desainer UI bisa bergerak sesuka hati, sering kali mereka tidak menginginkan modal, menu, dan tombol default baru seperti ini, meskipun dulu mungkin menyukainya
      Perubahan ini memang akan membantu, tetapi di UI, konsistensi tampaknya diperlakukan seperti kelemahan, bukan fitur yang seharusnya dikejar semua orang
    • CSS nesting adalah alasan terakhir untuk memakai preprocessor CSS
      Jika Safari 17.2+ sudah lebih luas tersebar, kita bisa langsung memakai CSS murni
      Selain itu, variabel untuk query @media juga menjadi alasan, tetapi kebutuhan ini lebih jarang
  • Pada akhirnya JPEG XL tampaknya tidak masuk. Mengingat ini adalah format gambar pertama setelah sekian lama yang membawa peningkatan menyeluruh yang jelas, hal itu cukup sulit dipahami
    Saya berharap Interop bisa menghentikan situasi di mana Google pada praktiknya menghalangi adopsinya, tetapi sepertinya kita masih harus menunggu sementara pengganti setengah matang untuk format-format lama yang banyak dipakai terus bertambah

    • Saya juga menyayangkan hal ini
      Saya tidak tahu apa yang tidak disukai Google dari JPEG XL
  • Pernyataan “semua browser kini sepenuhnya mendukung warna P3” sebenarnya agak tidak tepat
    Firefox masih meng-clamp semua warna ke sRGB sebelum mengirimkannya ke perangkat. https://bugzilla.mozilla.org/show_bug.cgi?id=1626624#c16

  • Saya hanya sesekali mengerjakan web, jadi mungkin bukan target utama, tetapi fitur yang paling mencolok absen di WebKit adalah kurangnya dukungan favicon SVG
    Ini benar-benar sulit dipahami, dan mengurus semua ikon khusus Apple dengan ukuran berbeda cukup merepotkan bagi developer web ringan seperti saya

    • Sekarang Anda mungkin senang karena tidak seperti dulu lagi. Saat ini cukup punya satu ikon khusus Apple [1]:
      [1]: https://evilmartians.com/chronicles/how-to-favicon-in-2021-s...
    • Sedikit terkait, tetapi Chrome tidak memakai favicon SVG jika ada favicon ico. (https://bugs.chromium.org/p/chromium/issues/detail?id=145085...) Jadi saya mendistribusikan favicon PNG dan favicon SVG bersama-sama
    • Sebagai referensi, Safari mendukung favicon SVG satu warna dalam format ini
      Jika memakai sesuatu seperti Vite, Anda juga bisa mengotomatiskan seluruh pembuatan favicon dan ikon layar beranda dari satu gambar sumber
    • SVG tidak melakukan scaling seperti yang Anda inginkan. Misalnya, meskipun Anda membuat gambar persegi 256px sebagai vektor, transformasi vektor saja tidak bisa membuatnya terlihat bagus pada 24px
    • Benar. Seharusnya kita tidak perlu membuat semua ikon seperti ini
      Dan akan bagus juga jika daftar bisa distyling. Misalnya dengan menambahkan semacam bendera pada elemen
      CSS page transitions atau scroll-driven animations juga tidak disebutkan, padahal ini juga bisa mengurangi JavaScript boilerplate
  • Setelah membaca tulisan ini, saya jadi jauh lebih antusias daripada yang saya kira
    Saya penasaran kenapa tidak ada area fokus PWA dalam konsorsium yang berpartisipasi

    • Secara historis, Interop memang cenderung lebih berfokus pada CSS, tetapi itu perlahan berubah
      Meski begitu, banyak area pengujian mencakup pengujian worker, sehingga kondisi PWA juga semestinya ikut membaik. Pada 2023 ada satu bagian Modules penuh, dan banyak menguji fitur khusus PWA/worker. Cukup banyak API yang menjadi target pengujian dan investigasi, seperti OffscreenCanvas atau pengujian mobile, juga sangat terkait dengan berbagai aplikasi PWA
      Tahun ini, seperti tahun lalu, Interop memiliki tingkat sentralitas CSS yang paling rendah. Menurut saya, ada bagian IndexedDB, WebSocket, dan peningkatan aksesibilitas penting yang banyak diandalkan PWA. Tiga area investigasi—WebAssembly, aksesibilitas, dan pengujian mobile—juga semuanya sangat terkait dengan PWA
      Saya penasaran, secara spesifik API apa yang Anda harap lebih difokuskan
    • Seingat saya, konsorsiumnya kira-kira terdiri dari sekitar 12 orang, dan orang-orang ini juga bekerja di perusahaan browser
      Tujuannya adalah berkumpul lalu, dengan mempertimbangkan roadmap dan beban kerja saat ini, mencari fitur yang bisa mereka kerjakan atau tingkatkan bersama selama satu tahun. Interop bisa dilihat seperti tiket tambahan kecil yang bisa dikerjakan di sela-sela pengembangan fitur utama dalam pekerjaan utama mereka
      Sejauh ini fokusnya tertuju pada detail tingkat sangat rendah tentang cara browser merender konten. Karena JavaScript API pada umumnya sudah distandarkan dan digabungkan di “upstream”, area inilah yang memiliki ruang perbaikan paling besar
      Sebelum muncul arus untuk mengimplementasikan fitur baru secara serentak di semua engine, saya rasa pekerjaan menutup celah antar-browser akan terus lebih banyak dilakukan
      Namun, dengan Apple akhirnya menambahkan web push ke Safari mobile, kita sudah cukup dekat dengan bagian yang dibutuhkan sebagian besar web app yang akan mendapatkan manfaat dari fitur PWA. Saya penasaran fitur apa yang belum tersedia bersama di semua browser tetapi ingin Anda gunakan
    • Saya penasaran apa yang Anda anggap termasuk dalam area fokus PWA
      Di tempat lain saya menautkan https://web.dev/learn/pwa/capabilities dan https://whatpwacando.today, tetapi menurut saya cukup banyak dari fitur-fitur itu pada dasarnya sulit disebut sebagai fitur PWA. Sangat banyak fitur juga digunakan luas di luar PWA, sehingga memasukkannya ke dalam kelompok “PWA” membuat maknanya menjadi kabur. Bagi web developer, pengelompokan seperti “storage” atau “media” kemungkinan lebih bermakna
      Jika melihat definisi dasar PWA, ini terutama berkaitan dengan manifest dan service worker, serta penggunaan keduanya bersama web platform
      Manifest sulit diuji secara otomatis. Isinya ditampilkan di berbagai bagian UI browser, sedangkan UI pada umumnya tidak ditentukan dalam standar web. Ini karena vendor ingin punya kebebasan mengambil keputusan UI sendiri. Karena itu sulit dimasukkan, dan juga tidak jelas seberapa besar masalah interoperabilitasnya
      Service worker bisa saja diusulkan. Dalam beberapa tahun terakhir memang tidak diusulkan, tetapi saya juga tidak melihat ada begitu banyak masalah interoperabilitas di area ini belakangan
    • PWA melewati model app store. Aplikasi bisa dipasang langsung dari browser
      Karena itu, mengulur-ulur masalah ini dan sengaja membuat pengalaman PWA kurang menarik adalah sesuatu yang menguntungkan bagi mereka
      Saya kurang tahu kenapa Firefox menghapus dukungan PWA, tetapi mungkin karena biaya pemeliharaan
    • Karena dibandingkan penggunaan yang jauh lebih luas, yaitu “menampilkan konten”, PWA adalah kasus penggunaan niche
  • Font
    Saya berharap lebih banyak upaya dicurahkan ke tipografi CSS
    Khususnya, leading-trim dan margin-trim dibutuhkan
    https://medium.com/microsoft-design/leading-trim-the-future-...
    https://developer.mozilla.org/en-US/docs/Web/CSS/margin-trim

  • Pencapaian terbesar adalah update Safari tidak lagi terikat pada update sistem operasi

    • Di macOS, itu memungkinkan
      Namun di iOS tidak
      Dan karena update iOS baru keluar setiap 3–4 bulan, dalam praktiknya itu bukan masalah di iOS
  • Saya penasaran apakah ini sinyal bahwa WebKit mulai mengejar ketertinggalan dalam fitur WebAssembly
    Saat ini cukup tertinggal dibanding Chrome dan Firefox, dan tidak memiliki fitur besar dan penting seperti multiple memories atau garbage collection

    • Keduanya belum masuk ke spesifikasi Wasm dan masih dalam proses standardisasi
      Google lebih dekat dengan “siap! tembak! bidik! tembak lagi!”, sehingga cenderung lebih mudah merilis implementasi spesifikasi yang belum selesai, sedangkan Apple lebih dekat dengan “siap! bidik! bidik! tembak!”, sehingga umumnya enggan melakukan hal seperti itu. Untuk Firefox, sulit dikatakan
  • Sulit dipercaya bahwa Cookie Store API masih belum diimplementasikan secara resmi
    Sudah 2024, tetapi untuk mengambil satu cookie berdasarkan nama kita masih harus mem-parsing string besar yang berantakan—apa itu masuk akal

    • Bukankah itu karena sudah ada HTML 5 localStorage
  • Saya kurang memahami isu protokol WebSocket
    Setelah upgrade, koneksinya bukan lagi protokol http(s), jadi bukankah mengizinkan penggunaan http atau https di sini justru menimbulkan salah paham? Apakah memakai operator ternary, atau memiliki nilai yang berbeda dari nilai halaman saat ini, sebegitu buruknya? Saya senang ada pekerjaan normalisasi browser, tetapi item ini tampak berprioritas cukup rendah, bahkan jika memang layak diubah