Ngaleupaskeun sistem ngawangun Bazel 1.0

Diwanohkeun ngaleupaskeun alat assembly open source Bazel 1.0, dikembangkeun ku insinyur Google jeung dipaké pikeun ngawangun lolobana proyék internal parusahaan. Pelepasan 1.0 nandaan transisi ka versi semantik sareng ogé kasohor pikeun ngenalkeun sajumlah ageung parobihan anu ngarobih kasaluyuan mundur. Kodeu proyék disebarkeun ku dilisensikeun dina Apache 2.0.

Bazel ngawangun proyék anjeun, ngajalankeun kompiler sareng tés anu diperyogikeun. Sistem ngawangun dirancang ti mimiti nepi ka optimal ngawangun proyék Google, kaasup proyék kacida gedéna jeung proyék ngandung kode dina sababaraha basa program, merlukeun nguji éksténsif, sarta ngawangun 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. Éta ngadukung panggunaan file ngawangun tunggal pikeun platform sareng arsitéktur anu béda; contona, hiji file ngawangun tunggal bisa dipaké unchanged pikeun duanana sistem server jeung alat mobile.

Diantara fitur has Bazel nyaéta speed tinggi, reliabiliti, sarta bisa ulang prosés ngawangun. Pikeun ngahontal kagancangan ngawangun anu luhur, Bazel aktip ngagunakeun téknik cache sareng paralélisasi. BANGUNAN file kudu pinuh ngartikeun sakabéh katergantungan, nu dipaké pikeun nangtukeun naha rék ngawangun deui komponén sanggeus parobahan (ngan file robah nu diwangun deui) jeung naha rék parallelize prosés ngawangun. Perkakas ogé ngajamin ngawangun pangulangan, hartosna proyék ngawangun dina mesin pamekar bakal sapinuhna konsisten sareng ngawangun dina sistem pihak katilu, sapertos server integrasi kontinyu.

Beda sareng Make sareng Ninja, Bazel nganggo pendekatan tingkat luhur pikeun ngawangun aturan ngawangun. Gantina nangtukeun bindings paréntah pikeun file keur diwangun, eta ngagunakeun leuwih abstrak, blok siap-dijieun, kayaning "ngawangun hiji C ++ executable," "ngawangun perpustakaan C ++," atawa "ngajalankeun hiji C ++ test," kitu ogé nangtukeun target na ngawangun platform. Dina file téks BUILD, komponén proyék didadarkeun salaku kebat perpustakaan, executable, sareng tés, tanpa ngawincik file individu sareng paréntah invocation compiler. Pungsi tambahan dilaksanakeun ngaliwatan ekstensi.

sumber: opennet.ru

Tambahkeun komentar