Documentation

PathRepository extends ArrayRepository
in package
implements ConfigurableRepositoryInterface

This repository allows installing local packages that are not necessarily under their own VCS.

The local packages will be symlinked when possible, else they will be copied.

Tags
code

"require": { "/": "" }, "repositories": [ { "type": "path", "url": "../../relative/path/to/package/" }, { "type": "path", "url": "/absolute/path/to/package/" }, { "type": "path", "url": "/absolute/path/to/several/packages/" }, { "type": "path", "url": "../../relative/path/to/package/", "options": { "symlink": false } }, ]

endcode
author

Samuel Roze samuel.roze@gmail.com

author

Johann Reinke johann.reinke@gmail.com

Interfaces, Classes and Traits

ConfigurableRepositoryInterface
Configurable repository interface.

Table of Contents

$packageMap  : array<string|int, PackageInterface>
$packages  : array<string|int, PackageInterface>
$loader  : ArrayLoader
$options  : array<string|int, mixed>
$process  : ProcessExecutor
$repoConfig  : array<string|int, mixed>
$url  : string
$versionGuesser  : VersionGuesser
__construct()  : mixed
Initializes path repository.
addPackage()  : mixed
Adds a new package to the repository
count()  : int
Returns the number of packages in this repository
findPackage()  : mixed
{@inheritDoc}
findPackages()  : mixed
{@inheritDoc}
getDependents()  : array<string|int, mixed>
Returns a list of links causing the requested needle packages to be installed, as an associative array with the dependent's name as key, and an array containing in order the PackageInterface and Link describing the relationship as values. If recursive lookup was requested a third value is returned containing an identically formed array up to the root package. That third value will be false in case a circular recursion was detected.
getPackages()  : mixed
{@inheritDoc}
getRepoConfig()  : mixed
hasPackage()  : mixed
{@inheritDoc}
removePackage()  : mixed
Removes package from repository.
search()  : mixed
{@inheritDoc}
createAliasPackage()  : mixed
initialize()  : mixed
Initializes path repository.
getUrlMatches()  : array<string|int, string>
Get a list of all (possibly relative) path names matching given url (supports globbing).

Properties

Methods

__construct()

Initializes path repository.

public __construct(array<string|int, mixed> $repoConfig, IOInterface $io, Config $config) : mixed
Parameters
$repoConfig : array<string|int, mixed>
$io : IOInterface
$config : Config
Return values
mixed

count()

Returns the number of packages in this repository

public count() : int
Return values
int

Number of packages

findPackage()

{@inheritDoc}

public findPackage(mixed $name, mixed $constraint) : mixed
Parameters
$name : mixed
$constraint : mixed
Return values
mixed

findPackages()

{@inheritDoc}

public findPackages(mixed $name[, mixed $constraint = null ]) : mixed
Parameters
$name : mixed
$constraint : mixed = null
Return values
mixed

getDependents()

Returns a list of links causing the requested needle packages to be installed, as an associative array with the dependent's name as key, and an array containing in order the PackageInterface and Link describing the relationship as values. If recursive lookup was requested a third value is returned containing an identically formed array up to the root package. That third value will be false in case a circular recursion was detected.

public getDependents(string|array<string|int, string> $needle[, ConstraintInterface|null $constraint = null ][, bool $invert = false ][, bool $recurse = true ][, array<string|int, string> $packagesFound = null ]) : array<string|int, mixed>
Parameters
$needle : string|array<string|int, string>

The package name(s) to inspect.

$constraint : ConstraintInterface|null = null

Optional constraint to filter by.

$invert : bool = false

Whether to invert matches to discover reasons for the package NOT to be installed.

$recurse : bool = true

Whether to recursively expand the requirement tree up to the root package.

$packagesFound : array<string|int, string> = null

Used internally when recurring

Return values
array<string|int, mixed>

An associative array of arrays as described above.

getPackages()

{@inheritDoc}

public getPackages() : mixed
Return values
mixed

getRepoConfig()

public getRepoConfig() : mixed
Return values
mixed

{@inheritDoc}

public search(mixed $query, mixed $mode[, mixed $type = null ]) : mixed
Parameters
$query : mixed
$mode : mixed
$type : mixed = null
Return values
mixed

initialize()

Initializes path repository.

protected initialize() : mixed

This method will basically read the folder and add the found package.

Return values
mixed

getUrlMatches()

Get a list of all (possibly relative) path names matching given url (supports globbing).

private getUrlMatches() : array<string|int, string>
Return values
array<string|int, string>

Search results