soyuka / pmu

PHP Monorepo Utility

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Find a way to avoid `@dev || xx` constraint for local packages

soyuka opened this issue · comments

Tried:

        $requires = [];
        $package = $composer->getPackage();
        foreach ($package->getRequires() as $key => $require) {
            if (in_array($require->getTarget(), $packages, true)) {
                $constraint = $require->getConstraint();
                $prettyString = '*@dev || ' . $constraint->getPrettyString();
                $newConstraint = new MultiConstraint([new MatchAllConstraint(), $constraint], false);
                $newConstraint->setPrettyString($prettyString);
                $require = new Link($require->getSource(), $require->getTarget(), $newConstraint, Link::TYPE_REQUIRE, $prettyString);
            }

            $requires[$key] = $require;
        }

        $package->setRequires($requires);

But it doesn't work, it says
20240229_18h24m48s_grim