composer

composer Что означает ошибка The requested package ... exists as ...[...] but these are rejected by your constraint

Ошибка вида:

The requested package it-for-free/yii-extensions dev-msater exists as it-for-free/yii-extensions[dev-master, v0.0.1, v0.0.2, v0.0.3] but these are rejected by your constraint.

Означает, что фактически менеджеру не удаётся найти пакет "it-for-free/yii-extensions" в версии (или ветке) "dev-msater" (как видите тут просто опечатка в названии, т.к. для закачки из мастера нужно писать "dev-master").

Таким образом в указанной форме ошибка фактически просто означает что:

composer Указать версию php (зависимость от ядра интерпретатора)

Просто используйте имя php с указанием версии:

"require": {
	"php": ">=7.2",
}

-- в данном случае будут требоваться все версии как 7.2 и новее.

composer Указать зависимость от модуля ядра PHP

Используйте ext- перед названием модуля, например:

"require": {
	"ext-pdo_mysql": "*",
}

-- часто, если вы указываете также явно версию php-интерпретатора, то можно как в примере выше обойтись звездочкой (любая версия) вместо указания конкретной версии.
Подробнее: https://getcomposer.org/doc/01-basic-usa...

composer github token Для composer update Какие именно опции выбрать (GitHub API limit (60 calls/hr) is exhausted, could not..)

Число запросов судя по сообщению:

$ composer update it-for-free/rusphp
Loading composer repositories with package information
GitHub API limit (60 calls/hr) is exhausted, could not fetch https://api.github.com/repos/yiisoft/yii.... Create a GitHub OAuth token to go over the API rate limit. You can also wait until 2018-10-26 13:49:05 for the rate limit to reset.

composer update Обновление одного пакета с dev-master "but these conflict with your requirements or minimum-stability"

После изменения версии пакета со стабильной на dev-master и вызова:

composer update --lock

получаем ошибку:

Your requirements could not be resolved to an installable set of packages.

Problem 1
- The requested package it-for-free/yii-extensions (locked at v0.0.1, required as dev-master) is satisfiable by it-for-free/yii-extensions[v0.0.1] but these conflict with your requirements or minimum-stability.

Решение

Просто обновите этот один пакет командой (например):

composer Warning: The lock file is not up to date with the latest changes in composer.json...В ответ на composer install

Проблема может появляться, если вы:

  1. добавили ещё один пакет в composer.json
  2. и попытались выполнить composer install,

в ответ можно получить сообщение вида:

Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Nothing to install or update
Generating autoload files

composer Установка на обычном хостинге (не VPS, без sudo)

Для начала конечно же потребуется подключиться по SSH.

Создаём папки, качаем композер и перемещаем его (всего три отдельные команды, в первой объединены первые три):

cd ~ && mkdir bin && mkdir bin/composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar bin/composer

Далее выясняем путь к интерпретатору php, тем способом, что сработает (один из двух):

  • which php-cli
  • which php

-- в моём случае ответ:

composer Update failed (Source directory ... has unpushed changes on the current branch: Ошибка

Например:

Update failed (Source directory ...vendor/codeception/base has unpushed changes on the current branch:

Решение

В моём случае помогла переустановка (видимо, дело было в некорректном состоянии composer.lock).

Pages

Subscribe to RSS - composer