16. Kapan Tidak Digunakan
16. Kapan Tidak Digunakan
-
Build Tool Plugin untuk transformasi sederhana: Jika sekadar copy file atau rename,
resourcesdeclaration di Package.swift sudah cukup. Plugin menambah kompleksitas yang tidak perlu. -
Binary Target untuk package yang sering berubah: Setiap perubahan membutuhkan build ulang XCFramework, upload, dan update checksum. Untuk package yang aktif dikembangkan, source distribution jauh lebih efisien.
-
Command Plugin yang memerlukan state kompleks: Command plugin berjalan dalam sandbox yang terbatas. Untuk release automation yang kompleks (bump version, update changelog, tag git, push) lebih baik gunakan tool khusus seperti Fastlane atau shell script.
-
Local packages sebagai pengganti module: Membuat local package hanya untuk dua atau tiga file adalah overkill. Gunakan Swift module biasa (folder dengan sources) terlebih dahulu, baru ekstrak ke package ketika sudah jelas batasannya.
-
Swift Package Registry untuk project solo atau tim kecil: Overhead setup dan maintenance self-hosted registry tidak sepadan untuk tim kecil. GitHub URL dependencies sudah memadai.
-
Unsafe flags di library yang didistribusikan: Library dengan
unsafeFlagstidak bisa menjadi dependency dari package lain — SPM akan menolak. Hanya gunakan di root package atau test targets.