Syncthing 2.0 Menghentikan Sokongan untuk Pelbagai Platform Disebabkan Migrasi SQLite

Pasukan Komuniti BigGo
Syncthing 2.0 Menghentikan Sokongan untuk Pelbagai Platform Disebabkan Migrasi SQLite

Syncthing , alat penyegerakan fail sumber terbuka yang popular, telah mengeluarkan versi 2.0 dengan perubahan ketara yang telah mencetuskan perbincangan komuniti. Walaupun kemas kini ini membawa penambahbaikan seperti backend pangkalan data SQLite baharu dan penambahbaikan logging, ia juga menghapuskan sokongan untuk beberapa platform, menimbulkan kebimbangan dalam kalangan pengguna mengenai hala tuju projek ini.

Pengurangan Sokongan Platform Menimbulkan Persoalan

Perubahan paling kontroversi dalam Syncthing 2.0 adalah penghapusan binari pra-bina untuk pelbagai platform, termasuk DragonFly BSD , Solaris , NetBSD , dan terutamanya Windows ARM32 . Keputusan ini berpunca daripada komplikasi dengan cross-compiling SQLite , backend pangkalan data baharu yang menggantikan LevelDB .

Ahli komuniti telah menyatakan kejutan terhadap penghentian sokongan Windows ARM32 , terutamanya memandangkan peralihan industri ke arah pemproses ARM . Walau bagaimanapun, pasukan pembangunan menjelaskan bahawa Windows ARM64 kekal disokong, dan sokongan 32-bit ARM sedang dihentikan secara berperingkat oleh Microsoft sendiri dalam keluaran Windows 11 masa depan.

Pilihan pelaksanaan SQLite juga telah menarik perhatian. Pengguna mempersoalkan mengapa pasukan memilih github.com/mattn/go-sqlite3 berasaskan CGO berbanding modernc.org/sqlite Go tulen, yang akan mengelakkan isu cross-compilation. Prestasi nampaknya menjadi faktor penentu, kerana versi CGO menawarkan kelajuan yang lebih baik walaupun terdapat kerumitan kompilasi.

Platform Yang Tidak Lagi Menerima Binari Pra-bina

  • DragonFly BSD (amd64)
  • Illumos/Solaris (amd64)
  • Linux (ppc64)
  • NetBSD (semua seni bina)
  • OpenBSD (386 dan ARM)
  • Windows (ARM 32-bit)

Nota: Sokongan Windows ARM64 diteruskan

Migrasi Pangkalan Data dan Penambahbaikan Prestasi

Peralihan daripada LevelDB kepada SQLite mewakili perubahan asas dalam cara Syncthing menyimpan data. Pengguna melaporkan bahawa proses migrasi boleh mengambil masa yang lama untuk persediaan yang lebih besar, tetapi pangkalan data baharu menjanjikan penyelenggaraan yang lebih mudah dan lebih sedikit pepijat. Kemas kini ini juga memperkenalkan pembersihan automatik fail yang dipadamkan selepas enam bulan, menangani kebimbangan penyimpanan yang telah lama wujud.

Pelbagai penambahbaikan prestasi mengiringi perubahan pangkalan data. Penghapusan pengesanan rolling hash untuk data yang beralih, walaupun menghilangkan satu ciri, sebenarnya meningkatkan kecekapan imbasan dan penyegerakan. Sistem kini menggunakan pelbagai sambungan secara lalai antara peranti versi 2, dengan tiga sambungan mengendalikan jenis pertukaran data yang berbeza.

Perubahan Teknikal Utama dalam Versi 2.0

  • Pangkalan Data Backend: LevelDB → SQLite
  • Sambungan Lalai: Sambungan tunggal → Tiga sambungan (1 untuk metadata, 2 untuk data)
  • Pengekalan Fail yang Dipadam: Selamanya → 6 bulan (boleh dikonfigurasi)
  • Pengesanan Rolling Hash: Dialih keluar untuk prestasi yang lebih baik
  • Sistem Pengelogan: Disusun semula dengan tahap log setiap pakej
  • Kunci Kriptografi: Bertukar kepada Ed25519 untuk sambungan penyegerakan

Ekosistem Android Kekal Aktif

Walaupun sokongan Android rasmi berakhir sebelum ini disebabkan sekatan platform Google , ekosistem Android terus berkembang maju melalui fork komuniti. Fork Syncthing-Android mengekalkan pembangunan aktif dan tersedia melalui kedua-dua F-Droid dan Google Play Store , memastikan pengguna mudah alih tidak ketinggalan.

Pertimbangan Keserasian dan Migrasi

Versi 2.0 mengekalkan keserasian protokol dengan versi 1.x, membolehkan migrasi beransur-ansur merentas peranti yang berbeza. Keserasian ke belakang ini memberikan pengguna fleksibiliti dalam menaik taraf pemasangan Syncthing mereka tanpa memerlukan kemas kini serentak merentas semua peranti.

Respons komuniti mencerminkan kedua-dua penghargaan terhadap pembangunan berterusan Syncthing dan kebimbangan mengenai pengurangan sokongan platform. Ramai pengguna memuji kebolehpercayaan perisian dan pendekatan yang fokus kepada privasi, dengan sesetengahnya melaporkan operasi tanpa masalah selama bertahun-tahun merentas pelbagai peranti.

Syncthing 2.0 mewakili evolusi ketara yang mengutamakan prestasi dan kebolehselenggaraan berbanding sokongan platform yang luas. Walaupun sesetengah pengguna mungkin perlu mengkompil daripada sumber atau mencari alternatif, penambahbaikan fungsi teras menunjukkan asas yang lebih kukuh untuk pembangunan masa depan.

Rujukan: v2.0.0