News

Fitur Baru Go 1.25: DWARF v5, go doc -http, dan XOF dalam Praktik

Eko Susilo Harjo August 29, 2025

Pengenalan

Go 1.25 baru saja rilis dan bawa banyak peningkatan yang bikin hidup developer lebih gampang. Di artikel ini, kita bakal bahas tiga fitur paling menonjol: DWARF v5 untuk debugging yang lebih ringan, go doc -http yang menyiapkan server dokumentasi lokal dalam hitungan detik, serta interface XOF untuk hash yang output‑nya bisa diperpanjang. Semua dijelaskan dengan bahasa santai, contoh kode, dan tips praktis supaya kamu bisa langsung pakai di proyekmu.

Ringkasan Fitur Go 1.25

Fitur Apa Baru Kenapa Penting Intisari Cepat
DWARF v5 Compiler & linker kini mengeluarkan DWARF 5 (bukan DWARF 4). Ukuran debug section lebih kecil → link lebih cepat & binary lebih ringan, terutama untuk monolit besar. Debugger populer (delve, gdb, lldb) sudah dukung, cek toolchain bila ada masalah simbol.
go doc -http Flag baru yang meluncurkan server HTTP menampilkan dokumentasi Go dalam format HTML. Gak perlu copy‑paste output godoc; browsing standar library atau modul apapun lewat browser. Jalankan go doc -http=:6060 → buka http://localhost:6060.
XOF (extendable‑output function) Interface hash.XOF di paket crypto, diimplementasikan oleh shake128 & shake256. API seragam untuk hash yang menghasilkan output sepanjang yang dibutuhkan – cocok buat KDF, random‑oracle, dsb. Gunakan sha3.NewShake128()Read(buf) sesukamu.
Lain‑lain go run -count batasi retry download modul.
go vet dapat cek printf baru.
runtime/trace catat event blocking goroutine.
sync/atomic kini punya generic Value[T].
Perbaikan kualitas hidup kecil yang menumpuk jadi workflow lebih mulus. Upgrade tanpa rasa sakit, terutama di CI/CD.

Hands‑On: go doc -http

Server dokumentasi lokal ini sangat berguna saat kamu lagi ngoding bareng atau butuh referensi cepat tanpa keluar terminal.

Cara Memulai

# Dari folder manapun dalam modul (atau $GOPATH)
go doc -http=:6060

Setelah server jalan, buka browser ke http://localhost:6060. Kamu akan melihat tampilan HTML lengkap untuk:

  • Standard library (/pkg/std)
  • Paket milikmu (/src/your/module/...)
  • Modul pihak ketiga di go.mod (/pkg/mod/...)

Tips & Gotchas

Tips Detail
Port konflik Kalau :6060 udah dipakai, ganti saja ke :8080 atau :9000.
Keamanan Gunakan -http=localhost:6060 supaya hanya kamu yang bisa akses.
Dokumen kustom Set GOFLAGS="-mod=mod" untuk melihat dokumentasi modul vendored.

Hands‑On: Interface XOF

Dengan XOF, kamu bisa menghasilkan hash berukuran apa saja, cocok untuk key‑derivation atau stream cipher.

Contoh Dasar dengan SHAKE‑128

package main

import (
    "crypto/sha3"
    "fmt"
    "io"
)

func main() {
    // 1️⃣ Buat XOF
    xof := sha3.NewShake128()

    // 2️⃣ Masukkan data (message)
    msg := []byte("Go 1.25 XOF demo")
    if _, err := xof.Write(msg); err != nil {
        panic(err)
    }

    // 3️⃣ Baca output sepanjang yang dibutuhkan, misal 64 byte untuk key
    key := make([]byte, 64)
    if _, err := io.ReadFull(xof, key); err != nil {
        panic(err)
    }

    fmt.Printf("Derived key (hex): %x\n", key)
}

Di atas, Read dapat dipanggil berulang kali untuk menghasilkan lebih banyak byte tanpa harus membuat instance baru.

Penggunaan Nyata: Key Derivation Function (KDF)

func DeriveKey(secret, salt []byte, outLen int) []byte {
    xof := sha3.NewShake256()
    // Campur secret dan salt, mirip HKDF
    xof.Write(secret)
    xof.Write(salt)

    out := make([]byte, outLen)
    io.ReadFull(xof, out)
    return out
}

Anda tinggal tentukan outLen sesuai kebutuhan, misalnya 128 byte untuk nonce panjang atau 32 byte untuk AES‑256 key.

Checklist Migrasi ke Go 1.25

  • Pastikan semua toolchain (delve, gdb, lldb) sudah dukung DWARF 5.
  • Jalankan go test -run=^$ -bench=. -count=1 untuk memastikan tidak ada regresi performa.
  • Perbarui CI pipeline: bersihkan cache go.mod lama, lalu go mod tidy.
  • Coba go doc -http di mesin lokal, pastikan port tidak bentrok dengan layanan lain.
  • Jika memakai hash custom, ganti implementasi lama dengan hash.XOF untuk fleksibilitas output.

Kesimpulan

Go 1.25 memperkenalkan peningkatan yang terasa langsung di workflow harian: debugging lebih ringan dengan DWARF v5, dokumentasi lebih interaktif lewat go doc -http, dan kemampuan hash yang lebih fleksibel lewat XOF. Coba semua fitur ini sekarang, dan rasakan proses coding yang lebih cepat serta kode yang lebih bersih.

Jika kamu suka artikel ini, jangan lupa share ke teman‑teman developer dan tinggalkan komentar tentang pengalamanmu dengan fitur‑fitur baru ini!

Meta Description: Ringkasan Go 1.25: DWARF v5, go doc -http, dan XOF. Panduan praktis, contoh kode, dan checklist migrasi untuk developer.

Focus Keywords: Go 1.25 fitur baru, go doc http, Go XOF, DWARF v5 Go, tutorial Go 1.25


Discover more from teknologi now

Subscribe to get the latest posts sent to your email.

News

Change Data Capture (CDC)

Eko Susilo Harjo

28 August 2025

Di era digital, sistem ERP (Enterprise Resource Planning) menjadi tulang punggung perusahaan. Semua proses – mulai dari keuangan, HR, inventori, hingga produksi – bertumpu pada data yang terus berubah setiap detik.Tantangannya: bagaimana cara menampilkan data yang selalu up-to-date tanpa membebani server? Jawabannya ada pada teknologi Change Data Capture (CDC). Apa itu CDC? Change Data Capture […]

Pengantar MLOps (Machine Learning Operations) adalah gabungan praktik DevOps yang diterapkan pada seluruh siklus hidup model AI. Dengan MLOps, tim dapat memindahkan model dari notebook eksperimen ke produksi secara reliable, terukur, dan otomatis. Artikel ini bakal ngasih blueprint praktis untuk developer, data scientist, dan platform engineer yang mau membangun sistem ML produksi. Siklus Hidup MLOps […]

News

ncdu: Senjata Rahasia DevOps Saat Disk Penuh

Eko Susilo Harjo

25 August 2025

Pernah nggak sih, lagi asik-asiknya kerja, tiba-tiba server kasih pesan horor: 😱 Semua service mulai error, container berhenti, bahkan kadang login pun terasa lambat.Sebagai DevOps, ini mimpi buruk. Tapi tenang, ada satu tool kecil yang sering jadi pahlawan penyelamat: ncdu. Apa Itu ncdu? ncdu (NCurses Disk Usage) adalah versi super power dari du.Kalau du -sh […]

Discover more from teknologi now

Subscribe now to keep reading and get access to the full archive.

Continue reading