Download the PHP package dubpub/publisher without Composer
On this page you can find all versions of the php package dubpub/publisher. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package publisher
.publisher
Package for publishing or linking files from composer's dependencies.
- Install
- Supported schemas and syntax
- PHP example
- JSON example
- INI example
- YML,YAML example
- Usage in package
- Usage in project
- Extending format support
Install
.publisher can be installed from composer:
Once .publisher is installed, it's executable is available from vendor/bin
folder, simply run command to check
the installation:
Schemas and syntax
By default publisher supports following formats: .php, .json, .yaml, .yml. Schema must consists of 3 levels - package names, which contains group names, which contains file notations.
- package name
- file group name
- file notation
- file group name
File notation examples:
Notation | Description |
---|---|
assets |
Will copy assets/ folder, from package's directory and copy it into configured publish
folder.
|
assets/styles.css |
Will copy assets/styles.css , that's located on package's folder
and publish it into configured publish folder.
|
assets/ -> public/ |
Will copy assets/ folder, from package's directory and copy it into public/ directory configured
publish folder.
|
assets -> {public,web}/ |
Will look up for public/ or web/ path. If neither are available, first from the list will be
created. And assets/ folder, from package's directory will be copied into resulting directory.
|
assets/styles/* -> {public,web}/css/ |
Will look up for public/ " or web/ path. If neither are available, first from the list will be
created. And all files from folder assets/styles/ of package's directory will be copied into
`{resulting directory}/css/`.
|
@path/to/my/link |
Will create link of package's path/to/my/link and place it in configured publish path.
|
@path/to/my/* -> bin/ |
Will create links of package's every file from path/to/my/ folder and place it in
bin/ of configured publish path.
|
PHP example
JSON example
INI example
YML,YAML example
Usage in package
Simply initiate .publisher file an fill it with contents you need, according to examples above and place it into folder where your project's composer.json is located. Note, that .publisher will not work if composer.json file or vendor/ folder don't exists.
Usage in project
After installing .publisher into your project you need to generate .publisher file or create it manually. Use init command to generate .publisher file:
init
command will generate .publisher file and perform scanning vendor/
folder for other .publisher files to merge
them into new generated one.
If you want to generate .publisher file with specific format(default is php), you need to specify it:
Note, that every init
call does not recreate or overwrite your (project/package)'s file section, .publisher
simply merges and updates other sections.
After your .publisher file is generated it's ready to use:
For publishing every .publisher dependency:
or:
For publishing specific package:
For publishing specific package's group:
For publishing specific packages' groups:
All versions of publisher with dependencies
symfony/yaml Version 3.0.*
illuminate/filesystem Version 5.2.*