Ditulis pada 15-12-2024 oleh Rodrigo Arias Mallo
Pada tahun 1999, sekelompok pengembang yang dipimpin oleh Jorge Arellano Cid membuat cabang
Gzilla/Armadillo kode awalnya dikembangkan oleh Raph Levien, dan mulai mengerjakan apa yang sekarang dikenal sebagai browser web Dillo.
Hari ini, per Desember 2024, Dillo berusia 25 tahun!
Selama perjalanan panjang ini, proyek tersebut mengalami banyak perubahan dan sempat terhenti beberapa kali, namun berhasil bertahan hingga saat ini. Sebagai peringatan atas pencapaian ini, maka saya ingin menulis sejarah singkat proyek tersebut.
Perhatikan bahwa Jorge telah memimpin proyek ini dari tahun 1999 hingga 2019, dan hingga hari ini, kami tidak memiliki berita lagi tentang dia. Saya harap dia baik-baik saja dan memutuskan untuk pindah ke proyek lain. Sejak itu, saya (Rodrigo) memutuskan untuk menghidupkan kembali proyek tersebut dan menghidupkannya kembali. Saya tidak memiliki hubungan dengan pengembang sebelumnya, tetapi saya mencoba melakukan yang terbaik untuk menjaga tujuan awal tetap utuh.
Dokumen ini mencoba menceritakan sejarah yang saya amati melalui potongan-potongan yang dapat saya kumpulkan dari
milisitu
log perubahan
dan itu
sejarah git.
Periode GTK (1999 – 2006)
Saat Dillo di-fork, ia menggunakan GTK 1.0 sebagai perpustakaan UI. Rilis pertama dilakukan pada bulan Desember 1999 seperti yang tercatat di ChangeLog. Pada saat itu, seperti inilah tampilan Gzilla 0.3.9:
Selama pengembangan awal, Jorge pertama kali merancang dan menulis konvensi penamaan untuk nama fungsi (seperti mengawalinya dengan a_ ketika bersifat publik) atau menggunakan 3 spasi untuk indentasi, dan mulai menyesuaikan basis kode untuk mengikuti konvensi yang sama.
Pada bulan Maret 2000, lisensi diubah menjadi GPLv3 dengan izin dari Raph Levien (pengembang utama Gzilla/Armadillo).
Browser melakukan percobaan penulisan ulang besar-besaran dengan gagasan untuk mempertahankan beberapa aliran komunikasi mengikuti pendekatan berbasis sinyal. Karya ini berakhir di publikasi
Pemrograman jaringan internal browser Web Dillo oleh Jorge Arellano-Cid dan HH Von Brand. Pekerjaan ini nantinya akan diturunkan dalam Concomitant Control Chain (CCC), mekanisme yang masih digunakan Dillo hingga saat ini untuk melacak banyak koneksi dan antar modul internalnya.
Sebastian Geerken mulai mengerjakan basis kode setidaknya sejak Juni 2000. Pertama mengirimkan patch kecil dan kemudian pindah ke mesin rendering, di mana ia menjadi arsitek utamanya. Mesin rendering adalah salah satu komponen terpenting browser, yang pada dasarnya membaca pohon elemen dan menentukan ukuran dan posisi setiap elemen di layar, seperti kata dalam paragraf dan gambar.
Dukungan untuk fitur HTML dan CSS mulai berkembang di tahun-tahun mendatang, khususnya untuk tabel dan elemen teks.
Tak lama setelah GTK2 dirilis, tim mempertimbangkan untuk memindahkan Dillo ke dalamnya, namun ada beberapa kekhawatiran mengenai kompleksitas dan ukuran versi GTK baru.
Pada bulan Oktober 2003,
Jorge bertanya kepada pengelola FLTK, Michael Sweet apakah memungkinkan untuk memindahkan Dillo ke FLTK, karena dianggap lebih selaras dengan tujuan kecepatan dan stabilitas:
Kami mengikuti rencana kami untuk mem-porting dillo dari GTK1 (saat ini menggunakan TK) ke GTK2, ketika salah satu pelanggan daftar kami menyarankan untuk mempertimbangkan FLTK karena latar belakang filosofi yang sama
Tim memutuskan untuk fokus pada FLTK 2 daripada GTK 2.0, karena dianggap jauh lebih membengkak dan lambat. Perhatikan bahwa pada saat itu, FLTK 2 belum dirilis, namun direncanakan akan dirilis “segera”.
Pada bulan Agustus 2004, Sebastian memutuskan untuk membuat keputusan desain yang menarik,
untuk menjadikan perangkat widget Dillo independen. Dengan cara ini, pengembangan GTK1 dan FLTK2 secara paralel dapat dilanjutkan, serta manfaat lainnya.
Bagian yang paling rumit tentu saja Dw, karena terikat erat dengan Gtk+. Dengan segala cara, saya ingin mencegah, bahwa terdapat versi Dw yang berbeda, dengan fitur berbeda (misalnya, ketika pengembangan versi Gtk+ berlanjut, sementara versi FLTK dikembangkan), yang sulit untuk diintegrasikan.
Karena alasan ini (dan alasan lainnya), saat ini saya sedang mengerjakan desain ulang Dw, yang akan menjadikan Dw toolkit independen. Ini bukan satu-satunya tujuan desain ulang ini, hal ini juga akan memungkinkan beberapa fitur lain, misalnya jendela pratinjau, yang mana seluruh halaman dapat dilihat dengan ukuran yang diperkecil, juga, akan memungkinkan penggunaan kembali Dw dalam plugin grafis, dan beberapa lagi. (Sebenarnya, ide untuk desain ini sudah lama, kecuali independensi platform, tapi ini mudah untuk ditambahkan.)
Selama periode ini, mekanisme DPI (plugin) ditingkatkan dan beberapa fungsi dipindahkan ke program eksternal yang berkomunikasi dengan browser melalui protokol DPI, seperti unduhan, bookmark, FTP dan juga HTTPS. Versi 0.8.3 yang dirilis pada Oktober 2004 sudah mendukung HTTPS. Berikut tampilannya (masih menggunakan GTK1):
Pada tahun-tahun berikutnya, pengembangan pelabuhan FLTK terus dilakukan. Fungsionalitas yang disediakan oleh glib diimplementasikan di perpustakaan Dlib khusus sehingga Dillo tidak perlu bergantung pada glib lagi.
Pada bulan Februari 2005, Jorge dan Sebastian memberikan ceramah di FOSDEM tentang browser Dillo. Sayangnya, tidak ada rekaman pembicaraan tersebut. Namun tak lama kemudian, Jorge kembali memberikan ceramah di LSM pada tahun 2005 yang direkam, yang merupakan pertama kalinya ditampilkan implementasi FLTK2.
Rilis terakhir yang masih menggunakan GTK1 adalah 0.8.6 pada bulan April 2006. Kita harus menunggu dua tahun hingga rilis berikutnya 2.0.0 akhirnya diterbitkan dengan port ke FLTK2 selesai.
FLTK 2 periode (2005 – 2011)
Porting ke FLTK2 dimaksudkan untuk membuat browser lebih kecil dan menyediakan fitur lain seperti antialiasing. Pada bulan April 2005, Jorge melaporkan bahwa port ke FLTK2 sedang dibuat
kemajuan besar.
Berikut adalah kabar baik mengenai kemajuan kami saat ini dalam mem-porting dillo ke FLTK. Hal ini berlangsung sangat cepat dan kami telah membuat kemajuan besar sejauh ini.
Berikut tampilan browser dengan FTLK2:
Namun selama ini, kode sumber untuk port FLTK2 baru tidak tersedia di CVS untuk umum. Sebaliknya, Jorge berfokus pada peningkatan pendanaan untuk menutupi pengembangan proyek dari beberapa perusahaan yang berminat.
Pada bulan Maret 2006, Jorge melaporkan hal tersebut sejauh ini
itu tidak berhasil menarik dana. Proyek ini menghadapi risiko terhenti yang serius.
Setelah pertengahan tahun 2006, tidak ada lagi rilis Dillo hingga tahun 2008, dan sejauh ini tidak ada keberhasilan dalam melibatkan lebih banyak pengembang atau mendanai proyek tersebut. Proyek ini dianggap dibekukan atau terhenti dan kode FLTK2 tetap menjadi sumber tertutup.
Pada bulan April 2007, Jorge
laporan
bahwa dia berniat untuk melepaskan port FLTK2 segera setelah Sebastian setuju.
Faktanya, menurut saya itu terjadi kurang lebih 6 bulan yang lalu, setelah beberapa email dengan Andrew Tanenbaum, yang akhirnya membantu saya menyadari bahwa ini adalah saat yang tepat untuk merilis kode lagi. Sejak itu, saya mencoba menghubungi Sebastian untuk menyetujui hal ini.
Pada tanggal 30 September 2007, Jorge akhirnya
mengumumkan bahwa port FLTK2 sekarang tersedia:
Ini adalah rilis alfa dari browser web Dillo generasi berikutnya. Kode mengalami penulisan ulang besar-besaran: sebagian besar basis kode dipindahkan ke C++, dan mesin rendering sekarang menggunakan pustaka FLTK2, bukan GTK1.
Silakan baca README di dalam tarball dillo.
Pengembang yang bersedia bergabung dengan proyek ini dan berkontribusi sangat dianjurkan. Sebastian melakukan pekerjaan luar biasa dalam mendokumentasikan mesin widget dillo yang baru (jalankan saja doxygen di dalam pohon DW).
Langkah ini memulai banyak tambalan dari pengembang lain yang dengan cepat terintegrasi ke dalam port FLTK2. Kontribusi ini mendorong Dillo menuju kondisi pembangunan yang aktif kembali.
Pada bulan September 2008, Jorge
diumumkan dukungan untuk tab, yang disertakan untuk rilis. Setelah banyak perbaikan bug, versi berikutnya berdasarkan FLTK2 telah siap dan pada bulan Oktober 2008, Dillo 2.0.0 akhirnya dirilis.
Setahun kemudian, pada bulan Juli 2009,
Jorge mengumumkan bahwa dia sekarang adalah seorang ayahdan waktunya untuk mengembangkan Dillo (dapat dimengerti) akan terpengaruh.
Saya cukup senang memberi tahu Anda bahwa kemarin tanggal 19 Agustus (Juli), putri pertama saya Lisa telah lahir!
Semuanya baik-baik saja, kami sangat senang dengan “rilis” ini 🙂 dan saya hanya ingin mengkomunikasikannya di sini, sehingga Anda sedikit banyak mengetahui atau memahami aktivitas (atau kekurangan) saya di hari-hari berikutnya.
Lebih banyak fitur dan perbaikan bug ditambahkan di rilis mendatang, hingga rilis terakhir seri 2.X, versi 2.2.1 dirilis pada tahun 2011. Selama periode ini, kami tidak melihat lebih banyak patch dari Sebastian atau email di pengiriman daftar.
Berikut tampilan Dillo di versi 2.2, sangat mirip dengan tampilannya saat ini:
Pada periode ini, masalah lain muncul di FLTK. Itu
pengembangan FLTK2 dianggap terhenti dan tidak ada versi resmi yang dirilis. Hal ini menyebabkan dikeluarkannya distribusi hilir, karena Dillo harus terhubung dengan paket FLTK yang tidak tersedia.
Jadi, tim memutuskan untuk beralih ke FLTK 1.3 segera setelah dirilis, dan membawa Dillo ke seri 3.X.
FLTK 1.3 periode (2011 – 2016)
Pada bulan Juni 2011, setelah rilis FLTK 1.3 selesai, pelabuhan Dillo ke FLTK 1.3 sedang berlangsung. Hanya beberapa bulan kemudian, rilis 3.0.0 pertama menggunakan FLTK 1.3 diterbitkan.
Pada bulan Juli 2012, Sebastian mempresentasikan algoritma tanda hubung baru yang mengimplementasikan mekanisme yang sama yang digunakan di TeX. Implementasi baru ini memasuki rilis 3.0.3 pada bulan April 2013.
Beberapa rilis dibuat hingga versi 3.0.5 pada bulan Juni 2015.
Selama dua tahun terakhir ini, kami melihat adanya pergeseran jumlah komitmen yang diperkenalkan oleh Sebastian, yang tumbuh cukup signifikan.
Saat itu, Sebastian sedang mengerjakan desain ulang GROWS, yang mengubah cara ukuran widget (elemen halaman) dihitung.
Sayangnya, pada bulan Oktober 2016, Sebastian meninggalmeninggalkan sebagian besar karyanya tidak dimasukkan ke dalam rilis baru. Sejak itu, perkembangannya terhenti dengan cepat hingga pada tahun 2019 Jorge mengirimkan email terakhirnya dicatat oleh milismerekomendasikan pengguna untuk menggunakan versi repositori saat ini, daripada menunggu rilis 3.1:
> Menurut info di
> dillo-3.1 (belum dirilis).
>
> Saya mungkin akan menunggu sampai mereka merilisnya secara resmi.IMHO, Anda harus mendapatkannya. Itu menjadi stabil selama bertahun-tahun.
—
Bersulang
Jorge.-
Setelah momen ini, proyek tersebut mulai memburuk. Pada tahun 2022 domain DNS dillo.org hilang, menyebabkan situs web, repositori lincah, milis, dan server email menghilang.
Proyek tersebut dengan cepat ditinggalkan, karena tidak ada lagi aktivitas pengembang di mana pun. Situs dillo.org sekarang menjadi salinan zombie yang aneh dari situs web aslinya, tetapi sekarang diganggu oleh SPAM di blog WordPress.
Kebangkitan (2024 – sekarang)
Pada bulan Desember 2023, saya mulai meluangkan waktu untuk menambal Dillo agar dapat dibangun kembali. Saya mencoba memperbaiki beberapa bug sederhana, dan ketika saya melihat bahwa forum Atari telah berhasil mem-porting Dillo ke Atari (!) berdasarkan repo saya, saya berpikir mungkin ada baiknya untuk mencoba menghidupkannya kembali. Saya mengomentarinya
Berita Peretas dan ia terkejut karena ketertarikannya.
Saya pertama kali membuat organisasi GitHub untuk menyimpan repositori Git dan menggunakan halaman GitHub untuk membuat situs web Dillo baru. Saya mencoba untuk mendapatkan salinan semua materi yang saya bisa, dan mengunggahnya ke situs web dan milis baru.
Saya mencoba memperbaiki semua masalah hingga akhirnya membuat rilis 3.1.0, dan setelah beberapa bulan bekerja di waktu luang, saya berhasil merilisnya pada Mei 2024. Ini menarik perhatian
beberapa
berita
situs
dan segera kemudian berkembang menjadi beberapa
Distribusi Linux.
Mulai hari ini, 15 Desember 2024, saya terus memelihara proyek ini, dan kami mendapatkan beberapa kontributor baru yang membantu perbaikan dan diskusi tentang pengembangannya. Kami masih jauh dari memiliki cukup pengembang untuk menangani semua masalah ini, namun perlahan-lahan kami membuat beberapa kemajuan.
Rilis terakhir Dillo adalah 3.1.1, dan inilah tampilannya saat memuat situs web Dillo yang baru: