Eclipse PDE - плагин, функция и управление версиями продукта - PullRequest
4 голосов
/ 29 января 2011

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

Я внес изменения API в код Java, находящийся в существующемподключаемый модуль и, следовательно, требует увеличения Major части идентификатора версии.Этот плагин служит зависимостью от данной функции, где эта функция позже включается в продукт.Из документации на http://wiki.eclipse.org/Version_Numbering, я понимаю (по большей части), когда должно быть увеличено правильное число для самого плагина.

Однако, как бы это Major изменение номера версии на подключаемом модуле влияет на «нисходящие» элементы (например, функции, продукты)?

Например, предположим, что у нас есть типичная настройка «Hello World» следующим образом:

Плагин: com.example.helloworld, <i>version 1.0.0</i>
Функция: com.example.helloworld.feature, <i>version 1.0.0</i>
Продукт: com.example.helloworld.product, <i>version 1.0.0</i>

Если бы я должен был изменить API в плагине, этопотребуется обновление версии до версии 2.0.0.Какой тогда будет версия функции, 1.1.0?Тот же вопрос может быть применен и к уровню продукта (например, если функция 1.1.0 ИЛИ 2.0.0, какой номер версии продукта)?

Я уверен, что это новичоквопрос, поэтому я прошу прощения за тратить время и усилия кого-либо.Я искал контент такого типа, но все, что я нашел, - это примеры, показывающие, как разработать плагин, функцию, продукт и сайт обновлений в первый раз.Единственный другой контент, связанный с моим поиском, - это разработка патчей функций, которые не затрагивают аспект управления версиями так, как мне хотелось бы.Мне трудно (впервые) войти в среду Eclipse RCP / PDE, и мне необходимо изучить правильный способ и / или рекомендации для таких обновлений версий и способы наилучшего отражения этого в других зависимых проектах в рабочей области.

1 Ответ

1 голос
/ 29 января 2011

Если вы хотите применить те же системы управления версиями к функции и продукту, то вы должны установить функцию и продукт на 2.0.0, когда один из плагинов перейдет на 2.0.0.Это сообщило бы любому, кто потребляет вашу функцию или продукт, о том, что внутри него где-то происходят непоправимые изменения API.

С другой стороны, нет необходимости применять то же соглашение о версиях.Вы можете создавать версии своих пакетов в соответствии с этим соглашением, чтобы правильно сообщать об изменениях в API, а затем поворачиваться и использовать более подходящие для маркетинга версии для продукта / функции.Имейте в виду, что пользователь увидит версию продукта / функции больше, чем отдельную версию пакета.

Я видел, что это сделано в обоих направлениях.На самом деле нет правильного или неправильного пути.

...