Continuous integration 如何确定所需的平台版本?

Continuous integration 如何确定所需的平台版本?,continuous-integration,version-detection,platform-specific,Continuous Integration,Version Detection,Platform Specific,这种情况经常出现:我构建了软件,可能使用了一些新的语言/平台/标准库功能,这些功能在某些版本(比如Java1.6.10或PHP5.2)以上可用,但我当然记不清了。我只确定它至少在我使用的版本上运行(通常是最新的可用版本),但它也可能在稍旧的版本上运行 手动浏览代码、保存列表并将其与平台发行说明进行比较显然不是一个非常复杂的选择。有没有一种方法可以自动做到这一点(除了烘焙自己的版本检查器解析器)?就个人而言,我至少对以下语言感兴趣,但请自由添加: 爪哇 蟒蛇 PHP C++(可能还有C) 添加你

这种情况经常出现:我构建了软件,可能使用了一些新的语言/平台/标准库功能,这些功能在某些版本(比如Java1.6.10或PHP5.2)以上可用,但我当然记不清了。我只确定它至少在我使用的版本上运行(通常是最新的可用版本),但它也可能在稍旧的版本上运行

手动浏览代码、保存列表并将其与平台发行说明进行比较显然不是一个非常复杂的选择。有没有一种方法可以自动做到这一点(除了烘焙自己的版本检查器解析器)?就个人而言,我至少对以下语言感兴趣,但请自由添加:

  • 爪哇
  • 蟒蛇
  • PHP
  • C++(可能还有C)
  • 添加你的最爱

简单地在旧版本上进行测试是一种蛮力方法,它的优点是您将知道代码是否实际工作,而不仅仅是它应该工作。但是它可能会很乏味,所以我仍然对某种自动机感兴趣,这种自动机会遍历源代码并检查正在使用哪些平台功能。

持续集成的构建自动化是我首先想到的。如果你在不同的机器上测试,你会发现哪个版本破坏了你的代码