Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Managing your project PHP dependencies

Théo FIDRY
October 20, 2016

Managing your project PHP dependencies

Théo FIDRY

October 20, 2016
Tweet

More Decks by Théo FIDRY

Other Decks in Research

Transcript

  1. Scope Managing your project dependencies • Case of study: PHP

    framework agnostic library • POV: maintainer of the library • Modern PHP version (Composer) 3
  2. Managing your project dependencies What is a PHAR? “The phar

    extension provides a way to put entire PHP applications into a single file called a "phar" (PHP Archive) “ Quote source: http://php.net/manual/en/intro.phar.php 25
  3. 26

  4. Possible outcomes Managing your project dependencies • Everything runs fine

    (lucky) • Big fat error (a bit less luck) • Very subtle nasty bug you’ll have hard time to solve (wish you luck man) 31
  5. Recap: Managing your project dependencies • pros: solve the conflict

    problem • cons: • Inappropriate when PHARs must execute code • PHARs are not trackable 34
  6. Managing your project dependencies • Core library : acme/lib •

    Symfony bridge : acme/lib-bundle • Laravel bridge: acme/lib-laravel-provider 39
  7. Recap: Managing your project dependencies • pros: simple • cons:

    you have to manage and synchronize multiple repositories 40
  8. Recap: Managing your project dependencies • pros: it works •

    cons: • can be very tricky • slow 43
  9. 55