Requiriendo un tenedor en el compositor que otras dependencies usa

Hice un proyecto llamado PHPoAuthLib ( https://github.com/canfiax/PHPoAuthLib )

PHPoAuthLib es requerido por oauth-4-laravel ( https://github.com/artdarek/oauth-4-laravel ) – un package que requiero.

He agregado esta línea en mi file composer.json de mi proyecto principal,

 "repositories": [ { "type": "vcs", "url": "https://github.com/canfiax/PHPoAuthLib.git" } ], 

Mi file composer.lock ahora tiene esto:

  { "name": "lusitanian/oauth", "version": "v0.3.5", "source": { "type": "git", "url": "https://github.com/canfiax/PHPoAuthLib.git", "reference": "ac5a1cd5a4519143728dce2213936eea302edf8a" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/canfiax/PHPoAuthLib/zipball/ac5a1cd5a4519143728dce2213936eea302edf8a", "reference": "ac5a1cd5a4519143728dce2213936eea302edf8a", "shasum": "" }, "require": { "php": ">=5.3.0" }, "require-dev": { "phpunit/phpunit": "3.7.*", "pnetworkingis/pnetworkingis": "0.8.*@dev", "symfony/http-foundation": "~2.1" }, "suggest": { "ext-openssl": "Allows for usage of secure connections with the stream-based HTTP client.", "pnetworkingis/pnetworkingis": "Allows using the Redis storage backend.", "symfony/http-foundation": "Allows using the Symfony Session storage backend." }, "type": "library", "extra": { "branch-alias": { "dev-master": "0.1-dev" } }, "autoload": { "psr-0": { "OAuth": "src", "OAuth\\Unit": "tests" } }, "license": [ "MIT" ], "authors": [ { "name": "David Desberg", "email": "david@daviddesberg.com" }, { "name": "Pieter Hordijk", "email": "info@pieterhordijk.com" } ], "description": "PHP 5.3+ oAuth 1/2 Library", "keywords": [ "authentication", "authorization", "oauth", "security" ], "support": { "source": "https://github.com/canfiax/PHPoAuthLib/tree/v0.3.5" }, "time": "2014-09-05 15:19:58" }, 

Por lo tanto, de hecho se obtiene de mi repository. Pero si tu

Sin embargo, mi tenedor no está siendo implementado en el código. Creo que esto es porque oauth-4-laravel requiere la versión ~0.3 .

¿Cómo es que mi proyecto no alcanza mi tenedor?

ACTUALIZAR:

Fui a verificar qué versión exactamente obtiene, y me aparece: " https://api.github.com/repos/canfiax/PHPoAuthLib/zipball/ac5a1cd5a4519143728dce2213936eea302edf8a " – esa no es mi confirmación. ¿Por qué trae ac5a1cd5a4519143728dce2213936eea302edf8a?

enter image description here

¡Encontré la respuesta!

Como se describe aquí: https://github.com/composer/composer/issues/3358 by @jakoch

"Si otras dependencies dependen del package bifurcado, podría intentar usar un alias en línea, para que coincida con la restricción. https://getcomposer.org/doc/articles/aliases.md#require-inline-alias Eso es básicamente decir: Oye, otro package (oauth-4-laravel) usa mi fork canfiax / PHPoAuthLib y es la twig dev-master (última confirmación) como la versión que esperas (0.3.5-dev). "

 { "repositories": [ { "type": "vcs", "url": "https://github.com/canfiax/PHPoAuthLib" } ], "require": { "artdarek/oauth-4-laravel": "1.0.5", "lusitanian/oauth": "dev-master as 0.3.5-dev" }, "minimum-stability": "dev" }