--TEST-- Converting from one VCS type to another (including an URL change) should update the lock file. --COMPOSER-- { "repositories": [ { "type": "package", "package": [ { "name": "a/a", "version": "1.0.0", "source": { "reference": "new-git-ref", "type": "git", "url": "new-git-url" } } ] } ], "require": { "a/a": "1.0.0" } } --INSTALLED-- [ { "name": "a/a", "version": "1.0.0", "source": { "reference": "old-hg-ref", "type": "hg", "url": "old-hg-url" } } ] --LOCK-- { "packages": [ { "name": "a/a", "version": "1.0.0", "source": { "reference": "old-hg-ref", "type": "hg", "url": "old-hg-url" } } ], "packages-dev": [], "aliases": [], "minimum-stability": "dev", "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": [], "platform-dev": [] } --RUN-- update mirrors --EXPECT-LOCK-- { "packages": [ { "name": "a/a", "version": "1.0.0", "source": { "reference": "new-git-ref", "type": "git", "url": "new-git-url" }, "type": "library" } ], "packages-dev": [], "aliases": [], "minimum-stability": "stable", "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": [], "platform-dev": [] } --EXPECT-- Upgrading a/a (1.0.0 old-hg-ref => 1.0.0 new-git-ref)