Composer

Type
Class
Namespace
craft\services
Inherits
craft\services\Composer » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
yii\base\Configurable (opens new window)
Since
3.0.0

Composer service.

An instance of the service is available via Craft::$app->composer.

View source (opens new window)

# Public Properties

Property Description
behaviors (opens new window) yii\base\Behavior (opens new window) – List of behaviors attached to this component.
composerRepoUrl string (opens new window)
config array (opens new window)
disablePackagist boolean (opens new window)
jsonPath string (opens new window)
lockPath string (opens new window), null (opens new window)
maxBackups integer (opens new window) – The maximum number of composer.
updateComposerClassMap boolean (opens new window) – Whether to generate a new Composer class map, rather than preloading all of the classes in the current class map

# composerRepoUrl

Type
string (opens new window)
Default value
'https://composer.craftcms.com'

View source (opens new window)

# config

Type
array (opens new window)
Default value
null
Access
Read-only
Since
3.5.15

View source (opens new window)

# disablePackagist

DEPRECATED

Deprecated in 3.6.0

Type
boolean (opens new window)
Default value
false

View source (opens new window)

# jsonPath

Type
string (opens new window)
Default value
null
Access
Read-only

View source (opens new window)

# lockPath

Type
string (opens new window), null (opens new window)
Default value
null
Access
Read-only

View source (opens new window)

# maxBackups

Type
integer (opens new window)
Default value
50
Since
3.0.38

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

View source (opens new window)

# updateComposerClassMap

Type
boolean (opens new window)
Default value
false

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

View source (opens new window)

# Public Methods

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

# getConfig()

Since
3.5.15

Returns the Composer config defined by composer.json.

View source (opens new window)

Returns

array (opens new window)

# getJsonPath()

Returns the path to composer.json.

View source (opens new window)

Returns

string (opens new window)

Throws

# getLockPath()

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

View source (opens new window)

Returns

string (opens new window), null (opens new window)

Throws

# handleError()

Since
3.5.0

Handles an error triggered by Composer

View source (opens new window)

Arguments

Returns

boolean (opens new window) – Whether the normal error handler continues.

# install()

Installs a given set of packages with Composer.

View source (opens new window)

Arguments

Throws

# logComposerClass()

Adds an autoloading class to the Composer class map

View source (opens new window)

Arguments

# optimize()

Optimizes the Composer autoloader.

View source (opens new window)

Arguments

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

Throws

# uninstall()

Uninstalls a given set of packages with Composer.

View source (opens new window)

Arguments

Throws

# Protected Methods

Method Description
_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.
createComposer() Creates a new Composer instance.
ensurePluginInstallerIsAllowed() Ensures composer.json has the craftcms/plugin-installer plugin marked as allowed.
preloadComposerClasses() Preloads Composer classes in case Composer needs to update itself
run()
updateRequirements() Updates the composer.json file with new requirements

# _ensureHomeVar()

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

View source (opens new window)

# backupComposerFiles()

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

View source (opens new window)

# composerConfig()

Returns the decoded Composer config, modified to use composer.craftcms.com.

View source (opens new window)

Arguments

Returns

array (opens new window)

# createComposer()

Creates a new Composer instance.

View source (opens new window)

Arguments

Returns

\Composer\Composer

# ensurePluginInstallerIsAllowed()

Since
3.7.42

Ensures composer.json has the craftcms/plugin-installer plugin marked as allowed.

View source (opens new window)

Arguments

# preloadComposerClasses()

Preloads Composer classes in case Composer needs to update itself

View source (opens new window)

# run()

Since
3.5.0

View source (opens new window)

Arguments

  • $installer (\Composer\Installer)

Returns

integer (opens new window) – The response status

Throws

# updateRequirements()

Updates the composer.json file with new requirements

View source (opens new window)

Arguments