Files
yii2/extensions/composer/README.md
Carsten Brandt b7e493fca0 Tabs to spaces to be consistent
```
vendor/bin/indent --spaces -r framework/
vendor/bin/indent --tabs -r . --pattern=*.json
vendor/bin/indent --spaces -r . --pattern=*.md
vendor/bin/indent --spaces -r . --pattern=yii.*.js
vendor/bin/indent --spaces -r . --pattern=*.css
```
2014-05-23 16:58:21 +02:00

64 lines
1.5 KiB
Markdown

Yii 2 Composer Installer
========================
This is the composer installer for Yii 2 extensions. It implements a new composer package type named `yii2-extension`,
which should be used by all Yii 2 extensions if they are distributed as composer packages.
Usage
-----
To use Yii 2 composer installer, simply set `type` to be `yii2-extension` in your `composer.json`,
like the following:
```json
{
"type": "yii2-extension",
"require": {
"yiisoft/yii2": "*"
},
...
}
```
You may specify a bootstrap class in the `extra` section. The `init()` method of the class will be executed each time
the Yii 2 application is responding to a request. For example,
```json
{
"type": "yii2-extension",
...,
"extra": {
"bootstrap": "yii\\jui\\Extension"
}
}
```
The `Installer` class also implements a static method `setPermission()` that can be called after
a Yii 2 projected is installed, through the `post-create-project-cmd` composer script.
The method will set specified directories or files to be writable or executable, depending on
the corresponding parameters set in the `extra` section of the `composer.json` file.
For example,
```json
{
"name": "yiisoft/yii2-app-basic",
"type": "project",
...
"scripts": {
"post-create-project-cmd": [
"yii\\composer\\Installer::setPermission"
]
},
"extra": {
"writable": [
"runtime",
"web/assets"
],
"executable": [
"yii"
]
}
}
```