Pitani ku chilankhulo cha pulogalamu 1.13

Yovomerezedwa ndi kutulutsidwa kwa chilankhulo cha pulogalamu Pitani ku 1.13, yomwe ikupangidwa ndi Google ndikutengapo gawo kwa anthu ammudzi ngati yankho la hybrid lomwe limaphatikiza magwiridwe antchito apamwamba a zilankhulo zophatikizidwa ndi zabwino za zilankhulo zolembera monga kusavuta kulemba ma code, liwiro lachitukuko ndi kuteteza zolakwika. Project kodi wogawidwa ndi pansi pa layisensi ya BSD.

Mawu a Go's syntax adatengera zodziwika bwino za chilankhulo cha C ndikubwereketsa kuchokera kuchilankhulo cha Python. Chilankhulocho ndi chachidule, koma code yake ndi yosavuta kuwerenga ndi kumvetsa. Go code imapangidwa kuti ikhale yokhayokha yoyeserera yokhayo yomwe imayenda mokhazikika osagwiritsa ntchito makina enieni (kulemba mbiri, kukonza zolakwika, ndi njira zina zodziwira zovuta za nthawi yothamanga zimaphatikizidwa monga Rutime zigawo), zomwe zimakulolani kuti mukwaniritse magwiridwe antchito ofanana ndi mapulogalamu a C.

Pulojekitiyi imayamba kupangidwa ndi diso ku mapulogalamu amitundu yambiri komanso kugwira ntchito moyenera pamakina amitundu yambiri, kuphatikizapo kupereka njira zogwiritsira ntchito njira zokonzekera makompyuta ofananira ndi kuyanjana pakati pa njira zomwe zimagwiritsidwa ntchito mofanana. Chilankhulochi chimaperekanso chitetezo chomangidwira ku midadada yoperekedwa mopitirira muyeso ndipo imapereka mphamvu yogwiritsira ntchito zotayira zinyalala.

waukulu zatsopanoadatulutsidwa mu Go 1.13 kumasulidwa:

  • Phukusi la crypto/tls lili ndi chithandizo cha protocol chomwe chimayatsidwa mwachisawawa TLS 1.3. Anawonjezera phukusi latsopano "crypto/ed25519" ndi thandizo la Ed25519 siginecha digito;
  • Kuwonjezedwa kwa mawu oyambira manambala atsopano kuti afotokoze manambala a binary (mwachitsanzo 0b101), octal (0o377), kuganiza (2.71828i) ndi malo oyandama a hexadecimal (0x1p-1021), ndi kuthekera kogwiritsa ntchito zilembo za "_" posiyanitsa manambala ambiri (1_000_000);
  • Kuletsa kugwiritsa ntchito makaunta osasainidwa okha pakusintha kwachotsedwa kwachotsedwa, zomwe zimapewa kusinthidwa kosafunikira kukhala mtundu wa uint musanagwiritse ntchito β€œβ€Ήβ€Ήβ€ ndi β€œβ€Ίβ€Ίβ€ oyendetsa;
  • Thandizo lowonjezera la nsanja ya Illumos (GOOS=illumos). Kugwirizana ndi nsanja ya Android 10 kwatsimikiziridwa. Zofunikira pamitundu yochepa ya FreeBSD (11.2) ndi macOS (10.11 β€œEl Capitan”) zawonjezedwa.
  • Kupititsa patsogolo kachitidwe ka module yatsopano, yomwe ingagwiritsidwe ntchito ngati njira ina ya GOPATH. Mosiyana ndi mapulani omwe adalengezedwa kale mu Go 1.13, dongosololi silimathandizidwa mwachisawawa ndipo limafuna kutsegulidwa kudzera mu GO111MODULE=pakusintha kapena kugwiritsa ntchito nkhani yomwe ma module amangogwiritsidwa ntchito. Dongosolo latsopano la module limakhala ndi chithandizo chophatikizika chosinthira, kuthekera kopereka phukusi, komanso kasamalidwe kabwino ka kudalira. Ndi ma module, omanga salinso omangika kugwira ntchito mkati mwa mtengo wa GOPATH, akhoza kufotokozera momveka bwino zodalira, ndikupanga zobwerezabwereza.

    Mosiyana ndi zomwe zatulutsidwa m'mbuyomu, kugwiritsa ntchito pulogalamu yatsopanoyi tsopano kumagwira ntchito ngati fayilo ya go.mod ilipo mu bukhu lamakono lomwe likugwira ntchito kapena chikwatu cha makolo pamene mukuyendetsa lamulo lopita, kuphatikizapo pamene ili mu GOPATH/src directory. Zosintha zatsopano za chilengedwe zawonjezeredwa: GOPRIVATE, yomwe imalongosola njira za ma modules opezeka pagulu, ndi GOSUMDB, yomwe imatchula magawo olowera ku database ya checksum ya ma modules omwe sanalembedwe mu fayilo ya go.sum;

  • Lamulo la "pitani" mwachisawawa limanyamula ma module ndikuyang'ana kukhulupirika kwawo pogwiritsa ntchito galasi la module ndi checksum database yosungidwa ndi Google (proxy.golang.org, sum.golang.org ndi index.golang.org);
  • Kuthandizira mapaketi a binary okha kwathetsedwa; kupanga phukusi munjira ya "//go:binary-only-package" tsopano kumabweretsa cholakwika;
  • Thandizo lowonjezera la "@patch" ku lamulo la "pitani," kusonyeza kuti gawoli liyenera kusinthidwa kuti limasulidwe kwaposachedwa, koma osasintha mawonekedwe akuluakulu kapena ang'onoang'ono;
  • Mukatenganso ma modules kuchokera ku machitidwe owongolera magwero, lamulo la "pitani" tsopano likuchita cheke chowonjezera pa chingwe cha mtunduwo, kuyesa kufananiza manambala amtundu wa pseudo ndi metadata kuchokera kunkhokwe;
  • Thandizo lowonjezera kuyendera zolakwika (kukulunga kolakwika) popanga ma wrappers omwe amalola kugwiritsa ntchito zowongolera zolakwika. Mwachitsanzo, kulakwitsa "e" ikhoza kukulungidwa mozungulira cholakwika "w" popereka njira Tsegulani, kubwereranso "w". Zolakwa zonse "e" ndi "w" zilipo mu pulogalamuyi ndipo zisankho zimapangidwa potengera zolakwika "w", koma "e" imapereka nkhani yowonjezera ku "w" kapena kutanthauzira mosiyana;
  • Kuchita kwa zigawo za nthawi yothamanga kwakonzedwa (kuwonjezeka kwa liwiro la 30% kwadziwika) ndipo kubwereranso koopsa kwa kukumbukira kumachitidwe ogwiritsira ntchito kwakhazikitsidwa (m'mbuyomu, kukumbukira kunabwezeredwa pambuyo pa mphindi zisanu kapena kuposerapo, koma tsopano nthawi yomweyo. pambuyo pochepetsa kukula kwa mulu).

Source: opennet.ru

Kuwonjezera ndemanga