Как включить имя ветви в номер версии колеса для Azure артефактов DevOps? - PullRequest
0 голосов
/ 02 марта 2020

Я стремлюсь иметь нормальные номера версий для python выпусков колес, например 1.0.0, и специфичные для ветви c номера версий для указанных c ветвей, например 1.0.0.dev1+hg.5.b11e5e6f0b0b.

К сожалению , Azure DevOps отклоняет большинство номеров версий как недействительные с одним из этих двух сообщений об ошибках:

HTTPError: 400 Client Error: Bad Request - The package version provided is invalid. Versions should conform to the format described in PEP 440 and be under 128 characters. (DevOps Activity ID: 0000000-AAAA-2222-3333-11111111111) for url: https://pkgs.dev.azure.com/sample/_packaging/sample_libraries/pypi/upload

for version numbers like:

version='1.0.0.1.dev', ok
version='1.0.0.1.dev1', ok
version='1.0.0.1.dev_2', ok
version='1.0.0.1.dev_2_b', FAIL
version='1.0.0.1.dev_2-3', FAIL
version='1.0.0.1.dev_2.3', FAIL
version='1.0.0.1.dev_2.3', FAIL
version='1.0.0.d1.dev', FAIL
version='1.0.0.d.dev', FAIL
version='1.0.0.1d1.dev', FAIL
version='1.0.0.1d1.dev1', FAIL
version='1.0.0.1.dev1-3', FAIL
version='1.0.0.1.dev1.3', FAIL
version='1.0.0.1.dev1.3', FAIL
version='1.0.0.1.1.3', ok
version='1.0.0.1.1-3.3', FAIL
 400 Client Error: Bad Request - The package version provided is invalid. Local version segments are not allowed.

for version numbers like: 1.0.0+33

* 1016 были приняты только номера версий, отмеченные "ok" в сегменте выше. * pipe.

Есть ли способ обойти это? Есть ли способ включить имя ветви разработки в номер версии колеса, опубликованного в Azure DevOps как артефакт?

1 Ответ

1 голос
/ 03 марта 2020

Как включить имя ветви в номер версии колеса для Azure артефактов DevOps?

Боюсь, что такого способа включить имя ветви в номер версии колеса для Azure артефактов DevOps.

Когда мы отправляем sh пакет python в артефакты Azure DevOps, этот пакет должен следовать правилу PEP 404 , в которой описана схема идентификации версий Python дистрибутивов программного обеспечения и объявления зависимостей от конкретных версий.

Publi c идентификаторы версий разделены на пять сегментов:

  • Сегмент эпохи: N!
  • Сегмент выпуска: N (.N) *
  • Сегмент перед выпуском: {a | b | rc} N
  • Пост- Сегмент выпуска: .postN
  • Сегмент выпуска разработки: .devN

По этой причине только номера версий, отмеченные "ok" в сегменте выше, были приняты Azure pipe.

С другой стороны, PEP440 разрешает арбитраж ary метки локальной версии должны быть добавлены к спецификатору версии, но они должны быть добавлены с +, это был второй способ, который вы попробовали. Однако пакет Azure Artifacts python в данный момент не поддерживает этот формат версии.

Есть голос пользователя: Сегменты локальной версии для Python Каналы пакетов Вы можете следить за своими комментариями и проверять обратную связь по этому вопросу. Я также буду следить за этой проблемой, я вышлю вам последний статус этого билета.

Надеюсь, это поможет.

...