id = "composer" name = "Composer" homepage = "https://getcomposer.org" description = "A tool for dependency management in PHP." icon = "theSVG:composer" executables = ["composer"] [dotfiles] # https://getcomposer.org/doc/03-cli.md — COMPOSER_HOME defaults to # "C:\Users\\AppData\Roaming\Composer" on Windows, # "/Users//.composer" on macOS and "$XDG_CONFIG_HOME/composer" on # XDG-compliant Unix systems, falling back to "/home//.composer". # https://getcomposer.org/doc/06-config.md — a config.json there "allows you to # set repositories and configuration for the user's projects". paths = [ "~/.composer/config.json", "~/.config/composer/config.json", "%APPDATA%/Composer/config.json", ] # src/Composer/Factory.php, getCacheDir(): COMPOSER_CACHE_DIR wins, then # COMPOSER_HOME/cache. Failing both it is %LOCALAPPDATA%/Composer on Windows, # ~/Library/Caches/composer on Darwin — an explicit `PHP_OS === 'Darwin'` branch # that returns before the XDG one — and $XDG_CACHE_HOME/composer, defaulting to # ~/.cache/composer, elsewhere. Those three are the platform's own cache home # under its three spellings, so [cacheHome]; [xdgCache] would claim ~/.cache on # a Mac, which Composer skips. The COMPOSER_HOME-relative fallbacks stay spelled # out beside it. vendor/ holds the packages `composer global require` installs. exclude = [ "~/.composer/cache/", "~/.config/composer/cache/", "%APPDATA%/Composer/cache/", "[cacheHome]/composer/", "~/.composer/vendor/", "~/.config/composer/vendor/", "%APPDATA%/Composer/vendor/", ] # https://getcomposer.org/doc/articles/authentication-for-private-packages.md — # "Credentials are stored in a global auth.json in your Composer home # directory": http-basic passwords, github-oauth and gitlab-token entries. The # whole file is credentials. secret = [ "~/.composer/auth.json", "~/.config/composer/auth.json", "%APPDATA%/Composer/auth.json", ] # Read per command; no daemon holds it open. side_effect = false