Apakah mungkin untuk membuat dependensi target bazel secara otomatis? Sepertinya harus ada cara untuk melihat impor modul dan mengetahui dependensi bazel mana yang diperlukan setidaknya dalam banyak kasus umum. Ini bisa menghemat banyak kode boilerplate.
load("@npm_bazel_typescript//:index.bzl", "ts_library")
ts_library(
name = "lib",
srcs = glob(include = ["**/*.ts"]),
# Is there any easy way to generate this list?
deps = [],
)
Saya tahu ada paket untuk Java yang melakukan ini. https://github.com/johnynek/bazel-dep. Saya belum dapat menemukan apa pun untuk bahasa lain.
Jika tidak ada, menurut saya menulisnya cukup mudah. Buat file templat untuk Anda gunakan untuk membuat file BUILD
yang sebenarnya. Kemudian jalankan TypeScript untuk menarik AST modul. Periksa impornya. Impor bagian ke-3 akan lebih mudah karena harus diselesaikan ke modul npm.
Untuk file lain yang mungkin ada atau tidak ada di perpustakaan ini maka mungkin ada cara untuk menanyakan paket apa yang ada di dalamnya. Itu mungkin bisa berhasil. Setiap petunjuk akan sangat dihargai.