Kompozitorius, administratorius, kuris įdiegia priklausomybes PHP projektuose

Prieš kelias dienas buvo paskelbta naujos „Composer 2.0“ versijos pristatymas, kuris yra administratorius, norėdamas įdiegti priklausomybes PHP projektuose.

kompozitorius, išsiskiria leidimu vartotojui nustatyti, kurių funkcijų bibliotekos reikalingos kad projektas veiktų, po kurio jis rūpinasi trūkstamų priklausomybių diegimo ir naujų versijų atnaujinimo darbais.

Galimos įdiegti bibliotekos yra „Packagist“ saugykloje, kurioje yra daugiau nei 287 tūkstančiai paketų.

Apie kompozitorių

Kompozitorius yra išdėstytas kaip priklausomybės diegimo sistema sukurta kartu su npm ir grupinių paketų tvarkytuvėmis „Node.js“ ir „Ruby“ bendruomenėse.

Sistema vykdo konkrečių projektų paketus ir jis skirtas įdiegti priklausomybes nuo vietinių projektų katalogų (kaip papildomą variantą taip pat yra visuotinis visos sistemos diegimo režimas).

Pagal numatytuosius nustatymus siūlomas stabilus bibliotekos diegimas, tačiau taip pat galima naudoti eksperimentinius atnaujinimus (alfa / beta) ir momentines nuotraukas (kūrimo kodo bazės momentines nuotraukas), kurie yra naudingi organizuojant nuolatinės integracijos sistemų bandomąsias versijas.

Kompozitoriaus kodas parašytas PHP ir yra platinamas pagal MIT licenciją.

Apie naują „Composer 2.0“ versiją

Naujoje versijoje buvo atlikti pagrindiniai našumo optimizavimai ir sumažėjo atminties suvartojimas. Daug kas buvo perdirbta, pradedant protokolu ir baigiant skambučiu packagist.org iki priklausomybių nustatymo metodų.

Įkėlimas teikiamas įvairiais metaduomenų srautais ir ZIP failais buvo įgyvendintas lygiagrečių paketų diegimo būdas. Skaičiavimams prie kodo buvo pridėti optimizavimai. Įkeliant tik paketo metaduomenis, reikalingos ir (arba) pašalinamos operacijos, o daliniai atnaujinimai žymiai paspartėja. Kai kuriuose projektuose pastebimas iki 50% pagreitis.

Priklausomybių atnaujinimo mechanizmas buvo pertvarkytas, kuriame nėra susiejimų su katalogo būsena vietinėje failų sistemoje. Baigus naujovinimą, diegimo procesas dabar automatiškai prasideda išankstiniu visų operacijų, kurioms reikalinga prieiga prie tinklo, vykdymu.

Tinklo operacijų atlikimas prieš pradedant faktiškai įdiegti pašalina nepilnai atnaujintų katalogų atsiradimą, jei diegimo proceso metu sugenda tinklas. Kai tik įmanoma, tinklo atsisiuntimai yra daugialypiai.

Pagal numatytuosius nustatymus pridedamas papildomas platformos patikrinimo etapas į vykdymo laiką inicializuojant pardavėją / autoload.php, kuris patikrinkite, ar PHP versija ir plėtiniai naudotas versijas, palaikomas priklausomybėse. Jei yra neatitikimų, rodoma klaida.

Patvirtinimas atliekamas naudojant naują „Composer \ InstalledVersions“ klasę, kuri įkeliama kiekvienam projektui siekiant nustatyti, kokie paketai ir versijos yra projekte.

Be to, paminėta, kad perdaryti klaidų pranešimai, susiję su priklausomybės aptikimo problemomis. Šie pranešimai yra trumpesni, aiškesni ir turi mažiau dublikatų.

Norėdami laikinai apriboti versijas atnaujinimo metu, naudokite konstruktą „Kompozitoriaus naujinimo tiekėjas / paketas: 1.0. * ", Kuris nepakeis bloko turinio kataloge" composer.json "ir nepažymės užrakinto failo kaip pasenusio.

Iš kitų šioje naujoje versijoje išsiskiriančių pakeitimų:

  • Pridėtas ribotų dalinių naujinimų palaikymas, kurį galima naudoti, kai reikia laikinai atnaujinti arba grąžinti paketo versiją, kad išbandytumėte ar lauktumėte klaidos ištaisymo. Įdiegtas automatinis nebereikalingų paketų pašalinimas.
  • Į saugyklą buvo įtrauktos tik naujos parinktys, išskyrimas ir kanoninis.
  • Nauji įvykiai buvo pridėti prieš operacijas, vykdymą, prieš grupę kuriant ir po atsisiuntimo failą.
  • Buvo pridėta daug naujų vėliavų.

Galiausiai, jei norite sužinoti daugiau apie šią naują versiją, galite sužinoti išsamią informaciją Šioje nuorodoje.

Kita vertus, jei norite susipažinti su dokumentais, galite tai padaryti iš šios nuorodos.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.