- Alat perekam terminal asciinema CLI 3.0 telah ditulis ulang sepenuhnya dengan Rust, menambahkan fitur upgrade format file dan live streaming terminal
- Dengan adopsi Rust, kini tersedia binary statis, waktu mulai yang cepat, serta integrasi AVT yang mempermudah konkurensi dan penanganan system call, sekaligus menyiapkan fondasi untuk implementasi fitur baru
- Format baru asciicast v3 memperkenalkan timing berbasis interval (delta) untuk event, metadata
term yang lebih terstruktur, event keluar "x", dan komentar baris # untuk meningkatkan kemudahan pengeditan dan daya ekspresi
- Live streaming terminal tersedia dalam dua mode: server bawaan lokal dan relay jarak jauh (self-hosted/server resmi), dengan buffering adaptif sesuai kondisi jaringan untuk pengalaman menonton yang mulus
- Filosofi dasar kini ditegaskan kembali sebagai Local-first:
rec mewajibkan nama file dan upload dipisahkan (upload <file>), serta prompt pemilihan server sendiri memperkuat kemudahan self-hosting dan pencegahan kebocoran data yang tidak disengaja
Rilis 3.0: asciinema CLI yang ditulis ulang dengan Rust dan peningkatan utamanya
- asciinema CLI 3.0 resmi dirilis
- Pada versi ini, seluruh kode ditulis ulang dengan Rust sekaligus format file rekaman di-upgrade
- Beragam fitur seperti live streaming sesi terminal juga ditambahkan atau ditingkatkan
Penulisan ulang ke Rust dan peningkatan menyeluruh
- CLI ditulis ulang sepenuhnya dengan Rust untuk meningkatkan pengalaman developer dan maintainability, sekaligus menyederhanakan jalur instalasi melalui distribusi binary statis, mempercepat waktu mulai, dan membuka ruang ekspansi fitur
- Pilihan ini didasarkan pada pengalaman penulis bahwa system call dan penanganan konkurensi lebih mudah dilakukan dibanding Python, dan dengan mengintegrasikan asciinema virtual terminal (AVT) ke dalam CLI, implementasi fitur baru menjadi memungkinkan
- Hasilnya, dari sisi performa, distribusi, dan arsitektur, telah disiapkan fondasi untuk penambahan fitur di masa depan
Format file asciicast v3
- Format file asciicast v3 menjadi evolusi yang memperbaiki berbagai kekurangan yang muncul pada v2
- Timestamp absolut di v2 diganti dengan timing berbasis interval (delta), sehingga masalah penyesuaian massal timestamp berikutnya saat event disisipkan atau dihapus dapat diatasi
- Header disusun ulang dengan mengelompokkan metadata terkait terminal di bawah key
term, serta mendukung event "x" (exit) untuk menyimpan status akhir sesi
- Komentar baris (
#) di dalam file kini diizinkan untuk meningkatkan keterbacaan dan kemudahan pengelolaan
- Cuplikan contoh disediakan untuk menunjukkan struktur dan komposisi event stream secara intuitif
- Format baru ini sudah didukung oleh asciinema server dan asciinema player
Live streaming terminal
- Mode lokal: menyediakan stream yang bisa ditonton di jaringan yang sama melalui server HTTP bawaan, sebagai mode privacy-first di mana data hanya dikirim ke browser penonton
- CLI dibundel dengan asciinema player terbaru sehingga bisa langsung diputar, meski mungkin perlu membuka port firewall
- Mode jarak jauh: menggunakan asciinema server (resmi atau self-hosted) sebagai relay untuk mendistribusikan stream melalui URL yang bisa dibagikan
- Kedua mode dapat digunakan secara bersamaan sehingga konfigurasi distribusi bisa disesuaikan dengan kebutuhan
- Player menyeimbangkan latensi rendah dan pencegahan buffer underrun melalui buffering adaptif berbasis pengukuran latensi jaringan secara real-time
- Server mendukung perekaman stream otomatis, namun server operasional asciinema.org saat ini menonaktifkan perekaman dan menerapkan kebijakan batas 1 stream simultan
- Untuk self-hosting, perekaman aktif secara default dan tidak ada batas stream simultan
Kembali ke Local-first
- Di masa lalu,
asciinema rec memasukkan perilaku upload ke dalam alur default, yang menimbulkan risiko publikasi tanpa sadar dan kebocoran informasi
- Pada 2.4, prompt pilihan sebelum upload diperkenalkan sebagai persiapan transisi; di 3.0, hal ini dipisahkan lebih tegas dengan nama file wajib, penghapusan fungsi upload dari
rec, dan perintah eksplisit upload <file>
- Filosofi dasar kini dipertegas sebagai local-first, dengan alur yang didesain ulang agar pengguna memutuskan publikasi/berbagi secara sadar
- Penggunaan lokal sepenuhnya didukung penuh, dan publikasi hanya dilakukan secara eksplisit saat diperlukan
Penguatan kemudahan self-hosting
- Saat pertama kali menggunakan
upload, stream, atau auth, akan muncul prompt pemilihan URL server, yang menawarkan asciinema.org sebagai default namun menyimpan pilihan instance sesuai maksud pengguna
- Sebelumnya ini juga bisa ditentukan lewat file konfigurasi atau environment variable, tetapi kini penetapan menjadi lebih mudah di lingkungan interaktif seperti VM baru atau Dev container
- Ini tidak hanya meningkatkan kemudahan penggunaan self-hosting, tetapi juga berfungsi sebagai lapisan keamanan tambahan untuk mencegah upload eksternal yang tidak diinginkan
Distribusi dan panduan penggunaan
- Diperlukan waktu hingga paket tersedia di repository paket tiap distribusi
- Sementara itu, binary pra-build untuk GNU/Linux dan macOS dapat diunduh dari rilis GitHub, atau pengguna dapat membangun dari source
- Release note dan riwayat perubahan detail dapat dilihat di dokumen release notes dan CHANGELOG di GitHub
Belum ada komentar.