Почему Symfony Flex добавляет собственные пакеты «dev-develop» на корневой уровень в composer.json?

У меня есть большой проект Symfony, и я начал передавать код на аутсорсинг для автономных пакетов. Это работает как шарм.

Но я понял, что composer.json содержит «странную» информацию на корневом уровне после выполнения обновления композитора:

Вот почему я прошу:

    "customer/base-bundle": {
        "version": "dev-develop"
    },
    "customer/a-bundle": {
        "version": "dev-develop"
    },
    "customer/b-bundle": {
        "version": "dev-develop"
    },
    "customer/c-bundle": {
        "version": "dev-develop"
    },
    "symfony/polyfill-intl-idn": {
        "version": "v1.11.0"
    },

Это обычная конфигурация в composer.json:

    "repositories": {
        "base-bundle": {
            "type": "vcs",
            "url": "[email protected]:customer-shared/base-bundle.git"
        },
        "a-bundle": {
            "type": "vcs",
            "url": "[email protected]:customer-shared/a-bundle.git"
        },
        "b-bundle": {
            "type": "vcs",
            "url": "[email protected]:customer-shared/b-bundle.git"
        },
        "c-bundle": {
            "type": "vcs",
            "url": "[email protected]:customer-shared/c-bundle.git"
        }
    },
    "require": {
        // ...
        "customer/base-bundle": "dev-develop",
        "customer/a-bundle": "dev-develop",
        "customer/b-bundle": "dev-develop",
        "customer/c-bundle": "dev-develop"
    }

С репозиториями и разделом require все в порядке. Я просто не знаю, почему он добавляет пакеты «dev-develop» (и пакет symfony/polyfill-intl-idn) отдельно в корень composer.json.

Это поведение Symfony/Flex или Composer по умолчанию? И для чего используется эта дополнительная информация?

Заранее спасибо!

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
79
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Выяснил, что есть баг, когда переименовываешь composer.json вот так: composer-dev.json

В Symfony Flex есть str_replace для файла symfony.lock.

Однако переименование пользовательского composer.json следующим образом: dev-composer.json работает.

Другие вопросы по теме