Ngaleupaskeun sistem ngawangun Bazel 1.0

Diwanohkeun ngaleupaskeun parabot assembly kabuka Bazel 1.0, dikembangkeun ku insinyur ti Google jeung dipaké pikeun ngumpul lolobana proyék internal parusahaan. Release 1.0 nandaan transisi ka versioning release semantik sarta ogé kasohor pikeun ngawanohkeun sajumlah badag parobahan nu peupeus kasaluyuan mundur. Kodeu proyék disebarkeun ku dilisensikeun dina Apache 2.0.

Bazel ngawangun proyék ku ngajalankeun kompiler sareng tés anu diperyogikeun. Sistem ngawangun dirancang ti mimiti nepi ka optimal ngawangun proyék Google, kaasup proyék pisan badag sarta proyék nu ngandung kode dina sababaraha basa programming, merlukeun nguji éksténsif, sarta diwangun pikeun sababaraha platform. Éta ngadukung ngawangun sareng nguji kode dina Java, C ++, Objective-C, Python, Rust, Go sareng seueur basa sanésna, ogé ngawangun aplikasi sélulér pikeun Android sareng ios. Pamakéan file rakitan tunggal pikeun platform sareng arsitéktur anu béda dirojong; contona, hiji file rakitan tanpa parobahan tiasa dianggo pikeun sistem pangladén sareng alat sélulér.

Diantara fitur has tina Bazel nyaéta speed tinggi, reliabiliti tur bisa diulang prosés assembly. Pikeun ngahontal kagancangan ngawangun anu luhur, Bazel aktip ngagunakeun téknik cache sareng paralélisasi pikeun prosés ngawangun. BANGUNAN file kudu pinuh ngartikeun sakabéh katergantungan, dumasar kana kaputusan dijieun pikeun ngawangun deui komponén sanggeus parobahan dijieun (ngan robah file diwangun deui) jeung parallelize prosés assembly. Tooling ogé ensures assembly repeatable, i.e. hasil ngawangun proyék dina mesin pamekar bakal sagemblengna idéntik jeung ngawangun on sistem pihak-katilu, kayaning server integrasi kontinyu.

Beda sareng Make sareng Ninja, Bazel nganggo pendekatan tingkat anu langkung luhur pikeun ngawangun aturan rakitan, dimana, tinimbang netepkeun beungkeutan paréntah kana file anu didamel, blok anu langkung abstrak anu siap dianggo, sapertos "ngawangun file anu tiasa dieksekusi dina. C++", "ngawangun perpustakaan di C ++" atawa "ngajalankeun tés pikeun C ++", kitu ogé ngaidentipikasi udagan sarta ngawangun platform. Dina file téks BUILD, komponén proyék digambarkeun salaku kebat perpustakaan, file laksana jeung tés, tanpa detailing di tingkat file individu jeung paréntah panggero kompiler. Pungsi tambahan dilaksanakeun ngaliwatan mékanisme pikeun nyambungkeun ekstensi.

sumber: opennet.ru

Tambahkeun komentar