composer panada conference 2014 by mulia nasution
DESCRIPTION
Presentation about PHP Composer By Mulia NasutionTRANSCRIPT
![Page 2: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/2.jpg)
History
![Page 3: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/3.jpg)
Long time ago…
![Page 4: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/4.jpg)
![Page 5: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/5.jpg)
![Page 6: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/6.jpg)
Other communities
![Page 7: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/7.jpg)
![Page 8: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/8.jpg)
http://packagist.org
![Page 9: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/9.jpg)
Let the numbers speak
Total 41.000+ packages
https://packagist.org/statistics - Oct 23, 2014 22:38 UTC+7
![Page 10: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/10.jpg)
![Page 11: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/11.jpg)
Active
Per-project
Create an autoloader
Easy to install & publish
Simplify deployment
Dependency Resolution with
SAT
System-wide
Hard to install
Hard to publish
Hard to deploy
Composer vs PEAR
![Page 12: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/12.jpg)
depen sat…what?!?
![Page 13: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/13.jpg)
Laravel
Monolog Boris
Whoops
Carbon
Symfony
browser-kit
Symfony
dom-crawler
Symfony
http-kernel
Symfony
http-foundation
Symfony
debug
Symfony
event-dispatcher
Symfony
css-selector
![Page 14: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/14.jpg)
Installation
![Page 15: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/15.jpg)
*nix
curl -sS https://getcomposer.org/installer | php
Windows
https://getcomposer.org/Composer-Setup.exe
http://getcomposer.org/composer.phar
![Page 16: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/16.jpg)
![Page 17: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/17.jpg)
composer init
![Page 18: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/18.jpg)
composer.json
![Page 19: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/19.jpg)
composer require
![Page 20: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/20.jpg)
composer show
![Page 21: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/21.jpg)
![Page 22: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/22.jpg)
![Page 23: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/23.jpg)
Semantic Versioningsemver.org
![Page 24: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/24.jpg)
major.minor.patch
![Page 25: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/25.jpg)
major.minor.patch
When you breaks backward compatibility
![Page 26: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/26.jpg)
major.minor.patch
When you add
backwards compatible features
![Page 27: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/27.jpg)
major.minor.patch
When you make
backwards compatible bug fixes
![Page 28: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/28.jpg)
Pre-release identifier“stability” in composer
![Page 29: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/29.jpg)
1.0.0-alpha@alpha
![Page 30: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/30.jpg)
1.0.0-beta@beta
![Page 31: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/31.jpg)
1.0.0-RC@RC
![Page 32: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/32.jpg)
1.0.0@stable
![Page 33: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/33.jpg)
v1.4.0 = 1.4.0
Exact Version
![Page 34: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/34.jpg)
1.4.*
1.4.1, 1.4.2, 1.4.9
<1.5
Wildcards
![Page 35: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/35.jpg)
>=1.4.0,<2.0
1.4.1, 1.4.2, 1.4.9
<2.0
Ranges
![Page 36: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/36.jpg)
~1.4
>=1.4, < 2.0
Next significant releases
![Page 37: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/37.jpg)
~1.4.3
>=1.4.3, < 1.5
Next significant releases
![Page 38: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/38.jpg)
master
dev-master
dev- prefix
Requiring branch
![Page 39: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/39.jpg)
cobacoba
dev-cobacoba
dev- prefix
Requiring branch
![Page 40: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/40.jpg)
dev-master#0f79d8e
Require specific commit
![Page 41: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/41.jpg)
composer install
![Page 42: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/42.jpg)
![Page 43: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/43.jpg)
read
composer.json
composer.lock
exists?
read
composer.lock
yes
no
composer install
write
composer.lock
![Page 44: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/44.jpg)
read
composer.json
write
composer.lock
composer update
![Page 45: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/45.jpg)
How to use
![Page 46: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/46.jpg)
![Page 47: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/47.jpg)
Composer Autoloader
![Page 48: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/48.jpg)
![Page 49: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/49.jpg)
![Page 50: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/50.jpg)
composer dump-autoload
![Page 51: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/51.jpg)
![Page 52: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/52.jpg)
![Page 53: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/53.jpg)
![Page 54: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/54.jpg)
![Page 55: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/55.jpg)
![Page 56: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/56.jpg)
Hooks
![Page 57: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/57.jpg)
![Page 58: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/58.jpg)
![Page 59: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/59.jpg)
Custom Repository
![Page 60: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/60.jpg)
![Page 61: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/61.jpg)
vcs, git, svn, hg,
composer, zip
Repository type
![Page 62: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/62.jpg)
Use local packagist
![Page 63: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/63.jpg)
![Page 64: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/64.jpg)
Satis
![Page 65: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/65.jpg)
composer create-project composer/satis --stability=dev
Create “satis.json” file
./bin/satis build satis.json output-dir
![Page 66: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/66.jpg)
![Page 67: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/67.jpg)
![Page 68: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/68.jpg)
![Page 69: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/69.jpg)
Conclusie
![Page 70: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/70.jpg)
Question?
![Page 71: Composer Panada Conference 2014 by Mulia Nasution](https://reader033.vdocuments.us/reader033/viewer/2022052909/559910391a28ab102c8b470b/html5/thumbnails/71.jpg)