• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Codemotion Magazine

We code the future. Together

  • Discover
    • Events
    • Community
    • Partners
    • Become a partner
    • Hackathons
  • Magazine
    • Backend
    • Dev community
    • Carriere tech
    • Intelligenza artificiale
    • Interviste
    • Frontend
    • DevOps/Cloud
    • Linguaggi di programmazione
    • Soft Skill
  • Talent
    • Discover Talent
    • Jobs
    • Manifesto
  • Companies
  • For Business
    • EN
    • IT
    • ES
  • Sign in
ads

Manuel della GalaFebbraio 27, 2025 3 min di lettura

Composer: come funziona il gestore di pacchetti di PHP

Backend
facebooktwitterlinkedinreddit

Composer come sistema per la gestione dei pacchetti è stato sviluppato nel 2011 e pubblicato nel 2012 da Nils Adermann e Jordi Boggiano da allora ha superato e quasi soppiantato il precedente gestore di pacchetti PEAR .

In questo articolo scopriremo come pubblicare un pacchetto su Composer.

Recommended article
Giugno 3, 2025

La signature chain: garanzia di autenticità, integrità e sequenzialità nei documenti digitali

Antonio Musarra

Backend

Per iniziare, se non l’hai già fatto, bisogna installare Composer sulla propria macchina nel seguente modo:

Apri il sito Composer scarica e installa il software oppure usando PHP CLI. In quest’ultimo caso devi aprire il terminale e mandare in esecuzione i comandi:

<code>php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"</code>Code language: JavaScript (javascript)

Qualunque procedura usi per installare Composer devi essere sicuro che compaia nel PATH ambiente di windows. Quindi apri “modifica variabili di ambiente per l’account” clicca su “Variabili d’ambiente” poi variabili di sistema cerca la variabile “Path” modifica -> nuovo -> sfoglia qui inserisci la cartella dove si trova composer conferma le modifiche che saranno attive dopo il riavvio di Windows.

Cosi come potete vedere dall”immagine precedente il comando “composer init” chiede

  • Package Name: il nome del package es.: utente/progetto
  • Author: qui chiede il nome e l’email dell’autore
  • Description: una descrizione delle funzionalità.
  • Minimum Stability: minimum stability può essere
    • RC: “Relese candidate” Chiamato anche rilascio di produzione, il rilascio stabile è l’ultimo candidato a rilascio (RC) che ha superato tutte le fasi di verifica e test. Tutti i bug resi noti sono considerati accettabili. Questa release va alla produzione.
    • Stable: in generale senza problemi di stabilità o bug evidenti.
    • Dev: in fase di sviluppo.
    • alpha: una versione alfa o il rilascio di un pacchetto software intende fare qualcosa di particolare, per lo più lo fa, ma non è garantito per farlo completamente.
    • beta: Il software di versione beta è spesso utile per dimostrazioni e anteprime all’interno di un’organizzazione e ai potenziali clienti. Alcuni sviluppatori si riferiscono a questa fase come un’anteprima, una versione di anteprima, un prototipo, un’anteprima tecnica o un’anteprima della tecnologia.
  • Package Type: qui composer suggerisce library, package, project etc. se indichi il tipo project su packagist nelle indicazioni di installazione ci sarà qualcosa come:
    composer create-project utente/progetto
    altrimenti
    composer require utente/libreria
  • License: Tipo di licenza MIT , Apache etc. qui il link per una lista di licenze registrate SPDX Licence List.

Una volta inizializzato il progetto dobbiamo inizializzare Git e pubblicare il codice su Github.

Registrarsi su Packagist e tramite il link Submit indicare il link del progetto su github es.: https://github.com/company/project.git una volta controllato e caricato packagist visualizzerà i vari Branches o Tags per mostrare le varie versioni del pacchetto es.: v1.0.1, v1.1-BETA, v1.1-RC1…

composer validate: controlla se ci sono errori nella struttura del progetto

versioni in base al branch o al tag “minimum-stability”

le versioni del pacchetto verranno pubblicate in base al ramo, al tag presenti nel repository di Github e in base al campo “minimum-stability” presente nel composer.json

per esempio il ramo 2.0 con “minimum-stability”: “dev”, sarà visualizzato sul sito di packagist come 2.x-dev

Conclusioni

Il gestore dei pacchetti Composer è abbastanza semplice da usare, ma anche in certi casi molto rigido se non indichi l’esatta licenza oppure indichi una minimum-stability non corretta, www.packagist.org carica il progetto ma poi indica gli errori che bisogna correggere, esattamente come fa composer validate in ogni caso è diventato uno strumento indispensabile per trovare e riusare librerie e progetti im modo facile e veloce.

Riferimenti

Composer

Packagist

Codemotion Collection Background
Dalla community
Selezionati per te

Vuoi scoprire più articoli come questo? Dai un’occhiata alla collection Dalla community dove troverai sempre nuovi contenuti selezionati dal nostro team.

Share on:facebooktwitterlinkedinreddit

Tagged as:GitHub PHP sviluppo software

Manuel della Gala
La curiosità è sempre stata parte di me fin da bambino. Dopo aver tentato varie strade sono ritornato al mio interesse principale il mondo dello sviluppo Web
Annunciati i primi speaker alla Codemotion Conference di Roma 2025: una line-up imperdibile!
Previous Post
CSS Nativo: ora è tutta un’altra storia – Parte 1
Next Post

Footer

Discover

  • Events
  • Community
  • Partners
  • Become a partner
  • Hackathons

Magazine

  • Tech articles

Talent

  • Discover talent
  • Jobs

Companies

  • Discover companies

For Business

  • Codemotion for companies

About

  • About us
  • Become a contributor
  • Work with us
  • Contact us

Follow Us

© Copyright Codemotion srl Via Marsala, 29/H, 00185 Roma P.IVA 12392791005 | Privacy policy | Terms and conditions