0

我们正在努力将柯南包管理集成到我们的管道中。

我们的柯南包存储在 Artifactory 中。

我们的版本号约定如下所示:

Minor.Major.Patch-BuildVerison

众所周知,要使用最新版本,需要使用

[> Minor.Major.Patch]

进入 conanfile.py。

我们能够从我们约定的版本中获取最新版本的唯一方法是这样编写:

[> Minor.Major.Patch-0]

但是我们的问题发生在以下示例中:

假设这些是我们尝试使用其最新版本的软件包的版本号:

1.2.3-1

1.2.3-2

1.2.3-3

如果我们写在我们的 conanfile.py

[>1.2.3-0]

我们会得到

1.2.3-3

也是。

但是如果我们上传版本

1.2.4-1

因此包(仅更新补丁号),我们将 conanfile.py 保持原样 - 我们仍然会得到

1.2.3-3

不是

1.2.4-1

作为接受。

请帮助我们了解获得我们想要的东西的最佳方式。

谢谢。

4

1 回答 1

0

Conan v.1.10 引入了两个与版本范围相关的新选项(来自文档):

  • 松散:包括/排除有效的 semver 字符串检查(默认为 True)
  • include_prerelease:在搜索范围内包含/排除预发布版本(默认为 False)

使用这些选项可以对需求进行更细粒度的控制:

class HelloConan(ConanFile):
   requires = "Pkg/[~1.2.3,loose=False,include_prerelease=True]@user/stable"
于 2018-12-28T13:04:21.617 回答