I-Buck2, uhlelo olusha lokwakha lwe-Facebook

I-Buck2-Hero

I-Buck2, uhlelo olusha lwe-Facebook lokwakha umthombo ovulekile

I-Facebook yethuliwe muva nje ukhiphe uhlelo olusha lokwakha olubizwa ngokuthi "Buck2", oluphawula ukuthi lunjalo igxile ezinhlelweni zokwakha ezivela ezinqolobaneni muy ezinkulu ezifaka ikhodi ngezilimi ezahlukene izinhlelo.

Umehluko phakathi kokuqaliswa okusha nohlelo imali esetshenziswe ngaphambilini Nge-facebook basebenzisa ulimi lwe-Rust esikhundleni se-Java kanye nokwanda okuphawulekayo ekusebenzeni kahle nokusebenza kwenqubo yokuhlanganisa (ekuhlolweni kwangaphakathi kwingqalasizinda efanayo, i-Buck2 yenza imisebenzi yomhlangano ngokushesha okuphindwe kabili kune-Buck).

Amasistimu okwakha ama phakathi konjiniyela kanye nekhodi yakhe esebenzayo, ngakho-ke noma yini esingayenza ukuze senze ukuzizwisa kusheshe noma kukhiqize kakhudlwana kuthinta ngqo ukuthi unjiniyela angasebenza kanjani. Umgomo we-Buck2 bekuwukugcina ebesikuthanda nge-Buck1 (okuyisisekelo nokugeleza komsebenzi), sithole ugqozi ezenzweni ezintsha ze-post-Buck1 (okuhlanganisa i-Bazel, i-Adapton, ne-Shake), futhi sigxile esivinini nasekuvumeleni ulwazi olusha.

Mayelana neBuck2

Kuqokonyiswa lokho isistimu ayiboshelwe ekwakhiweni kwekhodi ezilimini ezithile futhi ngaphandle kwebhokisi, isekela amaphrojekthi omakhi abhalwe ku-C++, Python, Rust, Kotlin, Erlang, Swift, Objective-C, Haskell, kanye ne-OCaml esetshenziswa yi-Facebook.

Ulimi lwe-Starlark, olusekelwe ku-Python (njengase-Bazel), lusetshenziselwa ukuklama ama-plugin, ukudala imibhalo nemithetho. I-Starlark ikuvumela ukuthi unwebe amandla esistimu yokwakha futhi ucabangele ezilimini ezithile ezisetshenziswa kumaphrojekthi akhiwayo.

Kushiwo lokho ukusebenza okuphezulu kufinyelelwa ngokulondoloza imiphumela, ukufana komsebenzi nokusekelwa kokwenziwa kwemisebenzi okukude (Ukwenziwa Kwesakhiwo Esikude).

Imvelo yokwakha isebenzisa umqondo we "hermeticity": ikhodi ehlanganisiwe ikhishwe ezweni langaphandle, akukho lutho olulayishwa ngaphandle ngesikhathi senqubo yokwakha, futhi ukukhishwa okuphindaphindiwe komsebenzi kumasistimu ahlukene kuholela kumphumela ofanayo (ukwakhiwa okuphindaphindiwe, isibonelo, umphumela wokuhlanganisa iphrojekthi umshini ovela kunjiniyela uzofana ncamashi nokwakhiwa kuseva yokuhlanganisa eqhubekayo). Ukuntuleka kwesimo sokuncika kubonakala ku-Buck2 njengesiphazamisi.

Engxenyeni ye- Buck2 Izici Key, okulandelayo kugqame:

  • Imithetho yokusekela izilimi zokuhlela kanye nesistimu yokwakha eyinhloko ihluke ngokuphelele. Imithetho ibhalwe ngolimi lwe-Starlark, kanye nekhithi yamathuluzi ye-Starlark nokusebenzisa kubhalwe nge-Rust.
  • Isistimu yokwakha isebenzisa igrafu eyodwa yokuncika okukhuphukayo (ayikho isiteji), ekuvumela ukuthi ukhuphule ukujula kokuhambisana komsebenzi uma kuqhathaniswa ne-Buck ne-Bazel futhi ugweme izinhlobo eziningi zeziphazamisi.
  • Ikhodi ka-Buck2 ethunyelwe ku-GitHub kanye nemithetho yokusekelwa kolimi lokuhlela icishe ifane nenguqulo yangaphakathi esetshenziswa kungqalasizinda ye-Facebook (umehluko kuphela ukusixhumanisi sezinhlelo zokuhlanganisa kanye namaseva okwakha asetshenziswa yi-Facebook).
  • Uhlelo lokwakha luklanyelwe ukuhlanganisa nezinhlelo zokusebenza ezikude ezikuvumela ukuthi usebenzise imisebenzi kumaseva akude. I-API yokusayinda ekude isebenzisana ne-Bazel futhi ihlolelwe ukusebenzisana ne-Buildbarn ne-EngFlow.
  • Ukuhlanganiswa nezinhlelo zefayela ezibonakalayo kunikezwa, lapho okuqukethwe kwenqolobane yonke kuvezwa, kodwa empeleni, umsebenzi wenziwa ngengxenye yangempela yendawo yengxenye yendawo yokugcina (umthuthukisi ubona yonke inqolobane, kodwa lokho kuphela kuyadingeka) amafayela afinyelelwe alandwa endaweni yokugcina). I-VFS esekelwe e-EdenFS kanye ne-Git LFS iyasekelwa, esetshenziswa yi-Sapling.

Okokugcina, kulabo abanentshisekelo yokukwazi ukufunda kabanzi ngayo, kufanele bazi ukuthi ikhodi isatshalaliswa ngaphansi kwelayisensi ye-Apache 2.0 futhi bangabheka imininingwane. Kulesi sixhumanisi esilandelayo.


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.