Composer

Type
Class
Namespace
craft\services
Inherits
craft\services\Composer » yii\base\Component » yii\base\BaseObject
Implements
yii\base\Configurable
Since
3.0.0

Composer service.

An instance of the Composer service is globally accessible in Craft via Craft::$app->composer.

View source

Public Properties

PropertyDescription
behaviorsyii\base\Behavior – List of behaviors attached to this component
composerRepoUrlstring
disablePackagistboolean
jsonPathstring
lockPathstring, null
maxBackupsinteger – The maximum number of composer.
updateComposerClassMapboolean – Whether to generate a new Composer class map, rather than preloading all of the classes in the current class map

composerRepoUrl

Type
string

View source

disablePackagist

Type
boolean

View source

jsonPath

Type
string
Access
Read-only

View source

lockPath

Type
string, null
Access
Read-only

View source

maxBackups

Type
integer
Since
3.0.38

The maximum number of composer.json and composer.lock backups to store in storage/composer-backups/

View source

updateComposerClassMap

Type
boolean

Whether to generate a new Composer class map, rather than preloading all of the classes in the current class map

View source

Public Methods

MethodDescription
__call()Calls the named method which is not a class method.
__clone()This method is called after the object is created by cloning an existing one.
__construct()Constructor.
__get()Returns the value of an object property.
__isset()Checks if a property is set, i.e. defined and not null.
__set()Sets value of an object property.
__unset()Sets an object property to null.
attachBehavior()Attaches a behavior to this component.
attachBehaviors()Attaches a list of behaviors to the component.
behaviors()Returns a list of behaviors that this component should behave as.
canGetProperty()Returns a value indicating whether a property can be read.
canSetProperty()Returns a value indicating whether a property can be set.
className()Returns the fully qualified name of this class.
detachBehavior()Detaches a behavior from the component.
detachBehaviors()Detaches all behaviors from the component.
ensureBehaviors()Makes sure that the behaviors declared in behaviors() are attached to this component.
getBehavior()Returns the named behavior object.
getBehaviors()Returns all behaviors attached to this component.
getJsonPath()Returns the path to composer.json.
getLockPath()Returns the path to composer.lock, if it exists.
hasEventHandlers()Returns a value indicating whether there is any handler attached to the named event.
hasMethod()Returns a value indicating whether a method is defined.
hasProperty()Returns a value indicating whether a property is defined.
init()Initializes the object.
install()Installs a given set of packages with Composer.
logComposerClass()Adds an autoloading class to the Composer class map
off()Detaches an existing event handler from this component.
on()Attaches an event handler to an event.
optimize()Optimizes the Composer autoloader.
trigger()Triggers an event.
uninstall()Uninstalls a given set of packages with Composer.

getJsonPath()

Returns the path to composer.json.

View source

Returns

string

Throws

getLockPath()

Returns the path to composer.lock, if it exists.

View source

Returns

string, null

Throws

install()

Installs a given set of packages with Composer.

View source

Arguments

  • $requirements (array, null) – Package name/version pairs, or set to null to run the equivalent of composer install
  • $io (\Composer\IO\IOInterface, null) – The IO object that Composer should be instantiated with
  • $whitelist (array, boolean) – List of package names to whitelist, true if that should be determined dynamically, or false if no whitelist should be used.

Throws

logComposerClass()

Adds an autoloading class to the Composer class map

View source

Arguments

optimize()

Optimizes the Composer autoloader.

View source

Arguments

  • $io (\Composer\IO\IOInterface, null) – The IO object that Composer should be instantiated with

Throws

uninstall()

Uninstalls a given set of packages with Composer.

View source

Arguments

  • $packages (string[]) – Package names
  • $io (\Composer\IO\IOInterface, null) – The IO object that Composer should be instantiated with

Throws

Protected Methods

MethodDescription
_ensureHomeVar()Ensures that HOME/APPDATA or COMPOSER_HOME env vars have been set.
backupComposerFiles()Backs up the composer.json and composer.lock files to storage/composer-backups/
composerConfig()Returns the decoded Composer config, modified to use composer.craftcms.com instead of packagist.org.
createComposer()Creates a new Composer instance.
findCraftRepo()
findDisablePackagist()
preloadComposerClasses()Preloads Composer classes in case Composer needs to update itself
updateRequirements()Updates the composer.json file with new requirements

_ensureHomeVar()

Ensures that HOME/APPDATA or COMPOSER_HOME env vars have been set.

View source

backupComposerFiles()

Backs up the composer.json and composer.lock files to storage/composer-backups/

View source

composerConfig()

Returns the decoded Composer config, modified to use composer.craftcms.com instead of packagist.org.

View source

Arguments

  • $io (\Composer\IO\IOInterface)
  • $jsonPath (string)
  • $prepForUpdate (boolean)

Returns

array

createComposer()

Creates a new Composer instance.

View source

Arguments

  • $io (\Composer\IO\IOInterface)
  • $jsonPath (string)
  • $prepForUpdate (boolean)

Returns

\Composer\Composer

findCraftRepo()

View source

Arguments

  • $config

findDisablePackagist()

View source

Arguments

  • $config

preloadComposerClasses()

Preloads Composer classes in case Composer needs to update itself

View source

updateRequirements()

Updates the composer.json file with new requirements

View source

Arguments

  • $io (\Composer\IO\IOInterface)
  • $jsonPath (string)
  • $requirements (array)