Skip to content

Releases: alsyundawy/TrustPositif-Validator

TrustPositif Validator 1.0.3

Choose a tag to compare

@alsyundawy alsyundawy released this 26 Jul 20:33

🚀 Version 1.0.3

Hardening Blocklist Validation & Atomic Output

27 Juli 2026

Rilis ini berfokus pada peningkatan akurasi validasi blocklist, kompatibilitas lintas platform, keandalan penulisan output secara atomik, serta penyempurnaan portabilitas dan kualitas kode.


✨ Sorotan Rilis

Version 1.0.3 menghadirkan berbagai peningkatan pada proses parsing dan validasi blocklist modern, termasuk dukungan sintaks AdGuard, penanganan IPv6 yang lebih baik, mekanisme penulisan output yang sepenuhnya atomik, serta peningkatan kompatibilitas pada Linux, macOS, dan FreeBSD.


🆕 Fitur Baru

🛡️ Dukungan Blocklist Modern

Menambahkan dukungan terhadap berbagai sintaks blocklist yang umum digunakan, di antaranya:

  • Prefix AdGuard ||
  • Wildcard *
  • Leading dot (.)
  • Suffix AdGuard (^)
  • Opsi filter ($option)

Contoh yang kini didukung:

||example.com^
||ads.example.org$important
*.tracking.example.net
.example.com

Hal ini memungkinkan parser memproses blocklist modern secara lebih akurat tanpa memerlukan normalisasi manual.


🖥️ Monitoring Resource FreeBSD

Menambahkan dukungan native FreeBSD pada fungsi:

show_system_resources

Informasi yang ditampilkan kini mencakup:

  • Penggunaan RAM
  • Statistik halaman memori (memory pages)
  • Informasi sistem FreeBSD secara native

🛠️ Perbaikan

✅ Urutan Sanitasi Domain

Menyempurnakan urutan proses sanitasi dengan memindahkan penghapusan:

  • Path (/)
  • Query (?)
  • Fragment (#)
  • Opsi AdGuard (^, $option)

sebelum proses validasi port maupun karakter titik dua (:).

Perbaikan ini mengatasi kasus seperti:

example.com:8080/path

yang sebelumnya dapat terdeteksi sebagai domain tidak valid.


✅ Filtering Prefix IPv6

Memperluas proses penyaringan alamat IPv6 pada format file hosts, termasuk:

::
::1
0:0:0:0:0:0:0:1
fe80::

Sehingga entri non-domain dapat dihapus dengan lebih akurat sebelum tahap validasi.


✅ Cross-Filesystem Atomic Output

Mekanisme penulisan output kini menggunakan staging file:

VALID_OUTPUT_TMP

di dalam direktori tujuan (OUTPUT_DIR) sebelum dilakukan:

mv

Keuntungan:

  • Penggantian file berlangsung 100% atomik
  • Aman pada lingkungan dengan filesystem berbeda (misalnya /tmp dan OUTPUT_DIR berada pada mount point yang berbeda)
  • Mengurangi risiko file korup atau kosong ketika proses terhenti

✅ BSD Sort Compatibility

Menambahkan validasi otomatis terhadap konfigurasi:

SORT_BUFFER

Apabila menggunakan nilai berbentuk persentase (%) pada BSD sort (macOS/FreeBSD), nilai tersebut akan dikonversi secara otomatis menjadi ukuran absolut (MiB) untuk mencegah kegagalan proses.


✅ Portability Cleanup

Memperluas cakupan fungsi:

force_cleanup

sehingga kini juga membersihkan direktori sementara pada:

  • $TMPDIR
  • /tmp

Hal ini meningkatkan kompatibilitas pada berbagai distribusi Linux dan sistem BSD.


🔍 Kualitas Kode

✅ ShellCheck Compliance

Seluruh kode telah diaudit dan berhasil mencapai:

100% ShellCheck Clean

Tanpa warning maupun error, sehingga kualitas kode menjadi lebih konsisten dan mudah dipelihara.


📈 Ringkasan Peningkatan

Area Peningkatan
🛡️ Blocklist Dukungan sintaks AdGuard dan wildcard modern
🔍 Validasi Urutan sanitasi domain lebih akurat
🌐 IPv6 Filtering format hosts lebih lengkap
💾 Atomic Output Aman pada filesystem berbeda
🖥️ FreeBSD Monitoring resource native
⚙️ Portabilitas Peningkatan kompatibilitas Linux, macOS, dan FreeBSD
🧹 Kualitas Kode 100% lulus audit ShellCheck

Version 1.0.3 merupakan rilis yang berfokus pada akurasi parser, keandalan output, kompatibilitas lintas platform, dan peningkatan kualitas kode, sehingga lebih siap digunakan untuk memproses blocklist berukuran besar pada lingkungan produksi.

Full Changelog: 1.0.2...1.0.3

TrustPositif Validator 1.0.2

Choose a tag to compare

@alsyundawy alsyundawy released this 26 Jul 20:15
f355cdb